☰ menu
Pavel Satrapa

Značky

V dosavadních kapitolách jsme prošli pestrou řadou nejrůznějších pohybů, které vim nabízí. Zatím však mezi nimi chyběla možnost zapíchnout si kamsi do textu špendlíček, ke kterému se lze kdykoli snadno vrátit. Právě k tomu slouží značky.

Definice

Chcete-li na aktuální pozici kurzoru položit značku, stiskněte m<písmeno>, kde <písmeno> je malé či velké písmeno anglické abecedy. Například ma položí značku pojmenovanou „a“.

Značka není v textu nijak viditelná. Jedná se o pouhou vnitřní konstrukci vim. Jestliže si chcete prohlédnout, kde jsou jednotlivé značky rozmístěny, použijte příkaz :marks.

Použití

Když se chcete později vrátit na pozici značky, máte k dispozici dva možné příkazy: '<písmeno> nebo `<písmeno>. Oba přesunou kurzor na řádek, na němž leží značka pojmenovaná uvedeným písmenem. Zatímco zpětný apostrof (`) vás přemístí přímo na pozici značky, apostrof obyčejný (') přesune kurzor na první neprázdný znak dotyčného řádku. Osobně považuji za užitečnější obrácený apostrof.

Je významný rozdíl, jestli pro značku použijete malé nebo velké písmeno. Značky malé (pojmenované malými písmeny) jsou totiž lokální a můžete na ně poskočit, jen pokud se právě nacházíte v dotyčném souboru. Každý soubor tedy má svých vlastních 26 lokálních značek.

Velké značky (pojmenované velkými písmeny) naproti tomu obsahují kromě čísla řádku a sloupce také informaci o jméně souboru. Skočíte-li na tuto značku, můžete přeskočit i do jiného souboru. V takovém případě bude aktuální soubor uzavřen a místo něj se načte soubor obsahující značku (pochopitelně je zde ochrana před ztrátou neuložených změn v souboru).

Jestliže si prostřednictvím volby viminfo ukládáte informace o editaci, uloží se i velké (globální) značky. Při příštím startu editoru je pak můžete používat, jako byste editaci vůbec nepřerušili. Naproti tomu malé značky při uzavření souboru, který je obsahuje, zanikají.

Speciality

Ve výstupu příkazu :marks objevíte několik podivně pojmenovaných značek. Jedná se o speciality, které se nenastavují ručně. Tyto značky aktualizuje automaticky sám editor.

Velmi zajímavý efekt přináší zdvojení znaku pro skok na značku (tedy '' či ``). Vrátí vás zpět na pozici před posledním skokem. Ten mohl být způsoben lecčím – hledáním, příkazem pro nahrazení, skokem na značku či heslo.

Značky [ a ] editor pokládá na začátek a konec naposledy vloženého či zpracovaného (nějakým operátorem) textu. Obdobně začátek a konec naposledy vybrané vizuální oblasti vyznačí pomocí < a >. Tyto speciální znaky můžete použít jako běžná jména značek.