Vim 如果我';m处于插入模式还是正常模式?
我习惯于使用gvim,但我想利用vim+tmux的优点。因此,我想换成vim。但是在vim中,光标样式不会根据我所处的模式而改变,这是gvim的一个有用特性。我使用zsh(哦,我的zsh)和gnome终端下面的 我试着回答: 但这会在全球范围内改变光标。肯定是我不想要的东西Vim 如果我';m处于插入模式还是正常模式?,vim,zsh,tmux,gnome-terminal,Vim,Zsh,Tmux,Gnome Terminal,我习惯于使用gvim,但我想利用vim+tmux的优点。因此,我想换成vim。但是在vim中,光标样式不会根据我所处的模式而改变,这是gvim的一个有用特性。我使用zsh(哦,我的zsh)和gnome终端下面的 我试着回答: 但这会在全球范围内改变光标。肯定是我不想要的东西 接下来,我尝试了这个插件:,但它也不起作用。对于颜色,我使用的是: let &t_SI = "\<Esc>]12;yellow\x7" let &t_SR = "\<Esc>]12;r
接下来,我尝试了这个插件:,但它也不起作用。对于颜色,我使用的是:
let &t_SI = "\<Esc>]12;yellow\x7"
let &t_SR = "\<Esc>]12;red\x7"
let &t_EI = "\<Esc>]12;blue\x7"
其中我有:
:
:
elseif a:mode == 'i'
"echo " ColoursBasedOnMode insert mode"
"set nonumber
"set norelativenumber
colorscheme railscasts
:
:
仅为此终端仿真器设置终端选项。 正如这里所指出的:
let&t\u SI=“\]12;橙色\x7”
让&t\u EI=“\]12;红色\x7”
请安静!echo-ne“\033]112\007”
它看起来适合我的需要,但也不起作用。你能想象为什么吗?看来我完全误读了你的帖子。我已经删除了我的答案。可能是重复的谢谢你,但你到底把代码放在哪里了?在vimrc里?
" solid underscore
" let &t_SI .= "\<Esc>[4 q"
" solid block
" let &t_EI .= "\<Esc>[1 q"
" 1 or 0 -> blinking block
" 3 -> blinking underscore
" Recent versions of xterm (282 or above) also support
" 5 -> blinking vertical bar
" 6 -> solid vertical bar
au VimLeave * let &t_EI = "\<Esc>]12;white\x7"
au VimLeavePre * :!echo -ne "\033]12;white\000"
au VimLeavePre * let &t_SI = "\<Esc>]12;white\x7"
au InsertEnter * call ColoursBasedOnMode(v:insertmode)
au InsertLeave * call ColoursBasedOnMode('n')
autocmd BufWinEnter,BufNew * call ColoursBasedOnMode('n')
:
:
elseif a:mode == 'i'
"echo " ColoursBasedOnMode insert mode"
"set nonumber
"set norelativenumber
colorscheme railscasts
:
:
let &t_SI = "\<Esc>]12;orange\x7"
let &t_EI = "\<Esc>]12;red\x7"
autocmd VimLeave * silent !echo -ne "\033]112\007"