今天我找到了通过设置.vimrc set keymap=_mykeymap_
并使用 Ctrl ^ 来更改vim中输入语言的方法。
使用Vim更改输入语言时,是否可以在insert mode
中更改光标颜色?
答案 0 :(得分:2)
对于gvim,请参阅:help lCursor
。
对于vim,我没有答案,抱歉。
答案 1 :(得分:0)
如果它理解以下转义序列,则可以更改终端中的光标颜色和样式。并非所有终端都支持此功能,但xterm,rxvt和Terminator都支持。最新版本的gnome-terminal支持更改颜色的序列,但不支持将颜色恢复为默认颜色。
在.vimrc
中跟随您可以更改不同模式的光标颜色:
if &term =~ "xterm\\|rxvt"
" use an orange cursor in insert mode
let &t_SI = "\<Esc>]12;orange\x7"
" use a red cursor otherwise
let &t_EI = "\<Esc>]12;red\x7"
silent !echo -ne "\033]12;red\007"
" reset cursor when vim exits
autocmd VimLeave * silent !echo -ne "\033]112\007"
" use \003]12;gray\007 for gnome-terminal
endif
因此,您可以编写一个函数来检查当前keymap
并在“keymap-cursor-colors”之间切换。
答案 2 :(得分:0)
我知道如何更改insert mode
中光标的清晰度,例如,my setting是:
set guicursor=a:hor1
set guicursor+=i-r-ci-cr-o:hor2-blinkon0
Help file显示:
n Normal mode
v Visual mode
ve Visual mode with 'selection' "exclusive" (same as 'v',
if not specified)
o Operator-pending mode
i Insert mode
r Replace mode
c Command-line Normal (append) mode
ci Command-line Insert mode
cr Command-line Replace mode
sm showmatch in Insert mode
a all modes
我不认为可以在指定模式下更改颜色(highlight-groups)。但您可以使用(在所有模式下)更改颜色:
hi Cursor guibg=#A6E22E guifg=#A6E22E gui=underline
找到