Command palette can now be configured to have "pinned" commands that appear at the top.
Obsidian Publish now has a search filter in the upload dialog.
Improvements
Obsidian Sync no longer runs into a possible race condition which sometimes causes file to be recognized as deleted. This has only been observed happening on Obsidian Mobile so far.
Vastly improved Obsidian Sync boot up speed. It will now also avoid re-scans of attachments when they haven't been changed.
Obsidian Sync will now log the reason for connection errors to help with debugging.
Embedding other notes with a heading or a block target will no longer render the whole note when the target cannot be found.
On macOS, the trigger to change font size will now use the pinch-to-zoom gesture instead of Cmd+Scroll.
Improved performance when sidebars are hidden.
Caching/speed improvements for rendering images and other media files.
No longer broken
Fixed headings took too much space when line-wrapping.
Fixed editor had a larger gap on the right side due to an improper CodeMirror upgrade.
Fixed exiting the hotkey customization pane while the app is waiting for a hotkey causes keys to stop working.
Fixed link suggestion not working with capital letters when over 10k files + aliases.
The fold indicator in metadata section is now correctly aligned.
Fixed bound command not preventing default when command doesn't execute, causing confusion.
Fixed some plugins didn't show up when a sort filter is applied.
Removed Ctrl/Cmd+M hotkey for minimizing the app, which was previously assigned by default from Electron.
Developers
You can now specify an editorCallback or editorCheckCallback in a command that will register your command as an editor command, which will allow it to be added to the editor toolbar on mobile.
Adapter now has a stat function.
There is now a Platform object that can be used to determine whether the app is on mobile, along with some other platform information.
On initial loading of the vault, the cache indexing notification will now contain the indexing progress.
Improvements to the font size adjustment annoyance:
Ctrl+Scroll now only activates if you hold Ctrl before starting to scroll.
This option can also now be disabled in Settings > Appearance.
No longer broken
Obsidian Sync: setting custom device names now persists properly.
Obsidian Sync: viewing version history of images and other media files no longer freeze the app trying to render the media file as plaintext. Images can now be previewed.
Developers
The HTML property on task lists has been changed from data-checklist to data-task to be consistent with internal code names.
You can now search for tasks using task: similar to block:. There is also task-todo: and task-done: which will match only the tasks that are incomplete or complete, respectively. Use task:"" to match all tasks.
Search and backlink results has been significantly reworked:
Search results are now always expanded, instead of showing "... and x more matches".
"Show more context" will now show the Markdown block, instead of a fixed number of lines before and after the match.
There are now buttons to expand individual search results to see even more context.
Hover preview on search results will now scroll the highlighted region to the center rather than being clipped at the top.
You can now display backlinks inside the document using the more options menu while in preview mode. We will try to support edit mode in a future release.
Task lists [x] can now contain any character to indicate a completed task, instead of just x. This value can be used by custom CSS to change the appearance of the check mark, and is also available for plugins to use.
There are now hotkeys to show the panes for file explorer, backlinks, outline, starred, and tag pane.
You can now change the font size in the editor and preview with an option in Settings > Appearance, or using Ctrl/Cmd + up/down scroll. Some themes may have set overrides for the font size, so this setting might not work for you. See the developer section for details.
Improvements
Major improvements to plugin management:
Plugin search now also matches in the description field as well.
You can now filter installed plugins using a search term.
Enabled plugins are no longer reset when you toggle safe mode. This can help quickly test whether issues are caused by plugins.
Plugins can now be enabled or disabled in the same place where they are installed, so you can enable it right away after install, instead of having to find them in the plugins list.
The "update" button will no longer show up if a plugin doesn't have a new version.
Plugin setting tabs are now sorted alphabetically.
Obsidian Sync will now store a customizable device name which will show up in the sync log to help debug sync issues.
Obsidian Publish now allows search on your site even if you don't turn on navigation.
You can now specify a logo file for Obsidian Publish.
There is now an option to reload the app when an error happens during initialization.
There is now a notification when the app first indexes the vault to avoid confusion why some features might not work right away.
Link suggestions and quick switcher will now fallback to a simpler matching algorithm when vault contains over 10k notes to avoid delays.
No longer broken
Renaming files no longer cause heading links to self ([[#heading]]) to include the file name.
The Workspaces plugin will now save to the proper workspace if the app was closed and restarted right after switching workspaces.
Fixed some i18n strings that weren't properly loaded and always used the English variants due to a race condition.
File names with multiple consecutive space characters now render properly, instead of having the spaces collapse into one.
Generated Markdown links now properly escapes backslashes.
Fixed embedded queries behave differently than global search when matching attachment files.
Fixed linking unlinked mentions not using preferred Markdown link format.
Word counter for Korean now properly counts words rather than letters.
Fixed Shift-select in the file explorer accidentally selecting unsupported files that were not shown, causing unexpected file moves when using drag and drop after.
Developers
Theme developers: from now on, please avoid setting font-size using absolute units like px or pt. Instead, use relative units like em or %, which will automatically scale from the font size the user specified. To migrate px to em, you can divide your px value by 16 (the default font size), for example, 24px => 1.5em.
Commands that return false in their checkCallback will no longer set preventDefault() on the key event.
MetadataCache now includes sections and lists info.
Sections describe the Markdown root level "blocks", and comes with a type.
Lists comes with a parent field which can be used to deduce parent-child relationships, and also a task field which indicates whether this is a task and its completed status.
MarkdownRenderChild now requires a containerEl passed in via its constructor.
You can now retrieve section information as a MarkdownPostProcessor from the context object MarkdownPostProcessorContext.getSectionInfo().
Page preview can now be configured to require Ctrl/Cmd on hover for each component independently.
A new option in the About section can now let you specify a folder name for the vault config different than .obsidian. It must still begin with a dot, and must be a valid folder under the vault root. This supersedes the .obsidian.nosync fallback from the last release.
Improvements
Hardware acceleration has been moved to an advanced section.
Mermaid.js has been upgraded to 8.9.2.
No longer broken
Empty aliases in frontmatter should no longer cause the backlink pane to spin forever.
Sync should now properly delete folders with .DS_Store.
Hover previews now always requires holding Cmd/Ctrl.
Markdown auto-pairing for =, ~ and $ now only works when you are selecting text. Auto-pairing as you type was an undesirable behavior that was quite annoying for these characters.
Introduced auto-pairing for comments %, also only happens when you are selecting text.
Obsidian Sync now no longer cause a few characters of glitching when receiving multiple changes over a high latency network.
Obsidian Sync will now ignore files with illegal characters when downloading, rather than constantly running into an error and retrying.
File Recovery will now retry saving files that has been edited but was still in the cooldown period.
It is now possible to rename .obsidian to .obsidian.nosync to prevent iCloud from syncing the config folder. Make sure to close the app before the rename.
No longer broken
Fixed publish unable to upload publish.js.
Fixed swapping panes causes one of them to shrink.
Disabled plugins now properly disables the previously selected hotkeys.
Fixed file property of new URI handler not working without a parent folder.
The active pane will now be properly restored between restarts of the app.
Pressing End will now properly go to the line end in tables.
Fixed title and body flashes to "No file" briefly when switching notes.
Developers
There is now a mobile emulation flag that can be used to emulate mobile mode. Use app.emulateMobile(true) to turn on emulation and app.emulateMobile(false) to turn off.
Officially starting to discourage the use of CodeMirror 5's API if possible, and migrate to using the Editor interface. The Editor interface supports Obsidian Mobile and will be used to power the future WYSIWYG mode. We will gradually add any missing APIs to ensure feature compatibility with the older CM5 API when possible.
Backlinks and unlinked mentions can now be filtered using a search query.
Several new features for Obsidian Publish:
Option to insert a Google Analytics code (make sure your local regulations allows). Note that this is only available for sites under a custom domain.
Option to run JavaScript on your site, by uploading a file named publish.js in the root of your vault. Note that this is only available for sites under a custom domain.
An option to redirect visitors from publish.obsidian.md to your custom domain.
Password protected sites on custom domains should now work even if third party cookies are blocked.
Improvements
Hotkeys in Obsidian will now override default hotkeys set by the CodeMirror editor, which previously would also be triggered, causing confusing behavior.
On Windows and Linux, the non-standard editor hotkeys Ctrl+Up/Down, Ctrl+Shift+Up/Down and Alt+Left/Right have been removed to avoid confusion.
On macOS, the Option+B/F/D hotkeys have been removed, and will now insert the special symbols ƒ∫ and ∂ normally.
On macOS, the legacy emacs navigation key bindings for the editor can now be disabled in the editor settings.
Obsidian will now restore windows to your main screen on startup if they are off-screen, which could be caused by removing a monitor that was previously connected.
Improved Tibetan language behavior in search and auto-complete.
No longer broken
tiff files are no longer listed as supported images. The browser engine didn't support it in the first place.
Sync should no longer get stuck on files larger than 100mb.
There is now a new File Recovery core plugin that keeps snapshots of your most recently edited files for recovery. This can be used to restore lost data in cases where a computer crash causes a file to be corrupted, or when a plugin malfunction causes a file to be wiped.
You can now nest a section: search within another one to search for sub-headings. For example, section:(Heading1 section:(Subheading))
There is now an option to disable GPU acceleration, especially helpful for those experiencing kernel panics and graphical glitches on MacOS.
Improvements
Embedded query blocks will now exclude its own block when searching.
Folder auto-complete for setting options that take a path is will now match case-insensitive.
There is now an option to switch vault when the app encounters an error when loading the vault.
Vim mode now has a confirmation dialog to prevent it from being accidentally turned on.
"Open today's note" command has been tweaked to "Open today's daily note" to avoid confusion.
No longer broken
Fix heading and list folding not persisted properly.
Fix the link suggestion box stuck on page when opening a links using hotkey.
Fixed rare case of Sync getting stuck on a merge failure.
A new command has been added for opening a new workspace while saving the current one.
Obsidian Sync will now automatically merge sync conflicts instead of overwriting the file. Note that this only applies to .md files.
When a change is made to a note on disk, but you also have changes in Obsidian that hasn't been auto-saved (within 2 seconds), the two versions will now be merged automatically. Previously the app would discard any unsaved changes causing you to lose a few characters typed.
Improvements
Search will no longer get stuck if some note failed to load due to a filesystem error.
When opening a note fails due to a filesystem error, it will no longer be possible to accidentally save the contents of the previously opened note on the newly opened note.
No longer broken
Fixed a rare case sync race condition on high latency network when running on multiple devices. This would previously undo the last few characters typed into the document.