joplin-plugin-tag-navigator 2.10.7 → 2.11.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
@@ -137,6 +137,7 @@ After installing the plugin, check the commands listed under `Tag Navigator` in
137
137
  - When the `Tag inheritance` setting is enabled (by default), tags are automatically inherited in three ways:
138
138
  1. **Outline/indentation inheritance**: Tags are inherited from parent items to their children based on indentation levels.
139
139
  - Example: If `#project/website` appears on a parent line, all indented child lines will also be tagged with `#project/website`
140
+ - Exception: four or more spaces of indent after a blank line, outside a list, is a Markdown code block. Those lines are skipped entirely when `Ignore code blocks` is on, so they neither carry nor inherit tags.
140
141
  2. **Heading inheritance**: Tags are inherited from headings to all content under that heading.
141
142
  - Example: If `## Meeting Notes #urgent` appears as a heading, all other *tagged lines* under that heading will also be tagged with `#urgent`
142
143
  3. **Top of the note inheritance**: Tags are inherited from the first 2 lines of the note.
@@ -485,33 +486,61 @@ Context expansion lets you reveal surrounding lines around search results to see
485
486
 
486
487
  ### Styling inline tags
487
488
 
488
- The Markdown preview pane and the Tag Navigator search panel wrap every matched tag in the class `itags-search-renderedTag` and, when the token starts with `#`, `@`, `+`, `//`, or any other character, add `itags-search-renderedTag--hash`, `--at`, `--plus`, `--slash`, `--<other char>`. You may modify their appearance in `userstyle.css` (for Markdown preview), or in the `Search: Panel style` setting (for the plugin's search panel).
489
+ Tags are displayed on three surfaces: the search panel, the Markdown preview and the Markdown editor. Every rendered tag carries a shared class and a surface-specific one, each in a plain and a per-prefix form:
490
+
491
+ | Class | Matches |
492
+ | ----- | ------- |
493
+ | `itags-tag`, `itags-tag--hash` / `--at` / `--plus` / `--slash` | every surface |
494
+ | `itags-search-renderedTag` (panel, preview), `itags-editor-tag` (editor), each with the same prefix suffixes | one surface |
495
+
496
+ The `Inline tags: Style` setting takes custom CSS and applies it to all three. **This is the only way to restyle tags on mobile**, where `userstyle.css` cannot be edited. Your rules override the bundled default without needing `!important`.
497
+
498
+ `Search: Panel style` and `Navigation: Panel style` style those panels as a whole rather than tags.
489
499
 
490
500
  <details>
491
- <summary>CSS example for tag styling</summary>
501
+ <summary>CSS examples for tag styling</summary>
502
+
503
+ Style every tag on every surface:
492
504
 
493
505
  ```css
494
- /* optional: specify different sub-styles for each type of tag */
495
- .itags-search-renderedTag {
496
- background-color: #a576b3ff;
497
- } /* global style */
506
+ .itags-tag {
507
+ background-color: #a576b3;
508
+ }
509
+ ```
510
+
511
+ Give each type of tag its own colour, everywhere:
498
512
 
499
- .itags-search-renderedTag--at {
513
+ ```css
514
+ .itags-tag--at {
500
515
  background-color: #6fae4a;
501
- } /* type-specific style */
516
+ }
502
517
 
503
- .itags-search-renderedTag--plus {
518
+ .itags-tag--plus {
504
519
  background-color: #ae4a6f;
505
520
  }
506
521
 
507
- .itags-search-renderedTag--slash {
522
+ .itags-tag--slash {
508
523
  background-color: #4a6fae;
509
524
  }
510
525
  ```
511
526
 
512
- </details>
527
+ Style one surface differently from the others. Avoid `display: inline-block` in the editor, where it disturbs caret placement:
513
528
 
514
- For the Markdown editor see Rich Markdown in the [Companion plugins](#companion-plugins) section.
529
+ ```css
530
+ /* preview and panel only */
531
+ .itags-search-renderedTag {
532
+ display: inline-block;
533
+ margin: 2px 0;
534
+ }
535
+
536
+ /* editor only */
537
+ .itags-editor-tag {
538
+ background-color: transparent;
539
+ border-bottom: 2px solid #7698b3;
540
+ }
541
+ ```
542
+
543
+ </details>
515
544
 
516
545
  ### Keyboard shortcuts
517
546
 
@@ -562,28 +591,6 @@ For the Markdown editor see Rich Markdown in the [Companion plugins](#companion-
562
591
 
563
592
  - The excellent [Inline Tags](https://github.com/roman-r-m/joplin-inline-tags-plugin) plugin can autocomplete tags while typing.
564
593
  - Use [YesYouKan](https://github.com/joplin/plugin-yesyoukan) to visualize kanban views generated by Tag Navigator as interactive kanban boards.
565
- - You can highlight tags in the Markdown editor using [Rich Markdown](https://github.com/CalebJohn/joplin-rich-markdown) (version ≥ 0.14).
566
-
567
- <details>
568
- <summary>Rich Markdown setup instructions</summary>
569
-
570
- - In `Joplin settings --> Rich Markdown --> Advanced Settings --> Custom classes JSON` enter:
571
- ```
572
- [{"name": "rm-tag", "regex": "(?<=^|\\s)#([^\\s#'\",.()\\[\\]:;\\?\\\\]+)"}]
573
- ```
574
- - In `Joplin settings --> Appearance --> Custom stylesheet for Joplin-wide app styles` add the following to the style sheet:
575
- ```
576
- div.CodeMirror .cm-rm-tag {
577
- background-color: #7698b3;
578
- color: white !important;
579
- padding: 0em 2px;
580
- border-radius: 5px;
581
- display: inline;
582
- }
583
- ```
584
- - 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.
585
-
586
- </details>
587
594
 
588
595
  ## Motivation
589
596
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "joplin-plugin-tag-navigator",
3
- "version": "2.10.7",
3
+ "version": "2.11.0",
4
4
  "scripts": {
5
5
  "test": "jest",
6
6
  "dist": "webpack --env joplin-plugin-config=buildMain && webpack --env joplin-plugin-config=buildExtraScripts && webpack --env joplin-plugin-config=createArchive",
@@ -16,6 +16,7 @@
16
16
  "publish"
17
17
  ],
18
18
  "devDependencies": {
19
+ "@codemirror/lang-markdown": "^6.5.2",
19
20
  "@codemirror/view": "^6.26.0",
20
21
  "@joplin/lib": "~2.9",
21
22
  "@types/jest": "^29.5.14",
@@ -6,7 +6,7 @@
6
6
  "desktop",
7
7
  "mobile"
8
8
  ],
9
- "version": "2.10.7",
9
+ "version": "2.11.0",
10
10
  "name": "Inline Tag Navigator",
11
11
  "description": "Type inline tags or frontmatter in the note editor. View your tagged paragraphs and tasks / TODOs in a search panel, or in a generated note / kanban. Build a table view / database from notes and tags. Convert between Obsidian tags and Joplin tags.",
12
12
  "author": "Alon Diament",
@@ -24,6 +24,6 @@
24
24
  ],
25
25
  "screenshots": [],
26
26
  "icons": {},
27
- "_publish_hash": "sha256:4c7b1ed686ab21381e3d18705952a0894a335b1c5b5e40d9a66080e3b89ee887",
28
- "_publish_commit": "main:f70997bfa650df7a088f43371511248861f07e7b"
27
+ "_publish_hash": "sha256:d91e686d0c4c180e6604b6c84ebd3584ff5b5ac4ecc660e4f4cb2075cf5f51e1",
28
+ "_publish_commit": "main:d741a25c27887c7c2091fd1c5076001f878406fb"
29
29
  }