GNU/Linux >> Znalost Linux >  >> Linux

Vim změnit kurzor bloku v režimu vkládání

Vím, že je to stará otázka, ale doufejme, že to pomůže každému, kdo čelí stejnému scénáři.

Ve skutečnosti používám iTerm2 a používám Vim uvnitř mého terminálu na Macu. A když vstoupíte do režimu vkládání, kurzor je stále blok a je trochu matoucí, když jste v režimu vkládání nebo v normálním režimu.

Chtěl jsem ukázat tenkou čáru jako kurzor v režimu vkládání a zpět do bloku v normálním režimu, jak to dělá MacVim. A je to docela jednoduché, stačí přidat toto do mého .vimrc soubor, jak je popsáno zde:

let &t_SI = "\<Esc>]50;CursorShape=1\x7"
let &t_SR = "\<Esc>]50;CursorShape=2\x7"
let &t_EI = "\<Esc>]50;CursorShape=0\x7"

Ale jak vidíte, došlo ke zpoždění při stisknutí ESC pro ukončení režimu vkládání zpět do normálního režimu a opětovné zobrazení bloku jako kurzoru. Abych to opravil, našel jsem toto:

set ttimeout
set ttimeoutlen=1
set listchars=tab:>-,trail:~,extends:>,precedes:<,space:.
set ttyfast

A teď to funguje docela dobře, jak můžete vidět:

Doufám, že to může pomoci někomu dalšímu!


Volba gcr to dělá, i když si nejsem jistý, jak přesně je potřeba ji nastavit, abyste dosáhli požadovaných výsledků.

:help gcr

Pokud si přečtete manuál a pohrajete si s ním, měli byste být schopni na to přijít.

Blikající kurzor v režimu vkládání je obvykle výchozí. Možná se ve vašem .vimrc

změnila možnost gcr
Linux
  1. Příkaz Linux chpasswd - Změna hesel v hromadném režimu

  2. 25 základních příkazů Vim pro navigaci a úpravy

  3. Je možné mít v terminálu vazby kláves Vim?

  1. Co jsou režimy Vim? Jak je změnit?

  2. vim výukový program s příklady příkazů

  3. Jak nastavit kurzor za poslední znak ve vim?

  1. Jak vložit z vyrovnávací paměti v ex režimu vim?

  2. Jak ukončit vim -y v konzoli?

  3. Změnit výchozí adresář, když jsem SSH na server