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
- Previously buttons were nearly invisible with transparent backgrounds
-
(#1409), (#1214), (#979) Improved Calendar, Agenda, Kanban, and Stats views in pop-out windows
- Drag-and-drop in Kanban view now works correctly when the view is in a new window
- Context menus (status, priority, task) now work correctly in pop-out windows
- Stats view drill-down modal now appears in the correct window
- Search boxes, task cards, and grouped task lists render correctly
- Root cause: Code was using global
documentand standardinstanceofchecks which fail across windows - Solution: Use
ownerDocumentfor DOM operations and Obsidian's cross-windowinstanceOf()method - Known limitation: Calendar event dragging does not work in pop-out windows due to FullCalendar library using global
documentfor mouse event listeners. Use context menus or edit modals as a workaround. - Updated FullCalendar to v6.1.20
- Thanks to @Snakiest, @same774, and @3zra47 for reporting
-
(#1337) Fixed "Convert current note to task" hotkey not applying default values from settings
- When user configured default status/priority as "None", the modal would show "Open" and "Normal" instead
- Root cause: Task edit modal was refreshing data from file and overwriting user-configured defaults
- Now preserves constructor-provided task data when converting non-task files
- Thanks to @guihasparyk for reporting
-
(#1304) Fixed "Cannot find function map on type Link" error in Blocking view
- Error occurred when embedding the Relationships base and opening the Blocking view
- Root cause: When
blockedBycontained a single dependency, Bases returned it as a Link object without a.map()method - Fixed by wrapping
blockedBywithlist()before calling.map(), consistent with the Blocked By view - Thanks to @prayidae for reporting
-
(#1295) Fixed missing navigation link to Default Base Templates page on tasknotes.dev
- The page existed but was not accessible from the site navigation
- Thanks to @Arachnidai for reporting
-
(#1223) Fixed "Go to today's note" command opening wrong date in positive UTC offset timezones
- In timezones like Japan (UTC+9), early morning use of this command opened yesterday's note
- Root cause: Incorrectly extracting UTC date components instead of local timezone date
- Thanks to @BrucePlumb for reporting