Releases: callumalpass/tasknotes
4.3.0
TaskNotes 4.3.0
Changed
- (#1437) Unified template variable syntax and available variables across filename and body templates
- Both systems now use double-brace
{{variable}}syntax consistently - Single-brace
{variable}syntax remains supported for backwards compatibility but is deprecated - Settings UI shows a warning when deprecated single-brace syntax is detected
- Filename templates gain body template variables:
{{contexts}},{{tags}},{{hashtags}},{{timeEstimate}},{{details}},{{parentNote}} - Body templates gain filename template variables:
{{zettel}},{{nano}}, and all extended date/time variables - Thanks to @23maverick23 and @Jpeeters for reporting (#865)
- Both systems now use double-brace
Added
-
(#1361) Option to disable inline task overlay for aliased wikilinks
- New setting in Features → Inline Tasks: "Disable overlay for aliased links"
- When enabled, links with aliases like
[[Task|Check Status]]render as plain links - Links without aliases continue to show the interactive task widget
- Useful when embedding tasks in prose where the widget would be disruptive
- Thanks to @diegomarzaa for the contribution and @jldiaz for proposing this feature in #1117
-
(#1199, #1205) Google Calendar export for tasks
- Sync tasks to Google Calendar based on scheduled or due dates
- Automatic sync on task create, update, complete, and delete
- Configurable event title templates with placeholders (
{{title}},{{status}},{{priority}}, etc.) - Event descriptions include task metadata and optional Obsidian deep link
- Support for all-day or timed events with customizable duration
- Event color customization using Google Calendar's color palette
- Default reminder setting for popup notifications
- Bulk sync and unlink actions in settings
- Task-event linking stored in frontmatter (
googleCalendarEventId) - Recurring tasks sync as Google Calendar recurring events
- Completed or skipped recurring instances are automatically excluded
- Thanks to @someromans and @Leonard-44 for requesting this feature, and @dmantisk, @farangkao, @rayvermey, and @rdpr for their input
Fixed
-
(#1413) Fixed angle-bracket links and project title display
- Angle-bracket links like
[Spec](<Projects/Client X/Spec.md>)now resolve correctly - Project links display frontmatter
titleinstead of raw filename/path when available - Dependency values normalize consistently across wikilinks, markdown links, and angle-bracket variants
- Many thanks to @normenmueller for the contribution
- Angle-bracket links like
-
(#1414) Kanban column headers now display configured priority labels instead of raw values
- Many thanks to @normenmueller for the contribution
-
(#1416) Fixed property-based task identification mutating tags unexpectedly
- Tags are only written when explicitly changed by the user
- Task tag is only added in tag-based identification mode
- Fixes #1391
- Thanks to @loukandr for reporting and @normenmueller for the fix
-
(#1187) Fixed "Unknown view types" error when opening Bases views after upgrading from pre-V4
- Users who had disabled Bases support in earlier versions could not open Bases views after upgrading
- Settings migration now automatically re-enables Bases support since the toggle was removed in V4
- Thanks to @MiracleXYZ for reporting
-
(#1144) Fixed relationships.base showing empty views for Projects, Blocked By, and Blocking tabs
- The top-level task filter was excluding non-task files from the Projects view
- Projects can be any file type (not just tasks), so the filter is now applied per-view
- Subtasks, Blocked By, and Blocking views retain the task filter; Projects view does not
- Users with existing relationships.base files should delete and regenerate them to get the fix
- Thanks to @needo37 for reporting, and @n1njaznutz, @nestor50, and @IvyDliu for investigating and confirming the solution
-
Fixed calendar view type not persisting or applying when changed
- View type changes via header buttons (week/day/month) are now saved to the .base file
- View type changes via Bases settings panel now apply immediately without reload
-
(#1441) Fixed task dragging broken with "Span tasks between scheduled and due dates" enabled
- Span events can now be dragged to move tasks in time
- Dragging shifts both scheduled and due dates proportionally, preserving the span duration
- Previously, dragging span events would cause a visual/data mismatch where the calendar showed the wrong position
- Thanks to @Peeeet for reporting
4.2.1
TaskNotes 4.2.1
Added
- New Calendars API endpoint for access to calendar data
- Access calendar provider information and connection status
- Query events from Google Calendar, Microsoft Calendar, and ICS subscriptions
- Filter events by date range
tasknotes-clihas been updated to make use of this endpoint
Fixed
-
(#1424) Fixed "Create New Task" command creating tasks in active folder instead of default folder
- "Create New Task" now correctly uses the configured default task folder
- "Create New Inline Task" continues to use the inline task folder setting
- Thanks to @Gogo-XD for reporting and @TonyAtlas for confirming
-
(#1421), (#1042) Fixed natural language parser only setting one date when both scheduled and due dates are specified
- Entering something like "task due Jan 9 at Jan 9" now correctly sets both the due date and scheduled date
- Thanks to @wealthychef1 and @dblinnikov for reporting
-
(#1410) Fixed vim insert mode not activating in task creation modal
- The modal now correctly enters insert mode when vim keybindings are enabled
- Thanks to @Leo310 for the feature request
-
(#1422) Fixed tags with dashes not being parsed correctly
- Tags like
#my-tagwere being truncated to#my - Thanks to @JerryLu086 for reporting
- Tags like
-
(#1419) Fixed custom statuses and priorities not saving in settings
- Values entered in text fields were sometimes lost when closing the settings modal
- Thanks to @s33a for reporting
4.2.0
TaskNotes 4.2.0
Added
-
Added Korean (한국어) language support
- Full translation of all 1911 localization keys
- Korean language option now available in Settings → General → Language
-
Adopted Obsidian 1.11.0 API features with backwards compatibility
- Settings tab now displays TaskNotes icon in the sidebar (Obsidian 1.11.0+)
- Settings sections now use native
SettingGroupfor improved visual grouping (Obsidian 1.11.0+) - Falls back gracefully to traditional section headers on older Obsidian versions
-
(#59) Added
shortYeartemplate variable for custom filename and folder templates- Use
{shortYear}in filename templates (e.g., "25" for 2025) - Use
{{shortYear}}in folder templates - Thanks to @Pixeltica for the feature request
- Use
-
(#1393) Option to prevent auto-creation of default Base view files on startup
- New "Auto-create default files" toggle in Settings → Integrations → Bases Integration
- When disabled, deleted sample Base files will not be recreated on plugin load
- The manual "Create Default Files" button remains available for on-demand recreation
- Thanks to @wealthychef1 for the feature request
-
(#1408) Shift+click on status icon to cycle backwards through statuses
- Normal click cycles forward through status order
- Shift+click cycles in reverse order
- Thanks to @JerryLu086 for the feature request
-
(#1410) Task creation modal now starts in vim insert mode when vim keybindings are enabled
- Previously required pressing 'i' before typing when Obsidian vim mode was active
- The modal now automatically enters insert mode on focus, allowing immediate typing
- Thanks to @Leo310 for the feature request
-
Added button tooltips to calendar view toolbar
- Hovering over navigation and view buttons now shows descriptive hints
- Buttons include: Today, Previous, Next, Month, Week, Day, Year, List
-
Added tooltips to task modal action icons
- Icon buttons for status, date, project, priority, recurrence, and reminder now show tooltips on hover
- Improves discoverability for new users
-
(#503) Settings now sync automatically across devices via Obsidian Sync
-
(#1403) Kanban view option to consolidate status icons in column headers
- New "Show status icon in column header only" toggle in Kanban view settings (disabled by default)
- When enabled and grouped by status, shows the icon in the column header and hides it on cards
- Reduces visual redundancy when the column already indicates the status
- Thanks to @l-mb for the feature request and implementation
-
(#1401) Calendar view option to span tasks between scheduled and due dates
- New "Span tasks between scheduled and due dates" toggle in Calendar view Layout settings
- When enabled, tasks with both scheduled and due dates display as multi-day bars
- Provides Gantt chart-style visualization for project planning
- Thanks to @0atman for the feature request
-
(#1334)
{{currentNotePath}}now works for "Create new inline task" command- The inline task folder setting with
{{currentNotePath}}previously only worked for checkbox conversion - Now also applies when using the "Create new inline task" command from the command palette
- Thanks to @kmaustral for the feature request
- The inline task folder setting with
-
(#1264) Option to open Pomodoro timer in mobile sidebar instead of note panel
- New "Mobile sidebar" setting in Settings → Features → Pomodoro Timer
- Choose between: Note panel (default tab behavior), Left sidebar, or Right sidebar
- Allows quick swipe access to the timer without switching notes on mobile devices
- Thanks to @Evthestrike for the feature request
-
(#1220) Option to use ICS event end time as task due date
- New "Use ICS event end time as task due date" toggle in Settings → Integrations → Calendar Subscriptions
- When enabled, tasks created from calendar events will have their due date set to the event's end time
- For all-day events, uses the event date (not the ICS container end date which is the next day per ICS spec)
- For timed events, includes the exact end time
- Defaults to disabled to preserve existing behavior
- Thanks to @MiserMagus for the feature request
-
(#1108) Option to use task duration instead of due date for ICS calendar export
- New "Use task duration for event length" toggle in Settings → Integrations → Automatic ICS Export
- When enabled, exported calendar events use scheduled date + time estimate as DTSTART/DTEND
- This aligns with GTD workflows where scheduled + duration represents work planning, while due date represents deadlines
- When disabled (default), preserves existing behavior using due date as DTEND
- Thanks to @bepolymathe for the feature request
Fixed
-
(#1384) Fixed title being sanitized even when "Store Task Title in Filename" is disabled
- Characters like
?,<,>,:, etc. are now preserved in task titles when they won't be used in filenames - When
storeTitleInFilenameis false, only minimal sanitization (whitespace normalization, control character removal) is applied - Thanks to @allison-casey for reporting
- Characters like
-
(#1028), (#1140), (#1152), (#1354), (#1362) Fixed duplicate task entries appearing in Agenda view
- Tasks were shown twice: once as TaskNotes events and again as property-based events with a file icon
- Changed default Agenda template to disable property-based events (
showPropertyBasedEvents: false) - Users can re-enable property-based events in view settings if needed for non-task date properties
- Thanks to @YIRU69, @jhedlund, @dblinnikov, @Snakiest, @WeiYiAcc, @JacksonMcDonaldDev, @jimbo108108, and @krelltunez for reporting
-
(#1386) Fixed
timeEstimateCategoryformula showing "Long (>2h)" instead of "No estimate" for new tasks -
(#1397) Fixed Bases views (Kanban, Calendar, Task List) resetting to Calendar view after a few minutes
- Also fixed CalendarView corrupting other view files when saving state on unload
- Thanks to @music-soul1-1 for reporting
-
(#1398) Fixed overdue strikethrough showing on completed tasks
- Completed tasks with past due dates no longer display overdue styling
- Respects the "Hide completed from overdue" setting which defaults to true
-
(#1363) Fixed calendar view showing nothing when a task has an invalid date format
- Tasks with malformed dates (e.g., "262025-12-16" instead of "2025-12-16") no longer crash the entire calendar
- Invalid tasks are now skipped with a console warning, allowing other events to display normally
- Thanks to @Erelen for reporting
-
Fixed today column in week/day calendar views using FullCalendar's default yellow instead of theme accent
- Today's column now uses a tint of the theme accent color for consistent styling
-
(#1399) Fixed drag-and-drop not working in Kanban view on mobile
- Cards and columns can now be dragged using long-press gesture on touch devices
- Includes haptic feedback and auto-scroll when dragging near edges
- Thanks to @l-mb for reporting and the fix
-
(#1381) Fixed Pomodoro "Change Task" menu not showing newly created tasks
- Tasks created while the Pomodoro view was open would not appear in the task selector
- Improved metadata cache synchronization to properly wait for new files to be indexed
- Thanks to @Ghosthael for reporting
-
(#1344) Fixed "Unsaved Changes" popup appearing randomly when closing task edit modal
- The popup would appear even when no changes were made to the task
- Caused by inconsistent trailing whitespace normalization when comparing details content
- Thanks to @hasanyilmaz for reporting
-
(#1402) Fixed Kanban swimlane view showing tasks in wrong column when grouped by formula
- After editing task metadata, cards would jump to "None" column until Obsidian reload
- Column assignment now uses Bases' computed grouping instead of cached formula outputs
- Thanks to @bailob for the fix
-
(#1352) Fixed date context menu not preserving time when using increment options
- Using +1 day, -1 day, +1 week, or -1 week on a task with a time (e.g.,
2025-12-10T16:00) now preserves the time - Previously the time would be stripped, changing
2025-12-10T16:00to2025-12-11instead of2025-12-11T16:00 - Thanks to @cathywu for the feature request
- Using +1 day, -1 day, +1 week, or -1 week on a task with a time (e.g.,
-
Fixed v3 saved views exporting incorrectly to Bases format
- Title filters now correctly use
file.nameinstead ofnote.title - Archived filters now generate valid boolean expressions instead of malformed comparisons
- "Is Blocked" filters now generate correct expressions with proper operator precedence
- Title filters now correctly use
-
(#1036) Due dates can now be dragged in the calendar view
- Previously only scheduled dates were draggable; due dates were locked in place
- Dragging a due event now updates the task's due date property
- Thanks to @same774 for reporting
-
Improved calendar view responsiveness for user interactions
- Task creation, editing, timeblock changes, and view option toggles now update immediately
- Previously these actions waited 5 seconds due to the debounce intended for external file changes
- The 5-second debounce is now bypassed for direct user actions while still preventing flicker during typing
-
Improved visual affordance for Pomodoro timer duration adjustment buttons
- The +/- buttons below the timer now have visible backgrounds and borders
- Hover states show accent color border for clearer interactivity feedback
- Previo...
4.1.3
TaskNotes 4.1.3
This patch fixes a critical performance issue affecting the Calendar views. As a bonus, it adds a configurable "split" view to the task creation/edit modals.
Added
- Split layout for task modals on wide screens (900px+)
- Details editor appears in a dedicated right column when the modal is expanded
- New setting "Split layout on wide screens" in Modal Fields settings tab to toggle this behavior
- Improves usability by showing form fields and details side-by-side
Fixed
- (#1330) Fixed calendar view regression taking 5 seconds to load and respond to user interactions
- Initial calendar load is now immediate again
- User interactions (drag/drop, creating timeblocks, etc.) respond instantly
- Removed redundant date filtering (FullCalendar handles this more efficiently)
- Thanks to @ysafonov, @kmaustral, @sunjiawe, @Мизгирь, and @FiliusIcari for reporting
4.1.2
TaskNotes 4.1.2
Fixed
- Significant performance improvements for Bases views (TaskList, Kanban, Calendar)
- Reduced
extractDataItemstime from ~4 seconds to ~5-10ms for large vaults (6000+ tasks) - Computed file properties (
file.backlinks,file.links, etc.) are now fetched lazily during render instead of upfront - Only visible items (with virtualization) trigger expensive property computations
- Added debouncing to
onDataUpdatedto prevent UI freezes during typing - Timeblock generation now uses Obsidian's metadataCache instead of file reads
- Added date range filtering for calendar events to skip events outside visible range
- (#1285) Calendar view uses 5-second debounce to prevent flickering while typing
- Thanks to @steven-murray for reporting
- Reduced
- Calendar view switching (month/week/day/list) is now much faster
- View type is now saved on unload instead of on every change
- Fixed task edit modal archive button being too narrow on mobile devices
- (#1319) Added missing properties to Field Mapping settings
recurrence_anchor- now in Settings > Task Properties > Task Detailsskipped_instances- now in Settings > Task Properties > Metadata Properties- Thanks to @kazerniel for reporting
- (#1310) Fixed inline task conversion deleting text when task title exceeds filename limits
- Text that cannot fit in the filename is now preserved in the task note's body
- Thanks to @prayidae for reporting
- (#1301) Fixed inline task wikilinks leaving blank space when no metadata properties are visible
- Thanks to @Richard-UMPV for reporting
- (#1317) Fixed project autosuggest filters not working correctly when only "Required Property Key" is configured
- NLP
+trigger now properly filters by property existence when no property value is specified - Modal "Add to project" button now shows consistent results with inline autosuggest
- Thanks to @JacksonMcDonaldDev for reporting
- NLP
- (#1287), (#1307) The "New" button in Bases views now opens the TaskNotes creation modal
- Tasks created from Bases views now respect default properties (status, priority, etc.)
- Tasks are now created in the configured default folder instead of the views folder
- Thanks to @anareaty and @sylvainfct-dot for reporting
- (#1291) Fixed Microsoft Calendar OAuth documentation using wrong redirect URI
- Added instructions for configuring via Azure manifest editor
- Thanks to @PlecotusAustriacus for reporting
Added
- (#803) New command "Convert current note to task" to add task properties to an existing note
- Thanks to @GardarikanetS and @diegomarzaa for suggesting
- (#1080) Custom user fields now support default values
- Each field type has an appropriate input: text field, number input, toggle, date preset dropdown, or comma-separated list
- Defaults are applied when creating tasks via modal, instant conversion, "Create or open task" command, or HTTP API
- Thanks to @bradyrx for suggesting
Changed
- Added documentation link to settings panel (links to tasknotes.dev)
- Reorganized settings panel for improved discoverability
- Removed "Defaults" tab - default values are now configured alongside each property in the Task Properties tab
- Moved task filename format settings to the Title property section
- Moved project autosuggest settings to the Projects property section
- Body template setting moved to the Features tab
- Added descriptions to each property explaining its purpose
- Moved "Folder for converted tasks" setting to General tab under Task Storage for better discoverability
- Updated setting description to clarify that leaving empty uses the default tasks folder
4.1.1
TaskNotes 4.1.1
Added
- (#1277) Icon autosuggestion for custom status settings
- Type to search through all available Lucide icons
- Thanks to @Arachnidai for the suggestion
- New formula properties in default Base templates
- Date calculations:
daysUntilDue,daysUntilScheduled,daysSinceCreated,daysSinceModified - Boolean helpers:
isOverdue,isDueToday,isDueThisWeek,isScheduledToday,isRecurring,hasTimeEstimate - Time tracking:
timeRemaining,efficiencyRatio,timeTrackedThisWeek,timeTrackedToday,timeTrackedFormatted - Grouping:
dueMonth,dueWeek,scheduledMonth,scheduledWeek,dueDateCategory,timeEstimateCategory,ageCategory,createdMonth,modifiedMonth,priorityCategory,projectCount,contextCount,trackingStatus - Combined due/scheduled:
nextDate,daysUntilNext,hasDate,isToday,isThisWeek,nextDateCategory,nextDateMonth,nextDateWeek- work with whichever date comes first - Sorting:
priorityWeight,urgencyScore(combines priority with date proximity) - Display:
dueDateDisplay(relative dates like "Today", "Tomorrow", "3d ago") - Action-oriented views (Not Blocked, Today, Overdue, This Week) now sort by urgency score, showing most important tasks first
- See Default Base Templates documentation for full details
- Note: To get these new formulas, either copy them from the documentation, or delete your
.basefiles inTaskNotes/Views/and restart Obsidian to regenerate them
- Date calculations:
Changed
- (#1282) Added spacing between task title and metadata in inline task widgets for improved readability
- Thanks to @3zra47 for the suggestion
- Custom status icons now display in all context menus (task context menu, batch operations menu, and task creation/edit modals)
- Added embedded video guide for Google Calendar OAuth setup in documentation
- Thanks to @antoneheyward for the tutorial
Fixed
4.1.0
TaskNotes 4.1.0
Added
-
(#1245), (#793) Added custom icon support for task statuses
- Configure a Lucide icon name (e.g.,
check,circle,clock) per status in Settings → Task Properties → Task Statuses - Icons display instead of the colored dot, inheriting the status color
- Browse available icons at lucide.dev
- Improves accessibility by allowing shape-based status differentiation
- Thanks to @3Fish for the feature request and @Raonmir2, @aubreyz, @prayidae, and @anareaty for the discussion on accessibility and icon-based indicators
- Configure a Lucide icon name (e.g.,
-
(#1259) Added Property Types Reference documentation
- Documents expected data types (text, list, date, number) for all frontmatter properties
- Includes format specifications, examples, and a complete YAML reference
- Thanks to @Oblique82 for the suggestion
-
(#1248) Added formula property support for sub-grouping in Bases Task List view
- Formula properties (e.g.,
formula.myFormula) now appear in the Sub-group by dropdown - Supports all Bases Value types including strings, numbers, booleans, dates, and lists
- Thanks to @prayidae for the feature request
- Formula properties (e.g.,
-
(#1070) Added formula property support for swimlanes in Bases Kanban view
- Formula properties now appear in the Swim Lane dropdown
- Fixed swimlanes displaying empty when grouping by formula properties
- Note: Dragging tasks between formula-based columns/swimlanes is disabled (formulas are computed values)
- Thanks to @cathywu for reporting
-
(#1010), (#1126) Added batch task selection and editing in Task List and Kanban views
- Shift+click to select multiple tasks
- Right-click selected tasks to open batch context menu
- Batch operations: change status, priority, due date, scheduled date, archive, delete
- Drag multiple selected cards in Kanban to move them together
- Click the selection count indicator to clear selection
- Thanks to @jalooc and @solidabstract for the feature requests
-
(#1207) Added inline search box to Bases views (Task List, Kanban, Calendar)
- Enable via "Enable search box" toggle in view settings
- Searches across title, status, priority, tags, contexts, projects, and visible custom properties
- Press Escape or click × to clear search
- Thanks to @renatomen for the PR
-
(#363) Added "Create or open task" command with NLP-based quick task creation
- Open via command palette or assign a hotkey
- Search existing tasks or type natural language to create new tasks (e.g., "Buy groceries tomorrow #shopping")
- Press Enter to select an existing task, Shift+Enter to create a new task
- Real-time preview shows parsed title, due date, priority, tags, and other metadata
- Can be used when adding sub-tasks to create sub-tasks on-the-fly
- Thanks to @luciolebrillante for the feature request
-
(#1044), (#1222) Added unsaved changes confirmation when closing task edit modal
- Detects modifications to any field (title, dates, priority, tags, etc.)
- Shows confirmation dialog with Save/Discard/Keep Editing options
- Prevents accidental data loss from clicking outside the modal or pressing Escape
- Thanks to @renatomen for the PR and @0-BSCode for the feature request
-
(#904) Added visual highlighting for overdue and past dates on task cards
- Overdue due dates now display in red text
- Past scheduled dates now display in blue text
- Thanks to @ras0q for the suggestion
-
(#1164) Added
priorityWeightformula to all default Bases templates for priority-based sorting- Formula maps each priority value to a numeric weight based on your custom priority configuration
- Sort by
formula.priorityWeightin ascending order to get highest priority tasks first - Example:
if(priority=="high",0,if(priority=="normal",1,if(priority=="low",2,999))) - Thanks to @jhedlund for the suggestion
-
(#1257), (#1064) Added configurable event stacking options for Bases Calendar view
- Allow events to overlap: Toggle whether timed events visually overlap or display side-by-side in week/day views
- Max stacked events: Limit horizontal event stacking in week/day views (0 = unlimited)
- Max events per day: Limit events shown per day cell in month view (0 = auto based on cell height)
- Max event rows per day: Limit event rows per day cell in month view (0 = unlimited)
- Configure per-view in the Bases Calendar view settings under Layout
- Thanks to @3zra47 and @hasanyilmaz for the feature requests
Changed
-
Improved inline task conversion to merge TasksPlugin and NLP parsing results
- Previously, if a task had hashtags (e.g.,
- [ ] Buy milk tomorrow #groceries), NLP parsing was skipped entirely - Now NLP always parses the clean title to extract dates/times, then merges with TasksPlugin-extracted metadata
- TasksPlugin explicit values (emoji dates like 📅) take priority over NLP-inferred values
- Tags, contexts, and projects from both sources are combined and deduplicated
- Previously, if a task had hashtags (e.g.,
-
Polished task card styling for a more native Obsidian look
- Simplified hover and focus states to use native Obsidian colors
- Removed blur filter and shadows from metadata pills
- Fixed subtask chevron vertical alignment with status dot
- Reduced swimlane label column width in Kanban view
-
(#1151) Increased mini calendar heatmap color intensity for better visibility
- Days with notes now show more noticeable colors, especially with low note counts
- Intensity levels increased from 10/25/45/65% to 25/40/55/70%
- Thanks to @arreme for the suggestion
Fixed
-
(#1271) Fixed custom user fields not appearing in task modals after creation
- New custom fields are now automatically added to both creation and edit modals
- Deleting a custom field also removes it from modal configuration
- Updating a field's display name syncs to the modal configuration
- Thanks to @craziedde for reporting
-
(#1256) Fixed links in custom properties not rendering as clickable in task cards
- Wikilinks (
[[Note]]) now render correctly in Bases views - Markdown links (
[text](url)) now render correctly in all views - Links in list-type properties are also properly rendered
- Thanks to @3zra47 for reporting
- Wikilinks (
-
(#1157) Fixed inline task embeds breaking layout when placed in indented bullet lists
- Task titles now wrap naturally within line boundaries instead of forcing the entire card to a new line
- Metadata (dates, tags, etc.) stays inline when space permits, with horizontal scrolling on hover when needed
- Thanks to @3zra47 for reporting
-
(#1241) Fixed deleting custom priorities in settings removing the wrong priority when multiple priorities exist
- Thanks to @Anthonyhunter100 for reporting
-
(#1165) Fixed Kanban view grouping by list properties (contexts, tags, projects) treating multiple values as a single combined column
- Tasks with multiple values now appear in each individual column (e.g., a task with
contexts: [work, call]appears in both "work" and "call" columns) - Added "Show items in multiple columns" option (enabled by default) to control this behavior
- Fixed drag-and-drop to properly add/remove individual values instead of replacing the entire list
- Fixed swimlane mode to also respect list property explosion
- Thanks to @dictionarymouse for reporting
- Tasks with multiple values now appear in each individual column (e.g., a task with
-
(#1217) Fixed inconsistent Ctrl+Click/Cmd+Click behavior for opening notes in new tabs
- Note cards and internal links now properly support Ctrl/Cmd+Click to open in new tab
- Added middle-click support for opening in new tab
- Thanks to @diegomarzaa for reporting
-
(#1265) Fixed task edit modal corrupting markdown-style project links on save
- Links like
[Project Name](path.md)were being wrapped in extra brackets:[[[Project Name](path.md)]] - Plain text project names are now preserved as-is instead of being converted to wikilinks
- Markdown-style project links now resolve properly and display as linked (not orange/unresolved)
- Thanks to @minchinweb for reporting
- Links like
-
(#1266) Fixed Kanban view scroll position resetting to top of column after any change
- Clicking status dots, priority, or other task properties no longer jumps the column back to top
- Scroll position is now preserved for both regular columns and swimlane cells
- Thanks to @essouflenfer for reporting
-
(#485), (#1221), (#1262) Fixed NLP parser not recognizing non-ASCII characters in tags, contexts, and projects
- Tags like
#investigaciónwere being truncated at accented characters (e.g.,#investigaci) - Non-Latin scripts (Chinese, Cyrillic, Japanese, etc.) were not recognized at all (e.g.,
@家,#杂事,@ознакомиться) - Parser now uses Unicode-aware regex patterns to support all languages and scripts
- Thanks to @Arachnidai, @fidelaznar, and @qian1ing for reporting
- Tags like
-
(#1249) Fixed project preview in task creation modal showing quadruple brackets (
[[[[Project]]]])- Projects selected from autocomplete were being wrapped in extra wikilink brackets in the preview display
- Thanks to @2vzqwz8tvg-png for reporting
-
(#1249) Fixed custom priority ordering in settings being unclear and non-intuitive
- Priority cards are now draggable to reorder (like statuses)
- Priorities are displayed in weight order (lowest to highest priority)
- New priorities are added at the end (highest priority) instead of with a fixed weight
- Thanks to @2vzqwz8tvg-png for reporting
-
(#1272) Fixed recurrence anchor not being saved when set to "completion" during task creation
- Selecting "completion" as the recurrence anchor now correctly persists to the task frontmatter
- Thanks to @blaxcky for reporting
-
(#1128) Fixed NLP parser not allowing slashes in context names
- Contexts like
@shopping/grocerieswere be...
- Contexts like
4.0.5
TaskNotes 4.0.5
Changed
- (#790) Task edit modal now shows unresolved project links with appropriate styling
- Similar to how dependencies are displayed, unresolved projects now appear with visual indication
- Hovering over an unresolved project shows a tooltip explaining it couldn't be resolved
- Thanks to @aubreyz for reporting
Fixed
- (#1011) Fixed chevrons incorrectly showing on tasks with no subtasks
- Project index was incorrectly adding all linked files instead of only files referenced in the projects field
- Now properly parses the projects field and only indexes those specific files as projects
- Also fixed alias handling in project and dependency links - aliases are now correctly stripped before link resolution
- Thanks to @craziedde for reporting
- (#1200) Fixed kanban drag & drop not updating task properties correctly
- Dragging tasks to different columns now properly triggers business logic (completedDate, auto-archive, webhooks)
- Previously, kanban updates bypassed
updatePropertyand directly modified frontmatter - Thanks very much to @tvoklov for the PR
- (#1203) Fixed autocomplete dropdown being clipped inside NLP field boundaries
- Configure CodeMirror tooltips to render in document.body instead of constrained editor container
- Prevents suggestion dropdown from being hidden when it extends beyond the NLP field height
- Thanks to @Andrei-Ioda for reporting
- (#1172) Fixed task lists and checkboxes rendering incorrectly in task details editor
- Remove padding-left override on
.cm-lineto allow CodeMirror decorations (checkboxes, indentation) to render properly - Content padding is now handled by
.cm-contentwhile.cm-lineuses natural spacing - Thanks to @nightroman for reporting
- Remove padding-left override on
- Fixed relationships widget not appearing on project notes without frontmatter
- Widget now correctly shows on any note referenced as a project by tasks, regardless of whether the note has frontmatter
- Fixed task card and relationships widgets not appearing when opening notes in source mode
- Removed live preview mode restriction to allow widgets to render in both source and live preview modes
- (#901) Fixed calendar view toolbar buttons overflowing on narrow screens
- Added
flex-wrap: wrapto calendar header toolbar to allow buttons to wrap to multiple lines - Thanks to @RumiaKitinari for reporting
- Added
- (#1193), (#1194), (#1185) Fixed new calendar views not respecting user's default calendar settings
- Previously, new Bases calendar views used hardcoded inline defaults instead of user-configured preferences
- Calendar view initialization now correctly uses
plugin.settings.calendarViewSettingsas the fallback - Thanks @ki5ck, @minchinweb and @ThamirysOlv for reporting
- Fixed calendar to ensure that it respects user's locale
- Tries to use calendar locale, then tries UI language, then system language, then falls back to English
- (#1043) Fixed default reminders with "at time of event" (0 offset) not being applied to tasks
- UI was displaying "1" instead of "0" for zero-offset reminders in settings
- Thanks to @dblinnikov for reporting
- (#1206) Fixed NLP status parsing regressions with trigger prefixes and temporal keywords
- Manually typing status trigger + label now correctly parses (e.g.,
*Donewhen label isDone) - Status values containing temporal keywords no longer misparsed as dates (e.g.,
Expedite = Now) - Thanks very much to @renatomen for the PR
- Manually typing status trigger + label now correctly parses (e.g.,
- (#1212) Fixed "Show release notes on update" toggle not saving correctly
- Thanks to @Jon-dog for reporting
- (#1197) Add Portuguese language to list of translations in general tab settings
- Allows users to select the Portuguese translation option
- Thanks to @andysteel for the PR
- Fixed file properties displaying incorrectly in Bases views
- File properties like
file.name,file.basename,file.size, etc. were showing as "Title" or returning null - Now correctly extracts and displays all file properties from Obsidian's file metadata
- Supports both direct TFile properties (name, basename, extension, path, size, ctime, mtime) and computed properties (links, embeds, tags, backlinks, aliases)
- File properties like
4.0.4
TaskNotes 4.0.4
Added
- (#1134), (#779) Added CMD+Enter (Mac) / Ctrl+Enter (Windows/Linux) keyboard shortcut support for saving in all modals
- Works from any input field in task creation, task edit, time entry, timeblock, and property selector modals
- Thanks to @luckb0x, @hamlim and @nightroman for the feature requests
Fixed
- (#1181) Fixed vertical overflow in Kanban view columns with fewer than 15 tasks
- Prevents cards from extending beyond column boundaries before virtualization activates
- Thanks to @lomarcanys for reporting
- (#1177) Bases views now anchor recurring completion and calendar navigation to the right date
- Recurring completion from Bases Task List/Kanban uses the task's scheduled/due date instead of "today" (fixes complete_instances)
- Bases calendar navigation and property-based events use UTC anchors to avoid previous-day jumps
- Thanks to @nslee123 for flagging the issue
- Bases calendar navigation now respects UTC-anchored dates to avoid landing on the previous day
- Corrected all-day end date calculation to prevent off-by-one spans
- Added regression test for the UTC anchor behavior
- Thanks to KaCii for flagging the issue
Changed
- Refactored plugin styling to better align with Obsidian's native UI conventions
- Replaced all
cursor: pointerwithcursor: var(--cursor)(100+ instances) to follow Obsidian's cursor convention - Removed forced
border: none; box-shadow: nonerules that were fighting against Obsidian's native button styling - Scoped custom
.tn-btnbutton system to settings modal only (.mod-settings), allowing Obsidian's native button styles to work elsewhere - Thanks to @kepano for guidance
- Replaced all
4.0.3
TaskNotes 4.0.3
Fixed
- (#1157) Fixed task embeds appearing on new line instead of inline with bullets in lists
- Changed inline task cards to use span elements instead of divs for proper inline flow
- Added max-width constraint to prevent wrapping when tasks are wider than editor
- Task embeds now display correctly inline with bullet points during live preview
- Thanks to @3zra47 for reporting
- (#1168) Fixed mini calendar stealing focus every few seconds when pinned to sidebar
- Thanks to @DearHaruHaru for reporting
- (#1161, #1162) Fixed "unexpected scalar" YAML parsing error in generated tasks-default.base template
- Changed nested quotes in "Not Blocked" filter from double to single quotes
- Thanks to @benschifman and @InterstellarRaccoon for reporting, @GarrettKaupp for identifying the fix
Changed
- Updated task modal UI to use native Obsidian patterns for better theme compatibility
- Thanks to @kepano for feedback