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