You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 01aa0a7
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: np.Templating/CHANGELOG.md
+16Lines changed: 16 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,22 @@ See Plugin [Documentation](https://noteplan.co/templates/docs) for details on av
6
6
7
7
DBW: REMEMBER THAT IF YOU ADDED ANY HELPERS IMPORTS, ADD THEM TO THE HELPER MODULE TO GIVE SCRIPTS ACCESS TO THEM ALSO
8
8
9
+
## [2.4.2] 2026-05-14 @dwertheimer
10
+
11
+
### Fixed
12
+
13
+
-**`isValidYamlContent` vs markdown headings:** Headings such as `## Event:**` include a colon and were counted as YAML key lines. A template body framed with `---` horizontal rules (start and end) was then misclassified as a frontmatter block, `parse` returned an empty body, and Meeting Notes / renders produced no output. Markdown ATX heading lines (`#` … `######` followed by whitespace) are ignored for YAML detection so `---` around normal note text is not treated as frontmatter.
14
+
15
+
### Changed
16
+
17
+
-**New-note / output frontmatter rules:** Fences at the **first line of the template body** (after the template’s own YAML frontmatter) may use `--` or `---`. The enclosed region is treated as output frontmatter **only** if it is YAML-like (`isValidYamlContent`); otherwise the fences and text between stay normal content. Closing delimiter pairs match the opener (`---` with the next `---`, not an intervening `--` line). Leading `--` blocks are parsed in `getSanitizedFmParts` because `front-matter` ignores `--` fences. `FrontmatterModule.isFrontmatterTemplate` accepts both `--` and `---` openers with the same YAML gate.
Copy file name to clipboardExpand all lines: np.Templating/plugin.json
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,9 @@
3
3
"noteplan.minAppVersion": "3.21",
4
4
"plugin.id": "np.Templating",
5
5
"plugin.name": "📒 Templating",
6
-
"plugin.version": "2.4.1",
6
+
"plugin.version": "2.4.2",
7
7
"plugin.releaseStatus": "beta",
8
-
"plugin.lastUpdateInfo": "2.4.1: Fix TemplateRunner replaceHeading with <current> so location: replace + replaceHeading: true removes the target heading.\n2.4.0: TemplateRunner getNoteTitled calendar targets — rendered dates (YYYY-MM-DD, YYYY-MM, YYYY-Qn, YYYY) and new relative tokens; preserves YAML false/0 in frontmatter parsing.\n2.3.2: Frontmatter onePromptAtATime / batchPrompts false — disable auto Command Bar batching per template.\n2.3.1: promptForm({ ... }) — explicit single-tag Command Bar form; docs on PromptCommandBarForms / PromptCommands.\n2.3.0: Minor release — min NotePlan 3.21; Command Bar multi-field forms for batched prompts. Docs: https://noteplan.co/templates/docs\n2.2.10: templateRunner run-from-code for newNoteTitle; return null when nothing executed so Forms shows error.\n2.2.9: Add triggerTemplateRunner command to automatically run templates when notes are opened\n- New hidden command triggerTemplateRunner checks for runTemplateOnOpen frontmatter attribute\n- When a note with runTemplateOnOpen is opened, the specified template is automatically executed\n- Use triggers: onOpen => np.Templating.triggerTemplateRunner in note frontmatter to enable\n2.2.7: templateRunnerExecute now returns AI analysis errors from all code paths\n- Modified templateRunnerExecute to return Promise<string | void> instead of Promise<void>\n- Added hasAiAnalysisError helper function to detect AI analysis error marker\n- Updated all handler functions (handleCurrentNote, handleRegularNote, handleTodayNote, handleWeeklyNote) to return errors\n- Updated handleNewNoteCreation to return rendered content if it contains AI analysis error\n- All early return paths in templateRunnerExecute now check for and return AI analysis errors\n- This allows Forms plugin to capture and display template rendering errors to users\n2.2.6: (previous version)\n2.2.5: fix messaging in templateNew when templates not found\n- Support template:ignore code blocks in templates\n2.2.4: fix <default> templateLocale setting to allow for locale-specific date/time formatting\n2.2.3: add new weather formatting fields (location.*, :formatted: etc.",
8
+
"plugin.lastUpdateInfo": "2.4.2: Output frontmatter only when body starts with --/--- and inner is YAML-like; --- pairs ignore embedded -- lines; getSanitizedFmParts parses leading -- fences; isValidYamlContent skips ATX headings (--- HR around markdown).\n2.4.1: Fix TemplateRunner replaceHeading with <current> so location: replace + replaceHeading: true removes the target heading; TemplateRunner debug logging for large bodies.\n2.4.0: TemplateRunner getNoteTitled calendar targets — rendered dates (YYYY-MM-DD, YYYY-MM, YYYY-Qn, YYYY) and new relative tokens; preserves YAML false/0 in frontmatter parsing.\n2.3.2: Frontmatter onePromptAtATime / batchPrompts false — disable auto Command Bar batching per template.\n2.3.1: promptForm({ ... }) — explicit single-tag Command Bar form; docs on PromptCommandBarForms / PromptCommands.\n2.3.0: Minor release — min NotePlan 3.21; Command Bar multi-field forms for batched prompts. Docs: https://noteplan.co/templates/docs\n2.2.10: templateRunner run-from-code for newNoteTitle; return null when nothing executed so Forms shows error.\n2.2.9: Add triggerTemplateRunner command to automatically run templates when notes are opened\n- New hidden command triggerTemplateRunner checks for runTemplateOnOpen frontmatter attribute\n- When a note with runTemplateOnOpen is opened, the specified template is automatically executed\n- Use triggers: onOpen => np.Templating.triggerTemplateRunner in note frontmatter to enable\n2.2.7: templateRunnerExecute now returns AI analysis errors from all code paths\n- Modified templateRunnerExecute to return Promise<string | void> instead of Promise<void>\n- Added hasAiAnalysisError helper function to detect AI analysis error marker\n- Updated all handler functions (handleCurrentNote, handleRegularNote, handleTodayNote, handleWeeklyNote) to return errors\n- Updated handleNewNoteCreation to return rendered content if it contains AI analysis error\n- All early return paths in templateRunnerExecute now check for and return AI analysis errors\n- This allows Forms plugin to capture and display template rendering errors to users\n2.2.6: (previous version)\n2.2.5: fix messaging in templateNew when templates not found\n- Support template:ignore code blocks in templates\n2.2.4: fix <default> templateLocale setting to allow for locale-specific date/time formatting\n2.2.3: add new weather formatting fields (location.*, :formatted: etc.",
9
9
"plugin.description": "Templating Plugin for NotePlan",
10
10
"plugin.author": "Mike Erickson (@codedungeon) and David Wertheimer (@dwertheimer)",
0 commit comments