Link Search Menu Expand Document

Mac Changelog

See also: iOS Changelog

23.0

Advanced Search Queries

Drafts searches support powerful new query options. These options apply to anywhere drafts are searched, including the draft list, workspaces quick search, and scripted queries:

  • Not new, but searches can use quotation marks to find “exact phrases”, and prefix a term with a hyphen to omit it, like -blue.
  • Support for title: and tag: prefixes to force a query to only look for a term in draft titles or tags. May be combined with exact phrase searching, so title:"My Draft" will look for only drafts with the string “My Draft” in the first line.
  • AND and OR operator support. AND is not needed, as it is assumed as the operator at any space between terms. Examples:
    • blue OR green would find any drafts with either “blue” or “green” in the text.
    • blue red OR green would find drafts with both “blue” and “red” or only “green”.
  • Regular expression terms. Marked by wrapping a term in forward slashes (/term/). Examples (not necessarily useful ones):
    • /.*ABC.*/ would find any drafts with “ABC” in the text.
    • /\d+/ would find any drafts that start with a number.
    • /.*\[\[.*\]\].*/ would find drafts with [[wiki-style]] links

More details on available search options can be found in the User Guide.

Other Updates

  • Small but useful change: When searching the action list, groups appear as separators. It is now possible to tap on those group separators to load the group in the list.
  • “Duplicate” swipe action in Workspace manager.
  • [[display_title]] and [[body_preview]] template tags. These match the trimmed display versions of the title and body displayed in the draft list. Template tag reference.
  • If /open URL with title parameter finds more than one matching draft, the resulting search now opens with title:"value" search to limit results to only matching titles.
  • “Save Current” option in workspaces menu to create a new workspace based on current list options.
  • draft.bodyPreview(maxLength: Int) function. Returns trimmed body preview similar to what is used in the draft list, removing first line and trimming whitespace and truncating to the requested length.
  • Import from backup might not maintain correct modification dates.
  • Restore “Miscellaneous” category of action icons, which was missing for some reason.
  • XML-RPC requests might improperly entify parameter strings.
  • Better quit behavior, trying to make sure any current changes are synced to cloud, if possible.
  • Clicking a task in a draft open in multiple windows would not immediately update other windows as it should.
  • Scripted prompt in an action called via app.queueAction might not display.

22.0

Design Refresh and Updates

Significant visual and functional refresh throughout the app.

Workspace and Filtering Changes

  • Workspace date ranges: It is now possible to configure start and end dates for a workspace. They are optional and likely most useful for constructs like a “Modified Today” workspace. Ranges are date-based and can be configured as specific absolute dates or dynamic relative dates +/- n days from the current date. For use, see the Today example workspace, which shows only drafts modified on the current date.
  • Show search preview: option in drafts list and workspaces. When enabled, if a text search is active in the search field, the body preview displayed in the list will change to show line numbers and text snippets previewing where the match terms appear in the draft to provide additional context when searching.
  • The tag filter pane can now be set to “Show All Tags” (the previous default), or “Only Tags in Current Filter”. The later is a new option that filters the list of available tags to only show tags assigned to at least one draft in the current query in the draft list. Set via “…” options menu.

Action Versioning

When editing actions, there is now a version history feature available which allows creating and restore backup snapshots of an action. Versions are automatically stored when an action is installed from outside the app and can be created manually at any time in the version screen. Details

Based on feedback, several minor changes have been made to better support the [[wiki-style]] crosslinks added in release 20. For details on this feature, see the Linking Drafts article in the User Guide.

  • Linking now supports direct links to markers within the content of longer drafts. The syntax is [[Title of Draft/Marker Name]]. Markers are defined by the syntax used, but generally are the labels for locations in the Navigation Menu. For Markdown syntaxes, these are # headings, so “[[Title of Draft/Marker Name]]” would navigate to a heading like “## Marker Name” in a draft with the title “Title of Draft”.
  • If a [[wiki-style]] title link matches multiple drafts, the app will throw up a warning and open a search for the title to help you disambiguate your intentions and make you aware that more than one match exists and you may need to be more specific in your naming conventions.
  • The /open URL, when used with allowCreate=true should prompt about the creation of the new draft. This affect [[wiki-links]] and prevents mistyped links from creating drafts unintentionally. Details
  • The /open URL now supports a marker parameter which can be used to target a specific marker inside a draft when targeting a draft by UUID. Details

Other New Items

  • “Vivid Dark” theme.
  • Preference to disable/enable custom action touchbar in editor.
  • File action step has new “Tags” field, which can be configured to assign Finder tags to files when writing them. Use [[tags]] to pass through tags assigned to the draft.
  • Keyboard shortcut assignments now supports using several special keys - notably arrow keys. Assignment of these shortcuts in the editor currently required iOS 14 (although if the assignments are made on Mac or another iOS device running 14, the shortcuts themselves should work on iOS 13.
  • Drag and drop of a message from Mail will now insert not just the subject of the dragged message, but the “message:” URL linking to the original message.
  • Backups now have a “keep” setting to control how many backups to keep, automatically sweeping older backups to avoid consuming too much space on iCloud Drive.
  • Draft count in draft list.
  • /actionSearch?query=TEXT URL to open directly to a search of the action list. Docs
  • Better theme selection with previews in Editor Preferences.
  • Contextual menu commands directly in action list and action manager to “Insert Action” and “Insert Separator” which insert the new items directly below the selected action.
  • Action separators can now be edited directly from action list.

Scripting Changes

For more details on any of the below changes, visit the Script Reference:

  • The following properties of the Draft object, which were previous read-only, are now read-write properties. In general, it is not recommended that these values be manipulated, as they are maintained and updated automatically, but it can be useful to set them, especially when importing data from other systems.
    • createdAt, createdLongitude, createdLatitude, modifiedAt, modifiedLongitude, modifiedLatitude
  • FileManager object has new getTags(path): string[] and setTags(path, tags) functions to get and set Finder tags on files.
  • Workspace object has new startDate and endDate properties which take QueryDate objects to specify date filters for the workspace.
  • Workspace script object has new installURL property, which exposes the URL, that can be used to share the workspace. Useful for scripted backups and sharing.
  • Action script object has new installURL property, which exposes the URL, that can be used to share the action. Useful for scripted backups and sharing.
  • editor.getLineRange(location, length) function. Like editor.getSelectedLineRange() but to expand a range anywhere in the text to line start/end positions.
  • HTMLPreview script object now has prefersFullScreen boolean property. When true, the presentation will try to use the full screen on iPad. -draft.append and draft.prepend no longer require separator argument.
  • app.applyWorkspace should apply default workspace if called with no arguments.

Other Changes and Updates

  • Change: When importing an action, look for an existing action with the same name and offer to replace the existing action or import as a new action.
  • Change: Allow /workspace URL to open the default workspace without a pro subscription.
  • Fix: Better handling of nested blockquotes in Markdown syntax definitions.
  • Fix: Markdown syntax did not recognize indented code blocks starting with a number.
  • New: Calls to console.log in HTML Previews now get routed to and saved in the action log.
  • Fix: Alter method processing “after success” in actions to avoid a case where it is not handled properly.
  • Change: Draft selection view now has menus for tag/workspace filtering.
  • Change: Migrate language identification code used in RTL support to use NaturalLanguage framework.
  • Change: Support auto_reminder option in Todoist step and scripts
  • Fix: Memory leak in action editor.
  • Fix: Better refreshing of action log window when visible and new log entries occur.
  • Fix: Recent tags used should be tracked on Mac.
  • Fix: Crasher importing multiple files using File > Import... when the inbox was empty.
  • Fix: Immediately force save after a dictation session to make draft appear in draft list.
  • Fix: Make sure smart quotes/dashes are disabled by default in find window.

21.0

What’s New

  • Undo for most commands in the draft list. Most actions and operations on the draft list are now undoable. After moving a draft to the trash, moving between inbox and archive, flagging, add-remove tags, etc., you can undo that operation. To access undo: Edit > Undo in main menu, or use Command-Z the keyboard.
  • Advanced HTML Previews HTML Previews (via action step or script) now provide access to the JavaScript functions that can be called from scripts embedded in the preview document to pass values out for use in Drafts script steps, or to control flow (Cancel/Continue). Using these functions, you can build user-interfaces for actions using HTML forms, and gather and submit data or user selections for use in other script steps. Available functions:
    • Drafts.send(key, value): Send data out to the action context. These values will be available to subsequent scripts using the context.previewValues object. So, if you call Drafts.send("mydata", {"a": 1, "b": true}) in your preview, you can later retrieve those values in a script step using context.previewValues["mydata"].
    • Drafts.continue() and Drafts.cancel(): Equivalent to pressing the continue/cancel buttons in the preview UI. Allows automatic continuation of script with a form submission, for example, in the HTML document.
    • HTML Previews now offer an additional “Hide Interface” option that removes toolbars. Used only when the script features above are used to control flow.
    • More details in Advanced HTML Previews article
    • Example Actions:
      • HTML Preview Form Example: Bare bones example of how to display an HTML form in a preview and use values from it in a script.
      • HTML > Markdown: Uses the Turndown JavaScript library - which depends on the DOM and browser - within a preview to convert HTML content to Markdown.
  • Scripting Additions:
    • app.currentWorkspace property returns a Workspace object configured as the current drafts list is configured. Note this is not the same as a named workspace object, even if you have recently applied a workspace to the list. Calling update() on this retrieved copy will create a new workspace. It is recommended this be used primarily as a read-only version of the workspace to use to pass to another function, such as app.selectDraft(). Docs
    • app.isPro boolean to determine if the app is pro unlocked. Docs
    • app.selectDraft() can now optionally take a workspace parameter to set the initial search/filtering in the select window. Docs
    • draft.append(text, separator) and draft.prepend(text, separator) convenience functions on draft object. separator is optional and defaults to a line feed. Docs

Other Changes and Updates

  • Change: Refactor some of the code for the FileManager script object. The writeString and writeJSON methods no longer replace files, just update contents so the creation date is maintained and it interferes less with other apps using the same folders.
  • New: “Insert Text” action steps should register an undo point to allow that insertion to be undone atomically.
  • Fix: Clicking on a non-HTTP link in an HTML Preview should close the preview as if the cancel button were pressed.
  • Fix: app.currentThemeMode not always correct.
  • Change: Change “Move to Trash” keyboard shortcut to avoid conflict with delete to beginning of line text shortcut.
  • Change: Improve keyboard navigation and selection in Drafts select window (used in Capture window and app.selectDraft()).
  • Fix: Web capture template not saving changes properly.
  • Fix: If focus mode was disabled in secondary windows, the new draft creation timeout would fire too quickly in those windows when returning to the app.

20.1

  • New: Draft.queryByTitle(title) returns array of drafts matching the title. This exposes the logic used by internal links to find drafts with a specific title. Docs
  • New: Link definitions now support [[url:http://full.url.com/]] option to enable a full URL link external to drafts.
  • Fix: Starting a line with a smart quote could temporarily align it to the right.
  • Fix: Editing an action from the results of a search in the action list should refresh the search to get the new version of the action.
  • Change: Fine-tune the cross-link matching regex a bit to avoid some nesting oddities.
  • Change: Locating draft by title should not be case-sensitive.
  • Fix: Address scroll bar clipping content in prompts.
  • Change: Misc. minor visual tweaks.
  • Fix: If Action Log window had been closed and reopened, it might not update detail properly when selecting log entries.

20.1

  • New: Draft.queryByTitle(title) returns array of drafts matching the title. This exposes the logic used by internal links to find drafts with a specific title.
  • New: Link definitions now support [[url:http://full.url.com/]] option to enable a full URL link external to drafts.
  • Fix: Starting a line with a smart quote could temporarily align it to the right.
  • Fix: Editing an action from the results of a search in the action list should refresh the search to get the new version of the action.
  • Change: Fine-tune the link matching regex a bit to avoid some nesting oddities.
  • Change: Locating draft by title should not be case-sensitive.
  • Fix: Crasher using down arrow on external keyboard past the last result in quick search.
  • Fix: TextExpander could not be enabled on iOS 12.
  • Change: Make “text” sort of draft list case-insensitive.
  • Change: Built with Xcode 11.5

20.0

What’s New

  • Wiki-style markup for cross-linking between drafts, and executing basic Drafts commands. Useful for linking research notes, creating a table of content of other related drafts and more. When embedded in a draft, these become clickable links that open URLs as described below:
    • [[Title of Draft]] : Creates a link which will open a draft by title (first line) when clicked/tapped. Will create a draft with the title if it does not exist. This default syntax can also be expressed simply as [[d:Title of Draft]] if necessary to avoid conflicts. Title matching is loose to allow partial matches for text in the first line of draft, so [[My Title]] would also match a draft with the first line [[# My Title]].
    • [[u:UUID-OF-DRAFT]] : creates a link for the specific draft by UUID to allow exact linking. Will not create a draft, it must exist.
    • [[s:Search Term]] : creates a link which will open a quick search to the specified search
    • [[w:Workspace Name]] : creates a link which will load the named workspace
    • [[google:Search term]] : Opens a Google search for “Search term” when clicked/tapped.
    • [[wikipedia:Search term]] : Opens a Wikipedia page for “Search term” when clicked/tapped.
    • [[bear:Title of Bear Note]] : Opens a note titled “Title of Bear Note” in Bear, if it exists. This utilizes the Bear /open-note URL scheme.
    • These link markers are only available when using Markdown, MultiMarkdown or GitHub Markdown syntax definitions.
    • See Linking Drafts article for additional details.
    • The Examples: Cross-Linking action group also provides example actions to facilitate cross-linking drafts in a project.
  • “Typewriter Scrolling” option fixes the cursor position in the middle of the editor, moving the text as you type. Feature can be enabled/disabled in the “Aa” editor settings, or via contextual menu (tap and hold) on the “Aa” button. Details
  • Navigate menu (down-arrow in top right) now has additional options for navigating to recent drafts.
  • “Last Draft” < toolbar button to go back to the last draft loaded in the editor.
  • Scripting additions:
    • Most JavaScript objects now support new keyword. So new Draft() now works in lieu of Draft.create() (old syntax still works).
    • Draft object additions and changes: Docs
    • title property now strictly returns the first line of draft
    • displayTitle property returns cleaned up title as it would be displayed in the draft list, removing Markdown header characters, etc.
    • lines property returns content as an array of string split on line feeds.
    • editor.recentDrafts property returns an array of recent drafts loaded in the editor, with the most recent previous draft as the first index. Useful for navigation in actions. Docs
    • app.openInNewWindow(draft) script method. (iPad/Mac). Pretty self explainatory I think. Docs
    • Scripting access to editor navigation markers, as displayed in the Navigation window/menu. Allows for the creation of actions that navigate within the current document. Docs
    • editor.navigationMarkers: An array of navigation markers available in the document. Docs
    • editor.navigationMarkerAfter(location: number) and editor.navigationMarkerBefore(location: number) convenience methods to get the next/previous navigation markers relative to a location in the text.
    • Example actions:
      • Previous Marker: Move cursor to the previous marker (Header, etc.) in the draft.
      • Next Marker: Move cursor to the next marker (Header, etc.) in the draft.
    • navigationMarkers are objects with the following properties:
      • location: start location of the range
      • length: length of the range
      • prefix: Identifying prefix for the marker (like H1, H2 in Markdown syntax) as defined by syntax
      • label: Identifying label for the marker.
      • level: indentation level of the marker.
    • FileManager has new getCreationDate(path), getModificationDate(path), and setCreationDate(path, date) and setModificationDate(path, date) functions. Docs
  • File action step has a new “Maintain dates” option which will set the creation/modification date of the newly created file to match those of the current draft. When the action creates a new file, creation and modification will be set - if it is appending/prepending, only modification date will be updated. Docs
  • Add the option to copy title to the clipboard in locations where there are copy options.
  • Contextual menus on drafts in Quick Search results.

Other Changes and Updates

  • Fix: Better routing of URLs in multiple windows to support new links better.
  • Change: Add horizontal rule match to Markdown syntax definitions (***, —).
  • Fix: Editing templates in actions should default to smart quote/dashes disabled.
  • Change: Audited reserved keyboard shortcut list to include some additional shortcuts that create conflicts on Mac.
  • New: Drafts in quick search results have contextual menus with common commands.
  • Change: Allow previews to open non-http links.
  • Fix: Submitting invalid data to FileManager.writeJSON could crash the app.
  • Fix: State of options in the main menu Editor menu not always correct when viewing drafts in secondary windows.
  • Fix: Crash clicking in empty space in manage actions window.
  • Fix: Editing templates in actions should default to smart quote/dashes disabled.
  • New: Context menu in drafts in the draft list and quick search add “Open in New Window” option.
  • Fix: Specifying locale when calling editor.dictate() did not set the requested locale properly.
  • Fix: Clipping issue in editor preferences.
  • Fix: Change the current draft’s syntax in a script would not update syntax selection dropdown menu.
  • Fix: Better handling of empty state in arrange mode.
  • Change: Add command-L keyboard shortcut for “Find in List”
  • Change: Opening a draft via /open URL should restore the last selected position in the draft.
  • /open URL scheme now supports additional “title” and “allowCreate” parameters that allow drafts to be found and opened by title - and, optionally created as a new draft if a matching title is not found.
  • Arrange mode now supports expand/collapse modes like iOS version.
  • Fix: “Export” action step should only add .txt file extension if the filename template did not already provide an extension.
  • Change: Make {== highlight ==} CriticMarkup syntax in MultiMarkdown more prominent.

19.2

  • New: Capture window “Open” button (⌥-⌘-⏎). Performs save and closes capture window, opening Drafts to the newly created draft.
  • New: Editor settings have new tab key options, allowing you to select whether the tab key inserts a tab, two spaces or four spaces.
  • New: Workspaces can be shared via directory (still not visible in public site, but can be posted).
  • Fix: Syntaxes (like TaskPaper) which apply strikethough styles, the style might not get cleared if edits (like removing @done from a task) no longer required it.
  • Fix: Problems reordering actions in the action list in groups with hidden actions.
  • Fix: Worked around a layout issue in the new Quick Search feature causing the app to beachball on certain result sets.
  • Fix: Issue with editor not reflecting changes to a draft made in a scripted action if the draft was loaded in the script via Draft.find instead of referenced as the global draft variable.

19.1

  • Change: Improved keyboard navigation in and initial positioning of find panel.
  • Change: Make insertion point more prominent in the editor.
  • Fix: “Send to Drafts” service should open the draft created when run.
  • New: Reset sync state button in preferences. Used only for resolving certain sync issues when recommended by support.
  • Fix?: Possible fix for issue where merge function in draft list contextual menu would stop functioning after the app had been running for a while.
  • Fix: Exporting a file from Run AppleScript editor should export with .applescript file extension.
  • Fix?: Possible fix for case where quick search can get stuck beach balling for some users.

19.0

What’s New

  • Quick Search: Global quick search feature to query for drafts, actions, workspaces and common commands in one place.
    • Accessed via search button in the toolbar, the Edit > Find > Quick Search menu command, or with the shift-command-F keyboard shortcut.
    • /quickSearch?query= URL action to open directly to quick search. Details
    • app.showQuickSearch(initialQuery) scripting function. Docs
    • Related change: Searches (in quick search and in draft list) now support tag matches in additional to full text searching, in addition to their support for "exact phrase" with quotes and -omission with hyphen
    • Quick Search feature requires macOS 10.15.1 (Catalina) or greater.
    • Documentation
  • AppleScript
    • “Run AppleScript” action step can be used to execute AppleScripts passing information about the current draft.
    • AppleScript script object for calling AppleScripts from JavaScript, with more advanced control of parameters, subroutines called, and easier access to return values.
    • Basic incoming AppleScript support for creating new drafts. Additional support for AppleScript coming in future updates. Example: tell application "Drafts" make new draft with properties {content: "my draft", tags: {"blue", "green"}} end tell
    • AppleScript examples action group
    • More info and examples
  • ShellScript script object for running Unix shell scripts from Drafts script action steps, with the ability to pass command line arguments, and access standard output and errors.
  • Marked app streaming preview support. If enabled in Preferences > General, the editor will live update the stream Marked watches in it’s “Streaming Preview” window. Requires Marked app be installed. Details
  • FileManager script object additions:
    • baseURL and basePath properties return full file:/// URL or POSIX path to the base directory used by the FileManager instance. This can be useful in cases where the full location of files is needed.
    • writeJSON(path, obj) and readJSON(path) convenience functions for saving and restoring JavaScript objects in files.
    • FileManager docs
  • app.showDraftInfo(draft?) function to display details of a draft. Docs
  • Additional Workspace script object properties:
    • loadActionListGroup (ActionGroup)
    • loadActionBarGroup (ActionGroup)
    • loadFolder (“inbox”, “archive”, “trash”, “flagged”)
    • Docs

Other Changes

  • Fix: Better live updating of changes if the same draft is open in multiple windows.
  • Fix: Changing only some advanced settings in the action editor, and nothing else, could result in the change not being saved.
  • Fix: “-“ button for deleting actions in action manager did not work properly with multiple selections.
  • Change: Searches now also search tag names in addition to searching full text.
  • Fix: “Manage Actions” window did not behave properly in full screen mode.
  • Fix: Several crashes related to open and closing additional drafts windows when the app first launched.
  • Change: Improve identification of HTML tags in Markdown syntax.
  • Misc. other reliability and performance improvements.

18.1

  • New: Several additional icon grouping for use on actions and workspaces.
  • Change: The /workspace URL action can now accept the name=Default argument to clear filters and load the default workspace.
  • Fix: Task marks in TaskPaper syntax should only be recognized at beginning of lines.
  • Fix: Clicking in editor margins should still allow text selection.
  • Fix: Crash using “Run Action” from contextual menu on draft list.
  • Fix: Clearing a keyboard shortcut on an action might not save if no other changes were made to the action.

18.0

What’s New

  • Clickable tasks in TaskPaper syntax. Clicking the list mark at the beginning of a TaskPaper task line will now add-remove the @done status for that line in drafts using TaskPaper syntax.
  • TaskPaper example action group. If you are interested in using TaskPaper, we have created an example TaskPaper action group designed for use in the Action Bar with many common TaskPaper commands, to add tasks, assign due/start dates to selected lines and archive done items. Visit the Action Directory to download the TaskPaper action group
  • New: File > New with Syntax menu items to create new drafts with a specific syntax already assigned.
  • New: Ability to edit action bar label for separators.
  • New: Added ability to view action log for only the current draft, from popover below editor.

Other Changes and Updates

  • Fix: Addressed most known crashing issues.
  • Change: Audit of how/when draft version history entries are automatically created. Should be more reliable capturing some state changes and avoiding duplicate versions.
  • Fix: Targeting specific OneNote notebook might not work in some cases with OneNote action steps.
  • Fix: Issue with reordering action groups not working properly with certain data sets.
  • Fix: Possible issue reordering workspaces with certain data sets.
  • Fix: If a draft was selected for appending in the capture window, then opened and editing in the main window, returning to capture and appending additional text without reselecting the draft for appending could result is overwriting main window edits.
  • Change: Periodically reset sync log if logging is enabled to prevent excessive log sizes.
  • Fix: Global shortcut for main window should bring app to front if window is already visible but not active.
  • Fix: Issue with text flicker and dissapearance when clicking task marks.
  • Fix: Be less agressive reloading draft list on some functions to avoid visual glitches reloading list.
  • Fix: Layout glitch changing margins in editor preferences.
  • Fix: Workaround alignment issue for strings beginning line with a smart quote.
  • Fix: Toolbar items in main window were not activated properly in the overflow menu which appears when the window is too narrow to display all items.
  • Change: Increase priority of action pane toolbar items so they are less likely to be collapsed into overflow menu when window is too narrow.
  • Fix: Select action view should remember last selected action group.
  • Fix: Better position action selection window when using “Run Action” from drafts list context menu.
  • Fix: Changes in the editor could be overwritten if using the context menu on the draft list to alter the same draft before a save occured.
  • Fix: Background colors applied by syntax highlighting (as inline code) might not get cleared immediately if the text changed it ways that should disable that background color.

17.2

  • New: Workspace sharing. Workspaces can now be shared via URL or export file which can be installed in other instances of Drafts. This can be used to backup workspaces, or to share configured workspaces with other Drafts users. More about Workspaces
  • New: Reminder script object has new dueDateIncludesTime boolean property. If true, the time components of the dueDate will be ignored allow Reminders to be set to be due on a date without assigning a time. Reminder object docs
  • Change: Mail.send and Message.send APIs now work on Mac for foreground messages/mail. Docs: Mail, Message
  • New: Share scripting methods now implemented for Mac (previous iOS only). These allow sharing as file or URL in addition to simply trigger the system share sheet from scripts. Docs
  • Change: Allow ESC key to close capture window (without saving). Matches ⌘-W (close window) shortcut which already worked. (Note that ⌘-Enter will save and close the window, same as clicking “Save” button.)
  • Fix: Properly update editor margins when entering and exiting full screen mode.
  • Change: Updates to default action groups installed with new installations.
  • Change: Reworked sharing buttons in actions and actions groups management screens.
  • Change: Better logging in Dropbox actions. Action log will now contain an entry with the path to any successfully created/updated files in Dropbox.
  • Change: OneNote actions will now prompt for the selection of a notebook if a notebook name is not specified and the default notebook cannot be determined. Many OneNote accounts do not seem to have a default notebook, so this allows the action to continue to function without modification for such accounts. Note OneNote action steps can be edited to specify a notebook to avoid prompts.
  • Fix: Text views in prompts did not scroll properly with longer texts.
  • Misc. improvements and minor fixes for several sync and useability issues.

17.0

Editor Improvements

  • Highlight insertion point option to draw different background for current cursor position.
  • Editor setting to limit max characters per line. Works along with margin settings to determine a maximum line length. Great for use with full screen mode to prevent excessively long lines.
  • For more details, see editor settings docs

Other Additions

  • “Run Action” option in drafts list contextual menu. Allows action to be run on multiple selected drafts. Select drafts and right-click to access.
  • TouchBar support (when available). Uses same configuration options as Action Bar (but can display different action group).
  • Two new monochrome editor themes. Available to select in File > Editor Preferences...
  • Medium action step type to post to Medium.com. Docs
  • Medium script object to support scripting Medium API. Docs
  • Script steps now have a new “Allow asynchronous execution” option. When enabled, the action will wait for a call to script.complete() to know if a script step is finished. This allows use of async/await, Promises and other async function calls…but your script must call script.complete() of the action will timeout and fail after 60 seconds.
  • CallbackURL objects have a read-only url property to debug the URL which will be used with the configured parameters.

Other Fixes and Changes

  • Fix: Hiding action group from list should not remove it from main menu.
  • Fix: Filemanager.readString would not return undefined properly when file was not found.
  • Fix: Inaccurate action directory URLs used for opening actions posted to the directory.
  • Fix: Appending to a flagged draft from the capture window could unflag the draft.
  • Misc. additional fixes and stability improvements.

16.1

  • New: Print action steps can now specify page margins (in points). This allows margins less than the default 72pt (1 inch) setting.
  • Change: Switch to custom link identifier in Link mode to fix a few issues with URL highlighting with data detectors. Among other things, message: links now work properly.
  • Fix: Triggering a dictation action on unsupported OS version would report problem, but not properly finish the failed action.
  • Fix: Issue that could prevent extended dictation from working properly if the system timed out listening.
  • Fix: Vertically align select items in prompts to avoid clipping.
  • Fix: Issue hidding action bar on 10.13 (High Sierra).
  • Change: Tighten authorization scopes requested by Gmail actions based to avoid Google verification issue.
  • Fix: Fix for issue where scripted alert might not appear when action was run by being queued in another action.

16.0

Actions!

The full power of Drafts actions, previously only available on the iOS version, are now available for Mac! Integrate with many popular apps and services, and manipulate your drafts and text with scripted actions!

If you use the iOS version, all your existing actions will automatically sync to the Mac. If not, a default set of actions will be configured.

Actions are available through the action pane to the right of the main window, via the “Actions” menu, or the Action Bar.

The majority of actions just work across platforms, but there are a few exceptions - notably Evernote actions do not work on Mac. For full details, read the platform compatibility notes.

Other New Items

  • All draft windows are now full main window instances with access to the drafts and action lists. They will be opened with panels closed if you double-click on a draft in the draft list, but can open them and access those features.
  • File and reminder import features, configured in preferences, to automatically import from a reminders list and/or text files in the “Inbox” folder in /iCloud Drive/Drafts/Inbox. Automatic Import documentation
  • Ability to configure and run action group backups in Preferences. Backup docs
  • Manage service credentials in Preferences. Credentials docs
  • Support for additional URL actions, including /arrange, /runAction, and support for the action parameter on other actions (where supported). URL Scheme documentation
  • Support “tagged” filtering in tag filters and workspaces. The inverse of the existing “untagged” special value - will match any draft with one or more tags assigned. Filtering docs
  • Previews now support printing, and “Copy Rich Text” function.
  • Include draft syntax in (i) draft detail summary
  • “Inbox swipe defaults to trash” option in “…” draft list options menu.

Other Changes and Fixes

  • Fix: Significant rewrite of some of the code behind updating the drafts list to try to address a few nagging issues with items temporarily disappearing from list and similar.
  • Fix: Sync fixes address a number of issues, particularly ones that have arisen on the latest OS releases.
  • Change: Streamlining pass through syntax highlighting code. Improves performance and resolves (hopefully) a few little oddities.
  • Fix: Opening a draft from the archive in a separate window could result in a blank window.
  • Change: Rework some “Window” menu commands in the main menu.
  • Change: Tweak to priority of operations in sync to attempt to prevent some issue on iOS 13.
  • Change: Do not update flagged status of draft when appending from the capture window.
  • Change: In Markdown syntaxes, continue markdown quotes like lists are continued.
  • Fix: Assign better window titles to draft windows.
  • Change: Allow one level of undo if the “clear” button is pressed in the Capture window accidentally.

15.2

  • Fix: Performance improvements editing large MultiMarkdown drafts.
  • Fix: Fix for timing issue with URL calls which update the draft loaded in the editor.
  • Change: Move flagged indicator to title line in the draft list to allow more compact presentation.
  • Fix: Minor changes to the way items in draft list are refreshed when changes occur.
  • Change: Built with the most recent updates to system SDKs.
  • Fix: Better syntax highlighting for [id][] style reference links in Markdown syntaxes.
  • New: MultiMarkdown syntax now supports embedded LaTeX markup with \\[ \\], \\( \\) or $$ style delimiters.

15.0

Along with this update, we will also be launching new User Guide and Scripting Reference websites, dramatically improving the available Drafts support documentation. Please visit these sites for more information and, if you haven’t yet, create an account at the Drafts Community to keep up with the latest news, tips and more.

Workspaces & Draft List

  • Default Workspace. This is a special workspace that stores the preferred default settings for the draft list, and is applied when filters are cleared. This way, if you have workspaces that applies sort or display settings, clearing the list filters will also reset those back to your preferred default settings. The default workspace can be configured like any other workspace in the workspace manager. Workspaces are a Pro feature, but the default workspace is available in the free version. Details
  • “Show Date” display option for drafts list and workspaces. Hide/show the date in the list. Along with other display settings, this allows everything but the draft title to be removed, for the minimalists out there.

Dictation

  • Custom Dictation interface (macOS 10.15 only - Available in October). New custom dictation interface, similar to that available on the iOS version of Drafts, with support for:
    • Creation of new drafts, or inserting text at the cursor location.
    • Selection of locale/language from any language supported by Siri dictation.
    • Optional automatic timeout to commit changes after a period of silence.
    • /dictate URL scheme supported, see docs for details.
    • See documentation for more details

Actions Coming Soon

We are also hard at work on a release of Drafts for Mac with full support for the automation actions available on the iOS version of Drafts. This version is expected to go into beta soon after this release.

Other

  • New: Add focus mode toggle button in editor (bottom row). Focus mode disables the new draft creation timeout. Details
  • New: Add “Launch in focus mode” preference.
  • Change: Markdown preview windows now maintain scroll position when updating content and enforce a minimum size. Using Previews
  • Fix: Markdown syntax definitions did not handle reference link properly.
  • Change: All default Markdown styles (Basic, Swiss, Foghorn) now support dark mode in CSS.
  • Change: Updates to Find window, allowing multiple line texts and treating whitespace escape characters properly (\n, \t) in regular expression mode.
  • New: Extensions tab in preferences, to allow configuration of share extension options.
  • Change: If a selection is present in the editor, the character / word counts at bottom right now include a selection character count as well.
  • Fix: Issue preventing Handoff from working properly from Mac to iOS.
  • Fix: Improve markdown header recognition in syntax highlighting definitions to allow # in header text.
  • Change: File > Copy and Share menu items now work when draft is open in separate window.
  • Change: “Backup Now” in Preferences > Backup now prompts for save location rather than saving to iCloud Drive.
  • New: Bulk export options in context menu of draft list to allow export of selected drafts as JSON, CSV or text file.
  • Change: Better handling of restore purchase process to help avoid confusion about the fact that you can’t restore iOS purchases on the Mac.
  • Fix: Preview windows now have minimum window size.

14.2

  • Fix: Issue with link activation in link mode.

14.1

  • Fix: Rewrote link mode (it was broken in last release). Should behave the same, other than links now being underlined.
  • Fix: Fix performance and excessive logging issue in sync.
  • Fix: Issue entering tags using characters in some (particularly Asian) languages.

14.0

  • Fix: Fix for draft list appearing blank when first shown on 10.13 (High Sierra).
  • Fix: Fix for garbage text issue when fonts are re-assigned by syntax highlighting, usually visible when using code blocks.
  • Fix: Word/character count not properly updating for multiple windows.
  • Fix: Sync timing issue that could cause some changes (typically archiving or trashing of a draft) to not get synced to other devices properly.
  • Fix: Workaround a couple minor issues when running on as yet unreleased software.

13.0

What’s New

  • New: Capture window will float over other full screen apps and generally behaves more nicely with other apps.
  • New: Arrange mode now supports arranging by sentence in addition to blocks and lines. This feature requires 10.14 (Mojave).
  • New: Right-click context menu commands in arrange mode to allow access to move to top-bottom and duplicate commands.

Other Changes and Fixes

  • Change: Alpha sort tags when displayed in draft list.
  • Fix: Preview characters would not match text size when using some Asian language input methods.
  • Fix: Drafts should not prevent shutdown when running.
  • Fix: If main window is visible but minaturized to dock, re-open it when clicking on Dock icon.
  • Fix: Do not re-open main window just when becoming the active app (e.g. via cmd-tab switching)
  • Fix: Crashing bug when moving certain selections of drafts to a different folder, depending on specific sequence selecting them.
  • Fix: Do not show main window re-activating app if floating draft window was already open.
  • Fix: Displayed modified date not updated in draft list when changes made to a draft.

12.1

  • New: Add “Window > Float Selected Draft” menu item to open new draft window.
  • New: Add “Window > Float Selected Draft On Top” menu item to open new draft window floating over other applications.
  • Fix: Drafts in floating windows should support all Editor menu commands.
  • New: Button in title bar to toggle “on top” floating status of draft windows.
  • New: Add “Editor > Navigate” menu item to trigger navigation.
  • Change: Remove “Navigate” top level main menu item.
  • New: Add periodic check for subscription status changes
  • Fix: If same draft was loaded in main editor as other open windows, and the app became inactive directly after making edits, the edits could revert.
  • Fix: Workspace editor would mis-select sort order for “all” folder when changing flagged sort.
  • New: Update to MultiMarkdown 6.4.0 (was on 6.3.2).

12.0

What’s New

  • New: MULTIPLE WINDOWS! Double click a draft in the draft list to open it in a separate window.
  • New: Badge notification settings now allow badge count to be based on a selected workspace’s inbox only. This allow greater control over which drafts should be considered unprocessed for purposes of the badge count. If a workspace is selected, other filtering options are disabled.
  • New: Add “Maps” button to created/modified locations in draft detail to allow opening the location in Maps.
  • New: Display device along with created, modified dates in draft detail allow referencing whether the draft was created or last modified on Mac, iPhone or iPad.
  • New: Moved navigation function from toolbar to within editor. Now responds to CMD-\ to popup anywhere in draft as well.

Other Changes and Fixes

  • Fix: Hide find panel with window that opened it.
  • Change: Change tag token field behavior to avoid all existing tags being selected when entering the field.
  • Fix: Better handling of sync changes which trash/delete drafts which are loaded in the editor.
  • Fix: Deselecting a draft from a range of drafts would not remove it from a subsequent merge operation.
  • Change: Be more aggressive about trying to sync any pending changes on application quit.
  • Fix: Improve tint color selector in icon selection popover in Workspace editor.
  • Change: Empty state in drafts list and capture window draft list.
  • Fix: Don’t open main window when activating app if capture window is already visible.
  • Change: Misc. UI tweaks.

11.0

  • Fix: “Open main window on launch” preference was not working properly.
  • Fix: Clicking on dock icon should open main window if no other windows are visible.
  • Fix: Prevent task marks from being marked as grammar errors when grammar checking is enabled.
  • Fix: Hopefully a fix for case where duplicate drafts could get created from Share extension or other URL calls.
  • Change: If HTML passed to HTML Prevew has a title element, use that title as the window title.
  • Fix: Several VoiceOver labels in preferences.
  • Fix: New blank line at end of draft did not have the right line height/style until something was typed on the line.
  • Fix: Merge operation did not properly pickup selected rows if you shift-selected a range for rows in list.

New Version Numbering: Moving forward, each feature release of Drafts will get a major version number. Minor version numbers will still be used for bug fix and minor releases. If you look back, it’s the same thing we’ve been doing, but we’re dropping the “5”.

5.10

  • New: “New in Workspace” option in File menu to create new draft with workspace tags already assigned.
  • Change: Better HTML output for fenced code block when using GitHub Markdown option.
  • Change: Edit > Find > Search Drafts (shift-command-F) should work in Capture window.
  • Fix: Better handling of activation of the app when no windows are visible.
  • Change: Support broader data types in share extension.

5.9

What’s New

  • New: “Tag > Add…” and “Tag > Remove…” commands to bulk assign or remove tags from selected drafts. Available both in File menu and context menu of draft list.
  • New: “Merge…” command to merge multiple selected drafts. Available both in File menu and context menu of draft list.
  • New: Rename and Delete tag commands in context menu of tags in the filter list.
  • New: “Correct spelling automatically” editor setting to better support automatic substitutions.
  • New: Ability to assign global keyboard shortcut to the main Drafts window (in Preferences).

Other Fixes and Changes

  • Change: Reorganized flag menu items in File menu and added support for using them on multiple selections in list.
  • Fix: Disabling “Open main window on launch” preference was not working properly.
  • Fix: Sync sometime would not fail to properly update other devices when a draft was move archived/trashed.
  • Fix: Appending to draft via capture window would not update the draft in the main window editor if it was loaded.
  • Fix: Issue selecting draft in draft list after “new draft after” timeout expired.

5.8

  • Initial Public Release

Download on App Store Download on Mac App Store

© 2012-2020 by Agile Tortoise, Inc.
Drafts is a registered Trademark of Agile Tortoise, Inc.
Privacy | Terms