Vizußlnφ re╛im

Prßce s bloky, kterou jsem popsal v Φßsti o editaci textu, je dosti neobvyklß. Kombinace editaΦnφho p°φkazu (nap°. zkopφrovßnφ) s pohybem je v °ad∞ p°φpad∙ genißlnφ a n∞kolikanßsobn∞ zrychlφ va╣i prßci. NicmΘn∞ nelze popφrat, ╛e p°φstup b∞╛n²ch editor∙, kdy se nejprve kurzorem vyznaΦφ blok textu a na n∞j pak provede k²╛enß operace, takΘ nenφ k zahozenφ. Pokud editovan² blok nenφ jasn∞ vymezen urΦitou ucelenou Φßstφ textu (nap°. odstavec Φi °ßdek), b²vß interaktivnφ zp∙sob zadßvßnφ bloku v²hodn∞j╣φ. Proto jej vim za°adil do svΘho repretoßru.

VyznaΦenφ bloku

Vizußlnφ re╛im zt∞les≥uje klasick² zp∙sob prßce s bloky. Nejprve kurzorem vymezφte, odkud kam bude sahat editaΦnφ zßsah a pak jej provedete. B∞hem vyznaΦovßnφ bloku se vim nachßzφ ve specißlnφm - vizußlnφm - re╛imu.

Jeho nejklasiΦt∞j╣φm zahßjenφm je klßvesa v. Kdy╛ po jejφm stisknutφ zaΦnete pohybovat kurzorem, bude za sebou zanechßvat stopu v podob∞ znak∙ zobrazen²ch inverzn∞. V╣echny takto zv²razn∞nΘ znaky pat°φ do vybranΘho bloku. Pro pohyb kurzoru m∙╛ete pou╛φvat v╣echny pohybovΘ p°φkazy vΦetn∞ hledßnφ a dal╣φch specialit.

[Obrßzek]

Krom∞ popsanΘho klasickΘho vizußlnφho re╛imu existujφ je╣t∞ jeho dv∞ specißlnφ odr∙dy. Pokud jej zahßjφte klßvesou V (tedy Shift-V), bude text oznaΦovßn po cel²ch °ßdcφch. Naproti tomu Ctrl-V vytvo°φ efekt, znßm² pod pojmem sloupcovΘ bloky. VyznaΦen bude pouze obdΘlnφk mezi v²chozφ a aktußlnφ pozicφ kurzoru.

Zajφmavou mo╛nost ve vizußlnφm re╛imu p°edstavuje klßvesa o. Ta p°esune kurzor na druh² konec vyznaΦenΘho bloku, tak╛e m∙╛ete upravovat pro zm∞nu druhou stranu. Vrßtφte-li se zp∞t do normßlnφho re╛imu, lze pomocφ klßves gv obnovit vyznaΦenφ poslednφho vizußlnφho bloku.

Pokud mßte vim p°elo╛en² s podporou my╣i, m∙╛ete ji zapojit. Klasicky stisknutφm levΘho tlaΦφtka a tßhnutφm my╣i oznaΦφte text mezi v²chozφ a koncovou polohou kurzoru. Kdy╛ v dokumentu klepnete prav²m tlaΦφtkem my╣i, bude oznaΦen ve╣ker² text mezi pozicφ kurzoru a pozicφ my╣i.

Akce

Jakmile je blok oznaΦen, m∙╛ete s nφm n∞co provΘst. P°φkaz se jako obvykle zadßvß pat°iΦnou klßvesou. Pokud si to rozmyslφte, m∙╛ete pou╛φt [Esc], kter² vßs vrßtφ do p°φkazovΘho re╛imu, ani╛ by se text jakkoli zm∞nil. P°φkazy, kterΘ lze pou╛φt na vizußln∞ vybran² blok, jsou nßsledujφcφ:

Zßkladnφ trojice
d vymazat a ulo╛it do vyrovnßvacφ pam∞ti (delete)
c zm∞nit (change)
y zkopφrovat do vyrovnßvacφ pam∞ti (yank)
 
Velkß/malß pφsmena
~ malß pφsmena nahradit velk²mi a naopak
U p°evΘst na velkß pφsmena
u p°evΘst na malß pφsmena
 
Formßtovßnφ
Q p°eformßtovat vyznaΦen² text
J spojit do jednoho °ßdku
> posunout doprava
< posunout doleva
 
Specißlnφ
: p°ejφt do re╛imu p°φkazovΘho °ßdku

P°i pou╛itφ dvojteΦky se ocitnete v re╛imu p°φkazovΘho °ßdku. vim na jeho zaΦßtek automaticky doplnφ rozsah °ßdk∙, kter² pokr²vß v╣echny °ßdky, obsa╛enΘ ve vyznaΦenΘm bloku. Chcete-li nap°φklad nahradit jeden °et∞zec jin²m v Φßsti textu, staΦφ ji vizußln∞ vyznaΦit a pou╛φt :s (viz Φßst o nahrazovßnφ textu).

<-- predchozi  [obsah]  dalsi -->
© 1997, 1998 Pavel Satrapa