在我的vimrc文件中,我输入以下代码以更改光标形状:
if &term =~ "xterm"
" blinking vertical bar
let &t_SI .= "\<Esc>[5 q"
" blinking block
let &t_EI .= "\<Esc>[1 q"
endif
它运行良好,但现在我想进一步改变光标形状(闪烁下划线),无论何时使用改写模式(r和R键)。 我怎么能做到这一点?
由于
答案 0 :(得分:0)
Vim不支持此功能。要查看,请查看term.c中的term_cursor_shape()
函数。这提供了您已经使用的插入/非插入的形状(作为termcap的扩展)。
vim使用的其他termcap符号是隐形(vi),普通(ve)和非常可见(vs)的传统风格。但是vim使用那些来处理滚动的怪癖。
进一步阅读,vim似乎唯一可以使替换状态可见的位置是screen.c中的showmode()
函数
答案 1 :(得分:0)
您可以使用t_SR
。例如,要获得建议的下划线,您的配置应如下所示:
if &term =~ "xterm"
" blinking vertical bar
let &t_SI .= "\<Esc>[5 q"
" blinking block
let &t_EI .= "\<Esc>[1 q"
" blinking underscore
let &t_SR .= "\<Esc>[3 q"
endif