Ctrl/Cmd
click tags in the tag pane to toggle them as a search filter, instead of replacing the search query.tag:#mytag
will now always use case-insensitive mode, since tags are always insensitively matched. For case sensitive match, use a plain #mytag
query instead._
will now auto-complete properly.:
character no longer creates a Markdown link.obsidian://
URI no longer opens all previously opened vaults.#parent/child
nested tags will only have cm-hashtag-end
on the last piece of <span>
when spellchecker breaks the tag into multiple pieces.MarkdownRenderChild
has been properly exported.data-path
attribute to facilitate custom CSS targeting.#parent/child/subchild
.
tag:#parent
will now match #parent/child
.line:(...)
will perform the subquery on a line-by-line basis, rather than a file-by-file basis. For example, line:(foo bar)
will only match foo
and bar
if they're on the same line.block:(...)
will perform the subquery on a block-by-block basis. This is expensive computationally as it requires parsing each file, which means this is likely slower than other modes.section:(...)
will perform the subquery on a section-by-section basis. A section starts from a heading and ends before the next heading.Cmd+Shift+V
can now paste as plaintext on macOS, in addition to the previous Cmd+Shift+Option+V
(seriously, who came up with this default hotkey?).%20
now decode properly when navigating using the editor.Setting
and BaseComponent
now have a setDisabled
function that will disable its control. Disabling a setting will disable all of its components.Scope.registerKey
is now deprecated. It is replaced by Scope.register
.query
as the language, similar to how mermaid works. Note that this syntax does not work in Obsidian Publish.Ctrl/Cmd+Click
and Alt+Enter
for links in the editor.Shift
while dropping text will drop it in plaintext mode, similar to Ctrl/Cmd+Shift+V
to paste in plaintext mode.**
signs.WorkspaceItem.getRoot()
which returns one of Workspace.leftSplit
, Workspace.rightSplit
, or Workspace.rootSplit
. This can be used to distinguish whether a WorkspaceLeaf
is in the center area or the sidebars.Workspace.on('quit', callback: (tasks: Tasks) => any)
. This takes a callback with a Tasks
object. You can perform any cleanup tasks in here. For any async/promise-based cleanups, such as saving files, add your task to the execution queue using Tasks.add(async () => { ... })
or Tasks.addPromise(promise)
so that the app waits until your task is finished before quitting.MarkdownPostProcessorContext.addChild
for more details.[Display text](https://url)
instead of previously just the URL.Cmd+Option+F
to avoid clashing with the native hotkey for hide window.Alt+Click
, or multiple consecutive files using Shift+Click
.obsidian://
link the same way it's generated as "Copy obsidian url".Tab
will now insert spaces if Use tab to indent
is turned off.Plugin.registerCodeMirror(callback)
has been introduced to help plugins hook to CodeMirror instances that are already loaded, and also created in the future. This function is just a helper for Workspace.iterateCodeMirrors(callback)
then Workspace.on('codemirror', callback)
Workspace.iterateCodeMirrors(callback)
has been introduced to help plugins cleanup their CodeMirror events when the plugin unloads.App.on('codemirror', callback)
has been moved to Workspace.on('codemirror', callback)
. The old method will be deprecated and will now proxy to the new one. There is no more event system on App
.internal-link
for the node. The app will use the contents of the node as the link. Example: class A internal-link;
]]
when another link exists on the same line.1
.[[
auto-conversion from chinese characters 【【
.prepareQuery
, fuzzySearch
, renderMatches
, renderResults
, sortSearchResults
, are now available.Enter
to finish rename a file not working properly when using an IME.SuggestModal
and FuzzySuggestModal
are now available for use.vault/.obsidian/themes
folder. Be sure to disable the legacy option for obsidian.css
when you do so!vault/.obsidian/snippets
folder.cssclass
. You can also specify multiple ones with the same syntax as tags and aliases, for example, cssclass: class1, class2
. Combine this with custom CSS to selectively style notes.|
..md
extension.moment.js
has been replaced with moment-with-locales.js
.layout-change
is has been added to Workspace
.#
character. You can now write tags: [tag1, tag2, tag3]
.aliases
in front matter. These will then show up in the [[
link suggestion, and auto-complete to [[Filename|alias]]
. They will also be picked up in unlinked mentions. For example: aliases: [AI, Artificial Intelligence]
. Add double quotes around your alias if it contains special characters.tags
in front matter. These will then show up in the tag pane, as well as in search queries using the tag:
operator. For example: tags: ["#pkm", "#hype"]
.frontmatter
is now available in CachedMetadata
.parseFrontMatterEntry
, parseFrontMatterStringArray
, parseFrontMatterAliases
and parseFrontMatterTags
.mod-root
is now always added to the workspace center area.Setting.addExtraSetting
has been renamed to addExtraButton
.Workspace.getActiveLeafOfViewType
has been renamed to getActiveViewOfType
.path:
and file:
filters from removing tags./Note
internal link format.Linked mentions
and Unlinked mentions
sections.undefined
to appear.app://obsidian.md
links for internal links.Vault
APIs now normalize all input paths.<iframe>
now has permission to show modal like alert()
.