Skip to content

Instantly share code, notes, and snippets.

@niallsmart
Last active December 28, 2023 00:10
Show Gist options
  • Select an option

  • Save niallsmart/d7138b87b306a1f3bb8a to your computer and use it in GitHub Desktop.

Select an option

Save niallsmart/d7138b87b306a1f3bb8a to your computer and use it in GitHub Desktop.
Copy Trello checklist to clipboard
copy($(".checklist-item:not(.checklist-item-checked)").map(function() {
var e = $(this),
item = e.find(".checklist-item-details-text").text()
if (e.hasClass("checklist-item-state-complete")) {
item = item + " (DONE)"
}
return item
}).get().join("\n"))
@davidtingsu
Copy link
Copy Markdown

i would like to turn this into a chrome plugin. what is the license on this code? will give your gist some credit.

@waynesutton
Copy link
Copy Markdown

Hi, how do I use the code above?

David, let me know if you created a chrome plugin. I need it :)

@ksoo
Copy link
Copy Markdown

ksoo commented May 15, 2017

In Chrome, open the Trello Card with the checklist, and then select Chrome's More Tools => Developer Tools => Console, copy and paste this Javascript code in, and press Enter to run. The checklist text will then (silently) be on your system Clipboard, and you can paste it elsewhere.

@chiffrezlacasse
Copy link
Copy Markdown

Thanks!!

@rnjailamba
Copy link
Copy Markdown

@davidtingsu, did you make it?

@benctv
Copy link
Copy Markdown

benctv commented May 11, 2019

Thank you! Felt so good to have something simple and work! Wonderful.

@Max-Makhrov
Copy link
Copy Markdown

Max-Makhrov commented Jun 24, 2020

In Chrome, open the Trello Card with the checklist, and then select Chrome's More Tools => Developer Tools => Console, copy and paste this Javascript code in, and press Enter to run. The checklist text will then (silently) be on your system Clipboard, and you can paste it elsewhere.

Thank you!

for some reason this code works for me:

$(".checklist-item").map(function(i, item) { 
	let text = $(item).find(".checklist-item-details-text").text(); 
	if( $(item).hasClass("checklist-item-state-complete") ) {
		text += " (DONE)";
    }
	return text;
}).get().join('\n')

The original one throws undefined...

UPDATE: missed this instruction =):

The checklist text will then (silently) be on your system Clipboard, and you can paste it elsewhere.

@ChaiBapchya
Copy link
Copy Markdown

God bless you for creating this snippet!

@vsvld
Copy link
Copy Markdown

vsvld commented Dec 21, 2020

thank you!

@wcarmon
Copy link
Copy Markdown

wcarmon commented Apr 30, 2021

Thanks!

@szilard-nemeth
Copy link
Copy Markdown

Thanks for this script, very useful.
For me, it didn't fully work for checklists that contain google, youtube or any other link that Trello detects and converts to a text in an overly smart manner. I haven't found a way to turn off this feature and it's a huge pain because if I copy the checklist, the textual version of the original links will be copied and not the original links.
An updated version of the script with parsing such smart links:

copy($(".checklist-item:not(.checklist-item-checked)").map(function() {
  var e = $(this),
      item = e.find(".checklist-item-details-text").text()
  
  var smartlinks = e.find(".atlaskit-smart-link")
  if (smartlinks.length) {
  	//sanity check
  	if (smartlinks.length != 1) {
  		console.error("length of smartlinks should be 1, but it is: " + smartlinks.length)	
  	} else { 
  		item = item + "  " + smartlinks.attr("href")
  	}
  }
  
  if (e.hasClass("checklist-item-state-complete")) {
    item = item + " (DONE)"
  }
  
  return item
}).get().join("\n"))

@jjb
Copy link
Copy Markdown

jjb commented Jan 13, 2022

🙏

@nicolaskenner
Copy link
Copy Markdown

This just came in handy! Thank you very much :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment