端末の代替線の色

端末の代替線の色

読みやすくするために代替線の色をサポートする端末またはシェルはありますか?データをテーブル形式(たとえば、apt-cache検索)に出力するコマンドは、特に広い端末ウィンドウで読み取りが少し難しい場合があり、奇数行が偶数行と少し異なる色の場合、読みやすくなります。

答え1

シェーディングしたい出力を小さなawkスクリプトにパイプすることができ、パフォーマンスに大きな影響を与えません。たとえば、

NR%2 == 0 {
    print "\033[1;36m" $0 "\033[0m"
    next
}

{
    print "\033[1;46;30m" $0 "\033[0m"
}
  1. .awkファイルの1つに入れてください。PATH
  2. 次の行を追加し.bashrcて再インポートします。

    alias ImFabulous='myfunc';myfunc(){ eval "$@ | awk -f MakeItFabulous.awk";}
    
  3. 努力する: $ ImFabulous <your command here>

たとえば: ImFabulous cat /etc/hosts。私が提供したバージョンは非常に基本的ですが、大きなテーブルファイルの場合はこのバージョンが効果的です。閲覧すれば調整が可能ですカラーエスケープシーケンスあなたにとって素晴らしいタイプです。エイリアスが必要ない場合は、次のように入力できます。<my command> | awk -f MakeItFabulous.awk

答え2

タイリング(サイズ変更/伸縮ではなく繰り返し)モードで背景画像をサポートする端末エミュレータを見つけ、これらの背景画像を直接作成できます。

最大の欠点は、ターミナルのサイズを変更すると機能しないことですが、特定のお気に入りのフォントサイズを頻繁に使用する場合は正しく機能することがあります。

ターミナルのパディングを忘れないでください。たとえば、VTEベースのエミュレータ(および他の多くのエミュレータ)の場合、文字セルの全領域の周りに1pxのデフォルトパディングがあります。フォントの高さが 20 ピクセルの場合、上のピクセルが color1、次に 20 ピクセルの color2、次に別の 19 ピクセルの color1 である 1x40 イメージを作成する必要があります。もちろん、これはエミュレータが背景画像を一番上に揃えると仮定する。

最新のVTEベースのターミナルエミュレータのうち、Terminix [アップデート:Tilixと呼ばれています]とXfce4-terminal(バージョン0.8.x)がバックグラウンドイメージをサポートしているため、これらのタイリングを提供していることを確認する必要があります。そうでなければ、私は彼らの作者がこれを実装したいと確信しています(彼らにこのページを教えてください:))。以前のバージョンのVTEは背景画像を明示的にサポートしていましたが、他のバグのために使用しないことをお勧めします。用語とurxvtは試してみる可能性があります。

私はかつてこの方法を使用して80列に永久的な右マージンを置きました。

更新:実際にxfce4-terminalでこれを試しましたが、期待どおりに動作します。私が予想していない1つの小さな欠点は、バックスクロールしても背景がコンテンツでスクロールされないことです。これは、特にピクセルあたりのVTE-0.44スクロール(IMOがそうでない場合は優れています)によって妨げられます。

関連情報