Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Vim Config

siulved54siulved5414 downloads

Loads a vimrc-style file from your vault so your key mappings and editor commands are ready when vim mode starts.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

Loads a vimrc-style file from your vault so your key mappings and editor commands are ready when vim mode starts.

Obsidian's vim mode has no startup file. With Vim Config you keep your mappings in one file, and they are applied when Obsidian starts and again whenever you save the file. A file written for Vimrc Support works as it is.

Getting started

  1. Turn on vim mode in Settings → Editor → Vim key bindings.
  2. Run Open config file. If the file does not exist yet, it is created with a few examples.
  3. Edit it, save it, and the mappings apply. Reload config file does it by hand.

The default file is .obsidian.vimrc in the root of your vault. A name starting with a dot is hidden from Obsidian's file list, so edit it in another editor, or set Config file in the settings to something like vimrc.md and edit it inside Obsidian.

What the file understands

" Lines starting with a double quote are comments.
let mapleader = " "

nnoremap j gj                 " normal mode, no remapping
inoremap jk <Esc>             " insert mode
vmap <Leader>y "+y            " visual mode, with a leader key
map H ^                       " every mode
nunmap <Space>                " take a key's meaning away
nmapclear                     " drop every normal mode mapping

exmap togglefold obcommand editor:toggle-fold
nmap <Leader>z :togglefold<CR>

set clipboard=unnamed
  • map, noremap and their n, i, v and x forms; unmap and mapclear in the same forms. <silent>, <nowait> and similar arguments are accepted and ignored.
  • let mapleader = "…", then <Leader> in later lines.
  • exmap <name> <command> defines your own :name command. obcommand <id> runs an Obsidian command by its id (shown in Settings → Hotkeys), so a mapping can do anything the command palette can.
  • set clipboard=unnamed (or unnamedplus) makes yanks and deletes go to the system clipboard, and pastes use it. The clipboard is read when the window gains focus or after a copy, so text copied in another app is there when you come back to Obsidian.
  • Other set options are passed to the vim engine, which reports the ones it does not know.
  • A line that starts with \ continues the line before.

Mistakes are reported per line in a notice and in the settings, and the rest of the file still applies.

A space leader works without the extra unmap <Space> older setups needed: Vim Config takes the built-in "move right" key out of the way and puts it back when you reload without a space mapping.

Not included

JavaScript from the config (jscommand, jsfile), surround mappings, source, and mappings for operator-pending and command-line mode. Obsidian's vim engine has no such modes.

Commands

Command What it does
Reload config file Reads the file again and replaces the mappings of the last load, leaving the ones other plugins added.
Open config file Opens the file when it is a note; creates it with examples if it is missing.

Installation

In Obsidian, open Settings → Community plugins → Browse and search for "Vim Config".

More plugins by Siulved54

Plugin What it does Source
Shared Blocks Write a block of text once and reuse it in any note. Edit the source and every reference re-renders live. shared-blocks
Text Case and Cleanup Change case, make camelCase or slugs, sort lines and remove duplicates, and repair text pasted out of a PDF, without touching code or URLs. text-format
Typography as You Type Curly quotes, dashes and ellipses as you type, kept out of code and maths, with Backspace to take one back. smart-typography-plugin
Section Numbering Number headings as an outline (1, 1.1, 1.2) and keep every link to them working when they renumber. section-numbering
Spreadsheet to Table Paste cells from Excel or Google Sheets as a Markdown table with a real header, insert CSV files, and copy tables back out. spreadsheet-to-table
Hybrid Line Numbers Relative and hybrid line numbers for Vim-style jumps, where a folded section counts as one line. hybrid-line-numbers
List Item Callouts Colour a single list item as a callout by starting it with a character such as &, ! or ?. list-item-callouts
Folder Counts See how many notes or files each folder holds, right in the file explorer, with a vault total and folder exclusions. folder-counts
Note Reading Time Reading time of the current note or your selection in the status bar, optionally saved to a property. note-reading-time
Task Rollover Roll unfinished tasks from your last daily note into today's when it is created, with a real undo. task-rollover
Zoom Into Section Zoom into a heading or list item to see only it and its contents, with a breadcrumb bar to climb back out. zoom-into-section
Link Title on Paste Paste a web address and get a Markdown link with the page's title, fetched in the background and undone in one step. link-title-on-paste
Update Radar Checks your installed community plugins for updates in the background, shows what changed, and flags the ones that look abandoned. community-update-checker
Dataview to Bases Convert Dataview queries into Bases blocks, and see which queries in your vault can be converted. dataview-to-bases
Line Editing Commands Duplicate, join, sort and reverse lines, insert blank lines and jump to a line number, with multi-cursor support. line-editing-commands
Note Mover Rules Move notes into folders by ordered rules on tags, properties, titles and paths, with a preview before any bulk move. note-mover-rules
Tab History Keeps each tab's back and forward history across restarts, and adds commands to move, maximize and close tabs. tab-history
URL Cards Shows web addresses as cards with title, description and image, and reads existing cardlink blocks. url-cards
Task Archive Moves completed tasks, with their sub-items, into an archive section or note. task-archive
Revisit Later Link the current note into a future daily note, with a date typed in plain English, so it comes back when you want to review it. revisit-later
Explorer Colors Plus Color files and folders in the file explorer, with a palette, cascading to children, and import from File Color. explorer-colors-plus
Book Lookup Create book notes from Open Library or Google Books, with cover images, ISBN search and Book Search compatible templates. book-lookup
Web Search Menu Search the web for selected text or the note title from the right-click menu, with engines you define. web-search-menu

All of them are in the community directory: Settings -> Community plugins -> Browse, then search for the name.

HealthExcellent
ReviewPassed
About
Load a vimrc-style file from your vault so your Vim key mappings and editor commands apply at startup and whenever you save the file. Define mappings and a leader key, create custom :commands, run Obsidian commands via obcommand, and sync yanks/pastes with the system clipboard.
VimEditingCommands
Details
Current version
0.1.0
Last updated
5 days ago
Created
5 days ago
Updates
1 release
Downloads
14
Compatible with
Obsidian 0.16.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
siulved54siulved54
GitHubperezamadorluisenrique-gif
  1. Community
  2. Plugins
  3. Vim
  4. Vim Config

Related plugins

Vimrc Support

Auto-load a startup file with Vim commands.

Simplified Chinese Word Splitting

Adds Simplified Chinese word splitting support for the editor and Vim mode.

Creases

Tools for effectively folding Markdown sections.

Sort and Permute lines

Sort and Permute lines in whole file or selection.

Helix Keybindings

Use Helix key bindings when editing.

Heading Shifter

Easily Shift and Change Markdown headings.

Paste URL into selection

Paste URL "into" selected text.

Keyshots

Add classic hotkey/shortcuts commands from popular IDEs like Visual Studio Code or JetBrains Family.

Copilot

Run AI agents such as Claude Code, Codex, and OpenCode inside your vault. Turn your second brain into a smart assistant that gets knowledge work done.

LanguageTool Integration

Advanced grammar and spell checking, powered by LanguageTool.