哪个是配置$ TERM和tmux的正确方法?


2

我在bash中使用gnome-terminal。

当我将xterm-256color设置为$ TERM并在.tmux.conf中时,大多数事情都可以工作,但是当我尝试更改vim的colorscheme时,事情就搞砸了

当我为$ TERM和.tmux.conf设置screen-256color时,颜色可以正常工作,但是大多数键都发疯了。我已经尝试了最后一个链接中的一些建议,但是当我按ssh键时,箭头甚至在命令行上也会崩溃。

那么如何配置tmux呢?

Answers:


3

如此处所述,通过清除终端选项(在Vim中运行,然后按+ 刷新终端的显示)来禁用背景颜色擦除(BCE),以便在tmux和GNU屏幕中使用Vim时,配色方案能够正常工作。t_ut:set t_ut=ControlL

这样,您既可以保留正确的按键检测TERM值,xterm-256color又可以获取正确的Vim配色方案渲染!:-)


2
我们注意到您最近对多个问题发布了相同的答案。如果问题恰好是同一问题,请标记它们以引起我们的注意,以使它们作为重复项被关闭。一般而言,请勿张贴(普通)相同的内容作为对多个问题的答案。谢谢。
slhck

1

因为您没有准确说明此处的按键有什么问题,所以是在黑暗中拍摄。

我的这些~/.vimrc行使箭头键在tmux的Vim中可以正常工作:

nnoremap <Esc>A <up>
nnoremap <Esc>B <down>
nnoremap <Esc>C <right>
nnoremap <Esc>D <left>
inoremap <Esc>A <up>
inoremap <Esc>B <down>
inoremap <Esc>C <right>
inoremap <Esc>D <left>

问题就像链接中描述的那样-当我使用CTRL +箭头时,它会删除一些行。而且,这种映射也无济于事。同样,我也不太确定我应该使用screen-256color(尽管我读过某处应该将tmux与之配合使用)。这个想法是,如果我使用xterm-256color,那么当我使用ssh时,我不需要做任何配置。
bliof

它是在外部链接中描述的,而不是在您的问题中描述的。您不应该期望任何人去玩口袋妖怪,以理解自己的问题所必需的信息。无论如何,在配置文件中:echo &term没有任何$TERM相关内容的vim 输出是什么?您可以尝试将$TERMas 设置为xterm-256color并将其添加set-window-option -g xterm-keys on到您的.tmux.conf吗?
romainl 2012年

没有tmux的vim-xterm; 带tmux的vim-xterm-256color; 将$ TERM设置为xterm-256color并添加您说的命令,使我解决了colorchemes的问题。
bliof

我完全忘记了我.bashrc的家里有一段相当复杂的代码可以处理错误的颜色。我回到家时会把它挖出来。IIRC,它是20多个行的条件块,用于$TERM正确设置和其他一些设置。
romainl 2012年

这是有问题的代码。不知道这对您没有用。
romainl 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.