Tip
Русская версия: README-RU.md
- Interactive hex + ASCII editing in terminal
- Standard and Vim keymaps
- Two view styles:
prettyandsimple - Theming support
- Open from file or from stdin (
[command] | hexr) - Undo/redo, search, selection, copy/cut/paste
cargo install hexrThis installs the latest published release from crates.io into your Cargo bin directory
git clone https://github.com/WhoSowSee/hexr.git hexr
cd hexr
cargo install --path .The command above builds hexr and places the binary into the Cargo bin directory (usually ~/.cargo/bin)
git clone https://github.com/WhoSowSee/hexr.git hexr
cd hexr
cargo build --release# Empty buffer
hexr
# Open file
hexr sample.bin
# Read from stdin
xxd -r -p dump.hex | hexr-h, --help
-v, --version
-t, --theme <name>
-k, --keymap <standard|vim>
-w, --view <pretty|simple>
Available themes:
terminal, kanagawa, tokyonight, catppuccin, gruvbox, material-ocean, nord, monokai
Example:
hexr --theme nord --keymap vim --view pretty sample.binArrow keys: move cursorEsc: abort selection / reset soft input stateBackspace: delete previous byte or selectionDelete: delete current byte or selection:: enter command/: searchnN: jump to next/previous match[]: increase/decrease number of columnsCtrl+G: show file name and current positionCtrl+L: redraw screen
Note
A new empty buffer switches to insert mode on the first typed byte. Existing files open in replace mode; to append at EOF, switch to insert mode first (Ctrl+N in standard, i in vim).
Tab: switch between hex and ascii inputCtrl+Q: quitCtrl+WCtrl+E: jump to start/end of screen/fileCtrl+KCtrl+J: scroll up/down one pageCtrl+D: delete current byte or selectionCtrl+N: switch between replace and insert modesCtrl+S: save (prompts filename for unnamed buffer)Ctrl+F: searchCtrl+ZCtrl+Y: undo/redoCtrl+CCtrl+XCtrl+V: copy/cut/pasteCtrl+P: paste and move cursorCtrl+T: start/stop selectionCtrl+A: select allCtrl+O: suspend editor (fgto continue on Unix)+-: increment/decrement current byte
t: switch between hex and ascii inputq: quithjkl: move cursori: switch between replace and insert modesur: undo/redov: start a selectionx: delete current byte or selections: substitute current byte or selectiony: copy current byte or selection to clipboardp: pasteP: paste and move cursorCtrl+WCtrl+E: scroll up/down one pagegG: jump to start/end of screen or file^$: jump to start/end of current lineCtrl+Z: suspend editor (fgto continue on Unix)Ctrl+ACtrl+D: increment/decrement current byte
q- quitq!- force quit without save checkw [filename]- savewq [filename]- save and quitx [filename]- save and quitcolors y/n- toggle colors<offset>- jump to offset (hex,dec,octformats supported)
/x <hex-bytes>- search hex bytes/s <text>- search UTF-8 text/w <text>- search UCS-2 text
© 2026-present WhoSowSee