joplin-plugin-calendar-notes 1.0.1 → 1.1.2
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
|
@@ -1,181 +1,50 @@
|
|
|
1
1
|
# Calendar Notes
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A Joplin plugin that adds a calendar panel for daily notes.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Modes
|
|
6
|
+
|
|
7
|
+
- **Zen** — one note per day. Click a day -> open or create the day's note.
|
|
8
|
+
- **Flow** — multiple notes per day. Click a day -> select it; a section below the calendar lists that day's notes (click to open) and provides a `+ New note` button.
|
|
9
|
+
|
|
10
|
+
Switch modes in **Tools → Options → Calendar Notes**.
|
|
6
11
|
|
|
7
12
|
## Features
|
|
8
13
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
16
|
-
- Store new calendar notes in a dedicated notebook path.
|
|
17
|
-
- Use an existing Joplin note as a template for newly created calendar notes.
|
|
18
|
-
- Supports English and Russian UI text.
|
|
14
|
+
- Calendar panel toggled from the toolbar or **Tools → Toggle Calendar**.
|
|
15
|
+
- Days with existing notes are highlighted.
|
|
16
|
+
- Configurable note title formats (Zen and Flow).
|
|
17
|
+
- Configurable target notebook path; missing notebooks are created automatically.
|
|
18
|
+
- Optional template note with placeholders (`{{title}}`, `{{date}}`, `{{time}}`, `{{YYYY}}`, `{{MM}}`, `{{dd}}`, `{{date:dd.MM.YYYY}}`, …).
|
|
19
|
+
- Week starts on Monday or Sunday.
|
|
20
|
+
- English and Russian UI.
|
|
19
21
|
|
|
20
22
|
## Requirements
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
Joplin **3.5** or newer.
|
|
23
25
|
|
|
24
26
|
## Installation
|
|
25
27
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
When the plugin is available in the Joplin plugin registry:
|
|
29
|
-
|
|
30
|
-
1. Open **Tools → Options → Plugins**.
|
|
31
|
-
2. Search for **Calendar Notes**.
|
|
32
|
-
3. Install the plugin and restart Joplin if prompted.
|
|
33
|
-
|
|
34
|
-
### Manual installation
|
|
35
|
-
|
|
36
|
-
1. Download the plugin `.jpl` file from the release artifacts.
|
|
37
|
-
2. Open **Tools → Options → Plugins**.
|
|
38
|
-
3. Choose **Install from file**.
|
|
39
|
-
4. Select the downloaded `.jpl` file.
|
|
40
|
-
5. Restart Joplin if prompted.
|
|
41
|
-
|
|
42
|
-
## Usage
|
|
43
|
-
|
|
44
|
-
1. Click the calendar button in the note toolbar, or use **Tools → Toggle Calendar**.
|
|
45
|
-
2. The calendar panel opens with the current month.
|
|
46
|
-
3. Click a day:
|
|
47
|
-
- if a matching note already exists, it is opened;
|
|
48
|
-
- otherwise, a new note is created and opened.
|
|
49
|
-
4. Use **Previous**, **Next**, and **Today** to navigate the calendar.
|
|
50
|
-
5. Use **Refresh** if you want to update calendar markers manually.
|
|
51
|
-
|
|
52
|
-
## How notes are matched
|
|
53
|
-
|
|
54
|
-
Calendar Notes identifies existing notes by their title.
|
|
55
|
-
|
|
56
|
-
For each visible day, the plugin builds the expected title using the configured note title format. If a note with exactly that title exists anywhere in Joplin, the day is marked as having a note.
|
|
57
|
-
|
|
58
|
-
By default, notes are named using this format:
|
|
59
|
-
|
|
60
|
-
```text
|
|
61
|
-
{{YYYY-MM-dd}}
|
|
62
|
-
```
|
|
28
|
+
**From Joplin:** Tools → Options → Plugins → search for *Calendar Notes*.
|
|
63
29
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
```text
|
|
67
|
-
2026-01-05
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
> Existing calendar notes are searched globally by title in all notebooks. New notes are created in the configured notebook path, or in the currently selected notebook if no path is configured.
|
|
30
|
+
**Manual:** Tools → Options → Plugins → *Install from file* → select the `.jpl` file.
|
|
71
31
|
|
|
72
32
|
## Settings
|
|
73
33
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
Examples:
|
|
83
|
-
|
|
84
|
-
```text
|
|
85
|
-
{{YYYY-MM-dd}}
|
|
86
|
-
Daily note {{dd.MM.YYYY}}
|
|
87
|
-
Journal / {{YYYY}}-{{MM}}-{{dd}}
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
Supported date tokens:
|
|
91
|
-
|
|
92
|
-
| Token | Meaning | Example |
|
|
93
|
-
| --- | --- | --- |
|
|
94
|
-
| `YYYY`, `yyyy` | Four-digit year | `2026` |
|
|
95
|
-
| `YY` | Two-digit year | `26` |
|
|
96
|
-
| `MM`, `mm` | Two-digit month | `01` |
|
|
97
|
-
| `M`, `m` | Month without leading zero | `1` |
|
|
98
|
-
| `DD`, `dd` | Two-digit day | `05` |
|
|
99
|
-
| `D`, `d` | Day without leading zero | `5` |
|
|
100
|
-
|
|
101
|
-
### Week starts on
|
|
102
|
-
|
|
103
|
-
Controls the first day of the week in the calendar panel.
|
|
104
|
-
|
|
105
|
-
Available values:
|
|
106
|
-
|
|
107
|
-
- Monday
|
|
108
|
-
- Sunday
|
|
34
|
+
| Setting | Purpose |
|
|
35
|
+
| --- |-----------------------------------------------------------------------------------------------|
|
|
36
|
+
| Mode | Zen (one note/day) or Flow (multiple notes/day) |
|
|
37
|
+
| Zen mode title format | Title for the day's note, e.g. `{{YYYY-MM-dd}}` |
|
|
38
|
+
| Flow mode title format | Title for each Flow note; must contain `{{zenModeTitle}}`, e.g. `{{zenModeTitle}} - {{time}}` |
|
|
39
|
+
| Week starts on | Monday or Sunday |
|
|
40
|
+
| Calendar notes notebook path | Where new notes are created, e.g. `Calendar Notes/2026` |
|
|
41
|
+
| New calendar note template path | Joplin note used as a body template, e.g. `Templates/Calendar note` |
|
|
109
42
|
|
|
110
|
-
|
|
43
|
+
Each setting includes inline help in Joplin with the full list of supported tokens.
|
|
111
44
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
Example:
|
|
115
|
-
|
|
116
|
-
```text
|
|
117
|
-
Calendar Notes/2026
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
If the path does not exist, the plugin creates the missing notebooks automatically.
|
|
121
|
-
|
|
122
|
-
If this setting is empty, new notes are created in the currently selected notebook. If no notebook is selected, Joplin's first available notebook is used as a fallback.
|
|
123
|
-
|
|
124
|
-
Notebook paths may use `/` or `\` as separators.
|
|
125
|
-
|
|
126
|
-
### New calendar note template path
|
|
127
|
-
|
|
128
|
-
Allows using an existing Joplin note as the body template for newly created calendar notes.
|
|
129
|
-
|
|
130
|
-
Example:
|
|
131
|
-
|
|
132
|
-
```text
|
|
133
|
-
Templates/Calendar note
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
If this setting is empty, new calendar notes are created with an empty body.
|
|
137
|
-
|
|
138
|
-
The value is a Joplin note path. The last path segment is treated as the template note title, and the previous segments are treated as notebook names.
|
|
139
|
-
|
|
140
|
-
## Template placeholders
|
|
141
|
-
|
|
142
|
-
Template note bodies support placeholders that are replaced when a calendar note is created.
|
|
143
|
-
|
|
144
|
-
Example template:
|
|
145
|
-
|
|
146
|
-
```markdown
|
|
147
|
-
# {{title}}
|
|
148
|
-
|
|
149
|
-
Date: {{date}}
|
|
150
|
-
|
|
151
|
-
## Plan
|
|
152
|
-
|
|
153
|
-
-
|
|
154
|
-
|
|
155
|
-
## Notes
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
## Summary
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
Supported placeholders:
|
|
163
|
-
|
|
164
|
-
| Placeholder | Meaning | Example |
|
|
165
|
-
| --- | --- | --- |
|
|
166
|
-
| `{{title}}`, `{{noteTitle}}` | Generated note title | `2026-01-05` |
|
|
167
|
-
| `{{date}}`, `{{isoDate}}` | ISO date | `2026-01-05` |
|
|
168
|
-
| `{{YYYY}}`, `{{yyyy}}` | Four-digit year | `2026` |
|
|
169
|
-
| `{{YY}}` | Two-digit year | `26` |
|
|
170
|
-
| `{{MM}}`, `{{mm}}` | Two-digit month | `01` |
|
|
171
|
-
| `{{M}}`, `{{m}}` | Month without leading zero | `1` |
|
|
172
|
-
| `{{DD}}`, `{{dd}}` | Two-digit day | `05` |
|
|
173
|
-
| `{{D}}`, `{{d}}` | Day without leading zero | `5` |
|
|
174
|
-
| `{{date:dd.MM.YYYY}}` | Custom date expression | `05.01.2026` |
|
|
175
|
-
|
|
176
|
-
The `date:` placeholder accepts the same date tokens as the note title format.
|
|
45
|
+
## How notes are matched
|
|
177
46
|
|
|
178
|
-
|
|
47
|
+
Notes are matched globally by title using the configured format. New notes are created in the configured notebook path (or the selected notebook if the path is empty).
|
|
179
48
|
|
|
180
49
|
## License
|
|
181
50
|
|
package/package.json
CHANGED
|
Binary file
|
|
@@ -2,17 +2,22 @@
|
|
|
2
2
|
"manifest_version": 1,
|
|
3
3
|
"id": "com.github.eugenelesnov.CalendarNotes",
|
|
4
4
|
"app_min_version": "3.5",
|
|
5
|
-
"version": "1.
|
|
5
|
+
"version": "1.1.2",
|
|
6
6
|
"name": "Calendar Notes",
|
|
7
7
|
"description": "Create notes for any day in the calendar.",
|
|
8
8
|
"author": "Eugene Lesnov",
|
|
9
|
-
"homepage_url": "",
|
|
10
|
-
"repository_url": "",
|
|
11
|
-
"keywords": [
|
|
12
|
-
|
|
9
|
+
"homepage_url": "https://github.com/eugene-lesnov/joplin-plugin-calendar-notes",
|
|
10
|
+
"repository_url": "https://github.com/eugene-lesnov/joplin-plugin-calendar-notes",
|
|
11
|
+
"keywords": [
|
|
12
|
+
"calendar",
|
|
13
|
+
"navigation"
|
|
14
|
+
],
|
|
15
|
+
"categories": [
|
|
16
|
+
"productivity"
|
|
17
|
+
],
|
|
13
18
|
"screenshots": [],
|
|
14
19
|
"icons": {},
|
|
15
20
|
"promo_tile": {},
|
|
16
|
-
"_publish_hash": "sha256:
|
|
17
|
-
"_publish_commit": "main:
|
|
21
|
+
"_publish_hash": "sha256:b0e15dc56104c13d80531b94f7a819e5e1dd6a9699c568d516dce002655842d2",
|
|
22
|
+
"_publish_commit": "main:b2d9944b94c14d1d81598524f54ee975cd7ec7b2"
|
|
18
23
|
}
|