バイナリエディターを探す旅

TL;DR: hexedit --color 良い。

バイナリーファイルを編集するというような機会は、いままでそんなになかった。 表示して確認したいということはそこそこあったが、編集するということはあってもせいぜい1byte書き換えるとかその程度。

なのでだいたい、 hexdump か Emacs の hexl-mode でことたりてた。

ただ最近わりとがっつりバイナリーを編集する必要があって、いままでのようにhexl-modeを使っていたのだが、 ガーっと入力できるのはasciiだけで、hex値での入力は毎回 C-M-x をおして1byteずつやらなければいけない。 めちゃくちゃ不便。 そもそもhexl-modeはそのようにがっつりバイナリーをいじる用途向けではなさそうだ。

適当に検索すると

とかがひっかかる。CUI、GUIけっこういろいろある。

いろいろ試して決めようとおもうが、

  • なるべくArchLinuxのデフォルトでパッケージがあるやつ[1]
  • どこでもつかえるからCUIのやつ

という条件で検索すると

  • hexedit
  • dhex

のどっちかかなと。dhexは上の記事によるとキーバインドが独特っぽかったのでとりあえずhexeditを試す

yay -S hexedit

とりあえず軽く使ってみた感じでは

  • 変なキーをおすとダイアログみたいなやつが出て親切
  • F1でmanがひらける(↑のダイアログにでる)
  • カーソル移動はEmacsキーバインドが使える
  • hex領域とascii領域の行き来はtab
  • --color で起動すれば色つきになる[2]

という感じでもうこれでいいじゃん、というかかなり気にいってしまった。こまったらF1おせばシンプルに使い方がわかるし、Emacsバインドがつかえるのも個人的には最高。 もはや表示だけでも hexedit --color をつかうレベル。

もっとはやくさがしておけばよかったな〜