ad is an experimental text editor that combines modal editing with ideas from the Plan 9 Acme and sam editors. Its central concept is that text inside an editing environment can be operated on by external programs as well as modified directly. The emphasis is on integrating small tools rather than building every possible development function into the editor itself.
Its navigation and selection model takes inspiration from Vim and Kakoune. More complex text transformations draw on sam-style commands, while an exposed editor interface makes it possible for external programs to interact with buffers and other editor state.
The developer explicitly describes ad as a playground for exploring text-editor design and warns that it is not recommended as a primary editor. Documentation is limited, behaviour may change, and bugs or crashes remain possible. It is most appropriate for users interested in the design of extensible text-editing environments.
This is free and open source software.
Key Features
- Modal editing with keyboard motions and selection operations.
- Structural regular-expression commands inspired by sam.
- Plan 9 Acme-inspired interface for external tools and scripts.
- Editor state exposed to external clients through a virtual filesystem interface.
- Minibuffer-based user-defined minor modes.
- Mouse-based navigation and text selection alongside keyboard editing.
- Tree-sitter highlighting with alternative regular-expression highlighting.
- Experimental Language Server Protocol client and editor integration.
Website: github.com/sminez/ad
Support:
Developer: Innes Anderson-Morrison
License: MIT License

ad is written in Rust. Learn Rust 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.