
私はirssi、mc、tigなどのncursesアプリケーションのどこでも見ることができる青色の背景が嫌いです。色を変更したいのですが、どうすればよいですか?
Midnight Commanderにテーマがあることはわかっていますが、すべてのCLIプログラムのグローバル設定はどうですか?setterm
私はLinuxとFreeBSDで利用可能であることがわかりましたvidcontrol
が、vidcontrol
私にはうまくいかず、VESA用なので、私には必要ではないと思います。私はここでSSHを通して作業しています。
答え1
一部の端末(xtermなど)では、リソースファイルを介してまたは動的に色の上書きを許可します。 $ TERMのterminfoエントリに正しく公開されている場合は、次の方法でこれを実行できます。
tput initc 4 1000 0 0
ANSIカラー4(通常は青色)を明るい赤色のRGB(1000、0 0)に変更します。
端末が色のオーバーライドをサポートしていない場合(参考文献を参照infocmp -1 | grep initc
)、terminfoを使用するアプリケーションは別のエスケープシーケンスを送信して色4(青)を要求するように欺くことができます。
infocmp -x > terminal.info
を編集し、terminal.info
端末名を「myterm」のように変更し、「setab」プロパティ(ANSI背景設定)を編集します。
変える
setab=\E[4%p1%dm
それは:
tput setab 4
^[[44mを送信して次に変更してください。
setab=\E[4%?%p1%{4}%=%t1%e%p1%d%;m
は%? ....
if-then-elseで、「4」が要求された場合は「1」が送信され、それ以外の場合は要求された値が送信されることを示します。
だから
tput setab 4
お送りします^[[41m
、(赤)tput setab 5
お送りします^[[45m
次に、次のコマンドを使用してコンパイルします。
TERMINFO=$HOME/.terminfo tic -x terminal.info
次のように使用してください。
TERMINFO=$HOME/.terminfo TERM=myterm the-application-to-trick
これは、アプリケーションがterminfoデータベースを使用してシーケンスを端末に送信する場合にのみ機能します。
答え2
TERM変数をANSIカラーをサポートしていない端末に切り替えると、青色の背景は表示されなくなります。