Notebook-specific tags

Is there any way to assign tags to notebooks? Or some sort of hierarchical tag system?
It might be a dealbraker for me :frowning_face:

Hi, hierarchical tags have been discussed a few times but I don't think they are in the works for complexity reasons at the moment. Also, no, I don't think there is a way to assign a tag to a notebook.

I have personally taken to creating "fake" nested tags (like client: <name>) which works ok because I can use a wildcard while searching tag:client* to see the (fake) top-level "notebook". It's not perfect I realize, but might give you something to consider.

1 Like

Thanks i'll try it :+1:

Instead of hierarchical tags I use hierarchical notebooks and manually add secondary tags. That lets me search by parent or child. With (notebook:) and (any:1) without (tag:) hierarchy.

But... there is no batch tagging
To make this work well I need the ability to batch tag notes from a search result (select all/none checkboxes). That lets me search a child notebook: -tag:ToBeAdded then batch tag. Having the search show the notebook of each result would make untagging easy too. Its not drag and drop tagging but it has more fine control. It might be an alternative to the tag.all performance bottleneck. To make this hierarchical, search notebook: would need to also search subnotebooks

Tags, favorites and notebooks would each be more accessible with collapse/expand button for when a user has them sharing a column. All 3 are fast find options, so only one is needed at a time. Until then I place favorites under notebooks so when I toggle notebooks favorites is expanded.

I like that approach. Sounds like this plugin might help your workflow? Tagging plugin / (Copy Tags plugin)

A 'top note' in each notebook that backlinks to the parent notebook 'top note' will add a default hierarchy layer to the graph view plugin.
The tagging plugin using the tag on that 'top note' will allow changing hierarchical tagging structure (for simpler searches).
I will manually add ancestors tags and the parent backlink to a top note when a new notebook is created. Every new note then only needs a link (with automatic backlink plugin) to the top note. As a habit it might not stop a rush of ideas.
I don't know how to write a plugin to replace the topnote and to template new notes with a parent backlink and tag.
Ancestor tags are easiest to enter with the tagging plugin. select notebook > F11 > click a note > ctrl+a > Tags > add or create top/notebook tag for all
For orphan notes I use the untagged plugin to repair them later

Duplicate categories across platforms

Most to least actionable

  1. Project goal tasks (task lists linked to notes & gantt charts)
  2. Responsibilities/maintenance (tags?)
  3. Interests/resources (Notebooks in Joplin)
  4. Archives (inactive from other 3)

Notebook cover notes and name tags (auto zettle w hierarchy)

Each new notebook gets a cover note with

  1. description of demarcation &/or svg logo/emoticon
  2. its 'notebook name' tag
  3. its parent cover note link (R Click Copy, Ctrl+v on top)
  4. a backlink from each of its notes when they are put there


  • backlinks (set to auto) extends the link graph UI into the tree.
  • The tagging plugin allows moving ancestor tags by selecting notebook > F11 > click a note > ctrl+a > Tags > change name tags for all.
  • Embed Search batch copy & pastes results for batch backlinking
    • search is multiterm, -exclusive, wildc*rded* and notebook: is recursive
  • Favorites includes searches like templates (but is not collapsible)
  • Orphan notes get the untagged plugin for later checking in a favorited search
  • note overview searches by API fields and sorts by any 1 of them. This is an auto updating note like a macro. Making the cover note auto updating for backlinks might be enough because I have to visit it every time I link to it.
    • Triggering an update on note/book updated_time (folder_title or parent_id) or note item_change (parent_id if moved or title) would mean storing these fields and times in the note.


  • A plugin could enable automatically giving all notebooks/folders, cover note templates with all notes linked there. An update button for its backlinks and tags per branch and overall. Is onEdit a JS event??? This might not be too resource intensive, although it seems to be stopping heirarchical tags.
  • Custom ordering notebooks (unlike notes & favorites) is only possible by numbering them.
  • Browsing the command pallet is too slow and obscure when you just want to toggle an extension. Intellisense is not enough. For example ctrl+shift+p favst to toggle favorites is not a real shortcut. All command pallet items should be shortcut enabled.
  • I need to write a gantt template with reminders (to remind me of the commands).

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.