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

Mini Vimrc

cabra-arretadocabra-arretado4k downloads

Add Vim keybindings via .vimrc

Add to Obsidian
  • Overview
  • Scorecard
  • Updates9

In this repo we look to create a minimal plugin for Obsidian that does only one thing and does it well: Set Vim basic mappings to Obsidian Vim mode

Supported Vim settings

  • map
  • imap
  • nmap
  • vmap
  • noremap
  • inoremap
  • nnoremap
  • vnoremap
  • unmap

Getting started

FIRST OF ALL: Remember to Activate the Vim mode in your Vault. Settings -> Editor -> Vim key biddings

Create a .vimrc in the root of your Obsidian vault with the desired commands.

Example of .vimrc

" Use sequential pressing of keys j and k to escape insert mode (really common config for VIM)
inoremap jk <Esc>
inoremap JK <Esc>

" The keys j and k for visual and normal mode go to the visual line instead of the logical one (Really useful for a more organic experience)
noremap j gj
noremap k gk

" Uses H and L To navigate between blank lines in Visual and Normal modes.
noremap H {
noremap L }

" Uses K and J to scroll back and forth in Visual and Normal modes
noremap K <C-b>
noremap J <C-f>

" Uses ; to start commands in Visual and Normal modes
noremap ; :

Settings

Vimrc path

The default path is on the root folder .vimrc. You can change that to a Markdown file or a simple text file. In any case, they will be treated as a .vimrc file, and each line will be read (and comment lines start with " as you can see in the example above).

A markdown file is an option in case you want to access and edit the file in Obsidian itself. ** Important: ** If you will use a Markdown file, make sure to add the file extension .md, not just the name of the file that you see in the Obsidian file explorer.

Another option is to use .obsidian/.vimrc just so that the file is in the same folder as the other Obsidian configurations.

Motivation

Obsidian offers a Vim mode editor, powered by CodeMirror. Keymaps work in such an environment, but by default, it doesn't allow users to automatically set keymaps as it is initialized. That causes the user to have to manually enter all the desired keymaps every time one opens Obsidian.

This is where this plugin gets in the game: With a .vimrc file in the Obsidian vault, we will be able to declare keymaps and set basic options to be automatically initialized every time Obsidian is open.

Why a plugin that does only keymaps and not only all the other Vim configurations?

We want to create a plugin that is minimal and performs only one thing. With that design, the plugin becomes:

  • Easier to understand: So even without a lot of context one can check the plugin code before adding to your Obsidian vault.
  • Maintainable: So that if any API changes Obsidian or its dependencies happen, we can easily update the code and functionality.

If you are looking for a more complete functionality plugin you should check out: obsidian-vimrc-support

Inspiration

  • obsidian-vimrc-support
67%
HealthFair
ReviewSatisfactory
About
Load a .vimrc from your vault and apply its Vim key mappings to Obsidian's Vim mode. Support standard Vim commands (map, imap, nmap, vmap, noremap, inoremap, nnoremap, vnoremap, unmap) and treat Markdown or plain text files as .vimrc for in-vault editing.
VimEditing
Details
Current version
1.1.0
Last updated
2 years ago
Created
3 years ago
Updates
9 releases
Downloads
4k
Compatible with
Obsidian 0.15.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
cabra-arretadocabra-arretado
github.com/cabra-arretado
GitHubcabra-arretado
  1. Community
  2. Plugins
  3. Vim
  4. Mini Vimrc

Related plugins

Creases

Tools for effectively folding Markdown sections.

Simplified Chinese Word Splitting

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

Helix Keybindings

Use Helix key bindings when editing.

Vimrc Support

Auto-load a startup file with Vim commands.

Advanced Tables

Improved table navigation, formatting, and manipulation.

Meta Bind

Make your notes interactive with inline input fields, metadata displays, and buttons.

Outliner

Work with your lists like in Workflowy or Roam Research.

Various Complements

Complete words similar to auto-completion in an IDE.

LanguageTool Integration

advanced spell/grammar checks with the help of language-tool.

Quiet Outline

Make outline quiet and more powerful, including no-auto-expand, rendering heading as Markdown, and search support.