Není pochyb o tom, že Vim je schopný programovací editor přímo z krabice, ale jsou to pluginy editoru, které vám pomohou z toho vytěžit maximum. V první části této série článků jsme diskutovali o několika pluginech Vim souvisejících s programováním (Tagbar a delimitMate). V tomto článku budeme pokračovat ve stejné cestě a budeme diskutovat o dalším užitečném pluginu Vim zaměřeném na vývojáře softwaru – Syntastic .
Vezměte prosím na vědomí, že všechny příklady, příkazy a pokyny uvedené v tomto tutoriálu byly testovány na Ubuntu 16.04 a verze Vim, kterou jsme použili, je 7.4.
Syntastické
Pokud vaše práce na vývoji softwaru zahrnuje práci s jazyky jako C a C++, je zbytečné říkat, že řešení chyb při kompilaci bude součástí vaší každodenní práce. Mnohokrát dochází k chybám při kompilaci kvůli nesprávné syntaxi použité ve zdrojovém kódu, protože vývojáři si je nevšimnou, když se jen dívají na kód.
Co když vám řeknu, že existuje plugin Vim, který poskytuje informace o syntaktických chybách, aniž byste museli kompilovat svůj kód? Ano, takový plugin existuje a jmenuje se Syntastic.
„Syntastic je plugin pro kontrolu syntaxe pro Vim, který spouští soubory prostřednictvím externí kontroly syntaxe a zobrazuje všechny výsledné chyby uživateli. To lze provést na vyžádání nebo automaticky při ukládání souborů,“ uvádí oficiální dokumentace pluginu. "Pokud jsou zjištěny syntaktické chyby, uživatel je upozorněn a je spokojený, protože nemusel kompilovat svůj kód nebo spouštět skript, aby je našel."
Instalace tohoto pluginu je podobná způsobu, jakým jsme nainstalovali ty, které byly popsány v první části – vše, co musíte udělat, je spustit následující příkazy:
cd ~/.vim/bundle/
git clone https://github.com/scrooloose/syntastic.git
Jakmile je plugin úspěšně nainstalován (to znamená, že výše uvedené příkazy jsou úspěšné), nemusíte dělat nic jiného - načte se automaticky při spuštění editoru Vim.
Nyní, abyste mohli plugin použít, otevřete soubor zdrojového kódu a uložte jej pomocí :w Příkaz Vim. Po velmi krátké pauze si všimnete, že syntaktické chyby – pokud nějaké – ve vašem kódu budou zvýrazněny. Například následující snímek obrazovky by vám měl poskytnout představu o tom, jak plugin upozorňuje na chyby:
Znak „>>“ na začátku řádku znamená, že došlo k problému s kódem napsaným na tomto řádku. Chcete-li vědět, o jakou chybu přesně jde, nebo o ní alespoň získat přibližnou představu, přesuňte kurzor na tento řádek – popis chyby se zobrazí ve spodní části okna Vimu.
Tímto způsobem tedy můžete vyřešit většinu chyb souvisejících se syntaxí, aniž byste museli kompilovat kód.
Pokračujte, pokud spustíte :Errors příkazu, zobrazí se popis všech chyb souvisejících se syntaxí v aktuálním zdrojovém souboru. Například spuštění :Errors příkaz v mém případě vyvolal následující informace:
Mějte na paměti, že informace :Chyby zobrazení příkazu se automaticky neobnovuje, což znamená, že i po vyřešení chyby bude její popis ve spodní části, dokud nespustíte :Errors příkaz znovu.
Stojí za zmínku, že existuje mnoho možností konfigurace, díky kterým je Syntastic ještě uživatelsky přívětivější. Do souboru .vimrc můžete například vložit následující řádek soubor, pokud chcete :Chyby příkaz k automatické aktualizaci výstupu pokaždé, když je chyba vyřešena:
let g:syntastic_always_populate_loc_list = 1
Dalším velkým omezením výchozího chování Syntastic je, že musíte spustit :w příkaz, aby plugin označoval chybné řádky - to je v pořádku při úpravě souboru, ale je to trochu divné, když jste právě otevřeli zdrojový soubor.
Chcete-li se ujistit, že Syntastic automaticky zvýrazní chyby při otevření souboru, přidejte do souboru .vimrc následující řádek soubor:
let g:syntastic_check_on_open = 1
Podobně pokud chcete, aby kurzor při ukládání nebo otevírání souboru přeskočil na první zjištěný problém, vložte do souboru .vimrc následující řádek:
let g:syntastic_auto_jump = 1
Existují dvě další hodnoty, které můžete přiřadit výše uvedené proměnné:2 a 3. Zde je to, co o těchto dvou hodnotách říká oficiální dokumentace:
"Když je nastaveno na 2, kurzor přeskočí na první zjištěný problém, ale pouze pokud je tento problém chybou," a "při nastavení na 3 kurzor přeskočí na první zjištěnou chybu, pokud nějaká existuje. Pokud jsou všechny zjištěné problémy varováním , kurzor nepřeskočí."
Následující informace by pro vás měly být také užitečné:
Použijte :SyntasticCheck k ruční kontrole“ na chyby. „Použijte :Chyby otevřete okno seznamu umístění a :lclose zavřít to. Seznam chyb můžete vymazat pomocí :SyntasticReset a můžete použít :SyntasticToggleMode pro přepínání mezi aktivní (kontrola při zápisu do vyrovnávací paměti) a pasivní (manuální) kontrolou."
Poznámka :Syntastic se neomezuje pouze na kód napsaný v C a C++. Podporuje také velký seznam dalších programovacích jazyků – přejděte sem a dozvíte se o něm více.
Závěr
Syntastic je nepochybně velmi užitečný plugin Vim, protože vás zbaví potíží s častou kompilací, přinejmenším pokud jde o chyby související se syntaxí. A nemluvě o tom, že ušetříte spoustu času.
Jak jste si všimli, Syntastic se stane ještě užitečnějším, jakmile nakonfigurujete některé z jeho hlavních možností. Abychom vám s tím pomohli začít, oficiální dokumentace obsahuje sekci „Doporučená nastavení“ – projděte si ji. Je zde také pěkná malá sekce FAQ pro případ, že narazíte na nějaké chyby nebo máte nějaké pochybnosti či dotazy.