Not sure what the terminology is for it but on Vim the 'cursor' is always like an insert/replace cursor instead of the blinking line cursor I'm used to in other gui editors. Is there any way to change this when in insert mode?

closed as off-topic by Sven, MadHatter, mdpc, Andrew Schulman, Cristian Ciupitu Nov 29 '14 at 9:52

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions must be relevant to professional system administration. Server Fault is dedicated to professional system and network administrators. End user and enthusiast questions are off-topic (contact your system administrator or hire a professional to help you out). Please see the Help Center for more information." – Sven, MadHatter, mdpc, Andrew Schulman, Cristian Ciupitu
If this question can be reworded to fit the rules in the help center, please edit the question.


If you are talking about vim inside a shell, you should configure the cursor style in your terminal emulator. Even if you do so, Vim can't toggle the cursor style on-the-fly. That's a limitation of the terminal itself.

If you are talking about the graphical version of vim, called gvim (or macvim), then look at Nupraptor answer.

BTW, I think this question is better suited to the Superuser.com site.

  • I found the option in iterm – Derek Organ Jan 24 '11 at 2:52

This plugin for vim will actually change the cursor on the fly in iterm (and tmux)

It has a few bugs if you're in tmux, but works great outside of it: https://github.com/sjl/vitality.vim

  • Should be the accepted answer. – Shawn Erquhart Jan 6 '17 at 13:17

If you're talking about gvim, then you can change the cursor to an 'I' when in insert mode with:

set guicursor=i:ver100-iCursor

EDIT: The 'i' is for insert mode. You can also define it for 'n', 'v', 'c' or 'a' (normal mode, visual mode, command mode or all modes, respectively).


maybe it would be enough to change the color acording to which mode you were in? If so I use. "CURSOR COLOUR When in terminal " change the color of the cursor to white in command mode,and orange in insert mode

if &term =~ "xterm\\|rxvt"
:silent !echo -ne "\033]12;white\007"
let &t_SI = "\033]12;orange\007"
let &t_EI = "\033]12;white\007"
autocmd VimLeave * :!echo -ne "\033]12;white\007"

Not the answer you're looking for? Browse other questions tagged or ask your own question.