Nemal som vysoké nároky, stačila mi možnosť skákať v texte na základe nejakej obdoby A tagu v html. Prvé ma napadlo html, potom GNU info. Oba formáty su šikovné, no vyžadovali na môj vkus priveľa nepotrebného formátovania a externý prehliadač. Kedže mojím editorom je Vim, nemohol som nepostrehnút, že po zadaní
:help prikaz
dostanem rýchlu nápovedu na prikaz. Ak samozrejme nepoužívate Vim tak intenzívne ako ja, asi to nebude pre Vás to pravé orechové ;-). Tento článok ďalej vysvetľuje, ako si takýto help vytvoriť.
Budem vytvárať iba modelový help pre príkazy ps a ls. Okrem toho ešte stránku s obsahom. Doporučené umiestnenie súborov je v adresári ~/.vim/doc/ . Ďalšia možnosť je $VIMRUNTIME/doc , ale tu sa nachadzajú súbory originálneho Vim helpu a pri inštalácii novej verzie sa môže stať, že niektorý z Vašich súborov-pomocníkov bude prepísaný. Súbory majú koncovku .txt, aby ich rozpoznal Vim pri automatickom vytvoreni suboru tag-ov.
Dosť rečí, obsah.txt, ls.txt a ps.txt nasledujú, potom to vysvetlím:
---obsah.txt---
OBSAH: obsah
1. ls | |ls| |
2. ps | |ps| |
---ls.txt---
Ako pouzivat prikaz ls ls
ls -al
-a … vypise vsetky subory
-l … dlhy a nezrozumitelny ;-)
|obsah|
---ps.txt---
Ako pouzivat prikaz ps ps
ps -axuww
-axuww … vsetko mozne a cely nazov
|obsah|
--- koniec vypisov ---
Obidva subory obsahujú skoky. Text na ktorý chceme skočiť je uzatvorený v , konkrétne. ls, obsah, *ps. Takto to robí Vim help, Vy si môžete text označiť aj inak, ale budete si musiet ‚tags‘ súbor vytvorit ručne. Miesto skoku, link ( v html obvykle modrý a podčiarknutý text ) je vo Vim helpe obvykle označený PIPE symbolom z oboch strán. Napr. |obsah|, |ls|, |ps|. Nemusí to byť označené pajpami, stači aj text ls a skok sa uskutoční, no takto je zrejmé, že sa jedná o link.
Keď som spomenul ‚tags‘ súbor, asi by som vysvetliť, ako to skákanie vlastne sprevádzkovať.
V adresári, kde sú help súbory, musí byť súbor ‚tags‘. Súbor ma jednoduchú syntax:
tag subor.txt umiestnenie
Pričom tag je názov tag-u, subor.txt je súbor, v ktorom sa tag nachádza a umiestnenie je presná poloha v spomenutom súbore. V našom prípade by tags vyzeral takto:
ls | ls.txt | /ls |
obsah | obsah.txt | /obsah |
ps | ps.txt | /ps |
Možnosť použiť na označenie umiestnenia Ex príkazy nám prácu značne zjednodušuje. Stačí ako umiestnenie použiť príkaz na hľadanie textu : /text a miesto kam skočiť je presne označené. Mimochodom – súbor tags musí byť zoradený podľa abecedy, tu poslúži sort.
Teraz sa už ku svojmu obsahu dostanete príkazom vo Vim-e:
:help obsah
Súbor s tagmi si môžete podstatne jednoduchšie vytvoriť príkazom:
:helptags ~/.vim/doc
To platí iba v prípade, že Váš help sa nachádza v adresári ~/.vim/doc , ak používate označenie tagov pomocou hviezdičiek (ls) a Vaše súbory majú koncovku ‚.txt‘.
Ešte upozornenie. Všetky súbory s Vašimi helpmi sa musia nachádzať v jednom adresári. Nie je možné vytvárať adresárovú štruktúru. Tiež si treba dať pozor na možnú kolíziu názvov súborov a tag-ov s originálnym helpom. Celé je to jeden názvový priestor. Na tieto kolízie Vás :helptags upozorní, ale možno by bolo rozumné zaviesť si názvy v štýle X_obsah, X_ls alebo niečo podobné.
Snáď som nič nezabudol, možno som nemal považoval za samozrejmé, že viete ako sa pohybovať v helpe. Ak nie, viď:
:h help