xterm 色が明るすぎる。

xterm 色が明るすぎる。

私は数日前からdwmを使い始め、ターミナルエミュレータとしてxterm(uxterm)を使っています。

しかし、カラーで出力する一部のアプリケーション(vi/vim、lsなど)は、明るい色と(時には)太字のフォントを使用することがわかりました。私の端末の背景色は暗いパステルなので、色を一致させたいです。

これらの色をどのように変更できますか? #xxxxxx色を使用する方法はありますか?

答え1

Xterm 構成に合格しました。XResources。デフォルトよりも明るい青を使用して、黒の背景に白に設定できます(もちろん、必要に応じて色を調整してください)。

XTerm.VT100.background:         Black
XTerm.VT100.color0:             Black
XTerm.VT100.color1:             Red
XTerm.VT100.color2:             Green
XTerm.VT100.color3:             Yellow
XTerm.VT100.color4:             CornflowerBlue
XTerm.VT100.color5:             Magenta
XTerm.VT100.color6:             Cyan
XTerm.VT100.color7:             White
XTerm.VT100.colorBD:            White
XTerm.VT100.colorBDMode:        true
XTerm.VT100.colorUL:            Yellow
XTerm.VT100.colorULMode:        true
XTerm.VT100.cursorColor:        Red
XTerm.VT100.foreground:         White

xcolorsrgb.txtあなたは使用すること/etc/X11ができます太字で表示される色です。 (デフォルト)に設定すると、この設定は無視され、太字のテキストが太字で表示されます。 、下線も同様です。それ以上に行くことができます(xtermのバージョンとコンパイル時の設定に応じて最大またはそれ以下)。スルーは0〜7に対応し、太字で表示されます。明示的に設定しない限り、アプリケーションは16色以上の色をほとんど使用しません。/usr/X11/usr/share/X11#RRGGBBcolorBDcolorBDModefalsecolorULcolorULModecolor8color255color8color15

これらの設定をというファイルに入れます~/.Xdefaults。ほとんどのシステムはログイン時にこのファイルを自動的にロードします。システムにない場合は、X 起動スクリプトに次のコマンドを追加します。

xrdb -merge ~/.Xdefaults

背景色17に基づいて前景色42の外観をテストするには、この端末のシェルで次のコマンドを実行します。

printf '\033[38;5;%dm\033[48;5;%dm%s\033[0m\n' 42 17 "Hello, world."

拡張カラーサポートなしでxtermがコンパイルされている場合は、クラシックコントロールシーケンスを使用する必要があります。

printf '\033[3%dm\033[4%dm%s\033[0m\n' 4 1 "Hello, world."

この場合、前景色と背景色は0〜7の範囲になければなりません。 xtermが16色のサポートにコンパイルされている場合とをそれぞれ置き換えて、より明るいバージョン(8〜15色)を選択します[3[4[9[10

答え2

.Xdefaultsホームディレクトリのファイルを編集するだけです。.Xdefaults次のように、他の人が利用できるいくつかの設定を試すことができます。これ「zenburn」の暗いカラースキームを使用してください。 「xterm」で始まる行のみを使用します。私は今テストしましたが、uxtermこのように動作します。何らかの理由でこれが機能しない場合は、行の先頭を「uxterm」に変更してください。

答え3

dwmを使用していると述べたので、他の回答で述べたように、Xリソースをそのままにして代わりに端末を呼び出すコマンドを変更することもできます。私はconfig.hターミナルコマンドを次のように修正しました。

static const char *termcmd[]  = { "uxterm", "+cm", "+dc", "-bg", "black", "-fg", "gold", NULL };

カラーを可能にし、ブラックシードにゴールドを使用します。https://linux.die.net/man/1/xterm利用可能なオプションについて学びます。 (設定を変更したら、dwmを再コンパイルする必要があります。)

答え4

長い話を短く

この色をどのように変更できますか?

ファイルを使用してこれらの色を変更できます.Xresources

[I] #xxxxxx色を使用する方法はありますか?

はい。たとえば(私はそれをあなたのものとしてxterm*color1: ffa70aお勧めしませんが)。他の仕様では同等のオプションが使用できるようです。私の考えでは、これはもっと読みやすいと思います(特に* NIXシステムを学ぶ人にとってはもっとそうです。気分が良ければ自由に使用してください)。lightsalmonxterm*color1xterm*color1: rgb:ff/a7/0a#ffa70a

すべての色をデフォルトより明るくする例は次のとおりです。

$ cd
$ test -f .Xresources && \
  cp .Xresources .Xresources.$(date '%s').bak \
  # backing up existing .Xresources if it exists
$ test -f .Xresources || touch .Xresources \
  # creating .Xresources if it doesn't exist

お気に入りのエディタを使って編集してください。~/.Xresourcesこの例では、ファイルは次のようになります。

xterm*color1: gray40
xterm*color2: red5
xterm*color3: green5
xterm*color4: yellow5
xterm*color5: magenta5
xterm*color6: cyan5
xterm*color7: white5
xterm*color8: gray50
xterm*color9: red2
xterm*color10: green2
xterm*color11: yellow2
xterm*color13: magenta2
xterm*color14: cyan2
xterm*color15: white2

走る

$ xrdb -merge ~/.Xresources

だからあなたの

$ xterm &

あまり明るいものを持ってくるはずです。

私にとって非常に役に立ったので、TL; DRでリソースに言及する必要がありますxterm

Thomas E. Dickeyの目に見えない島:XTerm FAQ


詳細

@Gilles_'SO-_stop_being_evil'には素晴らしい答えがあります。特に、printf端末で色をプレビューする方法とASCIIカラーコードをエスケープする方法についての情報が好きです。

@Gillesの答えは解決策を見つけるのに役立ちました。私のものXTermが明るすぎる。気になる部分は明るい緑色です<username>@<machine-name>。 (スクリーンショットがない理由はコメント{1}を参照してください。)リストされている色に変更することはできません。

xtermが16色のサポートでコンパイルされている場合は、[3と[4]をそれぞれ[9と[10]]に置き換えてください]より明るいバージョン(色8-15)を選択してください。

見に行くように案内されました。X.orgのドキュメント。前のリンクが指している場合

https://www.x.org/releases/X11R6.7.0/doc/xterm.1.html#:~:text=color0%20%28class%20Color0%29

「color0(クラスColor0)」のあるページ部分に移動し、次にCtrl「color0(クラスColor0)」に対して+操作を実行しません。ドキュメントにはf後に何も記載されていませんが、読むことはできます。color0color6color7

これはISO-6429拡張色を指定します。デフォルトは...

その後の色は@Gillesのテーブルと一致しますが、ドキュメントの内容を表示します。太字で強調表示し、角かっこ内に追加した説明でこれを2番目に表示する方法を提供するために繰り返します。

...デフォルトはそれぞれ次のとおりです。
ブラック[重要性color0],
レッド3[重要性color1],
グリーン3[ color2],
黄色3[ color3],
ダッジブルー1[ color4],
    [ 気づく linux.die.net/man/1/xterm そして
                        man xterm | grep -B9 -A32 color4
      どちらも「カスタマイズ可能な濃い青」をリストします。
      何と一致するのか color4]
マゼンタ3[ color5], ターコイズ3[ color6]、そしてグレー90[ color7]。

これらの名前付き色のRGB(または他の色空間)座標を表示するには、X11ルックアップを使用しますが、それでも機能しない場合はを使用してください。私は多くのリソースのリストをに見ましたが、私のコンピュータでは(注2を参照)にあります。rgb.txtfind /usr/share/ -type f -name "rgb.txt" 2>&1 | grep -i "X11"find /usr/ -type f -name "rgb.txt" 2>&1 | grep -i "X11"/usr/X11R6/lib/X11/rgb.txt/usr/share/X11/rgb.txt

color8また、以降は何も記載されていませんが、color14読むcolor15ことができます。

太い属性も有効な場合は、ISO-6429拡張色を指定します。デフォルトのリソース値は次のとおりです。
グレー30[ color8],
[ color9],
グリーン[ color10],
黄色[ color11],
スチールブルー1[ color12],
    [ 気づく linux.die.net/man/1/xterm そして
                        man xterm | grep -m1 -B34 -A5 color15
      両方とも「カスタマイズ可能な明るい青」をリストします。
      何と一致するのか color12]
マゼンタ[ color13],
[ color14]、
そして白色[ color15]。

「太い属性が有効な場合」は、デフォルト値を変更しないxterm*boldMode: false限り.Xresources、または.Xdefaults

.Xresourcesこれらすべての情報に基づいて、ホームディレクトリ(cd;)にファイルを作成して、明るtouch .Xresourcesすぎる緑色の問題を解決できました。おすすめしないという文をどこかで.Xdefaults読んだので代わりにこれを選択しました。.Xdefaults残念ながら、これについてのソースはありません。その後、この行を追加しました。

xterm*color10: green2

green2より明るく、greenより明るくgreen3

そして走っている

xrdb -merge ~/.Xresources

太い色を明るくするには、次の.Xresources色を使用してください。

xterm*color8: gray20
xterm*color9: red2
xterm*color10: green2
xterm*color11: yellow2
xterm*color13: magenta2
xterm*color14: cyan2
xterm*color15: white2

あなたもできます。すべて他の色のペアと同じことをxterm*color3: green3して明るさを減らします。xterm*color10:green6

#xxxxxx16進数()とRGBの10進値を使用することもできます。他の色仕様も使用できることは間違いありません。したがって、あなたの質問に答えるには:

これらの色をどのように変更できますか? #xxxxxx色を使用する方法はありますか?

ファイルを使用してこれらの色を変更できます.Xresources

そして

#xxxxxx次の色を使用できます。xterm*color10: #00ee00

(それぞれ)。


ノート
{1}スクリーンショットを投稿したかったのですが、現在(2021年12月23日)StackExchangeのWebサイトで添付された画像を処理するのに問題があるようですが、Wayback Machineからバックアップを取得できませんでした。
{2}次のコマンドと出力はマイコンピュータ情報を表示します。私はRHEL 8を実行しています。 RHELは編集する時間存在する第二企業エル私たちの中に。

$ uname -a
Linux MYMACHINE 4.18.0-240.10.1.el8_3.x86_64 #1 SMP Wed Dec 16 03:30:52 EST 2020 x86_64 x86_64 x86_64 GNU/Linux

その他の便利なリソース:
色名と色空間での位置
color[1]?[0-9]特定の要因がどのように影響するかを説明する有用な説明を含むSO回答
ArchLinux:Xdefault端末の色を理解する
xtermでcolors[0..15]を使用するものは何ですか? アプリケーション固有の.xresourcesの例
AstroBetter - xTermと端末のカスタマイズ:色LS_COLORS、これらの作業を試みる前に、環境変数を慎重にバックアップしてくださいecho $LS_COLORS > ~/.env_LS_COLORS.$(date +'%s').bak
私が使用したものと非常に近いです。、私がやったように、これは太字の表示を無効にします。
おそらく最も役に立つでしょう:Thomas E. Dickeyの目に見えない島:XTerm FAQ

関連情報