Plug-In: Sort Active Tasks by Creation Date
Places on the clipboard a list of Markdown links to all active tasks sorted by creation date. Use the “Clipboard to Bear” plug-in to send the clipboard contents to a new note in the Bear app.
Return to: OmniFocus Plug-In Collection
Active Tasks Sorted by Creation Date
/*{"type": "action","targets": ["omnifocus"],"author": "Otto Automator","identifier": "com.omni-automation.of.links-to-active-task-sorted-by-creation","version": "1.1","description": "Places on the clipboard a list of Markdown links to all active tasks sorted by creation date.","label": "Tasks Sorted by Creation","shortLabel": "Tasks Sorted by Creation","paletteLabel": "Tasks Sorted by Creation""image": "rectangle.stack",}*/(() => {const action = new PlugIn.Action(function(selection, sender){tasks = flattenedTaskstasks.sort((a, b) => {var x = a.added;var y = b.added;if (x < y) {return -1;}if (x > y) {return 1;}return 0;})taskData = new Array()tasks.forEach(task => {if(task.active && task.project === null){taskTitle = task.nametaskAdded = task.addeddc = Calendar.current.dateComponentsFromDate(taskAdded)dateSlug = dc.month + "/" + dc.day + "/" + dc.yeartaskID = task.id.primaryKeytaskLink = `[${dateSlug} ${taskTitle}](omnifocus:///task/${taskID})`taskData.push(taskLink)}})markdownText = taskData.join("\n")Pasteboard.general.string = markdownTextnew Alert("Completion","Markdown links are on the clipboard.").show()});action.validate = function(selection, sender){return true};return action;})();