Plugin that supports tag nesting to create multiple hierarchies for tags?

I've been using evernote for a while now, but recently I've been thinking of switching to joplin. But ran into problems with the tag hierarchy.

I use a lot of tags in evernote, and established a set of self-tagging system, but when I exported all the articles from evernote, and imported into joplin, I found that the tags are only one layer, there is no support for hierarchical nesting of the plug-ins?

Welcome @okuc!

There is a plugin that introduces support for nested tags. That is, search for #parent to find also notes that are tagged as #parent/child1, #parent/child2, or #parent/child1/grandchild. Note that this plugin requires storing the tags in the notes' text ("inline tags"), which can be anywhere within the note (commonly, the first / last lines are used). If you find this useful, follow these steps:

  1. Install the Inline Tag Navigator plugin.
  2. Convert, using the plugin, your current tags to inline tags. By default, this will add them to the first line of the note (this can be changed in the settings).
  3. Replace, using the plugin, existing shallow tags (#child) with nested ones (#parent/child), by right-clicking on a tag in the tag navigator panel and selecting Replace all.
  4. Use the tag navigator panel to search for tagged notes, or even specific tagged paragraphs.
1 Like

Will this plugin display a list of all the nested or unnested tags in a pane, like the default tag list?

Also, it seems the plugin treat any phrase starting with # as a tag. Sometimes we use # for different things, such as numbers (e.g., "Podcast #212") or color code ("#2E3440"). How should we rewrite the notes to differentiate them from inline tags?

It currently shows all the tags sorted (by name, or optionally by frequency), so nested tags appear next to one another. This view is different though from the standard Joplin / Evernote tag list / tree. It's the filter-while-you-type kind, and tries to save space on the panel. It has its pros and cons.

image

In the Advanced Settings of the plugin you may define an Exclude regex that ignores tags that match it. For the scenarios that you described, this could be #(\d+|[a-fA-F0-9]{6})$.

Many thanks!

Is the inline/nested tag system meant to replace the standard Joplin tags or they are supposed to work together and complement each other?

If I have hundreds of tags, I guess a full tag list/tree would be helpful to see them at a glance.

Thanks again for making this plugin!

It's totally up to you whether to use one system or both. The plugin can sync the two systems of tags (from Joplin to inline, and from inline to Joplin, check the commands under the Tools -> Tag Navigator menu).

I'll consider it. The tag search panel is already a little too crowded in my opinion. However, I could add a third (!) panel with a list / tree of tags, that can be hidden when not needed. A click on a tag will update the search panel with results that match this tag.

EDIT: I could also try instead to add a tree view to the current tag navigation panel, so that a user may switch between a view of the notes in the open note and a view of all available tags.

1 Like

See the latest release of the plugin, which adds this feature.

1 Like

Just tried it. This is really very cool! Thanks for the hard work.

How can I move the navigation panel below the search panel as seen in your video? My panels are arranged side by side.

1 Like

Thanks!

From the View menu, select Change application layout to rearrange all Joplin panels.

1 Like