如何在vim中以不同的模式更改光标?

Mos*_*rdy 2 vim vim-plugin

如何让Vim在不同模式下更改光标以满足这些条件:

  1. 不使用gconftool或使用此类工具.我需要这只影响Vim的一个实例,而不是整个终端.
  2. 这必须在Gnome TerminalGVim.

PS:我尝试过改变样本help gcr,但它只适用于GVim,而不适用于Gnome终端中的Vim.

PPS:我测试了http://vim.wikia.com/wiki/Change_cursor_shape_in_different_modes,但它改变了整个终端的光标.

PPPS:gcr比较优先.

Bil*_*han 7

我以前遇到过同样的问题并尝试了几个选项.

让我先说一下:

选项1:更改光标形状.
参考:http://vim.wikia.com/wiki/Change_cursor_shape_in_different_modes
结果:这对我不起作用

选项2:更改光标颜色.
参考:http://vim.wikia.com/wiki/Configuring_the_cursor
结果:这有效但在离开vim后会改变终端光标.我不能接受.

选项3:更改光标线颜色
参考:如何在插入/正常模式下更改vim光标?

最终结果:选项3最适合我,使用更多代码来定义Cursor主题中的颜色.

vimrc中,添加以下内容:

autocmd InsertEnter * set cul
autocmd InsertLeave * set nocul
Run Code Online (Sandbox Code Playgroud)

然后,在您的主题文件中,设置Cursor为比背景稍暗.例如

hi Cursor ctermbg=black
hi Normal ctermbg=darkgray
Run Code Online (Sandbox Code Playgroud)

添加这些设置后,当您进入可视模式时,线条会变暗,以便您可以轻松识别.它在Gvim中的工作方式略有不同,但它对我来说是完全可以接受的.此外,一旦你习惯了终端vim,你将完全忘记Gvim.