Foto s laskavým svolením secretlondon123
Toto je příspěvek hosta, který napsal SathiyaMoorthy
Tento článek je součástí probíhající série Vi / Vim Tipy a triky. Mark je funkce pro vytváření záložek v editoru Vim, kde si můžete označit konkrétní řádek a později se k němu rychle vrátit. Pokud editor Vim používáte pravidelně, tato jednoduchá technika používání záložek vystřelí vaši produktivitu do nebes.
Ve Vimu existují dva typy záložek – místní a globální.
1. Vim Local Bookmark
V rámci jednoho souboru, když chcete přejít na konkrétní pozici nebo řádek, můžete použít místní označení. Pokud je název záložky malým písmenem, jedná se o místní značku.
Jak vytvořit záložku uvnitř Vi?
Zadejte m{název makra}. macro-name je abeceda odkazující na název záložky.
Pokud zadáte „ma“, vytvoří se záložka na aktuálním řádku na aktuálním místě s názvem „a“. V následujícím příkladu zadání ma vytvořilo záložku přesně na místě, kde je zvýrazněn kurzor.
ma
Obr. 1: Označte aktuální polohu uvnitř Vimu pomocí ma
Dvě způsoby přístupu k řádku se záložkou uvnitř Vi
Metoda 1:`{macro-name}
backtick následovaný názvem makra. Přesuňte se na přesné umístění záložky. Tím přeskočíte na přesné umístění znaku v řádku, odkud byl dříve označen.
Pokud například napíšete „a“, přenese vás to na záložku s názvem „a“. tj. Zavede vás na místo, kde je zvýrazněný kurzor na obrázku 1 výše.
`a
Metoda 2:„{macro-name}
jednoduché uvozovky následované názvem makra. Přesuňte se na začátek řádku označeného záložkou.
Pokud například napíšete ‚a , dostanete se na začátek řádku, který obsahuje záložku s názvem „a“. Dostanete se na začátek řádku „CustomLog logs/access_log combined“ na výše uvedeném obrázku 1.
'a
2. Globální záložka Vim
Pokud máte otevřených více souborů a chcete přejít na konkrétní pozici v některém z otevřených souborů, můžete použít funkci globální značky Vim. Pokud je název záložky velkým písmenem, jedná se o globální záložku.
Následující sekvence kroků vysvětlí, jak používat globální záložku při úpravě více souborů.
- Otevřete více souborů:# vim /etc/passwd /etc/group
- Při úpravách souboru /etc/passwd přejděte na konkrétní řádek a zadejte mP pro vytvoření globální záložky s názvem P
- Zadáním :n ze souboru /etc/passwd přejdete na soubor /etc/group ve vim.
- Při úpravách souboru /etc/group přejděte na konkrétní řádek a zadejte mG, abyste vytvořili globální záložku s názvem G
- Zadejte `P (zpětné zaškrtnutí následované velkým P), které vás přenese na záložku v /etc/passwd
- V /etc/passwd napište `G (zpětné zaškrtnutí následované velkým G), čímž se dostanete na záložku v /etc/group.
3. Jak zobrazit všechny záložky
Pokud jste vytvořili několik záložek a nepamatujete si je, můžete snadno získat seznam všech záložek zadáním :marks, jak je uvedeno níže.
:marks mark line col file/text a 15 9 ypserver 192.168.1.119 b 11 18 domain THEGEEKSTUFF G 56 0 group P 45 0 passwd
To znamená, že jsem vytvořil následující záložky:
- a – místní záložka s názvem „a“ na řádku 15 a sloupci 9. Tím je také uveden text řádku#15 . Toto je z aktuálně otevřeného souboru, kterým je yp.conf
- b – místní záložka s názvem „b“ na řádku 11 a sloupci 18. Tím je také uveden text řádku č. 18. Toto je z aktuálně otevřeného souboru, kterým je yp.conf
- G – globální záložka s názvem „G“ na řádku 56 a sloupci 0 souboru „skupiny“
- P – globální záložka s názvem „P“ na řádku 45 a sloupcem 0 souboru „passwd“.
Kromě výše uvedených záložek, kdykoli zadáte :marks do Vimu, můžete získat následující řádky. Tyto značky ‘ (jednoduché uvozovky), “ (dvojité uvozovky), [ , ], ^ a . (tečka) jsou ve výchozím nastavení vytvořeny vim a nemáte nad nimi žádnou kontrolu.
:marks mark line col file/text ' 8 12 #^IUse broadcast on the local net for domain NISDOMAIN " 1 0 # /etc/yp.conf - ypbind configuration file [ 11 0 domain THEGEEKSTUFF ] 11 19 domain THEGEEKSTUFF ^ 11 19 domain THEGEEKSTUFF . 11 18 domain THEGEEKSTUFF
Například značka . (tečka) označuje poslední pozici, kde byla provedena změna. Takže to můžeš udělat vždycky. (zpětné zaškrtnutí následované tečkou), což vás přenese do pozice, kde byla provedena poslední změna.
4. Rychlé shrnutí příkazů záložky Vim
- ma – vytvoří záložku s názvem a
- `a – Skok na přesné umístění (řádek a sloupec) záložky a
- ‘a – Skok na začátek řádku záložky a
- :marks – zobrazí všechny záložky
- :marks a – Zobrazí podrobnosti o záložce s názvem a
`. – Skok na přesné místo (řádek a sloupec), kde byla provedena poslední změna - ‘. – Skok na začátek řádku, kde byla provedena poslední změna
Doporučená četba
Vim 101 Hacks, od Rameshe Natarajan . Jsem feťák z příkazového řádku. Takže jsem přirozeně velkým fanouškem editorů Vi a Vim. Před několika lety, když jsem psal hodně kódu C na Linuxu, jsem četl všechny dostupné tipy a triky editoru Vim. Na základě svých zkušeností s editorem Vim jsem napsal e-knihu Vim 101 Hacks, která obsahuje 101 praktických příkladů různých pokročilých funkcí Vim, díky nimž budete v editoru Vim rychlý a produktivní. I když používáte editory Vi a Vim několik let a nečetli jste tuto knihu, udělejte si laskavost a přečtěte si tuto knihu. Budete ohromeni možnostmi editoru Vim.