github obsidian-nvim/obsidian.nvim v3.16.5

6 hours ago

What's new

Added 🎉

  • Added opts.callbacks.create_note and ObsidianNoteCreate event to run action after note creation, see :Obsidian help Note.
  • LSP folding support, see :Obsidian help Folding.
  • Sync supports creating remote with end to end encryption password.
  • Navigating to an anchor or block link now briefly highlights the full referenced section, like the Obsidian app. The highlight group is ObsidianBlink (defaults to Visual) and the duration is controlled by vim.g.obsidian_blink_duration (ms, defaults to 500).
  • note.sections and the obsidian.Section type: header anchors and blocks now carry the full section/paragraph range (anchor.section, block.section). Anchors are also collected for setext (===/--- underline) headings now.
  • obsidian.Range, a minimal shim of the experimental vim.range() API (0-based, end-exclusive) used by obsidian.Section.
  • LSP document symbols now report real section ranges instead of zero-width ranges.
  • Add opts.file.ignore_filters to exclude directories completely from the plug-in.
  • Sync supports switching backend and one shot sync on file write
    • opts.sync.backend -> obsidian / git (WIP)
    • opts.sync.trigger -> continuous / on_write / manual
    • vim.g.obsidian_sync_on_write_debounce_ms for on_write defaults to 2000 (experimental value, override in post_setup callback)
  • References/Backlinks will find unresolved links.
  • LSP filewatch capability for internal use in sync and cache.
  • Footnote support, mirroring the Obsidian app:
    • goto-definition on [^1] jumps to the [^1]: definition, and back to the first reference from the definition; unresolved footnotes prompt for content and insert a definition.
    • references finds all occurrences of the same footnote in the current note.
    • completion of existing footnotes after typing [^, plus a create item for unresolved ids that prompts for content and inserts the definition (obsidian.footnote_new).
    • :Obsidian footnotes to view footnotes of the current note via vim.ui.select with preview.

Fixed ✅

  • LSP references on block ids and block links will work properly.
  • frontmatter.enabled = false now prevents :Obsidian new from writing the default frontmatter template. Closes #862.
  • Proper trigger characters for neovim native LSP completion to work.
  • After actions.move_note, buffers can be properly saved without warning.
  • Sync will properly log cli errors.
  • YAML will not force quoted number strings into number.
  • Warns if workspace folder does not exist.
  • Picker will properly require available picker in runtime path, and fallback to native.
  • Bring back the ordinal fallback to the display and filename in the telescope picker.

Changed ⚠️

  • Raise minimum supported version to 0.11.
  • new_notes_location when current_dir but the current buffer is not valid note file, fallback to current working directory.

Commits

4bf07e5 chore(release): bump version to v3.16.5 for release
adec31a chore(docs): auto generate docs
a969afb feat(note): opts.callback.create_note with a scope (#889)
b38f334 refactor: dedicated ref parser (#890)
b99370b feat(util): add fs primitives (#887)
a0abc4f fix(note): honor disabled frontmatter (#885)
e3f170b fix(lsp): completion trigger characters for neovim native complete
411cb68 fix(actions): moved note can be properly saved
6fdfe8c docs: add mebble as a contributor for code (#883)
383a666 Fix tag search text contents (#878)
ef7f5ee doc(lsp): LSP pogress update
1374796 feat(lsp): folding range (#882)
e6c9fe6 fix(sync): log cli errors (#881)
7861be4 fix(picker): proper lazy require on available and fallback (#880)
266c55b fix(workspace): warns if dir does not exist (#874)
04b36e3 feat(sync): creating remote with e2e password (#873)
312b9c0 chore(docs): auto generate docs
822d864 refactor: anchor and block point to unified section and blinks (#872)
8a92832 fix(notes): fallback to cwd for current_dir new note creation (#871)
1eaddce chore(docs): auto generate docs
f7fa41d refactor: support 0.11 minimum (#778)
422b114 fix(types): ui module config types optional
ae5c116 feat(lsp): support footnotes (#870)
76545ae feat(lsp): file watch (#867)
95c2c7b fix(commands): properly exporet toggle_checkbox command
e05154e chore: style stuff
8c75d49 chore: search.find_refs return text directly
2dae742 feat(lsp): references will find unresolved links (#866)
1369004 fix(yaml): don't force number strings into number
239af7e chore(docs): auto generate docs
ffad03e feat(sync): backend switching and one shot sync (#865)
8f9d5a8 feat: exclude_dir for excluding directories within vaults (#822)

Don't miss a new obsidian.nvim release

NewReleases is sending notifications on new releases.