Vim
無法通過覆蓋 terminfo 在 tmux 中啟用 TrueColor 支持
dist:Arch Linux。
我有一個來自 AUR 的 st build 和來自官方 repo 的 tmux。在 st 我遇到了一個很好的 TrueColor 支持,它通過 termguicolors 選項與最後一個 Vim 版本一起工作。但是當我試圖把它帶到 tmux 時,我遇到了一些問題。
第一次輸出
tmux info | grep Tc
從 tmux 內部是
197: Tc: [missing]
閱讀 tmux 手冊頁後,我發現此選項必須帶入 tmux Tc
set-option -g terminal-overrides "st-256color:Tc"
它從我的終端模擬器返回給我:
TERM=st-256color
但是 tmux info 的結果還是一樣的。只是為了檢查我安裝了 xterm 並嘗試了相同的操作,但它沒有給我另一個結果。畢竟 tmux 承認終端支持 256 色並通過它模擬真彩色
您可以修改終端描述的副本以提供此標誌:
infocmp -x >foo edit foo, adding "Tc," after the end of any line ending with a comma tic -x foo
這適用於 ncurses(這是任何 Linux 發行版所擁有的),也許還有NetBSD 詛咒。
您需要添加
-a
以追加,而不是覆蓋現有的終端功能:set-option -ga terminal-overrides ",*256*:Tc"
這適用於宣傳 256 種顏色的任何終端。
set -g terminal-overrides
檢查您的配置文件中稍後是否也沒有其他位置。對於
vim
,您可能還需要:set -g default-terminal "screen-256color"