Linuxでマニュアルページをカラーで表示する方法
エディタの構文ハイライトに似た色付けをmanページで行いたい場合、達成するための簡単な方法が2つあります。両方の方法をお見せします!
色のハイライト
色付きのハイライトは、読みやすくするために役立ちます。それは、詳細を目立たせることができるため、流し読みをして見逃すことがありません。ほとんどの現代のエディタは構文ハイライトをサポートしており、これは色を使用してプログラミング言語の異なる要素を識別し、区別します。予約語、変数、文字列、数字はすべて色分けされており、コードのページや関数を視覚的に解析しやすくしています。
Linuxのmanページにこの機能があれば非常に助かります。簡潔さを重視する一方で、いくつかのmanページは大きく、密度が高く、読み進めるのが難しいです。それらを視覚的にナビゲートしやすくするものは良いことです。
カラー効果を得るための2つの方法を説明します。1つは異なるページャーを使用して表示する方法で、もう1つは実行時にlessに多くのパラメータを渡す方法です。それを行う最も素敵な方法は、シェル関数を作成することです。
最もページャー
最もページャーは、ファイルビューアのようなものです。
moreおよびless、非常に広いファイルの処理が改善されました。また、manページを自動的に色分けします。
Ubuntuにmostをインストールするには、次のコマンドを使用します:
sudo apt-get install mostFedoraにmostをインストールするには、次のように入力します。
sudo dnf install mostManjaroにmostをインストールするには、以下のように入力します:
sudo pacman -Syu mostほとんどをデフォルトのページャーとして設定する
Linuxにmostをデフォルトのページャーとして使用させるには、PAGER環境変数の値をエクスポートする必要があります。
私たちは次のように入力します:
export PAGER=“most”
これはターミナルウィンドウを閉じるまでしか機能しません。これを永続的な変更にするには、".bashrc"ファイルに追加する必要があります(ファイルの最後の行に追加します):
gedit .bashrc私たちは行を追加し、変更を保存し、次にエディターを閉じます。
修正された「.bashrc」ファイルの内容を有効にするために、ターミナルウィンドウを閉じて再度開きます。
ターミナルウィンドウを開いたままにするために、source コマンドを使用します。これはピリオド (.) に短縮できます。これにより、シェルは変更された ".bashrc" ファイルの内容を読み取ります。
私たちは次のように入力します:
. .bashrcカラーマンページ
マニュアルページを開いて、どのような見た目なのか見てみましょう:
man grep
そのmanページはいつも通りに開きますが、今では異なる色でハイライトされたテキストがあります。
下にスクロールすると、ページの異なる要素がどのように色付けされているかを見ることができます。
mostを使用することはlessを使用することと非常に似ていますが、いくつかの違いがあります。mostでHを押すと、キーの割り当てとその機能のリストが表示されます。
少ない色を使う
別のページャーをインストールしたくない、または新しいキーストロークを学びたくない場合、lessを強制的に色を使わせるトリックがあります。これを行う方法はいくつかありますが、ここでは最も迅速かつ簡単な方法を紹介します。
この方法は、アメリカ国立規格協会(ANSI)カラーコードを使用して、古くてほとんど使われなくなったtermcap設定に関連する画面上の効果を制御します。
これらはかつて、異なるメーカーとモデルのコンピュータ端末が表示コマンドをどのように解釈すべきかを指定するために使用されていました。ソフトウェアパッケージには独自のtermcap設定があり、lessもそうです。
以下はlesstermcap設定の定義です:
- LESS_TERMCAP_md: 太字効果を開始します(ダブル明るさ)。
- LESS_TERMCAP_me: 太字効果を停止します。
- LESS_TERMCAP_us: 下線効果を開始します。
- LESS_TERMCAP_ue: 下線効果を停止します。
- LESS_TERMCAP_so: 目立つ効果を開始(反転テキストに似ています)。
- LESS_TERMCAP_se: 目立つ効果を止める(反転テキストに似ています)。
再び、これらを使用してアメリカ国立規格協会 (ANSI) のカラーレコードを使用した色の組み合わせを制御します。
カラーコードの形式は、それを理解すると簡単に読むことができます:
- 最初の「\e」は、そのシーケンスが制御コードまたはエスケープシーケンスであることを示しています。
- シーケンスコマンドの末尾にある「m」は、コマンドの終了を示します。また、制御コードが実行される原因にもなります。
- 「[」と「m」の間の数字は使用される色を決定します。色は番号で識別されます。いくつかの数字は背景色を表し、いくつかは前景(テキスト)色を表します。
これらは、カラーシーケンスを開始するために使用するコードと、それらをすべてオフにする方法です:
- 黒い背景に赤い文字です。
- 黒い背景に緑のテキスト。
- マゼンタの背景、明るい黄色のテキスト。
- すべての効果をオフにしてください。
これらすべてを man と呼ぶシェル関数にまとめます。この関数は私たちのためにこれらの値を設定し、その後に本物の man プログラムを呼び出します。
別のファイルにシェル関数がすでに定義されている場合は、この関数をそのファイルに追加できます。そうでなければ、次のテキストをあなたの「.bashrc」ファイルの底にコピーしてください:
man() {
LESS_TERMCAP_md=$'\e[01;31m' \
LESS_TERMCAP_me=$'\e[0m' \
LESS_TERMCAP_us=$'\e[01;32m' \
LESS_TERMCAP_ue=$'\e[0m' \
LESS_TERMCAP_so=$'\e[45;93m' \
LESS_TERMCAP_se=$'\e[0m' \
command man "$@"
}
gedit .bashrcあなたの「.bashrc」ファイルの下部に関数を貼り付けてください。
変更を保存してエディタを閉じます。次に、シェル関数をアクティブにするために「.bashrc」ファイルを読む必要があるので、次のように入力します:
. .bashrcさて、man ページを開始すると、less で色付けされます:
man chmodマニュアルページは色のハイライト付きで開きます。
振り返ってみると、マゼンタの上の黄色は最良のアイデアではなかったかもしれません。幸いなことに、好みに合わせてカラーコードを調整できます。
それはただの美しさではない
長い man ページをスクロールするのは簡単で、テキストの海の中で迷子になっているオプションやパラメータのような重要な情報を見逃してしまうことがあります。
これからは、パラメーターとオプションの名前が強調表示されるため、見つけやすくなります。














