Sprievodca po Vim Marks

Sprievodca Po Vim Marks



Značky Vim sú špecifické miesta v súbore, ktoré možno nastaviť s názvom a neskôr ich vrátiť volaním ich menami. List m nasledované ďalším písmenom {a-z alebo A-Z} možno použiť na nastavenie značky a a jediný citát ) ‘) s názvom značky sa používa na návrat k tejto značke. Všimnite si, že malými písmenami na nastavenie sa používajú písmená miestne značky kým veľké písmená písmená sa používajú na nastavenie globálne značky .

Pochopenie Vima Marksa

Vim vám umožňuje nastaviť konkrétne pozície v súbore, najmä ak pracujete na veľkom súbore, kde sa potrebujete rýchlo pohybovať tam a späť. Vďaka tejto funkcii je navigácia v súbore so stovkami riadkov mimoriadne jednoduchá. Ak napríklad pracujete na kóde Python s 500 riadkami kódu, možno budete musieť prechádzať súborom, aby ste sa dostali na konkrétny riadok kódu. Ak však nastavíte značky na požadované miesta, môžete sa ľahko pohybovať stlačením niekoľkých kláves.







Funkcia značiek Vim nie je obmedzená na navigáciu, značky môžete použiť aj na vykonávanie iných príkazov, o ktorých budem diskutovať v neskorších častiach tejto príručky. Poďme preskúmať, ako nastaviť a používať značky vo Vime.



Poznámka: Na pokyny v tejto príručke používam distribúciu Linuxu (Ubuntu 22.04) a Vim verziu 8.2.



Nastavte značku

Ak chcete nastaviť značku vo Vime, podržte kurzor na mieste, kde chcete značku nastaviť, a stlačte tlačidlo m kľúč , nasleduje ľubovoľný list od a do s . Napríklad, ak chcem nastaviť značku s názvom písmena s potom napíšem mz v režime NORMAL.





mz

Existuje niekoľko spôsobov, ako nastaviť značku vo Vime, tento postup je najrýchlejší.

Hoci je vyššie uvedený postup široko používaný a veľmi rýchly, nezískate žiadnu vizuálnu informáciu o tom, či bola známka nastavená alebo nie, pokiaľ to výslovne neskontrolujete.



Na zoznam značiek vo Vime použite :značky príkaz, o ktorom budem diskutovať v Zoznam značiek oddiele. Môžete však povoliť indikáciu stlačenia klávesu v spodnej časti okna pomocou :set showcmd.

: nastaviť showcmd

Môžete tiež použiť značka alebo Marka príkazy na nastavenie značky. Napríklad, s značku je možné nastaviť aj pomocou nižšie uvedeného príkazu:

: značka z

Každý súbor Vim môže mať značky z a do s , ale ak nastavíte značku s pre pozíciu a použiť rovnaký názov značky pre inú pozíciu, predtým nastavená značka sa odstráni (prepíše).

Všimnite si, že na označenie značky možno použiť aj veľké písmená {A-Z}. Značky s veľkými písmenami sú globálne značky a na základe súborov. Globálnym známkam sa budem dôkladne venovať v samostatnej časti.

Zoznam značiek

Ako bolo uvedené v predchádzajúcej časti, všetky vytvorené značky je možné jednoducho vypísať

pomocou :značky príkaz.

: známky

Vo vyššie uvedenom výstupnom obrázku sú uvedené všetky značky; niektoré sú vlastné a niektoré sú predvolené.

Existuje aj niekoľko ďalších metód na zoznam značiek. Ak chcete uviesť konkrétnu značku, použite :značky príkaz s názvom značky. Napríklad vypísať známku s, Použi :marks príkaz:

: známky z

Podobne, ak chcete uviesť viacero značiek, použite :značky :

: známky abz

Kde a , b, a s sú rôzne názvy značiek.

Značky v súboroch nie sú štandardne viditeľné a na ich grafické zobrazenie existujú rôzne pluginy. Známe pluginy, ktoré dokážu zobraziť značky vo Vime, sú ShowMarks a Vim podpis .

Keďže doplnok ShowMarks je plný chýb a už mnoho rokov nebol aktualizovaný, nainštalujem ho Vim podpis plugin na prezeranie značiek.

Po inštalácii doplnku nastavte značku a doplnok ju explicitne zobrazí s názvom, ako je znázornené na nasledujúcom obrázku.

Prejsť na značku

Po nastavení značky je ďalším krokom navigácia po značkách. Ak chcete prejsť na začiatok označeného riadku v aktuálnej vyrovnávacej pamäti, stlačte tlačidlo jednoduchá úvodzovka (‘) s názvom značky {a-z}.

'S

Ak chcete prejsť na presné miesto (riadok/stĺpec), stlačte tlačidlo začiarknutie (`) s názvom značky {a-z}.

`z

Single (‘) a backtick (`) možno použiť aj na preskočenie globálnych značiek {A-Z}.

Nižšie je uvedená tabuľka navigácie medzi malými písmenami:

'' Skočte späť na čiaru, odkiaľ ste skočili
Skočte späť do pozície, z ktorej ste skočili
' . /`. Preskočenie na posledný upravený riadok/pozíciu
`[\`] Preskočenie na začiatok/koniec posledného vytrhnutého textu
`<\`> Preskočenie na začiatok/koniec posledného vizuálneho výberu
[počet]] ' Ak chcete prejsť na ďalší riadok [count] počtu značiek z aktuálnej pozície kurzora
[počet]]“. Preskočiť [počet] o počet značiek z aktuálnej pozície kurzora

Je dôležité poznamenať, že vyššie uvedené navigačné klávesy sú určené pre malé písmená.

Diskusia o známkach Vim je neúplná, ak nebudeme diskutovať o skoky a jumplist . The jumplist ukladá skoky, ktoré sa vykonajú v rámci súboru alebo cez súbory, či už ide o značky alebo bežné predvolené skoky Vim.

Ak chcete vypísať všetky skoky, použite :skáče a na odstránenie všetkých skokov použite príkaz :clearjumps. Na navigáciu po skokoch použite ctrl+o a ctrl+i kľúče.

Poznámka: Pred odstránením skokov majte na pamäti, že odstránenie skokov môže ovplyvniť históriu navigácie.

Použitie skokov považujem za pohodlnejšie na pohyb po značkách. Najprv vymažem všetky skoky, pretože ak to neurobím, môžem skončiť v iných súboroch. Potom registrujem skoky značiek v jumplist súbor pomocou jednoduchých úvodzoviek alebo spätného začiarknutia. Po dokončení používam ctrl+o a ctrl+i klávesy na rýchle preskakovanie značiek.

Ak chcete získať ďalšiu pomoc pri navigácii medzi značkami, použite :pomocné značky a :help jumplist príkazy.

Globálne známky

Globálne značky vo Vime sú nastavené na preskakovanie medzi súbormi. Na rozdiel od miestnych značiek sú globálne značky nastavené veľkými písmenami a možno ich použiť v súboroch.

Poďme pochopiť dôležitosť globálnych značiek pomocou príkladu. Za predpokladu, že pracujete na kódovom súbore a chcete získať prístup k špecifickej funkcii v tomto súbore. Takže namiesto otvorenia súboru jednoducho zadajte nastavenú globálnu značku a súbor sa otvorí s konkrétnym umiestnením.

Na nastavenie globálnej značky použite príkaz mark m nasleduje veľké písmeno {A-Z}.

mZ

Teraz máte prístup k tejto značke z akéhokoľvek súboru. Ak chcete prejsť na globálnu značku, použite rovnaký postup, aký je uvedený v časti Prejsť na značku oddiele. Súbor obsahujúci značku sa otvorí a aktuálny sa zatvorí.

'S

Podobne, ak chcete prejsť na presné miesto, použite spätné začiarknutie s názvom značky (`Z).

Číslované značky

Očíslované značky {0-9} sa používajú na uloženie aktuálnej pozície kurzora v viminfo pri ukončení súboru. Očíslované značky sú špeciálne a nedajú sa nastaviť priamo. Tieto značky sú automaticky generované v viminfo súbor, aby ste mali prehľad o zmenách v súbore, keď súbor ukončíte. Napríklad, keď opustíte akýkoľvek súbor viminfo súbor uloží informácie o poslednej polohe kurzora do očíslovaných značiek, ako sú 0, 1, 2 atď.

Očíslované značky môžete vypísať pomocou :značky príkaz.

Pre viac informácií o číslovaných značkách Vim použite :help viminfo-file-marks príkaz.

Odstránenie značiek

Existujú rôzne metódy na vymazanie všetkých značiek, konkrétnych značiek alebo rozsahu značiek.

Ak chcete značky odstrániť, :delmarky alebo :delm možno použiť príkazy.

:delmarks z Ak chcete odstrániť konkrétnu značku, napr. s
:delmarks x-z Ak chcete odstrániť značky z X do s také, že mazanie X , a , a s
:delmarks abxy Odstrániť a , b , X, a a známky
:delmarks zZ Odstrániť s a S známky

Ak chcete vymazať všetky malé písmená {a-z}, použite :delmarky! príkaz. Ak chcete vymazať veľké písmená a číselné značky, musíte použiť :delmarks A-Z a :delmarky 0-9 príkazy. Ak chcete vymazať veľké písmená {A-Z}, použite :delmarks A-Z . Rovnakým príkazom je možné vymazať aj očíslované značky.

Pokročilé vlastnosti

Keďže značky sú miesta, možno ich použiť aj na úpravu súboru vo Vime. Ak chcete napríklad odstrániť, skopírovať alebo zmeniť niečo z konkrétnej značky na inú značku, môžete použiť príslušný príkaz so zmienkou o názve značky.

V nasledujúcej tabuľke je s sa používa ako názov značky.

d ' z / d`z Vymazať z aktuálneho riadku na nasledujúci označený riadok / Vymazať z aktuálnej pozície po ďalšiu presne označenú pozíciu
c ' z / c`z Zmeniť text z aktuálneho riadku na nasledujúci označený riadok / Zmeniť text z aktuálnej pozície na nasledujúcu presne označenú pozíciu
a ' z / y`z Kopírovať (vytrhávať) text z aktuálneho riadka do nasledujúceho označeného riadka / Kopírovať text z aktuálnej pozície do nasledujúcej presne označenej pozície

Ak chcete vykonať a po riadkoch operáciu, potom zavolajte značku pomocou jednoduchých úvodzoviek (‘), a ak chcete vykonať a charakterovo operáciu, použite backtick (`).

Podobne, ak chcete vymazať, zmeniť alebo vytrhnúť čokoľvek medzi dvoma značkami, môžete použiť nasledujúcu syntax príkazu.

: 'X,' a < d, c alebo y >

Napríklad, ak chcete odstrániť všetky riadky z mark 'X označiť a Použi : ' X, ' y d príkaz.

Pozrite si nasledujúci súbor so značkami b a c .

Ak chcete odstrániť všetky čiary zo značky b k c (vrátane), vykonajte príkaz uvedený nižšie:

: 'b,' c d

Rozdiel medzi malými a veľkými značkami

Značky s malými aj veľkými písmenami majú odlišné funkcie.

V súboroch sa používajú malé písmená a dajú sa nastaviť z abecedy a na abecedu s v akomkoľvek súbore. Sú jedinečné pre súbory, v ktorých boli vytvorené. Je možné k nim pristupovať a spravovať ich v rámci súborov, v ktorých boli vytvorené. Na druhej strane, veľké písmená {A-Z} sú globálne a nemožno ich nastaviť s rovnakým názvom. K týmto značkám je možné pristupovať z ľubovoľného súboru pomocou apostrofu (‘) alebo spätného začiarknutia (`).

Navigácia a proces odstraňovania malých a veľkých písmen sú podobné. Malé písmená však majú viac navigačných príkazov kvôli ich nastaveniam v súbore.

Ďalšou dôležitou vecou je, že značky sa pri ukončení súboru alebo relácie nevymažú. Takže, ak ste nastavili značku, pri opätovnom otvorení zostanú značky nedotknuté.

Vim Marks Cheat Sheet

Kľúčové operácie, ktoré potrebujete na použitie funkcie značiek v editore Vim, sú uvedené na nasledujúcom obrázku.

Záver

Značky v editore Vim sú vlastné pozície na navigáciu v súbore so stovkami riadkov. Existujú dva typy značiek, veľké a malé písmená. Malé písmená sú užitočné pri navigácii v súbore. Na navigáciu medzi súbormi sa používajú veľké písmená. Ak chcete nastaviť značku, písmeno m sa používa s iným malým alebo veľkým písmenom {a-z, A-Z}. Značky akéhokoľvek súboru môžu byť uvedené pomocou :značky príkaz. Ak chcete odstrániť značku :delmarky alebo :delm používajú sa príkazy s názvom značky.