$TERM 環境変数に基づく emacs カラー

$TERM 環境変数に基づく emacs カラー

TERM=xtermemacsがgnu画面またはtmuxセッションで実行されているときとはTERM=screen異なる色セットを使用できるようにすることができるかどうかを知りたいですTERM=xterm

たとえば、の場合の前TERM=xterm-256color景色はfont-lock-comment-face「Firebrick」です。でも当時はTERM=screen-256color「chocolate1」に設定されていました。

tmuxが正常に動作するようにTERM変数〜しなければならない画面または一部の派生項目として設定するので、TERMリセットは私にとってオプションではありません。

答え1

これ定義font-lock-comment-faceさまざまなカラーサポートケースにさまざまなバリエーションが含まれています。

  • chocolate1少なくとも88色が利用可能で背景が暗い場合は、このバリエーションを使用してください。
  • Firebrick88色を超える色があり、背景が明るい場合は、このバリエーションを使用してください。

xtermこれらの違いは、rxvtおよびでdtterm始まるTERM値に特別な意味を与えるいくつかのコードが原因で発生しますeterm。これはその値を「明るい」背景と見なします。

常に「明るい」色のバリエーションを使用するには、frame-background-mode*をその値にカスタマイズできる必要があります。light

あなたのEmacsが独自のEmacsを持っているほど新しくない場合は、term/screen.el適切な色調整呼び出しを実行するためにEmacsを直接調整する必要があります。使用できるEmacsトランク、または私は持っている主なポイント.emacs.d/lisp/term/screen.el(修飾子を識別するための追加ビットを含む+矢印/ホーム/終了シーケンスを提供)マルチプレクサoptions xterm-keys)と.emacs自動的にロードするために必要な修正。

もちろん、TERM値を直接確認し、同様の値に対して他の操作を実行する他のコードがまだ存在する可能性がありscreenますxterm

* Mxカスタム変数フレームバックグラウンドモード

関連情報