Kakoune is a modal code editor that takes inspiration from vi while using a selection-first editing model.
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.
This is free and open source software.
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:
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.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.