Textové editory, ačkoli možná nejsou tím nejvíc sexy tématem na světě, jsou opravdu důležité. Jedním z nejvýkonnějších textových editorů, a tedy i jedním z nejoblíbenějších, je Vim (zkráceně „Vi Improved“).
Ačkoli má Vim ostrou křivku učení (kterou lze překonat hodinami strávenými hraním s interaktivním výukovým programem Vim) a pro nové uživatele může být zastrašující, vývojáři ho milují. Je to proto, že jim umožňuje být produktivnější a že jej lze donekonečna přizpůsobovat. To se provádí úpravou konfiguračního souboru Vimu, známého jako „dotfile“.
Síla souboru dotfile
Soubor dotfile je úžasně mocný a může ovládat téměř každou část práce s Vimem. Úprava toho vašeho je opravdu snadná. Nejprve musíte zkontrolovat, zda jej skutečně máte. To provedete spuštěním příkazu:
cat ~/.vimrc
Pokud tam nic není, musíte ho jednoduše vytvořit:
touch ~/.vimrc
Nyní jste připraveni začít Vim přizpůsobovat. K tomu jej musíte otevřít ve svém oblíbeném textovém editoru. Může to být Vim, Nano nebo třeba Gedit. Stačí, když to bude textový editor.
Bodový soubor Vim má svůj vlastní vestavěný programovací jazyk, který se nazývá VimScript. Právě ten budeme používat ve zbytku tohoto článku. Ale nebojte se. Je opravdu jednoduchý na pochopení. Pro začátek vám přinášíme několik užitečných řádků, které můžete přidat do konfiguračního souboru.
Vyřešte odsazování za vás
Minulý měsíc jsem publikoval článek o tom, jak psát čistý a čitelný kód. Jedním z bodů, které jsem v něm uvedl, bylo, abyste se vždy vyhnuli používání „měkkých tabulátorů“, protože různé textové editory je interpretují různým způsobem a v programovacích jazycích, které jsou na odsazování přísné, jako je Ruby a Python, to může přinést problémy.
Naštěstí můžete pomocí několika řádků jazyka VimScript změnit každý tabulátor na předem definovaný počet mezer. Stačí do souboru Vim dotfile přidat následující příkaz.
set expandtabset tabstop=4
set softtabstop=4
set shiftwidth=4
Uživatelé jazyka Python by měli používat čtyři mezery, jak je doporučeno standardem PEP-8. U ostatních jazyků je nejlepší si buď přečíst příslušnou stylovou příručku, nebo se řídit vlastním úsudkem.
V případě potřeby můžete také nastavit automatické odřádkování. Opět stačí do souboru s tečkami přidat následující řádky kódu. Druhý řádek kódu zajistí, že žádný řádek nebude delší než 80 znaků.
set autoindentset textwidth=80
Proměňte Vim v textový editor bez rozptylování
Vim je sice skvělý textový editor pro vývojáře, ale hodí se i pro ty, kteří chtějí zjednodušené, přizpůsobitelné a zároveň nerozptylující prostředí pro psaní.
Pomocí několika řádků kódu můžete nakonfigurovat vim tak, aby se v případě potřeby přepnul do režimu „textového procesoru“. Tím se změní způsob formátování textu v editoru a zavedou se věci jako kontrola pravopisu.
Nejprve vytvořte funkci s názvem WordProcessorMode a vložte do ní následující řádky kódu.
func! WordProcessorMode()setlocal textwidth=80
setlocal smartindent
setlocal spell spelllang=en_us
setlocal noexpandtab
endfu
Pak budete muset definovat, jak ji budete aktivovat. Následující řádek kódu vám umožní vytvořit příkaz. Pokud v příkazovém režimu zavoláte „WP“, aktivuje se režim textového procesoru.
com! WP call WordProcessorMode()
Chcete-li vyzkoušet, zda to funguje, otevřete ve VIM nový textový soubor a stiskněte klávesu escape. Pak napište „WP“ a stiskněte enter. Pak napište nějaký text, přičemž některá slova záměrně napište špatně. Pokud je VIM zvýrazní jako nesprávné, pak víte, že jste jej nainstalovali správně.
Nainstalujte Vundle
Vundle je správce balíčků pro Vim, ne příliš odlišný od správce balíčků v Ubuntu. Umožňuje rozšířit jeho funkčnost instalací balíčků třetích stran. Mnohé z nich jsou určeny programátorům, jiné jsou obecnější nástroje pro zvýšení produktivity.
Instalace Vundle je snadná. Nejprve budete muset nainstalovat systém pro správu verzí Git. Pokud jej ještě nemáte, nainstalujte jej. Příkaz pro to v Ubuntu je následující:
sudo apt-get install git
Poté budete muset naklonovat repozitář Vundle na svůj místní počítač. To je jednodušší, než se zdá. Stačí spustit následující příkaz a nezapomeňte, že se rozlišují malá a velká písmena.
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
Poté přidejte do svého souboru Vim dot následující řádky.
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'L9'
call vundle#end()
filetype plugin indent on
Mezi příkazy „Vundle#Begin()“ a „Vundle#End()“ přidáte balíčky, které chcete nainstalovat. Jediný povinný je „VundleVim/Vundle.vim“, ale rozhodl jsem se nainstalovat také „L9“ pro účely ilustrace instalace balíčků třetích stran.
Po přidání těchto řádků do konfiguračního souboru Vimu musíte udělat ještě jednu věc. Ukončete svůj bodový soubor Vim a otevřete nový textový dokument. V příkazovém režimu spusťte příkaz „:PluginInstall“.
Pokud se to podařilo, bude to vypadat trochu takto.
Změna vzhledu
Mnoho textových editorů (například jeden z mých oblíbených – iA Writer) umožňuje přepínat mezi tmavším, „nočním“ režimem a denním režimem. Vim není výjimkou.
Chcete-li změnit barevné schéma, jednoduše přidejte do svého souboru dot „colorscheme“ s motivem, který chcete používat. Mělo by to vypadat takto.
colorscheme darkblue
Zde používám „darkblue“, jak navrhl Wyatt Andersen na Twitteru. Na výběr jsou jich samozřejmě desítky.
Chcete-li se přesvědčit, zda to funguje, znovu otevřete Vim a vizuálně to potvrďte.
Plácněte na sebe SPF13
Pokud se necítíte dostatečně jistí na to, abyste upravovali dotfile Vimu, existuje jednodušší způsob. SPF13 je distribuce Vimu, která je dodávána s předpřipravenými zásuvnými moduly a úpravami dotfile, které potřebujete k tomu, abyste se stali produktivními vývojáři. Její instalace v systémech Linux, FreeBSD a OS X je pozoruhodně jednoduchá. Stačí otevřít terminál a spustit:
curl http://j.mp/spf13-vim3 -L -o - | sh
Pak jej nechte dělat, co má. Jakmile skončí, budete mít nainstalovaný Vim s turbodmychadlem. Pokud používáte Windows, přečtěte si návod na webu SPF13.
Použití SPF13 vám však nebrání v tom, abyste si Vim nakonfigurovali podle svých představ. Stačí upravit bodový soubor .vimrc podle potřeby.
Chyby se stávají
Stojí za zmínku, že pokud uděláte chybu v bodovém souboru Vim, Vim vás na to upozorní pomocí užitečných ladicích zpráv.
Pokud máte problémy s jejich pochopením, skvělým místem, kde můžete požádat o pomoc, je StackOverflow a subreddit Vim. Stačí věnovat pozornost těmto jednoduchým radám, abyste zvýšili šanci, že vaše otázka bude zodpovězena.
Přejeme vám
Vim je pozoruhodný textový editor. Jednou z jeho skvělých vlastností je to, že vám umožňuje nastavit si ho podle svých představ. Do Vimu můžete také přidávat funkce z jiných textových editorů. Pokud se chcete více inspirovat, vřele doporučuji přečíst si vynikající knihu Learn VimScript The Hard Way od Steva Loshe.