The hex editors being still popular, here’s a review of the biew/beye hex editor by guest author @F_84_5 . Thanks a lot!
biew, which the original author attempted to rename to beye though versions named beye seem hard to find now, is a GPL-licensed cross-platform hex editor. It’s quite dated, but - as of 2019 - has a Wikipedia page. Setup can be tricky:
-
Ubuntu/Debian hints: as root:
$ alien biew-*.rpm $ sudo dpkg -i biew-*.deb
-
The .rpm incorrectly installs a
biew.1.gz
file that is (wrongly) identical to abiew.1.lzma.gz
it also installs. A correctbiew.1.gz
can be created by extracting thebiew.1
file from the.lzma.gz
file (use lzma(1) or file-roller or xdg-open) and gzipping it:$ gzip -c biew.1 > biew.1.gz
-
To install use:
$ sudo cp biew.1.gz /usr/share/man/man1/biew.1.gz
-
Without this correction, the man page may not work.
-
biew expects the
$TERM
variable to be set to vt100 and will not work with other values, even compatible ones like Ubuntu’s xterm-256color default. This can be fixed with:$ alias biew='TERM=vt100 biew'
-
This will not change your
$TERM
in general, only when you’re running biew. You may want to add this to~/.bashrc
or similar. -
When launched as
biew <filename>
(i.e. not just asbiew
), the program may show a config menu if it thinks it’s missing anything. It remembers settings in~/.biewrc
on Unix (and in an.ini
file on DOS/Windows, apparently). One default it suggests is for a syntax.stx file not included in the.rpm
. (To add a downloaded syntax.stx:$ sudo mkdir /usr/share/biew/syntax $ sudo cp syntax.stx /usr/share/biew/syntax/
-
At least on a UTF-8 Unicode system, biew seems to default to emulating the Russian code page 866, thus showing its Eastern origins. This is why some of the byte characters look “funky” to Western eyes. The Setup menu mentions CP866, but it’s unclear if there’s a bug there, or how or if this can be changed to something more familiar to Westerners (i.e. to CP437, CP1252, or ISO-8859-1 or -15). Of course, pure UTF-8 isn’t sensible here, since any bytes between 0x80 and 0xFF would all be the same U+FFFD � replacement character, which may not even be single-width. Any Multi-Byte Character Set (MBCS) would be a bad fit for a Single-Byte Character Set (SBCS) application like a hex editor.
-
The fact that - at least on Unix - biew/beye apparently always clears the terminal screen when exiting may be related to this
The wholly text-mode biew should look and feel
instantly familiar or even nostalgic to any old DOS
users, as it makes heavy use of DOS usage conventions
in its look and feel, including the use of double-border
box-drawing characters.
Some of these conventions can seem a little jarring
to Unix users, e.g. biew always clears the terminal
screen on exit, even if the program only showed a
boxed window, as when started with just bview
.
biew is a TUI program and expects to have full cursor position control in the terminal and access to the F1-F10 function keys, as per its DOS-style function key line at the bottom (labelled 1-10; the Fs are implied). If your distro/terminal already maps e.g. F1 to Help, that may be a problem (Ubuntu hint: Terminal - Edit - Preference - Shortcuts - Help -> remap to Ctrl+F1. biew can run in the system console, given vt100- and code page-compatibility. F2 is labelled ViMode, but there is no vi support as Unix users may expect on reading that; ViMode is just short for “view mode” there. Pressing F2 reveals that biew includes a disassembler, so this is more than a toy, but whether that’s worth dealing with the above shortcomings is a matter of opinion.