hexeditに対するパッチ (2012/05/14)

あなたは 人目のお客様です.

バイナリエディタ「hexedit」に対するパッチです.

「hexedit-1.2.13」向けのパッチを追加しました.(2015/06/17)

Windows用の実行ファイルを追加しました.(2016/03/07)

当然無保証.各自の責任で利用すること.

もともとはプレゼンでの利用の際に,カーソル位置が伝わりにくかったりするのを なんとかしたくて作成したものですが,その他にも自分自身が使いやすくするための 修正をいくつか入れてあります.

パッチの内容

「hexedit-1.2.12」もしくは「hexedit-1.2.13」に対するパッチです.

もともとは 「フィーリングで読むアセンブラ入門」の紹介ページ でパッチを配布していたのですが,さらに --color による色付き表示まわりを強化 したので,こちらに専用ページを新たに設置して配布しなおすことにしたものです.
※ プレゼンで使うときにプロジェクタだと見にくいときがあり, 現場で色のチューニングをできるようにしたかったのです.

旧パッチでの修正もすべてとりこんであるので,こちらのパッチを当てるならば 旧パッチを当てる必要はありません. またFreeBSDのportsのパッチも取り込んであるため,portsに対して (パッチファイルを入れ換える形で)そのまま適用することもできます. (詳しい方法は後述)

オリジナルのhexeditに対して以下の対応が入っています.

スクリーンショット

(パッチ当て後,通常状態)
(パッチ当て前,通常状態)
(パッチ当て後,ASCIIにフォーカス)
(パッチ当て前,ASCIIにフォーカス)

パッチの当てかた

「hexedit-1.2.12.src.tgz」もしくは「hexedit-1.2.13.src.tgz」 を入手してください. いちおう,以下からもダウンロードできます. さらに以下からパッチをダウンロードしてください.

以下でパッチ当てして hexedit をビルドできます.

% tar xvzf hexedit-1.2.12.src.tgz
x hexedit/hexedit.h
x hexedit/hexedit.c
...
% unzip hexedit-1.2.12-patch-2.zip 
Archive:  ../hexedit/hexedit-1.2.12-patch-2.zip
   creating: hexedit-patch/
  inflating: hexedit-patch/patch-display.c  
...
% cd hexedit
% patch < ../hexedit-patch/patch-display.c 
% patch < ../hexedit-patch/patch-hexedit.c
% patch < ../hexedit-patch/patch-hexedit.h
% patch < ../hexedit-patch/patch-interact.c 
% patch < ../hexedit-patch/patch-search.c
% ./configure 
% make
% su
# make install

FreeBSDのportsを利用してパッチを当てる方法

上で配布しているパッチはFreeBSD-8.2のportsに含まれるhexedit向けパッチも 取り込んであるので,FreeBSDならばportsのパッチを置き換えてports利用で インストールすることもできます.

以下のような手順です.

# cd /usr/ports/editors
# mv hexedit hexedit.orig
# cp -R hexedit.orig hexedit
# cd hexedit/files
# ls
patch--search.c patch-hexedit.h
# rm patch-*
# cp /tmp/hexedit-patch/* .
# cd ..
# make
# make install

Windows用の実行ファイル

「hexedit-1.2.13」に上記パッチを当てたものをWindows向けに修正し, MinGWの環境でビルドしたものです.

WindowsのDOS窓から利用できます. 実行ファイルのアイコンにドラッグ&ドロップすることで 起動することもできますので,簡単なバイナリビューワとして使うものいいでしょう.

hexedit-1.2.13-win.zip を展開し,hexedit.exe を実行してください.

hexedit-1.2.13-win.zip はビルド時のディレクトリをそのままアーカイブして あります.利用には不要と思われるようなファイルも含まれているかもしれませんが, ライセンス表記の保持のためにあえてそうしています. ライセンスは添付されているファイル及び各種ソースコードを参照してください.

ビルドはFreeBSD-10.2の環境で,以下のようにして行っています. portsインストールしたmingw32-gccを利用しています. cursesライブラリにはPDCurses(public domain curses library)を利用しています.

(ビルドに必要なパッケージのインストール)

% su
# pkg install mingw32-bin-msvcrt
# pkg install mingw32-binutils
# pkg install mingw32-gcc
# pkg install mingw32-pdcurses

(ビルド作業)

% tar xvzf hexedit-1.2.13.src.tgz
% unzip hexedit-1.2.13-patch.zip
% unzip hexedit-1.2.13-patch-win.zip
% cd hexedit
% patch < ../hexedit-patch/patch-display.c
% patch < ../hexedit-patch/patch-hexedit.c
% patch < ../hexedit-patch/patch-hexedit.h
% patch < ../hexedit-patch/patch-interact.c
% patch < ../hexedit-patch/patch-search.c
% patch < ../hexedit-patch-win/patch-Makefile.in
% patch < ../hexedit-patch-win/patch-config.h.in
% patch < ../hexedit-patch-win/patch-display.c
% patch < ../hexedit-patch-win/patch-file.c
% patch < ../hexedit-patch-win/patch-interact.c
% ./configure
% make

メールは kozos(アットマーク)kozos.jp まで