Установка курсора на вертикальную тонкую линию в vim

Я пытаюсь установить курсор в режиме вставки тонкой вертикальной линии, и я не могу. Я пробовал это в моем файле .vimrc:

set guicursor+=i:ver100-iCursor

Он не устанавливает курсор в вертикальную полосу в режиме вставки.

Что мне не хватает и как это сделать?

Ответ 1

Это сделало трюк:

set guicursor=i:ver25-iCursor

Мне пришлось уменьшить 100 до 25

Ответ 2

Этот код в моем /home/el/.vimrc работал на моей консоли:

if $TERM_PROGRAM =~ "iTerm"
    let &t_SI = "\<Esc>]50;CursorShape=1\x7" " Vertical bar in insert mode
    let &t_EI = "\<Esc>]50;CursorShape=0\x7" " Block in normal mode
endif

Что делает это для меня:

введите описание изображения здесь

Источник:

https://hamberg.no/erlend/posts/2014-03-09-change-vim-cursor-in-iterm.html

Ответ 3

Для версии терминала gnome> 3.15
Добавьте это к вашему ~/.vimrc.

if has("autocmd")
  au VimEnter,InsertLeave * silent execute '!echo -ne "\e[2 q"' | redraw!
  au InsertEnter,InsertChange *
\ if v:insertmode == 'i' | 
\   silent execute '!echo -ne "\e[6 q"' | redraw! |
\ elseif v:insertmode == 'r' |
\   silent execute '!echo -ne "\e[4 q"' | redraw! |
\ endif
au VimLeave * silent execute '!echo -ne "\e[ q"' | redraw!
endif

Вы получите блочный курсор в обычном режиме и тонкий курсор в режиме вставки.

enter image description here