What is CodeMirror Vim?
CodeMirror Vim brings the power and efficiency of Vim keybindings to CodeMirror 6, the modern extensible code editor for the web. This package provides a complete implementation of Vim’s modal editing experience, allowing developers to use familiar Vim commands and workflows in web-based editors.Key features
CodeMirror Vim offers comprehensive Vim functionality:- Complete modal editing: Full support for normal, insert, visual, and visual line/block modes
- Classic Vim commands: All standard Vim motions, operators, and text objects work as expected
- Ex commands: Execute commands like
:w,:q, and custom ex commands you define - Key mapping: Customize keybindings with
Vim.map()andVim.unmap()for any mode - Custom operators: Define your own custom operators to extend Vim functionality
- Visual selection: Proper visual mode rendering with block cursor support
- CM5 API compatibility: Use the familiar CodeMirror 5 Vim API with CodeMirror 6
Who should use it?
CodeMirror Vim is perfect for:- Vim users: Developers who want to bring their Vim muscle memory to web-based editors
- Web-based IDE developers: Teams building code editors that need professional-grade Vim support
- CodeMirror users: Anyone upgrading from CodeMirror 5 Vim to CodeMirror 6
- Modal editing enthusiasts: Developers who prefer the efficiency of modal editing workflows
Why CodeMirror Vim?
If you’re building a web-based code editor and your users expect Vim keybindings, CodeMirror Vim provides a battle-tested, feature-complete solution. It maintains compatibility with the CodeMirror 5 Vim API while taking full advantage of CodeMirror 6’s modern architecture.Try it live
Explore a working demo of CodeMirror Vim on Replit
Next steps
Installation
Install CodeMirror Vim in your project
Quickstart
Get up and running in minutes

