lvは入力された文字コードは自動判別し、出力するコードはLANG環境変数で指定している文字コードに変換してくれるので、どんなファイルを与えても文字コード指定なしで意図通り表示してくれます(すばらしい!)。
PAGER='lv -c'
もし自動判別に失敗する、もしくは、LANGで指定していない文字コードで出力したい、といった特殊なケースには、-Iで入力、-Oで出力する文字コードを指定できます。
coding-system:
a: auto-select
c: iso-2022-cn
j: iso-2022-jp
k: iso-2022-kr
ec: euc-china
ej: euc-japan
ek: euc-korea
et: euc-taiwan
u7: UTF-7
u8: UTF-8
l1..9: iso-8859-1..9
l0: iso-8859-10
lb,ld,le,lf,lg: iso-8859-11,13,14,15,16
s: shift-jis
b: big5
h: HZ
r: raw mode
例えば、入力をeuc-japan、出力をshift-jisに指定したい、といった場合には以下のオプションを与えればOKです。% lv -Iej -Os euc.txt
自分にとって唯一残念なのがlessの-X(--no-init)オプションに相当する機能が用意されていない点です。lessだと-Xオプションを指定しておくとlessで表示していた画面がlessをquitした後もそのままの状態でターミナル上に残ります。lessで情報を表示した後に、それを参照しつつコマンド実行する、というケースにはこの機能が必須なのですが・・・
0 件のコメント:
コメントを投稿