我倾向于将终端最大化到一个屏幕,并在Vim中垂直分割几个窗口。对于左侧的前几个窗口,一切正常,但是在终端中点击第220列以后无法正常工作。任何鼠标点击过220列似乎都在第1列。我已经在xterm,urxvt和Gnome终端上进行了测试,有或没有tmux / screen;总是一样的行为。如果我大大增加了Gnome终端中字体的大小,我可以点击最后一列(虽然它不再超过#220列。)
如果我在打印到标准输出的终端中运行命令,我可以一直点击终端右侧。这个问题确实与Vim有关。
我在set mouse=a
中有.vimrc
。我会根据请求发布整个文件,但它似乎没有任何与鼠标相关的内容。
这可能无关紧要,但我正在运行Xmonad + Gnome。提前谢谢。
答案 0 :(得分:75)
这已在Vim 7.3.632中修复。见:h sgr-mouse
。或者只是将其放在~/.vimrc
:
set ttymouse=sgr
如果要与未编译mouse_sgr
的版本兼容,请使用:
if has("mouse_sgr")
set ttymouse=sgr
else
set ttymouse=xterm2
end
要查看您的Vim版本是否为mouse_sgr
,从命令行运行vim --version
,还是在Vim中,请输入:version
,然后查找+mouse_sgr
。< / p>
如果您使用的是较旧版本的屏幕或不支持SGR的终端仿真程序,则可能需要升级或切换。这些设置适用于所有新版本的screen,tmux,gnome-terminal,PuTTY / KiTTY,iTerm2和Terminal.app,使用TERM=xterm-256color
或screen-256color
。
更新:如果您使用的是neovim,默认情况下会启用SGR支持。
答案 1 :(得分:9)
修改强>:
我删除了错误报告,因为该跟踪器是针对网站的,而不是文本编辑器。
在查看现有错误报告的正确位置时,我发现了这一点: http://groups.google.com/group/vim_dev/browse_thread/thread/4c137e64d2032441/b3993eaa89589619?lnk=gst&q=mouse#b3993eaa89589619
总而言之,这是一个已被取消的xterm限制。但是,Vim尚不支持长于223的列。
https://sourceforge.net/tracker/?func=detail&aid=3389331&group_id=27891&atid=391887
答案 2 :(得分:4)
几年后,虫子似乎仍然存在。 我找到的解决方案是neovim:vim的现代重构。在其他功能中,此错误已得到解决。
我只是将我的.vimrc复制到.nvimrc中,我的插件只使用了nvim。也许我会继续使用它。