It appears to me that if you put a tag into the text of a saved query (not in the query, but in the preamble text above or below the JSON), that the tag can’t be found by the Inline Tag Navigator? Am I seeing this correctly? There’s a certain irony that I can’t use ITN to find queries for ITN.
This is by design @MarkS, but I do have something for you, which might help you locate and load queries more easily, and also addresses the earlier feature request.
v2.8.0
added: saved queries dropdown to search panel (see screenshot)
added: auto-load saved queries setting
Tip
I have the following query saved in a note titled "00 backlinks". This way, I can always select from the list of queries the backlinks query to get all backlinks to the current note.
Is there something we have to do to activate the new drop-down list? For me, it’s not populating. I did do the update database thing, since the docs said that that would sometimes solve problems.
This is odd, I updated the plugin on a couple of devices and profiles and the dropdown populated with all saved queries. I assume that you see the dropdown, but it's empty? Try to save a new query in a note and see if the dropdown gets updated. If not, could you check the logs for tag-navigator related errors?
When I set the console to look for errors and warnings, there doesn’t appear to be any while saving. There’s a ton of output if I select “Info”, but it’s very unclear what it relates to.
I’m wondering if it has something to do with synchronisation? Like maybe the listing is being overwritten by the synchronisation database?
Hmm. Sounded like a great theory.
The plugin shows the drop-down as expected on Android. But the desktop (Linux Manjaro) still doesn’t show it populated (It shows the dropdown button, but there is nothing in it).
Thanks for updating @MarkS. The plugin tries to avoid circular results (it ignores matches in note views / saved queries), so I believe that you can un-exclude the notebook. Let me know if you see any issues.
I recently installed this plugin, and I think it will be helpful. My one issue right now is that it picked up a bunch of tags that aren’t mine, they already existed in notes that I grabbed with the clipper. Is there any easy way to mass delete all of those?
There are several ways to filter out or manipulate these tags.
The easiest way, probably, if applicable: Exclude your clipped notes notebook(s) entirely from the plugin's DB (see in this section: "You may exclude entire notebooks...").
The top 2 plugin settings help ignore noisy tags that may appear in code blocks or HTML notes (they are enabled by default, check if you may have disabled them).
There is an advanced setting that lets you exclude certain tags, if they share a common pattern (see this section).
Finally, you can go tag by tag and execute "Replace all" to change these tags so that they are no longer detected by the plugin.
Example: #clipped-tag >> `#clipped-tag` (tags within code are ignore by default, see the setting above).
How: Right-click on a tag in the plugin's search panel, select "Replace all" to rename the tag.
Note: This requires selecting each unwanted tag separately and renaming it.
@shikuz I think this might be difficult to implement, but I decided to ask anyway because it would be extremely helpful.
Right now, we can sort by note attributes, and tags are combined within a single note.
However, it would be very powerful to introduce a grouping option called “No grouping.” In that case, the note title would be repeated multiple times if several tagged paragraphs are found within the same note.
Additionally, it would be great to allow sorting at the paragraph level.
This would open up many possibilities:
Tasks could be sorted by due date - from nearest to farthest - simply by adding a //YYYY-MM-DD tag at the beginning of each paragraph.
Tasks could also be sorted by priority by adding tags like +A, +B, or +C at the beginning of the paragraph.
This turned out to be not too hard to implement. I mostly avoided it because having many cards with the same note title seemed a bit annoying to me (preserving the card system is what made this easy, and is unlikely to change). I hope you enjoy this new feature, maybe I will too.
The two use cases you described @tnwn are already possible, using the "custom" sorting option. Try writing: / in the sorting dialog and see your paragraphs sorted by date (and similarly for other nested or key-value tags). See this video.
v2.9.0
added: 'no grouping' mode for paragraph-level cross-note sorting and filtering
added: search tag at cursor from editor context menu (FR #35)
added: extend query from editor context menu (FR #35)
added: cmd/ctrl+click to extend query from nav panel (FR #35)
@shikuz Thank you very much! It would be great with the “paragraph”/“card” sorting. Maybe I just didn’t find this sorting, but it looks like it is not implemented.
See it on the screenshot. The idea was to sort all tasks between notes by task names. And if my task names start with “- //YYYY-MM-DD” - so they will be sorted by due date. So you will have due date sorting across all your notes. Or priority sorting across all notes and so on. But on the screenshot, there is random sorting now.
I agree with you; the repetitive “Payments” heading is annoying. But I can live with it if I have a tool that fetches and sorts by priority all tasks across all projects/features. So I can just go from the top to the bottom and jump from feature to feature by priority/due date.
So my tasks will be sorted first by due date (if have some), then by priority, then by feature name (so tasks with the same priority and feature name will be close to each other).
I can reach it, if I have sorting by “paragraph”, I just need to keep the same tags order for task descriptions:
While there is currently no paragraph sorting @tnwn, you can sort by multiple tags (date first, priority later, and so on). I may add text / paragraph sorting later, but I think that current sorting is a useful feature to be familiar with. It does not require typing the tags in any particular order - the sorting order is defined in the query.
The trick is that anything nested, such as #parent/child (or +parent/child), can be sorted by parent (+parent).
Example: //YYYY-MM-DD +priority/A #feat/sorting @by/shikuz test tag sorting
In the custom sort dialog write: /,+priority,feat,@by (hashes are omitted by default).
Yes, I tried it and thought that it doesn’t work. Now I checked again, and discovered that / ascending sorting doesn’t work, but descending works. I think the reason is that I am using a special tag for the due tasks //2026-02-12//⏰ - and this “alarm emoji” doesn’t mixed up with descending order, but spoils ascending order.
Thank you; now I see how I can make it work. I am still a bit hesitant to use nested tags, as it requires two additional letters in tags. For example, //d/ for dates, +p/ for priority, @a/ for assignees.
But maybe it is a viable solution, and I just need to switch:
Sheduled dates: //YYYY-MM-DD // => #s/YYYY-MM-DD
Finished dates: //YYYY-MM-DD => #d/YYYY-MM-DD
Priority: +ab (for active blocker, and so on) => #p/ab
Feature or project: #Feature => #f/Feature
Asignee: @Asignee => do not see the case where I need to sort by asignee, so it can stay as is
Please tell me if you decide not to implement “paragraph” sorting. Because I like my current //,+,#,@ system. But I will change it if “paragraph” sorting is difficult (or unnecessary for some reasons) to implement.
It is outstanding!
Now I can sort all my “pending” tasks at the beginning of the week by priority across all projects. The most important will be on the top. And when I add the `//⏰/YYYY-MM-DD` tag to the task, it will be filtered out from the list of all “pending” tasks. So in this way I create two lists of “pending” and “scheduled” tasks quickly. “Pending” = backlog, “scheduled” = plan for the week.
Thank you for this great plugin. Despite not being primarily intendes for task management it seems many users including me use it for that pupose. I have been wondering, how to build search queries. I am specifically looking for the way to set up a query like (#tag_a OR #tag_b) AND #tag_c=value. How would I do the same for a range of values for #tag_c? I checked the documentation on GitHub but was not able to figure out how to edit the query to set the parentheses.
The plugin uses queries in a form called DNF in order to simplify things under the hood. Basically, (A AND B AND C) OR (D AND E), or AND clusters with OR between them. Your query can be easily written this way too: (#tag_a AND #tag_c=value) OR (#tag_b AND #tag_c=value).
For a range of values, you could use tag ranges (right-click anywhere on the panel to hide/show the tag ranges section), if your values form a range such as A to D (lexicographic), apple to dragons (again, anything in the phone book between apples and dragons), 20 to 40, or 1999-12-31 to 2000-01-01. Ranges form a single element in the query so they are easy to integrate. The alternative is to build a longer query like (#tag_a AND #tag_c=value1) OR (#tag_a AND #tag_c=value2) OR (#tag_b AND #tag_c=value1) OR (#tag_b AND #tag_c=value2).
UPDATE: @tgr I intend to support also queries in the form of AND-of-(ORs) like you asked about, in addition to the current OR-of-(ANDs) in the next release of the plugin (PR).