Releases: NotePlan/plugins
Releases · NotePlan/plugins
📝 Template Forms
dwertheimer.Forms Changelog
About dwertheimer.Forms Plugin
See Plugin README for details on available commands and use case.
[1.0.24] 2026-02-05 @dwertheimer
Fixed
- Processing Template dropdown selection: Selecting a new Processing Template from the dropdown now correctly shows the newly selected item instead of the previous value. Root cause: SearchableChooser only matched note objects by filename; NoteChooser passes the note title as value, so the match failed and the display reverted to the old value.
- GenericDatePicker (Safari/WebKit):
- Uncontrolled input: Switched to uncontrolled
<input type="date">(defaultValue only, no value=) so the native control owns segment state; prevents React from overwriting with empty and fixes month/day resetting and year showing 0001/0002 while typing. - No clear on empty onChange: Safari often fires change with an empty value when focusing the year segment or mid-typing; we no longer clear or call onSelectDate(cleared) in onChange. Clearing only happens on blur (field left empty) or Clear button.
- Partial-year guard: Only accept dates with year 1000–9999 in change/blur; ignore placeholder years (0002, 0020, 0202) so we don’t overwrite the field or steal focus when typing the year digit-by-digit.
- Sync effect: When
startingSelectedDateis falsy or invalid, the effect no longer clears the input (user may be mid-typing). We only push from parent when the prop has a valid date; sync is done by writing toinputRef.current.value. - Clear button: When clearing, we set
inputRef.current.value = ''so the DOM stays in sync. - Blur: On blur with empty value we clear and notify parent; on blur with valid full date (year 1000–9999) we commit and call onSelectDate.
- Uncontrolled input: Switched to uncontrolled
Documentation
- GenericDatePicker Safari limitation: Documented that in Safari/WebKit, typing in the native date input with a pause in a segment (e.g. year) can cause the next keystroke to replace rather than append (e.g. "0" then "2" may show "2" instead of "02"). This is browser behavior. Workaround: type the segment without pausing, or use the calendar picker. A text-field alternative (parse on blur) is noted as a possible future improvement in the component header.
[1.0.21] 2026-02-03 @dwertheimer
Changed
- formProcessorTitle eliminated: Deprecated
formProcessorTitlein favor ofreceivingTemplateTitleas the single canonical field. The two were redundant and could get out of sync. Going forward onlyreceivingTemplateTitleis used/written.- Backward compatible: Forms with only
formProcessorTitle(legacy) are still read correctly everywhere. On save, the value is migrated toreceivingTemplateTitleandformProcessorTitleis removed from the note. - TemplateRunner and form submission have always used
receivingTemplateTitle;formProcessorTitlewas only used in the Form Builder UI and could cause duplication.
- Backward compatible: Forms with only
[1.0.20] 2026-01-26 @dwertheimer
Fixed
- DynamicDialog Switch compact mode: Switch type now renders correctly in compact mode. Label is on the left and the switch on the right, matching other compactDisplay elements (InputBox, button-group, calendarpicker). Uses
input-box-container-compactwrapper; Switch’s internal label is hidden via CSS when compact.
[1.0.19] 2026-01-26 @dwertheimer
Fixed
- Create-new folder override: When creating a new note, a form field named
foldernow overrides any folder value from the form definition (newNoteFolder, template frontmatter, etc.) when passing data to templateRunner. Empty formfolderis ignored; form definition is used as fallback.
Changed
- ProcessingMethodSection: Folder field help text now states that a form field named
folderis used to set the folder for the new note.
[1.0.18] 2026-01-25 @dwertheimer
Fixed
- Form Field Focus Styles: Updated all form field focus styles to use
--tint-colorwith a heavier 2px border stroke for better visibility:- Input boxes, dropdowns, textareas, date pickers, and all chooser components now show a prominent
--tint-colorborder when focused - Added consistent box-shadow glow effect for all focused fields
- Fixed SearchableChooser focus styles to properly override base border styles using
!importantflags
- Input boxes, dropdowns, textareas, date pickers, and all chooser components now show a prominent
- SearchableChooser Loading State: Fixed multiple issues with SearchableChooser when fields are loading data:
- Loading Spinner: Added FontAwesome spinner icon (
fa-spinner fa-spin) that appears in the input field when loading. Spinner is properly centered vertically and positioned on the right side of the input. - Auto-Open Prevention: Fixed issue where dropdown would auto-open when field received focus but items were still loading, showing "No Options Available" instead of loading state. Dropdown now only opens automatically when items have finished loading.
- Placeholder Management: Fixed placeholder to show "Loading Values..." from initial render when loading is needed, preventing visual flip from "Type to search values..." to "Loading Values...".
- Focus Management: Fixed focus behavior so that when the first field finishes loading, focus automatically moves back to it if focus was previously set on a later field (e.g., 3rd field) while the first field was loading.
- Empty State Blank Line: Fixed issue where a blank, clickable line appeared in the dropdown when showing "No Options Available". Removed validation-message-placeholder div from dropdown options and made empty state non-clickable.
- Loading State Propagation: Added
isLoadingprop support toDropdownSelectChooserandContainedMultiSelectChooserto properly show loading state in all chooser variants.
- Loading Spinner: Added FontAwesome spinner icon (
- FrontmatterKeyChooser Loading Initialization: Fixed loading state initialization to start as
truewhen a frontmatterKey is provided, ensuring "Loading Values..." placeholder appears immediately instead of showing normal placeholder first. - SearchableChooser Color Override: Fixed issue where inline color styles were overriding the default CSS color (
var(--fg-main-color, #4c4f69)) even whenoptionColorwasnull,undefined, or the default'gray-500'value. Now only applies inline color styles when an explicit non-default color is provided, allowing the CSS default to be used otherwise.
Changed
- SearchableChooser Loading UX: Improved loading experience by showing spinner icon and wait cursor, preventing dropdown from opening prematurely, and ensuring proper focus management when loading completes.
- EventChooser Icon: Updated EventChooser dropdown icon from
fa-calendartofa-solid fa-calendar-altfor a more specific calendar-related icon that better represents event selection. - SearchableChooser CSS Improvements:
- Fixed loading spinner vertical centering (changed from
top: 56%totop: 50%with proper transform) - Improved spinner sizing to match arrow icon size (0.75rem) with proper line-height and height constraints
- Fixed dropdown portal spacing issues by removing fixed min-height and ensuring no extra padding/margins
- Fixed last option spacing to maintain consistent padding
- Fixed loading spinner vertical centering (changed from
- SearchableChooser Filtering: Enhanced default filter to also exclude blank/whitespace-only options in addition to templating syntax, preventing empty options from appearing in dropdown lists.
[1.0.17] 2026-01-25 @dwertheimer
Fixed
- SearchableChooser Templating Field Filter: Fixed SearchableChooser to automatically filter out options containing templating fields (e.g., containing "<%") by default. This prevents templating syntax from appearing in frontmatter key chooser and other dropdown option lists.
- SearchableChooser Manual Entry Indicator: Fixed issue where the pencil icon (manual entry indicator) was incorrectly appearing in empty/blank fields. The indicator now only appears when a non-empty value has been entered that is not in the items list, and only after the items list has finished loading.
- Frontmatter Key Values Filtering: Fixed
getFrontmatterKeyValuesto filter out templating syntax values (containing "<%") at the source, preventing templating errors when forms load. Templating syntax values are now excluded from frontmatter key chooser dropdowns. - ContainedMultiSelectChooser Create Mode: Fixed issue where ContainedMultiSelectChooser was not allowing creation of new items when the list was empty. Now allows creating new items even when
items.length === 0, as long asallowCreateis true and there's a search term with no matches.
Changed
- GenericDatePicker Calendar Auto-Close: Improved date picker UX by automatically closing the calendar picker immediately after selecting a date. Previously, users had to click the date and then click outside the picker to close it. Now a single click on a date both selects it and closes the calendar.
- SearchableChooser Debug Logging: Added comprehensive debug logging to SearchableChooser to help diagnose manual entry indicator issues. Logs include value checks, placeholder matching, and manual entry determination logic.
- FormBuilder Create-New Mode Fields: Split "Content to Insert" into two separate fields when processing method is "Create New Note":
- New Note Frontmatter: Separate field for frontmatter content (saved to
template:ignore newNoteFrontmattercodeblock) - New Note Body Content: Renamed from "Content to Insert" to clarify it's the body content (saved to
template:ignore templateBodycodeblock) - Frontmatter and body content are automatically combined with
--delimiters when sending to TemplateRunner - Fields are ordered with Frontmatter above Body Content for better workflow
- New Note Frontmatter: Separate field for frontmatter content (saved to
- TemplateTagEditor Raw Mode: All template tag editor fields (NewNoteTitle, Content to Insert, New Note Frontmatter, New Note Body Con...
⚡️ Quick Capture
What's changed in ⚡️ Quick Capture
See plugin documentation for more details, and how to configure.
[1.0.3] - 2026-01-31
- Bug fix for '/quick add line under heading' command writing tasks not text (thanks, @lt0807)
[1.0.2] - 2025-11-08
Chore
- Rebuild to pick up improvements in updated note + folder pickers and week handling libraries
[1.0.1] - 2025-11-07
- Improved display of icons and calendar notes in note picker.
- Fix typos in prompts in some commands (thanks for report, @dwertheimer)
[1.0.0] - 2025-08-25
(Somewhat arbitrarily promoting this to be v1 after more than 4 years!)
New
- support for adding text to Teamspace notes
- the commands where you can select a calendar note to use from the command bar, now
- show and allow you to pick future calendar notes, even that haven't already been created.
- annotate more calendar dates with their relative date (e.g. "in 3 days time")
- new setting 'Inbox Heading'. If the Inbox location is set to 'Daily' or 'Weekly' note, this is the Heading that inbox items are added under. If not set, then it will append or prepend to the note (as set below).
Changed
- improved display of list of headings (when running NP 3.18+)
- improved text of some placeholders
Fixed
- fix commands that deal with the edge case where a note has frontmatter but the
# Titleis not in it - fix edge case with '/qpc' command
- appending text in commands other than the "/quick add ... to inbox" ones
- when writing new Journal headings, it was ignoring the 'heading level' setting (thanks, @stacey)
- fix to some x-callback calls (thanks, @dutchnesss)
[0.16.1] - 2025-02-15
Changed
- improved handle what happens when a callback runs /qath, /qalh or /qach and asks for a future calendar note that hasn't yet been created. (But note: API doesn't allow calendar notes to be created.)
- improved display of relative dates in commmand bar.
[0.16.0] - 2024-02-13
Added
- new /quick add checklist under heading command
- new /jot command (full name /quick add text to inbox) to quickly 'jot' (add some text) to your chosen Inbox note
Fixed
- notes with pairs of
***separators aren't now sometimes confused with frontmatter sections (thanks to report by @haris-sav) - where a new heading needed to be added first, it wasn't always created as a heading (thanks to report by @colin)
[0.15.2] - 2023-12-07
Fixed
- '/quick add task under heading' using wrong paragraph type when inserting at top of note (thanks to tip by @laestrella26)
[0.15.1] - 2023-11-30
Added
- new x-callback argument to set heading level (1-5) on commands "/quick add task under heading" and "/quick add line under heading"
Fixed
- wrong display of number of '#' headings in the 'Choose Heading' dialog
[0.15.0] - 2023-09-01
Added
- new "/quick add to this month's journal and /quick add to this year's journal commands
Improved
- speeded up the slower /quick... commands
Fixed
- fixed bug using relative dates with x-callbacks (reported by @phenix)
[0.14.1] - 2023-08-27
Fixed
- /quick add line under heading: first note in list wouldn't work (thanks to report by @phenix)
- some relative dates not annotated in command bar lists
[0.14.0] - 2023-08-19
Added
- relative dates
today,yesterday,tomorrow,this week,last week,next week,this month,last month,next month,this quarter,last quarter,next quarterare available when using x-callback-url mechanism to invoke the "/quick add to calendar note", "/quick prepend task to calendar note", "/quick add task under heading" and "/quick add line under heading" commands. Pass in in place of the 'note title' or 'note date' argument (suitably URL encoded, of course). - the same commands, when run interactively from the command bar, now annotate these same dates, so you can find them more easily in the long list. The list remains sorted with most-recently updated first.
- the "quick add task to inbox" command can now take a second parameter for the note title (or even a relative date) when run from template or x-callback. See README for details.
[0.13.0] - 2023-03-24
Added
- command to edit settings, even on iOS
Breaking Changes
- command '/quick prepend task to daily note' is renamed to '/quick prepend task to calendar note' as it now covers any period of calendar note. The previous alias 'qpd' still works. Note: this also changes the x-callback-url parameter accordingly.
- same for '/quick prepend task to daily note' which is renamed to '/quick prepend task to calendar note'.
- therefore command '/quickly add to weekly note' is removed.
Changed
- 'append' commands now add before any archive section in the note, and 'prepend' commands now add after any frontmatter in the note.
Known bug
- there's a known bug in commands that add text under a heading, if there's an earlier non-heading line with same text as the heading line. I'm waiting on a fix to the API. (Thanks to @colin for the report.)
[0.12.1] - 2022-08-21
Added
- new /quick add to journal this week command, for those using weekly journals (for @John1)
[0.12.0] - 2022-08-01
Added
- greater flexibility when running these functions from x-callback calls. It's possible to send one or more empty arguments, and that will cause the missing argument(s) be requested from the user, as it it were run interactively. Note: this only works from NotePlan v3.6.1. (Requested by @John1)
- the matching of section headings in /qalh and /qath from x-callback calls is done as an exact match, or (from 0.12) just the first part of it. This means it's possible to have a section such as
## Journal for 3.4.22that changes every day, but still refer to it by the unchanging stringJournal.
[0.11.0] - 2022-07-15
Added
- the /addToInboxNote command can now send to the current Weekly as well as Daily or other fixed note. Note: please review your settings, as they have changed to accommodate this.
[0.10.1..0.10.0] - 2022-06-27
Added
- new command /quick add to Weekly note command
Fixed
- issue with passing YYYY-MM-DD dates as part of an x-callback invocation
[0.9.1..0.9.0] - 2022-05-12
Added
- /quick add task under heading and /quick add line under heading now can add to existing daily (calendar) notes, not just regular notes. This also works for x-callback calls to these plugin commands.
- ability to use these commands from x-callback-url calls. For example, calling the following (e.g. from the Shortcuts app, or even within NP itself) will do the equivalent of running the command
/quick add to journal todayand supplying with input 'something interesting':noteplan://x-callback-url/runPlugin?pluginID=jgclark.QuickCapture&command=quick%20add%20to%20journal%20today&arg0=something%20interesting
[0.8.0..0.8.6] - 2022-04-18
Changed
- code clean-up, removing references to old _configuration note, and moved to newer logging system
- now using new Configuration UI system instead of _configuration.
- Tweaks the
/intcommand's prompt text to remind user the title of the designated Inbox note (or today's daily note). (Thanks to @dwertheimer for the suggestion.) - changed back to using long command names
- (under the hood) updated settings ready for new settings UI
Fixed
- Flow Error in the last part of `quickCapture.js
- For some date locales, /int and /qaj were adding to tomorrow's note, not today's (thanks to @colingold for the report)
[0.7.0..0.7.2] - 2021-10-05
Added
- this feature requested by @bcohen44: "with a new _configuration setting
textToAppendToTasks, you can specify text (including hashtags or mentions) that will be appended to all new tasks created using the/intcommand." I've extended this to cover the other relevant commands provided by this plugin.
Fixed
- finally tracked down configuration bug (thanks to tip from @dwertheimer)
- broke ability to write to daily note in trying to fix the configuration bug (thanks to tip from @bcohen44 and @Elessar)
[0.6.0] - 2021-08-29
Added
- this feature requested by @Duclearc: "I want to be able to call the global NotePlan shortcut, and from it (using /qath) add a task to it on the fly to a heading. And if that heading doesn't exist, the plugin should create it." It allows creation of the new header both at the top and bottom of the note.
[0.5.0] - 2021-08-14
Changed
/intnow only looks forinboxTitlein the _configuration settings note. If the setting is missing, or doesn't match a note, then the plugin will try to create it, from default settings if necessary. If the empty string (inboxTitle: "") is given, then use the daily note instead- some code refactoring
[0.4.0..0.4.5] - 2021-07-09
Added
- add
/qajcommand: Quickly add text to the Journal section of today's daily note
Changed
- smarter prepending for
/qptcommand /intnow uses theTemplates/_configurationfile (described above) to get settings for this command, rather than have to change the plugin script file directly
Fixed
- bug fix with empty configurations (thanks to @renehuber)
[0.3.0..0.3.2] - 2021-05-16
Added
- add
/qptcommand: quickly prepend task - add
/qatcommand: quickly append task - add
inbox add taskcommand - add
quickly add a task to note sectioncommand - add
quickly add a text line to note sectioncommand
Changed
- change name of plugin to QuickCapture [EM suggestion]
- change to using short command names [EM suggestions]
🔗 Link Creator
"🧩 Link Creator Change Log
About np.CallbackURLs Plugin
See Plugin README for details on available commands and use cases.
[1.11.0] - 2025-01-30 @dwertheimer
- Fix addNote wizard: was returning addText URL; now correctly returns addNote URL
- Open note wizard: add timeframe (week/month/quarter/year) for calendar notes; add optional highlightStart/highlightLength (cursor/selection after open)
- Add text wizard: add openType (subWindow, splitView, reuseSplitView, useExistingSubWindow) when openNote=yes
- Add note wizard: add optional highlightStart/highlightLength when openNote=yes
- Add selectTag wizard: create x-callback URL to select a tag in the sidebar
- Add installPlugin wizard: create x-callback URL to install a plugin by ID
- Add toggleSidebar wizard: create x-callback URL to toggle/show/hide sidebar (forceCollapse, forceOpen, animated)
- Helpers/general: createOpenOrDeleteNoteCallbackUrl now accepts timeframe, highlightStart, highlightLength; createAddTextCallbackUrl now accepts openType in options; useExistingSubWindow URLs now include subWindow=yes
- Tests: add tests for timeframe, highlight, openType (addText), reuseSplitView, selectTag, installPlugin, toggleSidebar; add NPXCallbackWizard.test.js for selectTag, installPlugin, toggleSidebar wizard functions
[1.10.1] - 2025-01-30 @dwertheimer
- Open note wizard: add openType options (subWindow, splitView, reuseSplitView, useExistingSubWindow) so generated openNote x-callback-urls can open in floating window, split view, reuse split view, or existing sub-window
[1.10.0] - 2025-09-23 @dwertheimer
- Add lineLink command
- Fix bug in line+headingLink where the URL was being written to clipboard even if u don't want it
[1.9.2] - 2025-08-29 @dwertheimer
- Fix chooseNote bug in TemplateRunner
[1.9.1] - 2025-08-19 @dwertheimer
- Fix bug in wizard when using showOptions()
[1.9.0] - 2025-08-18 @dwertheimer
- Fix template runner wizard bug
- Add link to run template to frontmatter of template note
- Add open a named folder view to wizard
[1.8.0] - 2025-06-09 @dwertheimer
- Added templating specific commands to wizard to reduce confusion
[1.7.0] - 2025-04-02 @dwertheimer
- Added open a folder selection to wizard
[1.6.2] - 2024-05-28 @dwertheimer
- Bump version to re-release it
[1.6.1] - 2023-09-12 @dwertheimer
- Bug fix for calling np.Templating (can't pull plugin.json)
[1.6.0] - 2023-08-27 @dwertheimer
- Adding passpack for /favorite commands (see Favorites Plugin)
[1.5.0] - 2023-06-10 (@dwertheimer)
- Adding ability to open links in a note for open tasks (under the hood uses new helpers/urls functions for consistency)
[1.4.1] - 2022-01-19 (@dwertheimer)
- Make default pretty link the title
[1.4.0] - 2022-01-19 (@dwertheimer)
- Add dialog box on URL creation for creating pretty links (thx @stacey)
[1.3.0] - 2022-12-21 (@dwertheimer)
- Fix bug when selecting self-running template
- Include ability to create self-running template
- Hide x-success behind a preference field
[1.2.1] - 2022-12-08 (@dwertheimer)
- @jgclark changed self-running templates to use semicolons to separate variables. Updated the URL maker to match
[1.2.0] - 2022-12-04 (@dwertheimer)
- Added links to lines
- Updated the way hashtags in titles are encoded (which changed in NotePlan) -- strip out hashtags in headings
[1.1.2] - 2022-10-02 (@dwertheimer)
- Renamed plugin to Link Creator
[1.1.1] - 2022-09-20 (@dwertheimer)
- Fix bug with parentheses in URL which were not urlencoded
[1.1.0] - 2022-07-16 (@dwertheimer)
- Added TemplateRunner code to run templates from links
[1.0.0] - 2022-07-11 (@dwertheimer)
- Changed plugin Name to: "🧩 External Links, X-Callback-URLs, RunPlugin Creator"
- Added command "Create Link to Current Note+Heading" with direct access from command bar
[0.6.0] = 2022-07-02 (@dwertheimer)
- Added noteInfo command
- Added deleteNote command
- Addex x-success return capability on all commands
- Added DataStore.installOrUpdatePluginsByID to init
[0.5.0] - 2022-07-01 (@dwertheimer)
-
Added addNote command
-
[0.4.0] - 2022-06-28 (@dwertheimer)
-
Added callback URLs for Shortcuts
[0.3.0] - 2022-06-25 (@dwertheimer)
- Add callbacks for FILTER and SEARCH
[0.2.0] - 2022-06-22 (@dwertheimer)
- Add Templating invokePlugin output type
[0.1.2] - 2022-06-05 (@dwertheimer)
Added
- Open documentation URL
[0.1.1] - 2022-06-05 (@dwertheimer)
Fixed
- Endless loop on cancel
- Cancel stops flow
- Improved messaging on arguments dialog
[0.1.0] - 2022-06-05 (@dwertheimer)
- Initial release, includes openNote, addText and runPlugin
🔎 Search Extensions
What's Changed in 🔎 Search Extensions plugin?
(And see the full README.)
[2.0.2] - 2026-01-30
- align 'searchInPeriod' command x-callback parameters to what the documentation actually says ;-)
- fixes to 'searchInPeriod' run interactively
[2.0.1] - 2026-01-24
- bug fixes for 'replace' commands
[2.0.0] - 2025-03-21
New
- Adds a number of replace commands, that first search and then offer to replace with some new text. It always shows the number of occurrences found, and checks that you wish to proceed. Note: Please use this carefully, as there is no way (with the current API) to easily undo a replace operation. You would have to use the Versions menu item in each note to roll it back.
Changed
- tidy up some output
- if an existing saved search is repeated and produces no results, the existing note is now updated
- improved output when lines are trimmed
- if called from a callback, and there are no results found, the dialog box with a message to the user about this is suppressed.
- some optimisations
Fixed
- allow hashtags and mentions to work in 'full-word' matching mode
- fix some 'refresh' anomalies
[1.4.0] - 2025-01-18
New
- Adds ability to search matching the case of words ("case sensitively"). This is different to NotePlan which only allows case-insensitive searching. There is a new setting to turn this on or off. There is a new control for this on the flexiSearch dialog.
- By default search terms in NotePlan matches on parts of longer words. There is now a setting to restrict searches to matching full words only. There is a new control for this on the flexiSearch dialog.
Changed
- some flexi search dialog tweaks
Fixed
- Refresh button not working in QuickSearch results note
Dev Note
- includes most of the work on new Replace commands as well, but wanted to get some fixes and tweaks out first
[1.3.1] - 2023-12-30
Changed
- Updated x-callback handling as a result of changes in NotePlan 3.9.11 (build 1142)
Fixed
- Fixed display of items with a match on just part of a word in Simplified mode
- Fixed display of open checklist items in Simplified mode
- Fixed display of items that are entirely a URL
- Searches using "open checklist" type in flexiSearch (thanks to report by @clayrussell )
[1.3.0] - 2023-12-26
- Adds ability to automatically refresh a saved search when opening its note. To enable this, run "/add trigger" on the saved search note, and select "🔎 Search Extensions: 'refreshSavedSearch'" from the list. To turn this off again, just remove the line starting
triggers: onOpenfrom the frontmatter. - Adds wildcard operators
*and?in search terms. These match any number of characters (including none) and just 1 character respectively within a word. For example,pos*ematches "possible", "posie" and "pose";poli?ematches "polite" and "police". - Speeded up searches that have multiple terms (particularly 'must-find' terms)
- Now places the date and time of the search, and the Refresh 'button' under the section heading, not above it. This makes better sense for the auto-refresh (above).
- Now clarified that searches do include the special Archive and Templates folders, unless you exclude them using the 'Folders to exclude' setting.
[1.2.4] - 2023-10-04
Changes
- the /flexiSearch dialog box simplified with a new tooltip help, and better validation checks
- the /flexiSearch dialog box now renders OK on iOS
- removed the 'Cancel' button as it doesn't work on iOS/iPadOS, and on macOS you can use the standard red 'traffic-light' button instead.
[1.2.3] - 2023-10-02
- change to allow /quickSearch to be started from x-callback but still ask user for search terms (for @dwertheimer)
[1.2.2] - 2023-09-01
- ability to run FlexiSearch without closing the Dashboard and Project list windows from other plugins (requires NP v3.9.6.)
[1.2.1] - 2023-07-14
- add 'Click to refresh' button when appending to current note (for @dvcrn)
- fix bug in /searchInPeriod when run from x-callback with date parameters
[1.2.0] - 2023-07-01
Added
- searching for exact multi-word phrases such as
"Bob Smith"is now possible, and much quicker than the previous approximately-multi-word searching - new iOS Settings editor command "/Search: update plugin settings"
Changed
- clarified that '/searchResultsInPeriod' only returns results from calendar notes in the right time period
[1.1.1] - 2023-06-30
- (really this is the 1.1.0 release, but I'm forced to call it 1.1.1)
[1.1.0-beta10] - 2023-06-02
- added /flexiSearch command, with automatic saving of options between subsequent searches.
- allows an empty search term, which might be useful in flexiSearch to find all open tasks. It asks for confirmation first, as this might be a lengthy operation.
- if the search has no results, it now just brings up a dialog and doesn't write to a note
- should now only open a new split view for results when the results aren't already open in a split view
[1.1.0-beta9] - 2023-05-17
- fix to allow searching with Unicode characters (thanks to the report by @haris_sav and initial diagnosis by @dwertheimer)
[1.1.0-beta8] - 2023-02-17
- fix to scheduled items getting synced in /searchOpenTasks results, released again to go with NP v3.8.1 build 973.
[1.1.0-beta7] - 2023-01-25
- where there are multiple copies of a line because they have been sync'd together, only one will now be shown. This will be the one in the most recently-edited note. (for @stacey with help by @dwertheimer)
- fix to scheduled items getting synced in /searchOpenTasks results (thanks for tip by @jaredos); but this will need a new build of NP as well.
[1.1.0-beta6] - 2023-01-18
- fix to typo stopping refresh on /search results (thanks for tip by @dwrek)
- include new checklist open and scheduled types in /searchOpen results (thanks for tip by @Kevinobrien)
[1.1.0-beta5] - 2022-12-23
Changed
- the
!character is now allowed as a search term, or in a search term, to allow for searching for!,!!,!!!as priority indicators. - now allows highlighting results in 'NotePlan' style, where the line isn't a "Synced Line".
Fixed
- in /searchOpenTasks sometimes "Synced Line" markers weren't carried into the results
- in /searchInPeriod the results limit was being applied too early, dropping possible results before the date check
[1.1.0-beta3] - 2022-12-13
New
- where there's an existing search results note, and the search is re-run, other text that you add before or after the results section is retained. (For @JPR1972)
Changed
- will now give a warning to the user if more than 20 open tasks in results would result in Synced Lines being created. (This only applies if you're using the 'NotePlan' output style.)
- removed the restriction that stopped you using 1- or 2-character search terms, now that you can opt to limit the number of search results returned
- is smarter about when a new split window to show the results is needed (but it's still limited by the API)
[1.1.0-beta2] - 2022-12-12 (unreleased)
Changed
- search prompt box now shows more of the syntax options you can use
Fixed
- error when refreshing results for /searchOverCalendar
[1.1.0-beta1] - 2022-11-24
Added
- Adds a new 'Result set size limit' setting that limits very large search results, to prevent overwhelming the app, particularly on mobile devices.
Changed
- The /searchOpenTasks command can now take search terms that are purely negative (e.g. "-@personX") (for @JPR1972)
- Search terms like 'twitter.com' (that contain a
.character) are now treated as one term not two.
[1.0.0] - 2022-11-17
Changed
- This is a major re-write, so read carefully!
- simplified most command names from
saveSearch...to justsearch...
Added
- supports
+and-search operators for terms that must appear, and must not appear, respectively. For example+must may could -cannothas 4 search terms, the first must be present, the last mustn't be present, and the middle two (may, could) can be. The test for + and - is done per line in notes. If you wish to ignore the whole note that has a term, you can use the ! operator, e.g.+must !not-me. (thanks @dwertheimer for this suggestion) - when returning an open task in a result (when using the 'Noteplan' style of output) the task line will be a sync'd copy of the original, not a copy of it. This means checking it off in the results will complete it in the original location too. (This is necessary for the new /searchOpenTasks command.) (For @dwertheimer and @JPR1972).
- new /searchOpenTasks command, that take...
🧩 Todoist Noteplan Sync
Todoist Noteplan Sync Changelog
About this Plugin
See Plugin README for details on available commands and use cases.
[0.4.1] - 2026-01-22 (dbludeau)
- Fix for issue pulling todays tasks from Todoist.
[0.4.0] - 2025-09-15 (dbludeau)
- Updated plugin to use new Todoist V1 API.
[0.3.0] - 2024-09-01 (dbludeau)
- Fixed issue caused by "Folder" setting for Sync Everything command.
- If leading or trailing slash was included, the plugin would not recognize the folder as already existing, leading to duplication of notes.
[0.2.0] - 2024-08-30 (dbludeau)
- Added settings to account for Todoist Teams accounts
- Fixed duplication issue that was caused by URL changes in the todoist tasks.
[0.1.0] - 2023-08-18 (dbludeau)
- Initial version with "/todoist sync today", "/todoist sync everything", "/todoist sync project", "/todoist sync all projects" and "/todoist sync all projects and today" commands
📅 Calendar
Regular Apple-style calendar
🤝 Shared Resources
Changes to 🤝 Shared Resources plugin
See Shared Plugin's README for details on this plugin.
[1.0.6] @dwertheimer 2026-01-25
Fixed
- Infinite Loop Prevention: Added guard in Root.jsx to skip empty SET_DATA/UPDATE_DATA updates that only contain metadata (lastUpdated, NPWindowID). This prevents infinite render loops when empty responses trigger re-renders.
- DynamicDialog Request Handler: Fixed
getFrontmatterKeyValuesrequest handler (used by DynamicDialog choosers) to filter out templating syntax values (containing '<%') at the source. This prevents templating errors when forms load and process frontmatter that contains template code instead of actual values.
Added
- Added
installPluginVersion.jsutility for plugin version management and installation from GitHub releases.
[1.0.5] @dwertheimer 2026-01-12 (not released yet)
Added
- Log Buffer Buster: Added console method override feature to flush log buffers when debugging infinite loops or missing logs. When
logBufferBusteris enabled inpluginData, allconsole.log,console.error,console.info, andconsole.warncalls will have 10000 dots appended to help flush NotePlan's log buffer. See ReactSkeleton documentation for usage instructions.
Changed
- Added logging to Root.jsx to reduce confusing logging about request/response patterns
[1.0.4] @jgclark 2026-01-09
Changed
- Changed minAppVersion back down to 3.8.1, as the checks for v3.20.0 (mainWindow in macOS) or v3.20.1 (mainWindow on iOS) are handled in showHTMLV2() calls
[1.0.3] @dwertheimer 2026-01-09
Changed
- Refactored CSS architecture: Created new
Root.csswith shared color classes (.color-info,.color-warn,.color-error,.color-success, etc.) for reuse across MessageBanner, Toast, and other components. This centralizes color management and ensures consistency. - Updated MessageBanner and Toast components to use CSS variables from theme instead of hardcoded colors, improving theme compatibility.
- Improved
showBanner()function in Root.jsx to automatically determine color, border, and icon classes from message type if not explicitly provided, reducing boilerplate code. - Fixed
getHeadings()request handler to useincludeMarkdown: trueand ensure it always returns an array (never undefined/null), preventing errors in HeadingChooser. - Updated
noteHelpers.jsto usegetNoteDecorationForReact()helper for consistent note decoration handling. - Fixed relative notes title handling to use
relNamedirectly instead of template runner value.
Fixed
- Fixed CSS variable for toolbar height: changed
var(--noteplan-toolbar-height, 0)tovar(--noteplan-toolbar-height, 0px)for proper CSS unit handling in mainWindow mode.
Dev
- Removed encoding debug logging that was added for emoji corruption investigation (no longer needed).
- Updated minAppVersion to 3.20.1 to match NotePlan requirements.
[1.0.2] @dwertheimer 2026-01-08
- Fix Settings Dialog CSS positioning to properly center in viewport accounting for toolbar height. Removed transform-based centering and switched to direct top/left calculations for more reliable positioning.
[1.0.1] @dwertheimer 2026-01-08
- Bump version for @jgclark to see
[1.0.0] @dwertheimer 2026-01-06
- Add Shared Request Router for DynamicDialog choosers (e.g. getTeamspaces, getFolders, getNotes, etc.)
[0.9.0] @dwertheimer 2026-01-02
- Fix Toast notification CSS selectors: Change descendant selectors to class combinators so color and border styles apply correctly
- Fix toast positioning: Use calc(1rem + var(--noteplan-toolbar-height, 0px)) to properly account for toolbar height when variable exists
- Add debug mode to Form Builder window initialization
- Add Test Toast button in Root.jsx debug section that cycles through all toast types sequentially
- Update MessageBanner component with improved styling and functionality
- Update sendBannerMessage() function throughout codebase for consistency
- Update JSDoc comments in Root.jsx
- Update minAppVersion to 3.20.0 due to showInMainWindow requirements
[0.8.4] @dwertheimer 2025-12-31
- Add showReloadButton option to NPReactLocal.showInMainWindow
[0.8.3] @dwertheimer 2025-12-27
- Refactor HTML generation code to eliminate duplication between
openReactWindowandshowInMainWindow - Extract shared HTML generation logic into
prepareReactWindowDatafunction - Create
assembleHTMLStringfunction forshowInMainWindowto build complete HTML string - Update
addStringOrArrayItemsto properly handleScriptObjtypes in addition to strings and arrays - Both window functions now use shared code, reducing maintenance burden and ensuring consistency
[0.8.2] @dwertheimer 2025-12-27
- Root bundle now includes React and ReactDOM internally (self-contained)
- Eliminated separate react.core.dev.js bundle - React/ReactDOM are bundled into Root
- Root exports React, ReactDOM, and createRoot as globals for other bundles to use
- Fixed script loading order: Root loads before plugin bundles so React/ReactDOM are available
- Plugin bundles (like Forms) now reference React/ReactDOM as external globals from Root
[0.8.1] @dwertheimer 2025-12-24
- Add Toast notification component and option for MessageBanner to be displayed as a floating toast for transient messages in top-right corner
- Toast overlays content (doesn't push it down like MessageBanner)
- Supports INFO, WARN, ERROR, and SUCCESS types with auto-dismiss timeout
- Can be called from plugin side via
sendToastMessage()or React side viadispatch('SHOW_TOAST') - Includes slide-in animation from right and fade effects
[0.8.0] @dwertheimer 2025-12-18
- Add request/response pattern for awaiting from React->Plugin->React
- Bring a better design to MessageBanner component
- Update MessageBanner to take a 'type' (WARN, ERROR, INFO or REMOVE), and an optional timeout
- Add separate MessageBanner.css, that removes this particular dependency on css.w3.css
- Add NP_THEME to showHTMLV2
- Fix bug in window positioning math in showHTMLV2
[0.7.5] @dwertheimer 2025-01-24
- Remove DynamicDialog from Root (it was duplicating code and CSS)
- FormView and other components now can import DynamicDialog when they need it
[0.7.4] @dwertheimer 2024-12-21
- Remove minified versions of Root and FormView components
[0.7.3] @dwertheimer 2024-12-10
- Improve DashboardDialog CSS
[0.7.2] @dwertheimer 2024-10-28
- fix bug in Root where the pluginToHTMLCommsBridge.js was not being loaded and so sendMessageToPlugin was not working
[0.7.1] @dwertheimer 2024-10-24
- fix bug in Root where banners were not being shown anymore
[0.7.0] @dwertheimer 2024-09-14
- Add DynamicDialog to Root to bring up a dialog
[0.6.3] - @dwertheimer
- Reduce logging
[0.6.2] - @dwertheimer
- Add guard for NP window closed (kills React rendering at Root)
[0.6.1] - @dwertheimer
- more logging to setTheme
[0.6.0] - @dwertheimer
- add theme change route UPDATE_THEME
[0.5.11] - @dwertheimer
- Fix banners
[0.5.10] - @dwertheimer
[0.5.9] - @dwertheimer
- reduce logging
[0.5.7] - @dwertheimer
[0.5.6] - @dwertheimer
[0.5.5] - @dwertheimer
[0.5.4] - @dwertheimer
- Further Work on Root React and react settings saved at root level
[0.5.3] - 2024-04-19 @dwertheimer
- Decrease error logging
[0.5.2] - 2024-04-12 @dwertheimer
- Improve error logging in React root component
[0.4.8] - 2024-04-01 @jgclark
- add 'shortcut.js' script
[0.4.7] - 2023-10-16 @dwertheimer
- minor updates to Root's WebView debug wrapper
[0.4.6] - 2023-10-16 @dwertheimer
- update to remove CSS from React Windows if wanted
[0.4.5] - 2023-10-16 @dwertheimer
- updates to React tooling using ShowHTMLV2 etc.
[0.4.4] - 2023-07-15 (@jgclark)
- bugfix for 'undefined' message on plugin upgrade
[0.4.3] - 2023-07-14 (@jgclark)
- update encode function for safe data transport to/from JS of
&and&strings
[0.4.2] - 2023-06-07 (@jgclark)
- add encode and decode functions for safe data transport to/from JS
[0.4.1] - 2023-06-02 (@dwertheimer)
- add tweaks for react
[0.4.0] - 2023-05-29 (@dwertheimer)
- add w3.css to the shared files and update some of the React
[0.3.1] - 2023-02-23 (@dwertheimer)
- release bugfix
[0.3.0] - 2023-02-22 (@jgclark)
Added
- function
checkForWantedResources(fileList?)for plugins to use. See its jsdoc for more details.
[0.2.0] - 2023-02-18 (@dwertheimer)
Added
- File pluginToHTMLCommsBridge.js
[0.1.0] - 2023-02-04 (@jgclark)
Added
First release:
- provides the FontAwesome assets
- /logShared command: lists all shared assets in the Plugin Console.
📙 Note Helpers
What's changed in 📙 Note Helpers plugin?
For more details see the plugin's README.
[1.3.1] - 2026-01-25
- fix to list inconsistent note filenames command. (Thanks, @Heathy65.) Closes #732
- improved display of inconsistent note names, and added button to kick off the renaming.
[1.3.0] - 2025-12-20
- new duplicate note command: duplicates the currently-open note, and unlike the built-in command, it allows the user to specify a new title and folder for it.
[1.2.5] - 2025-11-10
- fix regression in folder chooser (thanks, @aleemshaun)
[1.2.4] - 2025-11-08
- Improvements in heading picker in jump to heading and jump to note's heading commands
[1.2.3] - 2025-10-31
- Fix to moveNote command for iOS/iPadOS
[1.2.2] - 2025-09-22
- Fix regression in folder picker
[1.2.1] - 2025-09-19
- improve and fix folder picker in various commands (including updating the sort order to match the app -- thanks for pointing this out, @tastapod)
- allow delete note command to run on Teamspace notes (if running v3.18.2 or above).
- stop inconsistent file name commands from running on Teamspace notes, which are stored in a SQL DB instead of having filenames
[1.2.0] - 2025-08-23
- improved display of lists of notes and headings in jump to heading and jump to note's heading, and include Teamspace notes
- various improvements/fixes to the inconsistent file name commands. Resolves issues #640, #642, #643 raised by @tastapod.
- added notes to indicate where commands can't work on Teamspace notes, because of the different way they're architected.
[1.1.1] - 2025-04-22
- the log Editor Note commands now handle Teamspace notes correctly.
- fix to opening new notes in new note commands.
[1.1.0] - 2025-02-19
- new list published notes command, that generates a list in the new 'Publlished Notes' note of all notes that have been published to published to the internet through NotePlan.
[1.0.0] - 2024-12-31
New
- the new note command has been revived (alias nn). It creates a new (regular, not calendar) note with a title you give, and in a folder you can select. If the "Default Text to add to frontmatter" setting isn't blank, then the note will be created using that frontmatter.
Note: this version was promoted to be a Core Plugin from NotePlan 3.16.1.
Important Changes
- when move note shows the list of folders, the special Templates and Archive folders are moved to the end of the list. (Plus any other special ones that start with '@').
- the new note from clipboard and new note from selection commands have moved from Filer plugin to NoteHelpers.
[0.20.3] - 2024-12-25 (unpublished)
- new logEditorNoteDetailed command (which can easily triggered from a callback) that also logs line type and rawContents
[0.20.2] - 2024-12-15
- the log note details command now includes backlink-ed notes and paragraphs
[0.20.1] - 2024-10-22
- new log note details command which prints note details to the log (for debugging purposes)
[0.20.0] - 2024-08-16
Added
- new delete note command, that makes easier what the current NotePlan UI makes difficult.
- new find unlinked notes command which finds and creates links to existing notes in the current note (by @aaronpoweruser).

Fixed
- fixed rename note filename when note has frontmatter (thanks for the report, @ariccb)
[0.19.2] - 2024-04-27
- add trigger to note command is now more resilient to unusual frontmatter, and shouldn't duplicate an existing trigger when run from template
[0.19.1] - 2024-02-23
- add trigger to note command can now be run from x-callback with parameter of the trigger string to add. This means it can be run from Templates with a command tag.
- Added a migration message about 'open note' commands.
[0.19.0] - 2024-01-09
- moved the "open note in ..." commands to the new "Window Tools" plugin
- updated the display of the "index folders" command to use heading levels H2 to H4 depending on how deep the sub-folder is. The placeholder in the title
{{folder}}now just uses the last part of the folder name, or new placeholder{{full_folder_path}}which will use the folder's full path. (Requested by @dutchnesss). - removed 'Show month/quarter/year' commands as they are now in the main NP menus.
- fix to '/rename inconsistent filename' command (reported by @Anton-Sklyar)
- fix to '/make index' command ignoring parameter 'displayOrder' if given.
[0.18.2] - 2023-09-18
- fix edge case with /add trigger command.
[0.18.1] - 2023-08-15
- New commands by @leo:
- list inconsistent note filenames lists the names of notes whose filenames are inconsistent with their titles
- rename filename to title renames the current filename to the title of the note
- when the command bar shows list of notes to choose, it now includes Template files again.
[0.18.0] - 2023-08-13
- new command Show This Month (alias /stm)
- new command Show This Quarter (alias /stq)
- new command Show This Year (alias /sty) (requested by @danieldanilov)
- new command update all indexes that updates all the existing folder index notes
- added more decoration to most-used calendar dates, when showing them in lists of notes (e.g. in "jump to note's heading" and "open note new window").
[0.17.3] - 2023-07-01
- added new setting 'Title to use for index notes' for "/index folders" command (requested by @dwertheimer)
- layout improvements and further bug fix in "/index folders" (spotted by @dwertheimer)
[0.17.2] - 2023-06-30
Fixed
- fix bug in index folders command (spotted by @dwertheimer)
[0.17.0] - 2023-06-12
Added
- new open url from a note command that asks user for a note, and then presents a list of URLs. The selected one is then opened in your default browser. (for @John1 with help from @dwertheimer)
- now move note and index folders commands offer option to create a new folder when selecting a folder (suggested by @dwertheimer)
- new reset caches command that just runs the command of that name in the NotePlan Help menu (for @clayrussell)
[0.16.1] - 2023-03-22
Added
- added NoteHelpers: update settings command for iOS users
- added setting for logging level
Changed
- '/add trigger to note' command now is smarter in the way it works
- restores "Default Text to add to frontmatter" setting for '/convert note to frontmatter' command
[0.16.0] - 2023-03-07
Added
- new add trigger to note command that makes it easy to add a trigger to a particular note. It lists the functions from all plugins that it can work out are written for triggers, but also allows any function to be picked.
- index folders command now:
- has an option to sort output by title (alphabetical), last update date, or date the note was created (though note that I think that the underlying created date data is very unreliable).
- has an option to add one of several date display settings on the end of every note that's listed
- has a Refresh button at the top of each results set
- can be run from x-callback-url calls (see README).
Fixed
- convert to frontmatter command wasn't always working for calendar notes
[0.15.0] - 2022-07-30
Added
- new command rename note filename renames the currently open note. Note: this changes the underlying filename not the visible title. (It only works with NotePlan v3.6.1 and later.)
- new command enable heading links converts local links to headings (they start with the
#character) tox-callback-urllinks that use the Noteplan URL-scheme to run thejumpToHeadingfunction mentioned below. So while Noteplan doesn't support the standard way of linking to headings within notes, this plugin command now enables that feature if you're willing to change the destination of your links. (by @nmn)
Updated
- The jump to heading command (which is used for jumping to headings within the same note) can now be used via
x-callback-urls by passing the text of the heading in as an arg0.
[0.14.1] - 2022-06-12 (by @nmn)
Added
- new command add number of days to dates that looks for bullets in your current open note that end with
[[YYYY-MM-DD]]:and adds the number of days to or since that date.
[0.13.0] - 2022-06-02
Added
- new command /open current note new split opens the current note in a new split window to the side in the main window
[0.12.0..0.12.1] - 2022-06-02
Added
- command /convert to frontmatter which convert the current note to use frontmatter syntax, including optional default text that can be added in the Plugin's settings.
Changed
- when using /open note new window or /open note new split it now places the cursor at what it judges to be the start of the main content of the note (i.e. after title or frontmatter) or project-related metadata.
[0.11.0..0.11.1] - 2022-05-10
Added
- added
/open note splitcommand to open a user-selected note in a new split window (available from NotePlan 3.4)
Changed
- updated logging to newer framework
- switched to using longer descriptive command names. The older short names will still work as aliases
- the
/indexcommand now adds time since note was last updated in the output - when jumping to a heading, those in the archive part of the note (Done... or Cancelled...) now aren't offered
[0.10.0..0.10.6] - 2021-11-17
Added
- added /onw command to open a user-selected note in a new window.
- added /index command to make/update note link Indexes for one or more folders
Changed
- updated the 'jumping' commands /jh and /jd work better with API change
- now 'move' or 'jump' to daily notes, not just project notes
- now allows notes to be moved to the special @archive directory (reque...
🎛 Dashboard
What's changed in 🎛 Dashboard plugin?
For more details see the plugin's documentation.
[2.4.0.b18] 2026-01-24
New
- New Section "Active Projects", which shows a list of all the currently-active projects from the separate Project & Reviews plugin. This includes any currently open projects (i.e. not completed, cancelled or paused) that match its settings, or are included in the current Perspective, if that option is set. It's designed to complement the existing Projects Section. It also shows the first of any 'Next Actions' as defined by the settings in the Projects plugin.
Changed
- To make it clearer, renamed the existing "Projects" section to "Projects to Review".
- Generation of sections now happens in the same (possibly-custom) order that they are displayed.
- Turned back on automatic updates from Project plugin's Project List window (if both plugins are running). [Requires Project + Reviews plugin v1.3.0 beta 7 or later]
Fix
- Display of name of Project notes if they were from a (Team)Space.
[2.4.0.b17] 2026-01-21
New
- added new way to select items to show from Calendar sections: "Calendar note Sections to Include". There is already a way to exclude specific sections in a calendar note; this adds a way to only include specific sections. The matches are partial, so 'Home' will include 'Home' and 'The Home Areas' etc. If left blank, all sections are still included.
- WIP: tried and failed to get 'Rename Perspective' to actually save it fully to settings.json
Dev
- remove redundant code in index.js::onUpdateOrInstall() now that key renaming doesn't happen there
- removing unused old copy of onUpdateOrInstall() in NPHooks.js
[2.4.0.b16] 2026-01-20
New
- the Projects section now shows the latest Project Progress summary for each project, if present.
- the Projects section now shows the first of any 'Next Actions' as defined by the settings in the Projects plugin.
Fixes
- suppress "showing all 0 items" message when "nothing on this list" message also appears
- stop tag cache source message appearing in Section header when feature flag not turned on
- changing 'Dashboard Theme' setting will now change straight away rather than next time the Dashboard starts.
Dev
- dev: using new
TProjectForDashboardtype, spread intoTParagraphForDashboardandTProjectForDashboardto show commonality - dev: new NoteTitleLink component, used by ProjectItem and ItemNoteLink components
- dev: suppress "backup settings" messages to users on upgrades
- align the two different sidebar icon colours
- dev: fix a wrong windowID that had crept in
- dev: check using same winowID throughout
[2.4.0.b15] 2026-01-17
Changed
- fix displaying folder names
- add note's
iconandicon-colorproperties to display of note title (if set in note's frontmatter) in all Sections
[2.4.0.b14] 2026-01-16
Changed
- force iPad and iPhone to run in "main window" mode, not "floating window" mode, if it can. Where it does, then change layout of right-hand-side of Header.
- now supports the updated Plugins Preference from NP 3.20.1, which includes the ability to add the plugin to the sidebar.
[2.4.0.b13] 2026-01-09
Changed
- allowed mainWindow to work on iOS from v3.20.1, now that @em has added it
- to ease beta testing, particularly for users on iPhone/iPad, made minimum app version 3.20.0
- added 'reload' icon to the NotePlan-added Header bar, as it looks like the usual Refresh button sometimes isn't working on iPad.
[2.4.0.b12] 2026-01-09
Fixed
- PerspectiveSelector star indicator not displaying: Fixed issue where the asterisk (*) indicating a modified perspective was not showing in the dropdown selector. The bug was introduced in commit
c493f26d(2025-12-18, "forms editor v1") whenDropdownSelectwas refactored to find options by value. The component was using the label from the found option in the options array instead of preserving the custom label fromcontrolledValue(which includes the asterisk for modified perspectives). The fix ensures that whencontrolledValueis provided as an object with a custom label, that label is used instead of the option's label from the array. - PerspectiveSelector using stale perspective data: Changed
PerspectiveSelectorto usegetActivePerspectiveDef()instead ofgetPerspectiveNamed()to ensure it always gets the most up-to-date perspective with the correctisModifiedflag directly fromperspectiveSettings, rather than looking it up by name which could be stale. - added an automatic refresh of the Dashboard if it's open at midnight
[2.4.0.b11] 2026-01-09
Changed
- Refactored request/response handling to use new shared router pattern (
newCommsRouterfrom@helpers/react/routerUtils). Moved routing logic torouteRequestsFromReact.jsfor better maintainability and consistency with other plugins. - Improved "Add Task" dialog: now defaults to today's date in ISO format, supports date picker for selecting calendar notes, and provides better error messages with toast notifications for success and banner messages for failures.
- Fixed CSS variable for toolbar height: changed
var(--noteplan-toolbar-height, 0)tovar(--noteplan-toolbar-height, 0px)for proper CSS unit handling in mainWindow mode.
Dev
- Removed extensive encoding debug logging that was added for emoji corruption investigation (no longer needed).
- Added new request handler
addTaskToNoteinrequestHandlers/addTaskToNote.js(placeholder for @jgclark to implement). - Added performance logging and position verification for dialog rendering.
- Improved error handling in AddToAnyNote component with request/response pattern instead of sendActionToPlugin.
[2.4.0.b10] 2026-01-08
- bump mainWindow version to 3.20.1 as @em has changed it up
- added more details to INFO section to see more clearly what's going on with mainWindow on different platforms
[2.4.0.b9] 2026-01-07
- Running in "Main Window" mode doesn't seem to work on iPadOS or iOS, so changed it run only in "New Window" mode on those platforms.
- Fixed Settings Dialog CSS positioning to properly center in viewport accounting for toolbar height. Removed transform-based centering and switched to direct top/left calculations for more reliable positioning.
- Adjusted Task and Projects Dialog positioning to take account of the new header bar when running in mainWindow
- Fixed the 'move to today' button not working in Task Dialog from Yesterday section
- More efficient refresh after moving an item from calendar note to a different calendar note
[2.4.0.b8] 2026-01-05
- now always trigger Timeblock Section generation whenever Today Section is generated. This simplifies some handlers.
- add error message info to click handlers, ready to display in updated MessageBanners
- reduced number of Section updates, by being smarter about which ones might need to be updated.
[2.4.0.b7] 2026-01-03
- Fixed Settings Dialog and DynamicDialog positioning to center properly in viewport when
--noteplan-toolbar-heightis set. Changed from using percentage-based positioning (which used full page height) to viewport-based units (vh) for proper centering.
[2.4.0.b6] 2026-01-03
- Fixed height/Y pos issues for Dynamic and Settings dialogs
- dev: added new color definitions to theme CSS generator
[2.4.0.b5] 2026-01-02
- dev: height/width/sticky fixes to use the new
var(--noteplan-toolbar-height, 0px)for mainWindow running
[2.4.0.b4] 2026-01-01
- added support for opening the Dashboard in the main app window or a split view, as well as in a separate window. This is controlled in a new setting in the plugin's original settings screen (NotePlan > Settings… > AI & Plugins > Dashboard > ⚙️)
- fix to Week section which (depending on settings) could be a year out when the week number has already ticked over to
W01of the next year. - fix to some Header element sizes which mysteriously shrunk
- another attempt to fix the tooltips getting clipped. Possibly improved some of them, but definitely not all, sorry.
- dev: separated data generation for Timeblocks section from Today section.
[2.4.0.b3] 2025-12-23
- you can now change the priority shown in the Dashboard of all open items in a note by specifying
note-priority-delta: Nattribute in the note's frontmatter. This addsN(or subtracts-N) to the relative priority, used when priority filtering is turned on. This is useful if you have a note where everything in it is important, for example a note about filing and paying taxes. This saves having to clutter the note with priority markers. Note: This doesn't actually change the items, but just how they're displayed in the Dashboard.
[2.4.0.b2] 2025-12-22
- change name of trigger to
onEditorWillSave, though the existing one will work for now. - dev: cursor fixing subtle bugs in demo data mode
- dev: cursor improved code quality of DialogForTaskItems.jsx and DialogForProjectItems.jsx
- turn off auto-refreshes in Demo mode
[2.4.0.b1] 2025-12-05
- new "Spaces to Include" setting which controls which (Team)Spaces you wish to include, plus whether or not to include the Private "Space" (all notes not in a Space). This is applied per Perspective.
- Improved display of Teamspace part of note links in displayed items
- improve design of toggle switches, and add subtle animation
[2.3.3] 2025-12-04
- new 'Year'...
⭐️ Favorites
Favorites Plugin Changelog
[1.3.5] - 2026-01-20 @dwertheimer
- Fixed sidebar icon colour issue by using proper css variables for colors.
[1.3.4] - 2026-01-18 @dwertheimer
- Fixed dark mode issues with favorites browser window by using proper css variables for colors.
[1.3.3 - waiting for np 3.20.1 release (change showReloadButton to true)] - 2026-01-11 @dwertheimer
- Added reload button to favorites browser window to allow for easy reloading of the window when changes are made to the plugin or the underlying note data.
[1.3.2] - 2026-01-11 @dwertheimer
Fixed
- Fixed bug where removing a favorite note would remove the star from the title but not remove the frontmatter field. Now properly passes
deleteMissingAttributes: truetoupdateFrontMatterVars()to ensure the frontmatter key is actually deleted. Thanks @stacey for the detailed bug report!
[1.3.1] - 2026-01-11 @dwertheimer
Fixed
- CRITICAL: Fixed request timeout issue by removing outdated local copy of
routerUtils.jsand switching to shared version from@helpers/react/routerUtils - The local copy was missing the
pluginJsonparameter required by the shared router, which could cause silent failures when sending responses back to React - Router now properly passes
pluginJsonparameter tonewCommsRouterfor correct logging and response handling
[1.3.0] - 2025-01-10 @dwertheimer
- Feature: Add new
/favorites-browsercommand to open a sidebar window to view and open favorite notes and commands. This provides a persistent browser interface for managing and accessing your favorites.
[1.2.10] - 2025-04-10 @dwertheimer
- Bugfix: Fix issue with frontmatter not being visible immediately after setting a favorite
[1.2.9] - 2025-02-20 @dwertheimer
- Bugfix: Fix Stacey issue with writing title above frontmatter when only one field and no title
- Bugfix: Fix issue with duplicate notes in favorites list
[1.2.7] - 2025-02-19 @dwertheimer
- Bugfix: quoteText() now handles null, boolean, number and undefined values correctly
[1.2.6] - 2025-02-19 @dwertheimer
- Add "Favorite Key" setting to allow for customizing the frontmatter key used to identify favorites.
[1.2.5] - 2025-02-15 @dwertheimer
- Favorites now works with frontmatter
[1.2.4] - 2024-06-12 @dwertheimer
- bump version for rerelease (plugin was missing from github)
[1.2.3] - 2023-09-29 @dwertheimer
- change the default to not add a space in front of the default tag
[1.2.2] - 2023-08 @dwertheimer
- Bugfix: allow for escaping and leaving command intact.
[1.2.1] - 2023-08 @dwertheimer
- Add "rename" capability
[1.2.0] - 2023-08-27 @dwertheimer
- Add prepended characters for favorite saved commands & xcallback creator inline. Thx for the idea @clayrussell
[1.1.3] - 2023-08 @dwertheimer
- Add remember-presets-after-update code
[1.1.0] - 2023-08-25 @dwertheimer
- Add capability to set a preset to run a favorite URL/X-Callback
[1.0.1] - 2021-11-30 (@dwertheimer)
- Minor tweak to the plugin.json to be more descriptive in Description
[1.0.0] - 2021-11-16 (@dwertheimer)
- Initial plugin functions:
/fave,/unfave,/faves