Mnohokrát, najmä pri prispôsobiteľných softvérových stackoch, existujú aspekty alebo funkcie softvéru, ktoré by sme chceli mať spravené inak. Našťastie, pri používaní open-source softvéru môže byť nakonfigurovanie daného softvéru podľa našich predstáv otázkou niekoľkých (sto) stlačení kláves. To nie je nič nové. V skutočnosti je to jeden z kľúčových predajných argumentov open-source softvéru.

Sú situácie, keď nejaký softvérový nástroj, ktorý používame, má nejakú vadu, ktorá nás dlho otravuje, ale celkovo funguje dostatočne dobre, takže neuvažujeme o tom, že by sme strávili čas učením sa, ako to skutočne opraviť. To zvyčajne pokračuje, kým sa nestane jedna z týchto vecí:

  1. Prestaneme ten softvér používať
  2. Problém sa stane neznesiteľným a sme nútení ho opraviť
  3. Narazíme na riešenie a je prekvapivo jednoduché

Tretí bod je presne to, čo tu chcem predstaviť. Pozrite si nasledujúci screenshot funkcie fzf.vim využívajúcej ripgrep na fuzzy vyhľadávanie v celom projekte:

Screenshot showing fzf.vim with ripgrep focusing on a file name without much useful information

Teraz pozrite rovnaké vyhľadávanie, ale s vylúčenými názvami súborov z výsledkov:

Screenshot showing fzf.vim with ripgrep focusing on an actual search term contained within files

Nekonečne užitočnejšie! Stále sa čudujem, prečo toto nie je predvolené správanie, ale nič. Skutočne ma to prestalo baviť, tak som hľadal opravu a ukázalo sa, že je celkom jednoduchá:

command! -bang -nargs=* Rg call fzf#vim#grep("rg --column --line-number --no-heading --color=always --smart-case ".shellescape(<q-args>), 1, {'options': '--delimiter : --nth 4..'}, <bang>0)

Vložte vyššie uvedené do svojho .vimrc súboru a ste pripravení! Pre tých, ktorí sa pýtajú prečo alebo ako to funguje, pozrite odkazy nižšie. Skutočne by som si prial, keby som to našiel skôr. Dúfam, že vám to nejako pomôže spraviť vaše písanie/vývoj vo vime trochu jednoduchším. Užite si to!

Odkazy #