Bezplatný, otevřený a multiplatformní textový editor Vim je program určený pro příkazový řádek a též existuje s grafickým uživatelským rozhraním (GUI). Vim vychází z unixového editoru Vi, který vytvořil Bill Joy v roce 1976. Název Vim znamená „Vi IMproved“ (vylepšený Vi) a jeho autor, holandský programátor Bram Moolenaar, ho poprvé zveřejnil v roce 1991.
Vim dodnes patří mezi nejpopulárnější textové aditory především v komunitě programátorů. Dokonce i v jeho modernější alternativě VSCode je možné instalovat Vim jako rozšíření, které umožní používat klávesové zkratky a režimy editoru Vim. Pokud si chcete vyzkoušet, ale používáte VSCode, stačí instalovat zmíněné rozšíření.
![](https://www.websupport.sk/podpora/wp-content/uploads/2022/06/vim.png)
Instalace
Jelikož je Vim multiplatformní textový editor s otevřeným zdrojovým kódem, můžeme ho lehce instalovat prakticky na kterékoli linuxové distribuci. V případě Ubuntu stačí běžná kombinace příkazů:
sudo apt update && sudo apt install -y vim
Netradiční navigace
Editor Vim byl vyvinutý na počítači, který na klávesnici ještě neměl šipky a tak zpočátku nahradily funkce šipek klávesy k pro šipku nahoru, j pro šipku dolů, h pro šipku vlevo a l (malé písmeno L) pro šipku vpravo. Výhoda této záměny kláves spošívá v tom, že nemusíme prsty přesouvat ze základního řádku na šipky a neplýtváme tak časem při navigaci v textu. Dnes však fungují i šipky a spolu s ostatními klávesovými zkratkami ve třech nejčastěji používaných režimechje možné Vim ovládat velice rychle a efektivně.
Režimy (modes)
Vim má 3 režimy, ve kterých je možné vykonávat určité akce. Tyto režimy zapřičiňují, že zaučení začátečníka trvá poměrně dlouho, ale po jejich zvládnutí získáme efektivní a rychlý nástroj na pokročilou práci s textem. Jde o tyto režimy:
- Základní (příkazový) režim – v tomto režimu je možné zadávat příkazy na práci s textem
- Režim vkládání – v tomto režimu můžete text přidávat
- Vizuální režim – v tomto režimu můžete text označovat
Postupně si prakticky představíme všechny 3 režimy v konfiguračním souboru editoru Vim (~/.vimrc). Po prvním spuštění se Vim zobrazí s přednastavenými možnostmi. Změníme některá nastavení editoru Vim přes editor Vim:
vim ~/.vimrc
Editor Vim soubor otevře v základním režimu. V tomto režimu ale není možné text přidávat, proto kliknutím na klávesu i (jako insert – vložit) ve Vimu aktivujeme režim vkládání. Zkopírujeme a vložíme tyto řádky:
syntax on
set cursorline
set encoding=utf-8
set incsearch
set number
set wrap
Stavový řádek si můžeme nastavit podle vlastník představ za pomoci online generátoru na adrese tdaly.co.uk/projects/vim-statusline-generator. V případě nejasností stačí kliknout na tlačítko „Powerline-style Statusline“ a zkopírovat text na konci stránky do konfiguračního souboru editoru Vim.
![](https://www.websupport.sk/podpora/wp-content/uploads/2022/06/vim-1-insert_mode.png)
Klávesou esc se vrátíme do základního režimu. V tomto režimu změny v souboru uložíme. Ukládání změn v editoru Vim je podobně netradiční jako navigace. V základním režimu napíšeme dvojtečku a malé písmeno w (jako write – zápis) :w a stiskneme klávesu Enter. Takto jsme uložili změny v otevřeném souboru. Pokud chceme soubor uzavřít, zařídíme to opět napsáním dvojtečky a klávesy q (jako quit – ukončit) :q a stiskneme klávesu Enter.
Oba příkazy (w a q) můžeme zkombinovat do jediného příkazu :wq a po stisknutí klávesy Enter se změny uloží a následně se soubor zavře. Přidáním vykřičníku za malé písmeno q (:q!) dosáheme, že Vim vynutí zavření souboru bez uložení změn
![](https://www.websupport.sk/podpora/wp-content/uploads/2022/06/vim-2-normal_mode.png)
V základním režimu ještě můžeme použít tyto příkazy, za kterými vždy stiskneme klávesu enter.
- w – kurzor se posouvá dopředu po slovech
- b – kurzor se posouvá dozadu po slovech
- gg – kurzor se přesune na začátek souboru
- G – kurzor se přesune na konec souboru
- x – vymaže písmeno před kurzorem
- dd – vymaže celý řádek, ve kterém je kurzor
- cc – nahradí celý řádek (vymaže řádek, nechá ho prázdný a přepne do režimu vkládání)
- u – vrátí poslední změnu (undo)
- ctrl + r – znova vykoná vrácenou změnu (redo)
- /text – vyhledá text zhora dolů
- ?text – vyhledá text zdola nahoru
- n – přesune kurzor na další výskyt vyhledaného textu
- N – přesune kurzor na předešlý výskyt vyhledaného textu
- :%s/text1/text2/ – text1 zamění za text2
- esc – návrat do základního režimu
Už víme, že obsah souboru je možné měnit v základním režimu a též v režimu vkládání. Vizuální režim nabízí možnost označit text, se kterým následně můžeme pracovat za pomoci těchto klávesových zkratek:
- v – přepne do vizuálního režimu s označením textu po písmenkách
- V – přepne do vizuálního režimu s označením textu po řádcích
- Ctrl + v – přepne do vizuálního režimu s označením textu v bloku
- šipky – posouvání kurzoru s cílem označit text, se kterým následně můžeme vykonat tyto změny
- y – zkopíruje označený text
- p – vloží zkopírovaný text (v základním režimu)
- d – vymaže označený text
- esc – návrat do základního režimu
![](https://www.websupport.sk/podpora/wp-content/uploads/2022/06/vim-3-visual_mode.png)
Jak si Vim osvojit pořádně
Osvojení editurou Vim je potřebné věnovat poměrně hodně času, protože ovládání Vimu je od ostatních běžně používaných editorů zásadně odlišné. Zvládnutí režimů, příkazů a klávesových zkratek tedy vyžaduje cvičení na textu, nebo nejlépe přímo v praxi.
Všechny zmíněné režimy, příkazy a klávesové zkratky si můžete vyzkoušet i v přepracovaném interaktivním návodu, který je instalován spolu s editorem Vim. Stačí pustit příkaz vimtutor
(ne v editoru Vim, ale v příkazovém řádku), který v editoru Vim zobrazí text v řeči instalovaného operačního systému:
vimtutor
Též interaktivní návod, ale ve webovém prohlížeči můžeme absolvovat díky otevřenému projektu na adrese openvim.com. Hravou formu výuky zvolil projekt vim-adventures.com, čímž Vim ještě víc přiblížil začátečníkům.
Shrnutí
Textový editor Vim nabízí komplexní nástroj pro profesionální práci s textem. Často ho používají programátoři či systémoví administrátoři. V tomto návodu jsme nabídli rychlý základní přehled možností editoru Vim, díky kterému dokážete Vim používat i jako začátečník.