joplin-plugin-tag-navigator 0.7.4 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  Type inline #tags in the note editor. View your tagged paragraphs and list items in an advanced search panel, or in a generated note. Convert inline and Obsidian tags into Joplin tags, and vice versa.
6
6
 
7
+ [Community discussion thread](https://discourse.joplinapp.org/t/plugin-inline-tag-navigator-v0-8-0-2024-06-26/35726)
8
+
7
9
  - [Features](#features)
8
10
  - [Demos](#demos)
9
11
  - [Tips](#tips)
@@ -16,10 +18,13 @@ Type inline #tags in the note editor. View your tagged paragraphs and list items
16
18
  This plugin adds inline tag support (such as #inline-tag) to [Joplin](https://joplinapp.org) in five ways:
17
19
 
18
20
  1. It adds a panel for searching and viewing tagged paragraphs across all your notes ([video](https://www.youtube.com/watch?v=im0zjQFoXb0)).
19
- - Save favourite search queries in notes and sync them across devices ([video](https://www.youtube.com/watch?v=xIBZl2Ala9A)).
20
- - Tag-by-notes: Search for links or [[wikilinks]] to notes (including backlinks to the current note).
21
- - Add, replace and remove inline tags via the panel context menu (right-click on a tag).
22
- - Toggle checkboxes / TODOs from the panel, including [[x]it! style](https://xit.jotaen.net) checkboxes.
21
+ - **Save search queries** in notes and sync them across devices ([video](https://www.youtube.com/watch?v=xIBZl2Ala9A)).
22
+ - **Tag-by-notes:** Search for links or [[wikilinks]] to notes (including backlinks to the current note).
23
+ - **Edit tags:** Add, replace and remove inline tags via the panel context menu (right-click on a tag).
24
+ - **Toggle checkboxes** / TODOs from the panel, including [[x]it! style](https://xit.jotaen.net) checkboxes.
25
+ - **Nested tags** hierarchy: Search parent tags to find the locations of their children. Example: #parent/child.
26
+ - Search for a **range of tags**, according to their lexicographic order. Example: #2024/07 -> #2024/08
27
+ - Search tags by **today's date**. Examples: #today, #today+1 (tomorrow), #today-10 (ten days ago)
23
28
  2. It can generate a note with all tagged paragaraphs that match a saved query (dynamically updated).
24
29
  - Save a query in a note, and switch note view on: `Tools --> Tag Navigator --> Toggle search results display in note`
25
30
  3. It adds a panel for quickly navigating between inline tags that appear in the current note.
@@ -45,12 +50,17 @@ After installing the plugin, check the commands listed under `Tag Navigator` in
45
50
  - For example, every word in the text may be defined as a tag using a custom regex such as `[A-Za-z0-9]+[\w]*`.
46
51
  - Inline TODOs:
47
52
  - Filter results by pending tasks (`"- [ ]"`) or ones done (`"- [x]"`).
48
- - Add support for [additional tags](https://github.com/CalebJohn/joplin-inline-todo?tab=readme-ov-file#confluence-style) for @mentions, +projects and //due-dates using a custom tag regex such as `(?<=^|\s)([#@+]|\/\/)([^\s#@+]*\w)`.
53
+ - Add support for [additional tags](https://github.com/CalebJohn/joplin-inline-todo?tab=readme-ov-file#confluence-style) for @mentions, +projects and //due-dates using a custom tag regex such as `(?<=^|\s)([#@+]|\/\/)([^\s#@'\"]*\w)`.
54
+ - Supported additional checkbox styles
55
+
56
+ ![custom checkboxes](img/checkboxes.png)
57
+
58
+ - You may increase the checkbox size on smaller screens by setting `Search: Panel style` with the CSS `.itags-search-checkbox { width: 18px; height: 18px; font-size: 18px }` (adjust as needed).
49
59
  - Tag / note filter keyboard shortcuts:
50
60
 
51
61
  | Key | Action |
52
62
  | --- | ------ |
53
- | Enter | Add tag / note to query |
63
+ | Enter | Add tag(s) / note to query |
54
64
  | 2nd Enter | Search notes based on current query |
55
65
  | Delete | Remove last added tag / note from query |
56
66
  | Esc | Clear the filter (display all tags / notes) |
@@ -63,7 +73,7 @@ After installing the plugin, check the commands listed under `Tag Navigator` in
63
73
  - You can highlight tags in the Markdown editor using [Rich Markdown](https://github.com/CalebJohn/joplin-rich-markdown) (version ≥ 0.14).
64
74
  - In `Joplin settings --> Rich Markdown --> Advanced Settings --> Custom classes JSON` enter:
65
75
  ```
66
- [{"name": "rm-tag", "regex": "(?<=^|\\s)#([^\\s#]*\\w)"}]
76
+ [{"name": "rm-tag", "regex": "(?<=^|\\s)#([^\\s#'\"]*\\w)"}]
67
77
  ```
68
78
  - In `Joplin settings --> Appearance --> Custom stylesheet for Joplin-wide app styles` add the following to the style sheet:
69
79
  ```
@@ -75,13 +85,13 @@ After installing the plugin, check the commands listed under `Tag Navigator` in
75
85
  display: inline;
76
86
  }
77
87
  ```
78
- - On the mobile app, since it is impossible to edit the stylesheet, one could instead define the name of the tag class to be `"name": "searchMatch"`. This will use the same highlighting style as Joplin search results.
88
+ - On the mobile app, since it is impossible to edit the stylesheet, one could install this [Rich Markdown fork](https://github.com/alondmnt/joplin-rich-markdown/releases/tag/v0.15-mobile-style-v4) (with predefined support for tags and checkboxes) or instead define the name of the tag class to be `"name": "searchMatch"`. This will use the same highlighting style as Joplin search results.
79
89
 
80
90
  ## Motivation
81
91
 
82
92
  - Notes are arguably the atomic blocks of information in [Joplin](https://joplinapp.org). They can be linked to, tagged, and come up in search results. Joplin is optimised for this, and these features are pretty efficient.
83
93
  - However, among 100s-1000s of long-form notes (that are hardly "atomic"), it remains challenging to find a small piece of information, idea, or memory.
84
- - Tags can be especially helpful in distinguishing between the content of a text (what it's about) and its form or function (what type of text it is or what purpose it serves). The first is more easily captured by traditional or [semantic search](https://github.com/alondmnt/joplin-plugin-jarvis). The latter can be conveniently captured by tags, such as #concept, #plan, #memory, #realization, #idea, #review, #bug, #feature, and others.
94
+ - Tags can be especially helpful in distinguishing between the content of a text (what it's about) and its form or function (what type of text it is or what purpose it serves). The first is more easily captured by traditional or [semantic search](https://github.com/alondmnt/joplin-plugin-jarvis). The latter can be conveniently captured by tags, such as #concept, #plan, #memory, #realisation, #idea, #review, #bug, #feature, and others.
85
95
  - I'd like to experiment here with information retrieval from single paragraphs, or outline items, as atomic blocks of information, using inline tags.
86
96
 
87
97
  ## Objectives
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "joplin-plugin-tag-navigator",
3
- "version": "0.7.4",
3
+ "version": "1.0.0",
4
4
  "scripts": {
5
5
  "dist": "webpack --env joplin-plugin-config=buildMain && webpack --env joplin-plugin-config=buildExtraScripts && webpack --env joplin-plugin-config=createArchive",
6
6
  "prepare": "npm run dist",
@@ -29,6 +29,7 @@
29
29
  "webpack-cli": "^4.10.0"
30
30
  },
31
31
  "dependencies": {
32
+ "date-fns": "^3.6.0",
32
33
  "lodash.debounce": "^4.0.8",
33
34
  "markdown-it": "^14.0.0",
34
35
  "markdown-it-task-lists": "^2.1.1"
@@ -6,7 +6,7 @@
6
6
  "desktop",
7
7
  "mobile"
8
8
  ],
9
- "version": "0.7.4",
9
+ "version": "1.0.0",
10
10
  "name": "Inline Tag Navigator",
11
11
  "description": "Type inline #tags in the note editor. View your tagged paragraphs and list items in an advanced search panel, or in a generated note. Convert inline and Obsidian tags into Joplin tags, and vice versa.",
12
12
  "author": "Alon Diament",
@@ -24,6 +24,6 @@
24
24
  ],
25
25
  "screenshots": [],
26
26
  "icons": {},
27
- "_publish_hash": "sha256:eb316a04434cce687946f02354dc55bac7d7245c00a34a728c4010d795a6e43b",
28
- "_publish_commit": "main:5a2e7fa02fc811c55849a0939779133f91f44b85"
27
+ "_publish_hash": "sha256:515fe86bc4de9928e34c571085d4abd24963ea202ebbbb17851c9b01f400eefe",
28
+ "_publish_commit": "main:6d36bbc0566b267d41ce9cc990dfe86a6b53c2db"
29
29
  }