在設定 Git diff 強化工具: delta 時,發現我的 terminal 顯示的顏色不正常。
我的 terminal 環境用 Alacritty + Tmux,網路上馬上找到跟我遇到一樣問題的同學: 24 bit/True color not working in tmux 2.3 · Issue #696 · tmux/tmux
我的環境如下:
測試顏色#
使用以下指令測試顏色
1
2
3
4
5
6
7
8
9
10
11
12
13
| awk 'BEGIN{
s="/\\/\\/\\/\\/\\"; s=s s s s s s s s;
for (colnum = 0; colnum<77; colnum++) {
r = 255-(colnum*255/76);
g = (colnum*510/76);
b = (colnum*255/76);
if (g>255) g = 510-g;
printf "\033[48;2;%d;%d;%dm", r,g,b;
printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
printf "%s\033[0m", substr(s,colnum+1,1);
}
printf "\n";
}'
|
alacritty 結果:
alacritty + tmux 結果:
解決方案#
在 .tmux.conf 使用 terminal-overrides
加入 Tc
的設定
設定如下:
1
| set -ga terminal-overrides ",xterm-256color:Tc"
|
Reference#