I remember the good old MS‑DOS use to show a block cursor in overwrite mode and a thin vertical line cursor in Insert mode.

Is there a way to achieve a similar distinction (not necessarily shape based, this may as much a colour distinction) in GNOME Terminal or in a shell ? The latter, is because I feel this may perhaps be the Shell who would have to handles this, while I'm not sure. Or maybe the TTY emulation? Finally, I don't even know which track to follow.


The terminal doesn't have the concept of insert vs. overwrite mode. It's only known by the application running inside (e.g. shell, text editor...).

Some terminal emulators (including gnome-terminal) allow the cursor shape to be set via escape sequences.

So what you need is to modify the desired application to set the cursor shape according to its state.

As far as I recall, neovim does this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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