Core Philosophy

Vim-centric workflow - Replicating vim/neovim keybindings and workflow in Obsidian for consistency across all editors.


Installed Plugins (9)

PluginPurpose
obsidian-vimrc-supportVim keybindings with custom .vimrc
obsidian-another-quick-switcher (AQS)Enhanced file finder with recent files, fuzzy search
omnisearchFull-text vault search
pane-reliefPer-tab history enhancement
obsidian-hover-editorFloating editor windows
quick-explorerQuick file navigation
attachment-managementOrganize attachments
journalsJournal/daily notes
quickaddQuick capture templates

Vim Keybindings (.obsidian.vimrc)

KeyActionVim Equivalent
j/kVisual line movementgj/gk
<C-o>/<C-i>Navigate back/forwardJump list
\ffFile search (AQS):Files
\frRecent files (AQS):History
<C-p>Quick switcher:Files
\sgSearch vault (Omnisearch):Rg
\sbSearch in file:BLines
gd / \rjFollow link (new tab)gd go to definition
ghOpen link in new tabLSP hover (adapted)
[b/]bPrevious/next tabBuffer navigation
\eToggle sidebarNERDTree toggle
\EReveal file in explorerNERDTreeFind
<Space>Toggle foldza
\cpCopy relative pathSame
\cPCopy Obsidian URLCopy absolute path (adapted)
:vsVertical splitSame
:q/:Q/:wqClose tabSame
:wSave fileSame

Global Hotkeys (hotkeys.json)

HotkeyAction
Cmd+PQuick Switcher
Cmd+Shift+PCommand Palette
Cmd+Shift+FOmnisearch

Core Settings (app.json)

SettingValuePurpose
vimModetrueEnable vim bindings
newFileLocation”folder”New files go to specific folder
newFileFolderPath”inbox”Inbox workflow for new notes
attachmentFolderPath”assets”Organized attachments
alwaysUpdateLinkstrueAuto-update links on rename
newLinkFormat”relative”Use relative paths for links

Key Features You’re Looking For

  1. Vim Muscle Memory - Same keybindings across vim, neovim, VSCode, Cursor, and Obsidian

  2. Efficient Navigation

    • Quick file switching (\ff, \fr, <C-p>)
    • Tab/buffer navigation ([b, ]b)
    • Back/forward history (<C-o>, <C-i>)
  3. Powerful Search

    • Full-text search (\sg)
    • In-file search (\sb)
  4. Link-based Workflow

    • Follow links to new tabs (gd, \rj, gh)
    • Relative link paths
  5. Split/Pane Management

    • Vertical splits (:vs)
    • Close tabs (:q, :wq)
  6. File Organization

    • Inbox pattern for new files
    • Organized attachments in assets/
    • Auto-updating links

Known Limitations

FeatureVimObsidian
Global jump list❌ Per-tab only
\fb buffers❌ Use [b/]b
gh hover preview✅ LSP⚠️ Opens in new tab instead
<leader> keyword❌ Use literal \

Summary

目前还是先放弃了。 总体来讲 Obsidian 应该是主药面向鼠标用户设计的。我暂时还是先用 Foam 凑合吧。 之后看看要不直接用 obsidian.nvim 而不是 obsidian app 来用???包括那个 Note Navigator 插件,应该也是面向鼠标用户的。倒是跟 Apple Note 很契合。

  • gh 的这个 hover 的功能无论如何搞不定

    • Obsidian 原生的 cmd + mosue hover 的功能,没有命令可以供 vimrc 去绑定。
    • Hover Editor 那个其实也不是干这个用的,而且没有 close popover 的命令,导致只能打开,却没办法关闭。
      • 如果强行用 workspace:close 绑定到 ‘q’ 关闭 popover,只会导致在平时的 note 上, ‘q’ 也会导致这个 tab 直接被关闭。。。
    • 所以最后就没有什么好办法可以只用 ‘gd’ keybinding 直接搞定 hover preview 的。
  • 一大堆的插件,一个个安装配置,说实话有点顾不过来了。相当于又要维护一套配置,有点受不了了。而且几乎每个功能几乎都要单独考虑插件。

  • VIMRC 的插件基本上需要我针对每一个使用的功能都创建命令以及 keybinding。维护成本太高了。