在插入模式下,Vim更改块光标

时间:2011-01-24 02:03:21

标签: linux shell vim

不确定它的术语是什么,但在Vim上,'cursor'总是像插入/替换光标,而不是我在其他gui编辑器中习惯的闪烁线光标。在插入模式下有什么办法可以改变吗?

4 个答案:

答案 0 :(得分:4)

gcr选项执行此操作,但我不确定如何设置它以获得所需的结果。

:help gcr

如果您阅读本手册并使用它,您应该能够弄明白。

插入模式下闪烁的光标通常是默认值。也许你的.vimrc中的gcr选项已经改变了

答案 1 :(得分:1)

我在Mac上使用iTerm进行连接。 iTerm似乎有一个设置。快速变化及其工作。

答案 2 :(得分:1)

我知道这是一个老问题,但是希望这可以帮助其他面临相同情况的人。

实际上,我在Mac的终端中使用iTerm2和Vim。而且,当进入插入模式时,光标仍然是一个障碍,当您处于插入模式或普通模式时,会感到困惑。

我想在插入模式下显示细线作为光标,而在正常模式下像MacVim那样返回到块。这样做非常简单,只需将其作为described here添加到我的.vimrc文件中即可:

let &t_SI = "\<Esc>]50;CursorShape=1\x7"
let &t_SR = "\<Esc>]50;CursorShape=2\x7"
let &t_EI = "\<Esc>]50;CursorShape=0\x7"

enter image description here

但是如您所见,按下ESC退出插入模式回到正常模式并再次将该块显示为光标时会出现延迟。因此,要解决此问题,我发现了这一点:

set ttimeout
set ttimeoutlen=1
set listchars=tab:>-,trail:~,extends:>,precedes:<,space:.
set ttyfast

现在您可以看到它工作得很好:

fix delay going back to block as cursor

我希望它可以帮助其他任何人! ?

答案 3 :(得分:0)

这个vim插件实际上会在iterm(和tmux)中动态更改光标

如果你在tmux中有一些错误,但在它之外工作得很好:https://github.com/sjl/vitality.vim