マルチプレクサ
フォローするtmuxで256色を使用:
- 私は
alias tmux='TERM=xterm-256color tmux'
そこにいる~/.bashrc
- そして
set-option -g default-terminal "screen-256color"
また~/.tmux.conf
存在するkonsole
:
$ echo $TERM
xterm
存在するtmux
:
$ echo $TERM
screen-256color
色はまだ機能しませんtmux
。
boris@vasilisa:~$ PROMPT_GREEN=`tput setf 2`
boris@vasilisa:~$ PROMPT_RED=`tput setf 4`
boris@vasilisa:~$ PROMPT_BLACK=`tput setf 8`
boris@vasilisa:~$ PS1='\[$PROMPT_RED\]\w\[$PROMPT_GREEN\]:\[$PROMPT_BLACK\] '
結果は白黒カラープロンプトです。カラーバンドもありませんls
。
画面
force_color_prompt=yes
まだあります~/.bashrc
。
boris@vasilisa:~$ PROMPT_GREEN=`tput setf 2`
boris@vasilisa:~$ PROMPT_RED=`tput setf 4`
boris@vasilisa:~$ PROMPT_BLACK=`tput setf 8`
boris@vasilisa:~$ PS1='\[$PROMPT_RED\]\w\[$PROMPT_GREEN\]:\[$PROMPT_BLACK\] '
プロンプトをカラフルにしません。ただし、tmux
--と比較すると、ls
色付きのファイルが一覧表示されます。
だから
tput setf
ターミナルマルチプレクサと一緒に使うべきではないと思いますか?
編集する
setf
に変更しsetaf
、カラーコードも変更する必要がありました。
PROMPT_BLACK=`tput setaf 0`
PROMPT_RED=`tput setaf 1`
PROMPT_GREEN=`tput setaf 2`
PS1='\[$PROMPT_RED\]\w\[$PROMPT_GREEN\]:\[$PROMPT_BLACK\] '
エイリアスは必要ありませんtmux
。
オプション設定 -g 基本端末「screen-256color」
十分でしょう~/.tmux.conf
。
だから私が入れた
# colorful prompt
PROMPT_BLACK=`tput setaf 0`
PROMPT_RED=`tput setaf 1`
PROMPT_GREEN=`tput setaf 2`
PS1='\[$PROMPT_RED\]\w\[$PROMPT_GREEN\]:\[$PROMPT_BLACK\] '
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto --group-directories-first'
alias dir='dir --color=auto'
alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# man pages with color!
export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;31m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;44;33m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;32m'
# enable colors:
force_color_prompt=yes
~/.bashrc
両方で、~/.bash_login
色はでの役割を果たしますtmux
。
答え1
推測したように、setf
()terminfo項目の前景色を設定する機能が正しくありません。 (ANSIエスケープを使用した前景色の設定)を使用する必要があります。xterm-256color
screen-256color
setaf
$ echo $TERM
screen-256color
$ infocmp -1 | grep setf
$ infocmp -1 | grep setaf
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
メモ:
- これを行う必要はありません
alias tmux='TERM=xterm-256color tmux'
。起動時に端末エミュレータが正しい値を報告していることを確認してください。TERM=xterm-256color
- (1)がtrueの場合、そこでtoが
tmux
正しく設定されます。 Linuxコンソールで実行しても正しく設定されます。操作する必要がある状況があるかもしれませんが、通常はそうではありません。TERM
screen-256color
screen.linux
答え2
私に役立つのは、.bashrcファイルに次の行を置くことです。
if [ "x$DISPLAY" != "x" ]
then
export HAS_256_COLORS=yes
alias tmux="tmux -2"
if [ "$TERM" = "xterm" ]
then
export TERM=xterm-256color
fi
else
if [ "$TERM" == "xterm" ] || [ "$TERM" == "xterm-256color" ]
then
export HAS_256_COLORS=yes
alias tmux="tmux -2"
fi
fi
if [ "$TERM" = "screen" ] && [ "$HAS_256_COLORS" = "yes" ]
then
export TERM=screen-256color
fi
これが役立つ場合は教えてください。
このソリューションは以下に基づいています。郵便はがき!