A number of recent threads have mentioned that future versions of Bear may have a live Table of Contents function, likely housed within the note Information Panel. It’s also been mentioned that backlink functionality may be added at some point, housed in the same place.
All of this is welcome as far as I am concerned. However, my concern is this: Bear, as a note-taking app (on the Mac especially), should be as keyboard-focused as possible. Less mousing, more typing. The sidebar solution would seem to be very mouse/trackpad-centric. If it is as I am imagining it to be then it’s both inefficient and lends itself to bad ergonomics.
So, I thought I would share the solution that I’ve been using for some time, cooked up using Keyboard Maestro. (I’ll just share the screenshot here. It’s a very simple macro but I can post the macro file if anyone is interested.)
This is partly inspired by drgrib’s fantastic workflow for navigating Bear using Alfred. However, any user of a Mac should be familiar with the functionality.
The macro just reads the current note as markdown, extracts the headings, puts these in a list prompt, and then opens the selected heading using the Bear URL scheme.
It’s not pretty, and it can get a bit slow when working with a very long note (as it has to read the whole note each time it runs), but in general it works very well.
Such lists look much better in Alfred than in KM. Here’s what drgrib’s aforementioned workflow looks like for me:
In any case, it’s the basic principle that I’m interested in.
For me, Bear, as it is now, has only one major flaw in its UI: its search functionality is very powerful but the search bar itself is this teeny tiny little thing that I have to squint to see every time.
A natively developed Spotlight- or Alfred-style floating menu, like above, which dealt with finding notes, navigating their headings, and finding text within them, would be far, far better. Such a solution looks better, it’s quicker and more efficient to use, and it’s better for RSI sufferers like me.
Of course, I don’t expect this to appear any time soon, if it ever does. A more immediate solution would be to make the necessary information accessible for users to craft their own scripts and macros.
The Alfred workflow for Bear is great but also limited by the amount of information that Bear will share with it. Likewise, my own very simple macro has to read the whole note in plain text each time. This works well enough for the Table of Contents but won’t be any good if/when backlinks functionality is added, and so on.
I’m sure that all of this has been considered somewhere along the line. However, given how important Bear is becoming to my own working practices, I wanted to just share these thoughts.