Birch 1.5.0 Dev Release

  • Added syntax highlighting to search box.
  • Added shortcuts for tags in search syntax.
    • To find all tagged items: #. Symantically expands to @data-tags
    • To find item with tagname: #tagname. Symantically expands to @data-tags matches (^|,)tagname($|,)
  • Added shortcuts for some attribute names:
    • To find @data-status items you can use @status shortcut.
    • To find @data-priority items you can use @priority shortcut.
  • Added click to search on badges (tags, status, priority)
  • Added API for attribute name shortcuts in query language.
  • Fixed bug where search wasn’t constrained to hoisted item.

Install Birch


the download link is dead.


@raguay Thanks. Should be fixed now, was a permission issue.


I like the clickable tag-labels … and the filtering …


This is looking like it’s really coming along. A few questions:

  1. Can I use my own tags yet, or only those hard-coded into the app (e.g. those shown in @complexpoint’s post above)?
  2. Can you post an example or two of the filtering search syntax? I used to have a common search that I did with Jamie’s plugin, where I searched for a string that was also a header: e.g., it would return ## John but not John. How would I do that here?
  3. Will there likely be some automate-able ways of adding hyperlinks? I have a few text expander/keyboard maestro macros for adding the front Safari tab URL to a markdown document and using the selected text as the anchor. Not sure how to make something as efficient with the cmd-shift-k keystroke here.
  4. Possible to search across files? I’m thinking here of the command line tool from FoldingText that enabled @complexpoint’s “perspectives” plugin.

Init script to toggle set of tags

Right now it’s still just built in ones. Generic tag editing should come pretty soon, getting near top of my list.

At the moment (assuming you are using birch-markdown package it would be:

@data-type=Header and John

Though the Markdown package is in an incomplete state now. I’ll eventually add some shortcuts so the search can be header John. But right now just focusing on the core editor.

Here’s a script to do that I think. To use this:

  1. Atom > Open Your Init Script

  2. Paste in the following script

  3. Restart Atom and then when you have an outline open Command-Shift-P and type to choose the "Insert Safari Link"
    command. You can also setup a shortcut in your Atom Keymap.

getSafariURL = (callback) ->
  {BufferedProcess} = require 'atom'
  command = 'osascript'
  args = ['-e', 'tell application "Safari" to return URL of front document']
  stdout = (output) -> callback(output)
  exit = (code) -> callback(null)
  process = new BufferedProcess({command, args, stdout, exit})

atom.packages.serviceHub.consume 'birch-outine-editor-service', '1.0.0', (birchService) ->
  atom.commands.add 'birch-outline-editor', 'insert-safari-link', ->
    if editor = birchService.getActiveOutlineEditor()
      getSafariURL (url) ->
        if url
          url = url.trim()
          item = editor.insertItem(url)
          item.addElementInBodyTextRange 'A', href: url, 0, url.length

I’ve actually created a package to do this as a proof of concept, but it’s not very polished and I’m focusing on other things at the moment. If there’s interest I can post the code, but I’m not going to work on it much till I get more done on the core outliner.


Thanks for the response Jesse. Things are really getting close now for me to try to switch over to Birch for some real work. Looking forward to continuing to track development.