当我在普通模式下键入:
时,游标变得不可见,当我进行包含函数调用的映射时,游标会开始闪烁。可以始终显示光标,即使在命令行模式下也是如此?或者我可以在正常模式下调用函数而不需要键入:
发布于 2016-11-02 10:15:03
只有一个游标,因为在终端中,游标是一个终端功能,每个终端只有一个这样的游标。
我想提出这个问题的原因是,在编写命令行调用时,需要直观地指示当前光标的位置。
要做到这一点有几种可能性:
永久光标位置突出显示
autocmd VimEnter,WinEnter * match Cursor /\%#./
这通过特殊的:match
正则表达式原子定义当前位置的窗口本地\%#
.
这将适用于所有的窗口。确保Cursor
高亮组实际上是可识别的;并不是所有的颜色方案都有这样的效果。
仅cmdline高亮显示
或者,您可以只在进入命令行模式时启用:
function! HighlightCursor( isOn, key )
if a:isOn
match Cursor /\%#./
redraw
else
match
endif
return a:key
endfunction
nnoremap <expr> : HighlightCursor(1, ':')
cnoremap <expr> <CR> HighlightCursor(0, "\<lt>CR>")
横发线
:set cursorline cursorcolumn
当前行和当前列的交点是光标位置。
https://stackoverflow.com/questions/40362460
复制相似问题