Domů arrow Začátečníci arrow Příkazový řádek arrow Textové editory v příkazové řádce(2)-Vim
Textové editory v příkazové řádce(2)-Vim PDF Tisk E-mail
Zhlédnutí: 2158
Hodnocení čtenářů: / 2
SlabéVynikající 
Napsal filbar   
Pondělí, 13 srpen 2007
Aktualizováno ( Čtvrtek, 09 srpen 2007 )

Minule jsme si představili dva velmi jednoduché textové editory pro příkazovou řádku-pico a jeho novější a příjemnější klon nano. Pro tentokráte se budeme zabývat velmi výkonným klonem ve světě Unixu známeho edtoru Vi, který v Linuxu nese název Vim.

Varianty

Mimo klonu Vim, vám ještě může něco říkat nvi, což je také klon klasického Vi, ale má mírně odlišné ovládání. Jeho domovská stránka se nachází na adrese http://www.bostic.com/vi/. Z data poslední úpravy stránek je zřejmé, že se editor již nevyvíjí. Poslední verze editoru nesla číslo 1.79. Na těchto stránkách najdete ještě novější verzi 1.81.5 z ledna 2004.

Proto se mu v tomto článku nebudeme věnovat a zaměříme se raději na klon, který se aktivně vyvíjí. V době psaní článku je nejaktuálnější verze 7.1 a je ke stažení na adrese http://www.vim.org/.

Instalace

Jak je to v Linuxu obvyklé, instalaci je nejlépe provést pomocí správce balíčků vaši distribuce. Ani ze zdrojových kódů není instalace o moc složitější. Stačí obvyklá kombinace příkazů ./configure && make && make install, která nainstaluje editor do adresáře /usr/local. Při instalaci se automaticky vytvoří symlink vi odkazující na vim. Pokud chcete mít hlášky Vimu v češtině, je nutné si stáhnout také balíček vim-x.y-lang.tar.gz, kde x a y je číslo verze a podverze shodné s hlavním balíčkem. Tento balíček rozbalíme ještě před započetím instalace do stejného adresáře, jako Vim. Skriptu configure lze předat parametr --with-x, který způsobí, že se mimo textové verze nainstaluje i grafická nadstavba.

První pohled

Editor spustíme příkazem vi jmeno_souboru. Když se pokusíme napsat nějaký text, zjistíme, že to nejde. Je to způsobené tím, že Vim rozlišuje mezi dvěma režimy a to příkazovým a editovacím. Po spuštění se nachází automaticky v režimu příkazovém, ve kterém je možné zadávat editoru příkazy. My ale prozatím žádné příkazy zadávat nechceme, ale vlastně jeden zadat musíme, že chceme začít psát. Stačí zmáčknout klávesu Insert a jsme v editačním módu. Po druhém stisknutí klávesy se text začne přepisovat.

Po dokumentu se pohybujeme jak jsme zvyklí pomocí šipkových kláves a Page Up/Page Down, Home/End. U posledních dvou kláves si po chvilce nejspíše všimneme trošku neobvyklého chování. Zajišťují vlastně přesun po odstavcích, protože Vim bere jako ukončovací znak řádku klávesu Enter, na rozdíl od textových editorů typu OpenOffice. Na požadované místo se tedy musíme dostat šipkovými klávesami. Z editovacího módu se dostaneme stiskem Esc.

Příkazový mód

Ukládání

To co dělá Vim tak silným je právě příkazový mód. Po té co jsme v našem dokumentu provedli nějaké změny, je budeme chtít nejspíše uložit. K tomu v příkazovém módu zadáme :w a je to, soubor je uložen. Editor ukončíme zápisem :q. Tyto dvě operace lze zadat jako jedinou pomocí klávesové zkratky ZZ(tedy přidržet Shift a dvakrát zmáčknout z). Pokud chceme změny stornovat zadáme :q!.

Přesuny

Ještě ale s Vimem končit nebudeme, takže jej znovu spustíme. Nejspíše určitě se dostaneme do situace, že budeme mít rozsáhlejší dokument a víme na jaký řádek se potřebujeme dostat, ale šipkové klávesy jsou k tomuto velmi pomalé. Nevadí. Stačí v příkazovém módu zapsat jméno řádku a dvakrát stisknout klávesu g a jsme na požadovaném řádku. Na začátek souboru se dostaneme když dvakrát zmáčkneme klávesu g. Přesun na konec zajistí Shift+g. Aktuální pozice se v dolní části editoru zobrazí po zadání klávesové zkratky Ctrl+g.

Vyhledávání/Nahrazování

S přesunem souvisí také vyhledávání textu. Pro prvního výskytu nalezení požadovaného textu stačí zadat /text. Další výskyty již lze hledat pouze pomocí /. S vyhledáváním souvisí zajímavá vlastnost, můžeme používat historii hledaných vzorků. Po zadání / stačí použít šipku nahoru, nebo dolů a pohybovat se v historii.

Vyhledávání by ale bylo docela málo a tak zde existuje také příkaz pro náhradu vyhledaného textu jiným textem. Jeho syntaxe vypadá následovně: :s/hledany text/novy text/. Za polední lomítko ještě můžeme uvést znak g, který způsobí, že se náhrada provede globálně. Náhradu ne určité řádky omezíme zadáním rozsahu řádků mezi dvojtečku a písmeno s. Pro aktuální řádek zadáme .(tečku), konec souboru označuje $:

 
:5,.s/text1/text2/g
:300,$s/text1/text2/g
:25,147s/text1/text2/g

Samozřejmě lze jak při vyhledávání, tak i při nahrazování používat regulární výrazy.

Vkládání

Před chvíli jsem zmínil, že přepnutí do editačního módu zajistí klávesa Insert. To ale není vše. Text pod aktuální řádek začneme psát po zmáčknuti klávesy o, naopak nad aktuální řádek klávesou O(Shift+o). Klávesa i má stejný význam jako Insert-tj zapne editační mód na aktuální pozici kurzoru. Editaci od začátku řádku zajistí I, na konci řádku A.

Schránka

Editor používá i vlastní schránku. Řádek ze souboru vyjmeme když dvakrát po sobě stiskneme d, kopírování zajistí dvě klávesy y(yank) a za aktuální řádek vložíme pomocí p(put). Pro vložení před něj jak již jistě tušíte použijeme P. Ve Vimu je vyjmutí totožné se zrušením textu. Pokud tedy chcete pouze zrušit určitý řádek stačí poté nepoužít příkaz pro vložení. Počet řádků, které chceme zrušit/vyjmout určíme zadáním počtu před zmáčknutím kláves d. 20 následující řádků vyjmeme zapsáním 20dd. Stejnou syntaxi lze použít i pro kopírování. Od pozice kurzoru do konce řádku text zruší klávesa D.

Příkazový řádek

I z editoru Vim lze používat příkazový řádek. Jeho spuštění zajistíme příkazem :sh. Z příkazového řádku se zpět do editoru dostaneme normálním odhlášením s příkazového řádku zadáním exit, nebo Ctrl+d. Pokud si chceme nechat zobrazit pouze výstup jediného příkazu existuje jednodušší cesta- :!prikaz. Toto však pouze zobrazí výsledek příkazu. Někdy ho však budeme potřebovat vložit do souboru. Syntaxe je velmi podobná :.!prikaz -i -s -parametry.

Ostatní

Opakování předcházejícího příkazu provedeme zmáčknutím ., pro jeden krok zpět slouží klávesa u(Undo).

Závěr

Jak jste se mohli z předcházejícího přehledu přesvědčit ne nadarmo je editor Vim, tak slavný. Jeho funkce jsou skutečně velmi silné, a i když vám teď bude jeho ovládání připadat trošku složité, pokud jej budete používat, tak se vám po čase jeho ovládání dostane do krve a jiný editor pro příkazový řádek nebudete chtít používat. Navíc než si na jeho ovládání zvyknete můžete používat i jeho GUI variantu.

Komentářů
Přidat Nový Hledat RSS
Anonymní   |195.113.177.xxx |2007-11-05 13:32:01
Přidat komentář
Jméno:
Email:
 
Website:
Název:
UBBKód:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Please input the anti-spam code that you can read in the image.

3.22 Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 
< Předch.   Další >

Zapomenuté heslo
Nemáte účet? Vytvořte jej!
Skype: My status bartfil
Jabber: bartmann@rupyhost.cz

Doporučujeme

Příběhy psů z útulků