Clicking on links in Live Preview will now open them directly.
Previously Ctrl/Cmd+Click to open link is now simply a click.
Previously Ctrl/Cmd+Shift+Click to open link in new pane is now Ctrl/Cmd+Click, just like everywhere else in the app.
Embedding list items will now show any sub list items when rendering.
Improvements
Embeds to files that don't yet exist will automatically load the file once it's created. This avoids issues with images that syncs in after opening the note it was embedded in.
Word count now properly counts apostrophes.
Renamed "Swap line up/down" commands to "Move line up/down".
Obsidian Publish now has an option to hide page title headings.
Added persistent notice to the help vault to remind users not to save data in it, since the help vault can be reset.
Added additional confirmation for opening file:/// links.
No longer broken
Fixed several issues with IME in the new editor.
Fixed code blocks tagged with markdown as the language causes Live Preview to misbehave.
Fixed mermaid state diagrams not properly sized.
Fixed command palette performance issue.
Fixed export to PDF doesn't expand embedded notes and instead show a scrollbar.
Fixed local file:/// links stopped working.
Fixed macOS caret character misbehaving when used as a deadkey in some keyboard layouts.
Fixed hitting Shift+End twice not going to the end of the paragraph.
Developers
Theme developers: our new editor has received an upgrade where previous ​ characters, used as placeholders for computing cursor positions, have been switched to 0-width <img> elements. We recommend double-checking that your theme does not contain global img { ... } CSS rules to avoid breaking the editor.
TFile.unsafeCachedData has been removed and is now stored in a private inaccessible WeakMap to avoid accidental use of this unsafe data.
There is now a new requestUrl API function that returns an object with the http response status, headers, as well as getters for arrayBuffer, json, and text. This is a more advanced version of the request API. (Requires API version 0.13.25)
The request and the new requestUrl functions can now accept a body of type ArrayBuffer.
Reduced the chances of Obsidian Sync duplicating the contents of a note when it encounters a conflicting new note which is modified both locally and remotely. It will now keep the latest version when this happens. (This patch is only fully effective when all of your devices are upgraded to this version)
Slightly improved editor performance.
No longer broken
Fixed editing large documents causes embeds to be broken.
Fixed indented code blocks adds large gap sometimes.
Fixed heading fold broken when multiple space characters are used after #.
Fixed plugins unable to load when using esbuild's new esmodule format.
Fixed toggling checklists only adds list bullet when no lists exist.
Fixed legacy editor crashes when using frontmatter.
Fixed Ctrl/Cmd+G hotkey doesn't work in reading mode.
Fixed Ctrl/Cmd+G does not override open graph view command.
Developers
Introduced apiVersion: string and requireApiVersion(version: string): boolean to help with API version requirements. Plugin authors can use this function to limit functionality that depends on new Obsidian APIs to avoid crashing on older versions of Obsidian.
Improved list bullet rendering to avoid jumping in Live Preview.
Improved behavior when pressing Enter in lists and blockquotes.
No longer broken
Fixed new editor's spellchecker dictionary options not working.
Fixed two consecutive footnote references causes any text in between to be underlined.
Fixed unable to type < and > in Hungarian keyboard layout on mac.
Removed emacsy toggle for mac in new editor.
Developers
Heads up to theme developers: the .list-bullet CSS has been reworked. It will now keep the original character and superimpose the dot using the :after pseudo-element.
Switching between files will now keep the undo/redo history for the last 20 files, unless the file was changed externally. Not available for the legacy editor.
No longer broken
Fixed readable line length not properly applied when line wrapping is turned on.
Search will now properly unfold folded areas when highlighting the match.
Fixed wikilinks at the beginning of the line causes it to inherit styles from the previous line.
Fixed a rare case of data loss due to race condition caused by clicking on a link and triggering the loading of the additional syntax highlighting library.
Fixed gutter alignment for empty lines above headings.
Embedded content generated by plugin custom handlers (like image in Admonitions and Dataview) are now rendered in both Live Preview and Reading view. This will be a temporary addition until we can come up with a proper Markdown rendering API that handles nestable rendering contexts better.
No longer broken
Ctrl/Cmd+C now copies the whole line again if there is no selection.
Fixed several parsing issues with formatting symbols in wikilinks.
Fixed an issue where the Tab Size setting could change how indented lists are interpreted in edit view. This will now always recognize a tab character as 4 spaces, as required by Markdown's specifications.
Fixed a crash when pressing up (or using k in vim mode) on a --- separator that's out of screen.
Fixed a crash that happens sometimes when pressing page up or page down (or the equivalent commands in vim mode).
Fixed some plugins could cause line wrapping to fail and grow the width of the editor.
Code blocks will now line wrap in reading view, to stay consistent with editing view.
Fixed code block's language flair stopped showing up when indented in Live Preview.
Fixed math blocks inside blockquotes and lists are rendered outside.
Improved parsing of footnote references and definitions.
Developers
getSectionInfo() is now implemented for custom code blocks in Live Preview.
There is now a new Core plugin called "Editor status" which adds a status bar item showing you the current editor mode. You can also use it to toggle the editor mode.
Live preview improvements
Internal links to non-existent files will now look dimmer than regular links.
Fixed drop cursor is invisible in dark mode, also fixed drop cursor doesn't position correctly when document is scrolled.
Fixed IME on MacOS sometimes causes duplicate characters to be entered.
Fixed vim mode g related keys causes vim mode to crash until app is restarted.
Middle click now opens internal links in new panes.
Removed very faint background colors on external links.
Fixed pressing Enter on an indented line does not keep the indent properly.
Fixed long tables broken again due to an engine upgrade.
Fixed tables has a weird extra spacing after the last | character.
Improvements
Word count will now no longer re-calculate on every change, but instead re-compute at most twice every second, to spare some CPU time.
Developers
The changed event on MetadataCache now contains the file contents as well as the parsed metadata object.
There is now two helper functions for HTMLElement: isShown() which tells you whether this element is shown, and onNodeInserted which can add a callback for when the element is shown. These statuses depend on the element to be attached to the DOM and require not having any parent or ancestor with the css display: none.
Obsidian Sync now has a bulk restore functionality for deleted files.
"Preview mode" has been renamed to "Reading view" to avoid confusion.
Live preview improvements
Live Preview is now enabled by default. To switch to the old CodeMirror 5 based editor, toggle the "Legacy Editor" option.
You can now set the default editing mode to Live Preview or Source Mode.
Vim mode is now available for both Live Preview and Source mode.
Completed task lists are now crossed out and greyed out to match reading view.
Improved handling of up/down arrow keys interacting with blocks like embeds and code blocks.
Improved selection when clicking on previewed blocks.
Improved selection when selecting across hidden Markdown formatting syntax.
Fixed drag and drop does not show caret where the drop will occur, and also sometimes inserts garbage content when dragging within the editor.
Improved detection of inline HTML blocks.
Improved blockquote handling.
Fixed deleting auto-matched brackets like [ with backspace not deleting the closing counterpart ].
Fixed HTML comments could cause a crash in the editor parser.
Fixed clicking or selecting the end of the file selects to the beginning when there is a block at the end.
No longer broken
Fixed code block has an extra indent on the first line in reading view.
Quick Switcher will now create new files relative to the file of the current active pane when new file option is set to be relative to current file.
Developers
Breaking change: the data-task css class has been moved to the line element, rather than being on each piece of <span>.
The API for CodeMirror 6 has now been opened up. To deeply integrate with CodeMirror 6, you will be required to write an Extension to augment the editor. More details and tutorials will be available later.
Spell checker languages can now be changed on Windows and Linux. On MacOS, the system native spell checker is used, which automatically detects the language.
Spell checker will now skip over things that shouldn't be spell checked, such as code blocks, links, and math blocks.
Improved code block syntax highlighting colors.
Fixed fold all command not folding inner folds.
Fixed heading folds does not load sometimes, causing the fold state to be lost.
Fixed frontmatter not foldable.
Fixed image links with titles. Fixed links surrounded by <> not linking properly.
Improved bottom padding handling when backlink in document is enabled.
Fixed editor suggestions continue to show up after switching documents.
Added data-task for all tokens on a list item with checkbox to facilitate css styling.
Improved gutter alignment for fold icon and line numbers.
Added code syntax highlighting for source mode and live preview (including legacy editor).
Improved code block styling when cursor isn't active.
Implemented Ctrl/Cmd+Click on Markdown links.
Fixed Markdown links with "title" not working correctly.
Removed hard-coded Ctrl/Cmd+G search hotkey.
Improvements
Fixed legacy editor not properly scrolled to the top when switching document.
Improved handling of custom panes when plugins are no longer installed.
There is now a "Copy share link" in the community plugin's information page.
Leftover panes from disabled plugins will no longer be automatically closed. They will now show up as an un-recognized pane, and if the plugin is re-enabled, they will work again.