GNU/Linux >> Znalost Linux >  >> Linux

Užitečné pluginy editoru Vim pro vývojáře softwaru - část 3:a.vim

Až dosud jsme v této sérii článků pokrývajících zásuvné moduly související s programováním pro Vim diskutovali o základech instalace zásuvných modulů Vim pomocí správce zásuvných modulů Pathogen a věnovali jsme se celkem třem zásuvným modulům – jmenovitě Tagbar, delimitMate a Syntastic. Nyní, v této třetí a poslední části, probereme další velmi užitečný plugin nazvaný a.vim .

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.

A.vim

Pokud se zabýváte vývojem softwaru a pracujete s programovacími jazyky jako C a C++, budete souhlasit s tím, že je prakticky nemožné říct, kolikrát musíte přepínat mezi zdrojovými a hlavičkovými soubory. Chci tím říct, že je to velmi základní úkol, který se provádí velmi často.

I když je snadné přepínat mezi soubory při použití IDE založeného na GUI (protože stačí udělat pár kliknutí myší), věci se trochu znesnadňují, pokud používáte IDE příkazového řádku, jako je Vim. Jak jste však již uhodli, existuje plugin – nazvaný a.vim – který vám usnadňuje život, zejména pokud jde o přepínání mezi zdrojovými a hlavičkovými soubory.

Než přejdeme k použití, stojí za zmínku, že proces instalace tohoto pluginu se liší od způsobu, jakým instalujeme ostatní pluginy popsané v této sérii článků. V tomto případě jsou uvedeny následující kroky:

  • Nejprve si musíte stáhnout několik souborů (a.vim a alternative.txt), což můžete provést kliknutím sem.
  • Dále vytvořte následující adresáře:~/ .vim/bundle/avim , ~/ .vim/bundle/avim/doc , ~/ .vim/bundle/avim/plugin a ~/ .vim/bundle/autoload.
  • Po vytvoření adresáře vložte a.vim do ~/.vim/bundle/avim/plugin a také ~/.vim/bundle/autoload a alternativní.txt do ~/.vim/bundle/avim/doc .

A je to. Pokud jsou všechny výše uvedené kroky úspěšně dokončeny, plugin se nainstaluje do vašeho systému.

Použití pluginu je velmi jednoduché:Vše, co musíte udělat, je spustit :A příkaz - pokud je aktuální soubor zdrojovým souborem (řekněme test.c), plugin za vás otevře odpovídající hlavičkový soubor (test.h) (platí to i naopak).

Je zřejmé, že ne pokaždé existuje odpovídající soubor se stejným názvem. V těchto případech spusťte :A vytvoří nový soubor s tímto názvem. Pokud například test.h neexistuje, vytvoří se a otevře se soubor s tímto názvem.

V případě, že chcete toto chování zakázat, můžete nastavit g:alternateNoDefaultAlternate proměnnou (přidejte jí nenulovou hodnotu) v .vimrc soubor přítomný ve vašem domovském adresáři.

Pokračujeme, je docela normální odkazovat také na neodpovídající soubor záhlaví ze zdrojového souboru. Pokud jste například v test.c a chcete přepnout na jiný soubor záhlaví (řekněme mem.h) a ne test.h, můžete to provést spuštěním :IH příkaz ve Vim. Netřeba dodávat, že budete muset nahradit skutečným názvem souboru, který potřebujete otevřít.

Až dosud jakákoli funkce, o které jsme hovořili, předpokládala, že soubor, který chcete otevřít, je přítomen ve stejném adresáři jako aktuální soubor. Jak však souhlasíte, není tomu tak vždy. Chci tím říct, že v mnoha projektech umístění zdrojových souborů a odpovídajících hlavičkových souborů není vždy stejný adresář.

Chcete-li takové situace zvládnout, musíte použít g:alternateSearchPath variabilní. Oficiální dokumentace o této proměnné říká:

"Tento plugin umožňuje konfiguraci vyhledávací cesty, kterou používá k nalezení zdrojových a hlavičkových souborů. Vyhledávací cesta je určena nastavením proměnné g:alternateSearchPath. Výchozí nastavení je následující:"  

g:alternateSearchPath = 'sfr:../source,sfr:../src,sfr:../include,sfr:../inc' 

"To znamená, že odpovídající soubor bude hledán v ../source, ../src. ../include a ../inc all vzhledem k aktuálnímu souboru, ze kterého se přepíná. Hodnota proměnné g:alternateSearchPath je jednoduše čárkami oddělený seznam předpon a adresářů. Předpona „sfr:“ označuje, že cesta je relativní k souboru. Další předpony jsou „wdr:“, což znamená, že adresář je relativní k aktuálnímu pracovnímu adresáři a „abs:“ což znamená, že cesta je absolutní. Pokud není zadán žádný prefix, předpokládá se „sfr:“.

Pokud vás všechny výše uvedené funkce tohoto pluginu přiměly k „wow“, řeknu vám, že to není vše. Další mimořádně užitečnou funkcí, kterou plugin nabízí, je možnost rozdělit obrazovku Vim tak, aby bylo možné současně prohlížet zdrojový i odpovídající soubor záhlaví.

Navíc můžete obrazovku rozdělit vodorovně i svisle, podle toho, co vám nejlépe vyhovuje. Použijte :AS příkaz pro horizontální rozdělení obrazovky a :AV příkaz pro vertikální rozdělení.

Použijte :A příkaz pro přepínání mezi otevřenými soubory.

Plugin také umožňuje otevřít odpovídající soubor na samostatné kartě ve stejném okně Vim. Můžete to provést spuštěním :AT příkaz.

Samozřejmě jako :AV , :AS a :AT , můžete použít :IHV , :IHS a :IHT také příkazy.

Závěr

I když je k dispozici mnoho zásuvných modulů Vim souvisejících s programováním, ty, o kterých jsme hovořili v této třídílné sérii, by vám měly stačit k tomu, abyste si udělali představu o tom, jak výkonný se editor stane, pokud máte pro práci s vývojem softwaru povoleny správné zásuvné moduly. .

Tady jsme se samozřejmě zaměřili pouze na programovací část. Pro ty z vás, kteří používají Vim jako svůj každodenní textový editor, byste měli vědět, že je k dispozici nepřeberné množství pluginů, které rozšiřují funkce pro úpravy textu Vim a ještě vylepšují. Tuto diskuzi si ale necháme na jindy.


Linux
  1. vifm:Prohlížeč souborů terminálu pro milovníky hardcore Vim

  2. Třídit část souboru?

  3. Textový editor Vem – Alternativní rozložení příkazů pro Vim

  1. 10 užitečných triků příkazového řádku Linux pro nováčky – část 2

  2. Sudoedit Vim Force Write (aktualizace) bez ukončení?

  3. Potřebujete dobrý hex editor pro Linux

  1. Jak uložit soubor ve Vim / Vi a ukončit editor

  2. Užitečné pluginy editoru Vim pro vývojáře softwaru – část 1

  3. Užitečné pluginy editoru Vim pro vývojáře softwaru - část 2:Syntastic