Hat is a hackable modal text editor for modern terminals aimed at users who prefer software they can inspect, modify, and compile from source.
Its design is intentionally minimalist: configuration is handled through source-level customisation rather than an external settings system, and extra behaviour is added either by changing the code or applying distributed patch files. The project is written in Zig and follows a suckless-style philosophy focused on small, readable tools.
This is free and open source software.
Key Features
- Provides normal, select, select line, and insert editing modes.
- Includes Vim-like motions and commands for common editing operations.
- Offers unlimited undo and redo support.
- Supports system clipboard copy and paste using xclip.
- Runs external commands on selected text for automation workflows.
- Includes dot-repeat, multi-repeat, and macro functionality.
- Uses Tree-sitter for syntax highlighting and indent alignment.
- Provides LSP features including go to definition, find references, diagnostics, completions, hover, and rename.
- Supports multiple buffers, file finding, and searching within files.
- Includes scratch buffers, Unicode support, and a printer mode.
- Can be extended with source code patches for features such as autosave, relative line numbers, Git hunk markers, and LSP code actions.
Website: github.com/ivanjermakov/hat
Support:
Developer: ivanjermakov
License: MIT License

Hat is written in Zig. Learn Zig with our recommended 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 |
| ad | Adaptable text editor |
| Levee | Also known as Captain Video |
| xvi | Portable multi-file text editor |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

