Drafts 20 has been released:
Details below. For complete history of updates, visit:
Details below. For complete history of updates, visit:
[[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 a 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.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 draftdisplayTitle
property returns cleaned up the 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
editor.navigationMarkers
: 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.location
: start location of the rangelength
: length of the rangeprefix
: Identifying prefix for the marker (like H1
, H2
in Markdown syntax) as defined by syntaxlabel
: 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
editor.setSelectedRange
might not always scroll that range to be visible.FileManager.writeJSON
could crash the app./open
URL should restore the last selected position in the draft.{== highlight ==}
CriticMarkup syntax in MultiMarkdown more prominent in some of the themes..txt
file extension if the filename template did not already provide an extension.[[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.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 draftdisplayTitle
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
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.location
: start location of the rangelength
: length of the rangeprefix
: Identifying prefix for the marker (like H1
, H2
in Markdown syntax) as defined by syntaxlabel
: 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
FileManager.writeJSON
could crash the app.Editor
menu not always correct when viewing drafts in secondary windows.editor.dictate()
did not set the requested locale properly./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..txt
file extension if the filename template did not already provide an extension.{== highlight ==}
CriticMarkup syntax in MultiMarkdown more prominent.This is fantastic! Iâd been reading up about Zettelkasten, fretting about which tool to use, and now I can do it all in Drafts.
Thank you!!
Euan
This reminds me of an old saying:
â Who is the greatest physicist of the 20th century?
â Albert Einstein.
â Who is the second greatest physicist of the 20th century?
â Albert Einstein (for all the other things he has done).
Time will tell but with this release I get the feeling that Drafts is not only my greatest app but also my second greatest app for âall the other thingsâ it can do (s.a. project management, reminders, document repository to mention a few).
Thank you Greg!
Typewriter scrolling! Thanks so much.
Excellent. Thanks a bunch for all the regular updates and new useful features. I have been using Drafts for many years and itâs a total standout in terms of usefulness, quality, speed and everything else. Also, by complete coincidence, I was thinking the other day that typewriter scrolling would be a great addition, andâŚit suddenly appears!
When the release notes for a single version look like the release notes for an entire feature set of another app.
Sterling work Mr Pierce!
Thanks for the update. The issue I was just getting ready to report is gone with the 2.0 release. Of course now the pain to delete beta and install final release.
I know 1st world problem.
Fantastic update, many solid features I can put to uise right away. Many thanks, Greg.
A question⌠that might reflect my lack of understanding on the release doc. Is there (or could there be) a way to see jump links in the text? The navigation as it stands is first class but there are times when I ned to do it with one hand and jab an anchor link while keeping eye contact with an audience.
Thanks again for such a quality piece of work (and I donât just mean the update!)
SO EXCITED!!! I requested double bracket link functionality in Feb 19. Super pleased to see it fleshed out so thoughtfully!!
Just to clarify my question:
Navigation markers are defined by the syntax highlighting in use for the draft, and may vary by syntax, but in the case of Markdown drafts, markers are generated for all headings (## Heading).
So how do I get the navigation marker for a Markdown heading into the draft (like part of a TOC)?
I canât see a way of copying the markers in the nav. drop-down
I can see the functionality is all there, but I canât yet see how to use it within the text.
I updated my Link Helpers Actions Group to use the new [[wiki-style]] linking capability â so much easier to read + use drafts with this format, thank you!!
Greg: Amazing.
I use a small fraction of Drafts capability, with heavy-lifting done in org mode. Nevertheless, Iâm happy to subscribe to your app if only to see this killer app flourish.
Iâm wondering what I would need to do to use DuckDuckGo as my search engine of preference rather than Google? I tried [[duckduckgo: Search Term]] but that didnât work. TIA, Andy
Thatâs not something implemented in the current release. When custom syntax definitions become available (later this year, hopefully) it would be something that could be added for use in your installation. You can, of course, already use actions to search DuckDuckGo for a text selection, see examples in directory.
Is there a way to search for something like â- [ ] do asapâ? I tried [[s:- [ ] do asap]] and all variations like url-escaping, using different ââ versions and alike but canât get it running.