How to Make vim Cursor in shell Different in Shape in Different States

  question, vim

For example, “|” is displayed when inserting, and the time square is displayed when in command mode?
In macvim, the shape changes by default, but not in the shell. How to configure it?

The cursor for setting Gvim can be usedguicursor, for example, only in the insert mode set the cursor to’ |’, can use the configuration:

set guicursor=i:ver1

The reason why the cursor shape will not change in the shell is because the cursor in the shell is set by the shell(gnome-terminal). The reason why cursor is set to guicursor means that this setting is only for gvim (g for gvim means gui)