hex(1) 日本語対応 16 進数ダンプツール

SYNOPSIS

hex [ options... ] [ file ]
hex -r [ file ]

DESCRIPTION

hexfile (又は標準入力) の内容を 16 進数と文字で表示します. その際, 日本語らし き部分を日本語で表示します.

OPTIONS

オプションは環境変数 HEX_OPTIONS に設定しておくことができます.

OPTIONS - 『非文字』の表示方法

下記の EXAMPLE を参照しながら読んで下さい.

ここで『非文字』と呼んでいるのは, コントロールコードや 8 bit 部分の文 字で漢字やカナ文字として構成できないコードのことです.

-c, --color (出力が端末の場合のディフォルト)
『非文字』を色付で表示します. 色が表示できる端末 ( ktermWindows95 の MS-DOS プロンプト など) を利用している場合, EXAMPLE では J に全て色が付きます.

ディフォルトでは青と水色で出力します. 表示する時は ^[[34m といったエスケープシーケンスで出力します. この色は下記の -cs1, -cs2 オプションで変えられます.

-b, --bold
『非文字』を太字で表示します. EXAMPLE では J が全て太字になります. less に通しても太字で表示されます.

端末に表示する時は ^[[1m というエスケープシーケンスで出力し, 端末以外 (主にパイプ) に出力する時 は, 例えば A の太字なら, A^HA と出力します.

termcap/terminfo は参照してないのでうまく太字にならない端末もあると思います. 又 Windows95 では色が明るくなります.

-d, --dot (出力が端末以外の場合のディフォルト)
『非文字』は全て `.' で表示します. EXAMPLE の `J' が `.' に代わっていると考えて下さい.
-t, --text
『非文字』を普通のテキストで表示します. EXAMPLE と同じです. 役に立ちません.
-u, --underline
『非文字』アンダーライン付きで表示します. EXAMPLE では J に全てアンダーラインが付きます. lessmore に通してもアンダーラインは表示されます.

端末に表示する時は ^[[4m というエスケープシーケンスで出力し, 端末以外 (主にパイプ) に出力する時 は, 例えば A のアンダーラインつきなら, _^HA と出力します. Windows95 ではアンダーラインは出ません.

EXAMPLE
0x00000000: a4 cf a4 e8 a4 f3 0a 0a - 0a 0a 0a 0a 0a 0a 0a 0a はよんJJJJJJJJJJ

OPTION - 出力コード

どれがディフォルトに設定されているかを調べるには hex -h としてください.
-e, -oe, --oeuc
*euc-japan* で出力します.
-s, -os, --osjis
*sjis* で出力します.
-j, -oj, --ojis
*iso-2022-jp* で出力します.

OPTION - 入力コード

どれがディフォルトに設定されているかを調べるには hex -h としてください.
-E, -ie, --ieuc
*euc-japan* か *iso-2022-jp* の入力だと仮定します.
-S, -is, --isjis
*sjis* か *iso-2022-jp* の入力だと仮定します.
-U, -iu, --iunknown
なんだかよくわからない入力コードだと仮定します. これを指定した場合, 日 本語に関する処理はなされません.

OPTION - その他

-cs1 cs, --colorstring1 cs
色をつける時のコード 1 を指定します. コントロールコード, または 8 bit 部分で漢字として認識できないコードをこの色で表示します.

例えば -cs1 43;31 (`;' はシェルに食われるので -cs1 '43;31' などとエスケープしてください) と指定すれば, 黄地に赤文字で出力されます.

-cs2 cs, --colorstring2 cs
色をつける時のコード 2 を指定します. 漢字のかたわれ, EUC 半角カナのか たわれ, iso-2022 のエスケープシーケンスをこの色で表示します.
-dsiso, --disablesiso, +siso
^N/^O の間の文字は, 通常半角カナとして扱われますが, この機能を利用しな いようにします.
-siso, --enablesiso
上記のオプションの反対の機能です. (ディフォルト)
-r, --restore
% hex < hoe | hex -r > hoge

% cat < hoe > hoge
と同じことになります.
-h, --help
使い方を表示.

PAGER

hex の出力を less などのページャーに通すと, そのままだと色が出ませんが,
% hex -c `which hex` | less -r
% hex -c `which hex` | lv -C
などとすることで色も出せるようになります. WindowsNT を上でコマンドプロ ンプを利用している場合は,
% hex -u `which hex` | less
とやってみましょう. アンダーラインに less が色をつけてくれるのでまるで 色がついたみたいな感じになります. (hex のオプションによる色の指定は無 効になります)

COPYRIGHT

Copyright (C) 1996-1998, 多賀 奈由太

このプログラムはフリーウェアです.

このプログラムに関連するいかなる事態も責任を負いかねます.

http://www.is.s.u-tokyo.ac.jp/~nayuta/ で新しいバージョンが手に入ります.

AUTHOR

多賀 奈由太 ([email protected])

BUGS

termcap/terminfo は参照してないのでうまく太字にならない端末もあります.

日本語の自動判別はしません (自動判別をする意味がない).

出力の効率が悪い. (色は 1 文字ごとに付けているし, 出力が *iso-2022-jp* の時は, ^[(J などを 1 文字ごとに出力している)

半角カナの部分の空白 (*euc-japan* ならば 0x8e 0xa0 , *sjis* ならば 0xa0 , *iso-2022-jp* ならば 0x20 ) は普通の空白 ( 0x20 ) で表示します.

Windows95 では部分的に色が出ないことがあります. (Windows95 のバグ ?)

*iso-2022-jp* と言っていますが, 補助漢字は表示されません.