Kakoune is an open source code editor that implements Vi’s “keystrokes as a text editing language” model. It has similarities with Vim, as it’s also a modal editor.
Kakoune operates in two modes, normal and insertion. In insertion mode, keys are directly inserted into the current buffer. In normal mode, keys are used to manipulate the current selection and to enter insertion mode.
Kakoune has a strong focus on interactivity, most commands provide immediate and incremental results, while still being competitive (as in keystroke count) with Vim.
Key Features
- Multiple selections as a central way of interacting.
- Powerful selection manipulation primitives:
- Select all regex matches in current selections.
- Keep selections containing/not containing a match for a given regex.
- Split current selections with a regex.
- Text objects (paragraph, sentence, nestable blocks).
- Powerful text manipulation primitives:
- Align selections.
- Rotate selection contents.
- Case manipulation.
- Indentation.
- Piping each selection to external filter.
- Client-Server architecture:
- Multiple clients on the same editing session.
- Use tmux or your X11 window manager to manage windows.
- Simple interaction with external programs.
- Automatic contextual help.
- Automatic as you type completion.
- Macros.
- Hooks.
- Syntax Highlighting:
- Supports multiple languages in the same buffer.
- Highlight a buffer differently in different windows.
- Customization – extend the features or customize them with macros or hooks.
Website: kakoune.org
Support: Wiki, GitHub code repository
Developer: Maxime Coste, Frank Lenormand, and many other contributors
License: Free and unencumbered software released into the public domain

Kakoune is written in C++. Learn C++ with our recommended free books and free tutorials.
Related Software
| Vim-like Text Editors | |
|---|---|
| Neovim | Vim-fork focused on extensibility and usability |
| Helix | Kakoune / Neovim inspired editor. |
| Lapce | Modern editor in Rust which uses native GUI and GPU rendering |
| NvChad | Neovim config aiming to provide a base configuration |
| LunarVim | IDE layer for Neovim |
| Kakoune | Implements Vi’s "keystrokes as a text editing language" model |
| Vis | Combining modal editing with structural regular expressions |
| vile | Text editor that combines aspects of the Emacs and vi editors |
| pyvim | Implementation of Vim in Python |
| gVim | Vim with a built-in GUI |
| amp | Vim-like editor written in Rust |
| Vy | Vim-like in Python made from scratch |
| moe | Command-line editor inspired by Vim |
| wig | Modal, Vim-like text editor |
| sled | Simple text editor with a terminal UI |
| red | Modern modal text editor written in Rust |
| ad | Adaptable text editor |
| hat | Hackable modal text editor |
| HAKO | Lightweight terminal-based modal text environment |
| xvi | Portable multi-file text editor |
| aretext | Minimalist text editor with vim-compatible key bindings |
| Levee | Also known as Captain Video |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.