Vim CursorLine color change in insert mode

前端 未结 5 397
天命终不由人
天命终不由人 2021-01-30 11:29

There is good snippet for changing cursor color:

if &term =~ \"xterm\\\\|rxvt\"
  \" use an orange cursor in insert mode
  let &t_SI = \"\\]12         


        
5条回答
  •  一向
    一向 (楼主)
    2021-01-30 12:06

    When using MacVim with 'Lokaltog/vim-powerline' you can setup your normal/visual/insert colors to match the powerline mode color. I find this extremely helpful to know what mode I'm in without reading the powerline, especially on a large screen.

    Here is the code I am using, based on @Zarick-Lau's answer.

    In my colors/molokai.vim file:

    " Visual Mode Orange Background, Black Text
    hi Visual          guifg=#000000 guibg=#FD971F
    
    " Default Colors for CursorLine
    highlight CursorLine guibg=#3E3D32
    highlight Cursor guibg=#A6E22E;
    
    " Change Color when entering Insert Mode
    autocmd InsertEnter * highlight  CursorLine guibg=#323D3E
    autocmd InsertEnter * highlight  Cursor guibg=#00AAFF;
    
    " Revert Color to default when leaving Insert Mode
    autocmd InsertLeave * highlight  CursorLine guibg=#3E3D32
    autocmd InsertLeave * highlight  Cursor guibg=#A6E22E;
    

    Here is an example using the molokai original color scheme.

    Normal

    Visual

    Insert

    I also find it's helpful to set the OS up to visually select using the same color too. For example, I've changed my highlight color to Orange in OSX, and when I select text, it is now orange instead of blue, same as in VIM.

    Example

    Here the orange highlight being used in the text-box as I'm writing this Stack Overflow entry. Now all text I select in my OS matches the VIM setup.

提交回复
热议问题