シロアリと一緒にtmuxを使用すると、端末の色が正しく表示されません。

シロアリと一緒にtmuxを使用すると、端末の色が正しく表示されません。

私が使用する端末はシロアリ、かなり良いですが、tmuxを使用すると、vimのカラースキームと端末自体のいくつかの色に問題があります。次のように発生します。右 = tmux なし 左 = tmux スクリーンショットに示すように、tmuxを使用してnvimまたはvimを開くと、左側のカラースキームが変わります。これは、私がテストしたすべてのカラースキーム(約15または20)で発生します。 termiteと入力した直後にコマンドを実行すると、TERM=xterm-256color tmuxnvim / vim(私は.vimrcを模擬してinit.vimと同じように接続しました)カラースキームが魅力的に動作することを観察しました!私はi3-gapsを使っていてバインディングを設定することにしましたが、$mod+返品シロアリを次のようにオンにします。

  • bindsym $mod+Return exec termite -e 'TERM=xterm-256color tmux'

操作する必要がありますが、キーを押すと画面だけが点滅し、何も起こりません。

私が試したことは次のとおりです。

  • $TERMシロアリとシロアリの両方で異なる値に設定~/.tmux.conf.localそして私.vimrcxterm-256color, screen-256color, termite-256color;;

  • 次のような他の端末エミュレータで同じことをテストしました。xfce端末そしてGNOME端末、どちらもうまく機能し、色が正しく表示されます。

  • 私の設定.vimrc:

    `if &term == "screen"` 
    
        `set t_Co=256`
    
    `endif`
    
  • tmuxの起動tmux -2;

  • 私のエイリアスで.zshrc:

    tmux="tmux -2";
    
    tmux="TERM=xterm-256color tmux" (screen blinks and nothing happens);
    
    termite="termite --exec "TERM=xterm-256color tmux";
    
    termite="termite -e "TERM=xterm-256color tmux".
    

編集:tmuxの内部と外部の$ TERMは、端末と同じです。 tmuxの内部と外部にあるときにecho $TERM同じ結果が出力されます。これはシロアリで発生し、他の端末でテストする必要があります。

答え1

同様の問題がある人、または同じ問題がある人は、.rcファイルと.tmux.confファイルの$ TERM変数を同じに設定できます。問題があるかどうかを確認するには、:checkhealthneovim内のコマンドを使用することをお勧めします。

答え2

私は私のファイルで次の設定を使用し、~/.tmux.confあなたにも役立ちます。

set -g terminal-overrides ',xterm-256color:Tc'
set -g default-terminal "tmux-256color"
set -as terminal-overrides ',xterm*:sitm=\E[3m'

答え3

したがって、誰かがまだ解決策を見つけることに興味がある場合。それでも同じ問題を抱えている人のために:私はそれをうまく機能させるために多くのことをする必要はありませんでした。

私はそれを忘れて、TelegramのLinuxグループにこの質問をすることにしました。私たちは設定ファイルでこれを見つけましたsxhkd

# Open alacritty with tmux
super + shift + Return
    alacritty -e $SHELL -i -c tmux &

私はターミナルを基本的により速く簡単に設定できるAllacrityように変更しましたが、GPU-based term公正に言えばそれはそれとは何の関係もないと思います。正直なところ、Alacrittyの色に問題があった記憶はありません。当時はベータ版だったので使わなかったからです。

wm rcのキーバインディングに追加するか、シェルrcでエイリアスを作成できます。

また、前述のように:

.rcファイルと.tmux.confファイルの$TERM変数を同じ値に設定する必要があります。問題があるかどうかを確認するには、neovimで:checkhealthコマンドを使用することをお勧めします。

色は今、内側と外側が同じように動作しますtmux:)

設定ファイルはsxhkd私のGitHub行にあります。06

事後に投稿するのは良くないことを知っていますが、この問題は数ヶ月間私を悩ませており、オンラインでさまざまなフォーラムやFAQを検索しましたが、解決策を見つけるのが難しかったので、そうする必要がありました。ソフトウェアに関する文書、関連コンテンツはありません。

関連情報