Úvod
Vim je široce používaný unixový textový editor s otevřeným zdrojovým kódem. Naučit se používat příkazy Vim je věcí praxe a zkušeností. Proto je užitečné mít při jejich zvládnutí užitečný referenční list.
V tomto tutoriálu najdete nejdůležitější příkazy Vimu a také cheat sheet ke stažení.
Přesun uvnitř souboru
Kurzor v souboru můžete pohybovat po jednotlivých znacích, slovech, tokenech nebo řádcích.
Podle Vima může být slovo skupinou písmen, číslic a podtržítek. Na druhou stranu, token je cokoli oddělené mezerou a může obsahovat interpunkci.
Kromě toho se můžete přesouvat do různých částí textu podle zobrazení obrazovky.
Pohyb podle znaků, slov a žetonů
Základní klávesy pro přesun kurzoru o jeden znak jsou:
h
– posuňte kurzor dolevaj
– posuňte kurzor dolůk
– posuňte kurzor nahorul
– posuňte kurzor doprava
Tyto klávesy můžete také použít s číslem jako předponu pro vícenásobný pohyb určeným směrem. Pokud například spustíte 5j
kurzor se posune o 5 řádků dolů.
b
– přesun na začátek slovaB
– přesun na začátek tokenuw
– přesun na začátek dalšího slovaW
– přesun na začátek dalšího tokenue
– přesun na konec slovaE
– přesunout se na konec tokenu
Například máte výraz „krok za krokem“ jako součást textu a kurzor je umístěn na jeho konci. Při prvním stisknutí b
, kurzor se přesune zpět na „krok pos tep“. Pokud však použijete B
, kurzor se přesune úplně zpět na:„s krok za krokem“, protože mezi těmito znaky nejsou žádné mezery.
Pohyb po řádcích
0
(nula) – skok na začátek řádku$
– skok na konec řádku^
– skok na první (neprázdný) znak řádku#G
/#gg
/:#
– přejít na zadané číslo řádku (nahraďte # s číslem řádku)
Pro ilustraci rozdílu mezi 0
a ^
, podívejte se na následující příklad. V první odrážce příkaz přesune kurzor na prázdné místo před odrážkou. Na druhou stranu ve třetí odrážce je ^
klávesa přesune kurzor na pomlčku (první znak v řádku).
Chcete-li se dozvědět více o matchpairs
a jak používat více než výchozí podporované páry, spusťte v textovém editoru následující příkazy::h matchpairs
.
Pohyb po obrazovkách
Následující příkazy se používají jako rychlý způsob pohybu v textu bez posouvání.
Ctrl + b
– přesun o jednu celou obrazovku zpětCtrl + f
– posun o jednu celou obrazovku dopředuCtrl + d
– posun o 1/2 obrazovky vpředCtrl + u
– posun zpět o 1/2 obrazovkyCtrl + e
– posunutí obrazovky o jeden řádek dolů (bez pohybu kurzoru)Ctrl + y
– posunout obrazovku o jeden řádek nahoru (bez pohybu kurzoru)Ctrl + o
– pohyb zpět v historii skokůCtrl + i
– pohyb vpřed v historii skoků
H
– přesunout se do horní části obrazovky (H=vysoká)M
– přesunout se doprostřed obrazovky (M=middle)L
– přesunout se do spodní části obrazovky (L=nízká)
Vkládání textu
i
– přepnout do režimu vkládání před kurzorI
– vložte text na začátek řádkua
– přepnout do režimu vkládání za kurzorA
– vložte text na konec řádkuo
– otevřít nový řádek pod aktuálnímO
– otevřít nový řádek nad aktuálnímea
– vložte text na konec slovaEsc
– opustit režim vkládání; přepnout do příkazového režimu
Některé z těchto příkazů přepínají mezi příkazy a režim vkládání . Ve výchozím nastavení se Vim spouští v příkazovém režimu, což vám umožňuje pohybovat se a upravovat soubor. Chcete-li přepnout do příkazového režimu, použijte Esc klíč.
Na druhou stranu režim vkládání umožňuje psát a přidávat text do souboru. Chcete-li přejít do režimu vkládání, stiskněte i
.
Úprava textu
r
– nahradit jeden znak (a vrátit se do příkazového režimu)cc
– nahradit celý řádek (smaže řádek a přesune se do režimu vkládání)C
/c$
– nahradit od kurzoru po konec řádkucw
– nahradit od kurzoru po konec slovas
– smazat znak (a přejít do režimu vkládání)J
– sloučit řádek níže s aktuálním s mezerou mezi nimigJ
– sloučit řádek níže s aktuálním bez mezery mezi nimiu
– vrátit zpětCtrl
+r
– opakovat.
– opakujte poslední příkaz
Vyjímání, kopírování a vkládání
yy
– zkopírujte (vytrhněte) celý řádek#yy
– zkopírujte zadaný počet řádkůdd
– vystřihnout (smazat) celý řádek#dd
– ořízněte zadaný počet řádkůp
– vložte za kurzorP
– vložte před kurzor
Označení textu (vizuální režim)
Kromě příkazového režimu a režimu vkládání obsahuje Vim také vizuální režim . Tento režim se používá hlavně pro označování textu.
Na základě části textu, který chcete vybrat, si můžete vybrat ze tří verzí vizuálního režimu:znakový režim , režim linky arežim blokování .
v
– vyberte text pomocí znakového režimuV
– výběr čar pomocí režimu čáryCtrl
+v
– vyberte text pomocí režimu blokování
Jakmile povolíte jeden z režimů, pomocí navigačních tlačítek vyberte požadovaný text.
o
– přesun z jednoho konce vybraného textu na druhýaw
– vyberte slovoab
– vyberte blok pomocí ()aB
– vyberte blok pomocí {}at
– vyberte blok pomocíib
– vyberte vnitřní blok pomocí ()iB
– vyberte vnitřní blok pomocí {}it
– pomocí
vyberte vnitřní blok
Vizuální příkazy
Jakmile vyberete požadovaný text ve vizuálním režimu, můžete s ním manipulovat pomocí jednoho z vizuálních příkazů. Některé z nich zahrnují:
y
– vytrhněte (zkopírujte) označený textd
– smazat (vyjmout) označený textp
– vložte text za kurzoru
– změnit text trhu na malá písmenaU
– změnit text trhu na velká písmena
Hledat v souboru
*
– skok na další výskyt aktuálního slova#
– skok na předchozí výskyt aktuálního slova/pattern
– vyhledat zadaný vzor vpřed?pattern
– vyhledat zadaný vzor zpětn
– opakujte hledání ve stejném směruN
– opakujte hledání v opačném směru
Uložení a ukončení souboru
:w
– uložte soubor:wq
/:x
/ZZ
– uložte a zavřete soubor:q
– ukončit:q!
/ZQ
– ukončit bez uložení změn:w new_file_name
– uložte soubor pod novým názvem a pokračujte v úpravách původního:sav
– uložte soubor pod novým názvem a pokračujte v úpravách nové kopie:w !sudo tee %
– vypište soubor pomocí příkazů sudo a tee
Práce s více soubory
:e file_name
– otevřít soubor v nové vyrovnávací paměti:bn
– přejít na další vyrovnávací paměť:bp
– vrátit se do předchozí vyrovnávací paměti:bd
– zavřít vyrovnávací paměť:b#
– přesunout se do zadané vyrovnávací paměti (podle čísla):b file_name
– přesunout do vyrovnávací paměti (podle názvu):ls
– seznam všech otevřených vyrovnávacích pamětí
:sp file_name
– otevřít soubor v nové vyrovnávací paměti a horizontálně rozdělit výřez:vs file_name
– otevřít soubor v nové vyrovnávací paměti a vertikálně rozdělit výřez:vert ba
– upravit všechny soubory jako vertikální výřezy:tab ba
– upravit všechny vyrovnávací paměti jako kartygt
– přejít na další kartugT
– přejít na předchozí kartu
Ctrl+ws
– rozdělený výřezCtrl+wv
– vertikální rozdělení výřezuCtrl+ww
– přepínání výřezůCtrl+wq
– opustit výřez- Ctrl+wx – vyměnit aktuální výřez za další
Ctrl+=
– nastavte všechny výřezy stejně na výšku a šířku
Značky a skoky
m[a-z]
– označte text pomocí znakového režimu (za
doz
)M[a-z]
– označte řádky pomocí režimu řádků (za
doz
)`a
- skok na pozici označenoua
`y`a
– vytáhněte text na pozici označenou >a>
`.
– skok na poslední změnu v souboru`0
– skok do pozice, kde byl Vim naposledy ukončen``
– skok na poslední skok:marks
– seznam všech značek:jumps
– vypsat všechny skoky:changes
– seznam všech změnCtrl+i
– přejít na další instanci v seznamu skokůCtrl+o
– přejít na předchozí instanci v seznamu skokůg,
– přejít na další instanci v seznamu změng;
– přejít na předchozí instanci v seznamu změn
Makra
qa
– záznam makraa
q
– zastavit záznam makra@a
– spusťte makroa
@@
– znovu spustit poslední makro
Povolení barevných schémat Vim
:colorscheme [colorscheme_name]
– změna na zadané schéma:colorscheme [space]+Ctrl+d
– seznam dostupných barevných schémat Vim
Seznam barevných schémat Vim ukazuje ta, která jsou standardně dodávána s textovým editorem, jako na obrázku níže:
Můžete také konfigurovat nastavení barev ručně nebo si stáhnout uživatelská schémata. Zjistěte, jak to udělat v části Jak změnit a používat barevná schémata Vim.
Cheat Sheet pro příkazy Vim
Tento článek obsahuje jednostránkový referenční list příkazů Vim. Uložte cheat ve formátu PDF kliknutím na Stáhnout cheat tlačítko níže.
STÁHNOUT Cheat Sheet