WebOS Goodies

WebOS の未来を模索する、ゲームプログラマあがりの Web 開発者のブログ。

WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。
Subscribe       

多言語対応テキストビュアー "lv" を使う

今日は多言語対応したコマンドラインのテキストビュアーである lv コマンドをご紹介しようと思います。コマンドラインのテキストビュアーとしては less コマンド、およびそれを多言語化した jless コマンドが有名ですが、 lv は grep や文字コード変換フィルタとして使えるという面白い機能があります。

インストールする

Gentoo Linux でのインストールは非常に簡単です。以下のように emerge コマンド一発でインストールできます。

emerge lv

lv のドキュメントではデフォルトの出力エンコーディングは iso-2022-jp になっていると書いてあるのですが、 Gentoo Linux のものは EUC-JP を吐きますね。なので、日本語で使う分にはとくに環境設定も必要ありません。ただし、もちろんターミナルが日本語に対応している必要はあります。「Windows クライアントから SSH ログインする」でご紹介した日本語化後の PuTTY であれば、問題なく表示できるはずです。

使ってみる

基本的な使い方は less コマンドと同等です。以下のようにファイルを指定すれば、日本語で表示できます。もしファイルが指定されなければ標準入力から読み込みます。

lv [ファイル]

また、 "-O" オプションを使えば文字コード変換フィルタとして使えます。

lv -O<エンコーディング> [入力ファイル] > <出力ファイル>

エンコーディング は出力文字コードの指定で、日本語関連では以下の指定があります。

エンコーディング出力される文字コード
jiso-2022-jp
ejEUC-JP
sShift_JIS
u7UTF-7
u8UTF-8

lgrep というコマンドを使うと、日本語による正規表現検索が行えます(lv -g でも同じです)。

lgrep <正規表現> [ファイル]

コンフィギュレーション

ホームディレクトリに ".lv" ファイルを作り、そこにコマンドラインオプションを記述しておけば、それがデフォルトで指定されます。例えば、デフォルトの出力文字コードを UTF-8 にしたいなら、".lv" の内容を以下のようにします

-Ou8

また、環境変数 LV に設定しても同様です。

便利なキー操作

ファイルを表示してみたら入力文字コードの判別に失敗して文字化けしていた、なんて時は、t キーを押すと入力文字コードが順番に切り替わります。SHIFT + t だと逆順です。

また、/, ? による検索時にも日本語の正規表現が使えます。検索文字列の入力中、CTRL + p で前の検索文字列を呼び出すこともできます。

以上、駆け足ですが lv コマンドをご紹介しました。lv コマンドひとつで日本語ファイルの表示、コード変換、正規表現検索といった作業が行えるので、日本語の扱いがだいぶ楽になります。とくにコマンドラインでは重宝しますので、ぜひ使ってみてください。

関連記事

この記事にコメントする

Recommendations
Books
「Closure Library」の入門書です。
詳しくはこちらの記事をどうぞ!
Categories
Recent Articles