VIM using gnome terminal(Ubuntu))でソラリゼーション配色を使用しようとしています。tmuxなしでvimを実行すると、見栄えがよくなります。以下を参照してください:
次のコマンドを.bashrcに追加した場合
# tmux configuration
tmux attach &> /dev/null
if [[ ! $TERM =~ screen ]]; then
exec tmux
fi
ターミナルをtmuxで起動すると、色が正しく見えません。以下を参照してください:
.tmux.confファイルの内容は次のとおりです
source ~/.local/lib/python2.7/site-packages/powerline/bindings /tmux/powerline.conf
set-option -g default-terminal "screen-256color"
set-option -g history-limit 10000
Vimの配色に https://github.com/altercation/vim-colors-solarized を使用していますが、ターミナルは次のとおりです https://github.com/Anthony25/ gnome-terminal-colors-solarized 。
編集:tmuxを使用:
~$ echo $TERM
screen
Tmuxなし:
~$ echo $TERM
xterm
問題はtmuxバージョン1.8でした。私はここからのアドバイスを使用しました:
https://stackoverflow.com/questions/25940944/ugrade-tmux-from-1-8-to-1-9-on-ubuntu-14-04
Tmuxをバージョン1.9aにアップグレードし、問題は解消しました。
$TERM
の値はscreen-256color
である必要があります。これにより、Vimは256色の可用性を正しく検出します。 (このツールは同様の多重化を実装しているため、tmux
はscreen
の端末定義を再利用します。)
Tmux内でTERM
に正しい値を設定して、行を追加する必要があります
set-option -g default-terminal "screen-256color"
~/.tmux.conf
に変更するか、~/.vimrc
を介してset t_Co=256
を256色に強制します(これは回避策であり、ハイカラー以外の端末も使用する場合はif $TERM == 'screen'
で保護するのが最適です)。 。
Tmux -2を試してください。-2は、端末が256色をサポートすることをtmuxに強制することを意味します。 tmuxが常にそのように起動するように、エイリアスを作成しました。
私はsoluxedテーマを使用したtmuxとvimで同じ問題を抱えていました。このブログ投稿を利用して問題を解決しました: http://www.terminally-incoherent.com/blog/2012/10/17/vim-solarized-and-tmux/
この問題を解決するための私の手順は次のとおりです。
Tmuxを2.0バージョンにアップグレードします。 (現在のバージョンを確認するには:tmux -V
)
256色モードの端末サポートを追加(~/.bashrc
):
export TERM="screen-256color"
alias tmux="tmux -2"
使用する端末タイプ(~/.tmux.conf
):
set -g default-terminal "screen-256color"
Vimに256色を使用するよう強制します(~/.vimrc
):
set t_Co=256 " force vim to use 256 colors
let g:solarized_termcolors=256 " use solarized 256 fallback
変更を有効にするためにターミナルを再起動します。
Selenized を使用することもできます。これは、標準のカラーマッピングを使用するSolarizedの再設計であるため、このような問題は発生しません。また、コントラストがわずかに増加し、色が調整されているため、読みやすさが向上しています。
_~/.vimrc
_:
_set t_Co=256
colorscheme <name>
_
_~/.tmux.conf
_:
_set -g default-terminal "screen-256color"
_
以前の変更後、ワークフローを次のオプションのいずれかに適合させる必要があります。
オプション#1:常に_-2
_引数でtmuxを開始します:
_tmux -2
_
オプション#2:シェル構成ファイルにエイリアスを設定します(_~/.bashrc
_、_~/.zshrc
_):
_alias tmux="tmux -2"
_
オプション#3:_/usr/local/bin/tmux
_にtmux
スクリプトを作成し、_/usr/local/bin/
_が_/usr/bin
_の_$PATH
_より前に来るようにします。
_#!/bin/sh
/usr/bin/tmux -2 "$@"
_