HEdit

What HEdit is
HEdit is a free, open-source hex editor that works in a terminal and takes inspiration from VIM. It can be scripted with JavaScript, and its configuration files are JavaScript modules that import built-in editor modules. At startup, it checks /etc/heditrc.js and ~/.heditrc. The JavaScript API can execute commands, emit keystrokes, register commands and options, and add key mappings. A format API can register file formats with extension or magic-value hints for automatic selection. The file API exposes a file’s name, size, and modified state, and can commit grouped changes as an undoable revision. HEdit is built from source with CMake. Its main dependencies are libtickit and V8; V8 can be disabled with -DWITH_V8=OFF, which also disables dependent features such as syntax highlighting. The project links to JavaScript API documentation and lists debug and V8-related CMake options. Its roadmap includes undo and redo, syntax-highlighting work, and a structure view.
Who it suits
HEdit suits terminal users who want a scriptable hex editor and are comfortable building software with CMake. It is also relevant to developers who want JavaScript configuration, commands, mappings, or file-format registration.
What it does well
- Free and open-source
- Terminal interface inspired by VIM
- JavaScript scripting and configuration
- File-format registration with hints
- Undoable grouped file changes
What to know first
- Building from source is required
- Compiling V8 takes substantial time
- Disabling V8 removes syntax highlighting
- V8 build uses depot_tools and Python 2
Verdict
HEdit combines terminal hex editing with JavaScript-driven customization and file-format support. The source-build process and V8 requirements are important considerations, especially when syntax highlighting and scripting are needed.
Facts from HEdit's own pages
- Build
- The README describes building HEdit from source with CMake. · github.com, 11 Oct 2026
- Build dependencies
- The README identifies libtickit and V8 as main dependencies and says building V8 requires depot_tools and Python 2 as the default interpreter. · github.com, 11 Oct 2026
- Build time
- The README warns that compiling V8 takes a lot of time. · github.com, 4 Oct 2026
- Configuration
- HEdit configuration files are JavaScript modules that import built-in editor modules. · 95ulisse.github.io, 11 Oct 2026
- Configuration location
- At startup, HEdit looks for configuration files at /etc/heditrc.js and ~/.heditrc. · 95ulisse.github.io, 11 Oct 2026
- Customization
- The README lists CMake options for debug builds and disabling V8. · github.com, 4 Oct 2026
- Dependencies
- The README lists libtickit and V8 as its two main dependencies. · github.com, 4 Oct 2026
- Documentation
- The project links to documentation for its JavaScript APIs. · github.com, 4 Oct 2026
- File formats
- The format API can register file formats with optional extension or magic-value hints for automatic selection. · 95ulisse.github.io, 11 Oct 2026
- File operations
- The file API exposes the open file's name and size, whether it is modified, and a method to commit a group of changes as an undoable revision. · 95ulisse.github.io, 11 Oct 2026
- JavaScript API
- The API can execute commands, emit keystrokes, register commands and options, and add key mappings. · 95ulisse.github.io, 11 Oct 2026
- JavaScript option
- The README says V8 can be disabled with -DWITH_V8=OFF, which disables JavaScript-dependent features such as syntax highlighting. · github.com, 4 Oct 2026
- License
- The repository license grants use, copying, modification, distribution, and sale under the stated conditions, and provides the software without warranty. · github.com, 11 Oct 2026
- Maker
- The license copyright notice names Marco Cameriero. · github.com, 11 Oct 2026
- Optional JavaScript
- The README says V8 can be disabled with -DWITH_V8=OFF, which also disables dependent features such as syntax highlighting. · github.com, 11 Oct 2026
- Product
- HEdit is a terminal-based hex editor inspired by VIM and scriptable with JavaScript. · github.com, 11 Oct 2026
- Roadmap
- The README roadmap lists undo and redo, scriptability, JavaScript documentation, syntax highlighting, performance improvements for syntax highlighting, and a structure view. · github.com, 4 Oct 2026
Where HEdit stands on Freedom251
- Hex Editors#30 of 30