Editor p°φkazovΘho °ßdku

╚asto se vßm stane, ╛e byste cht∞li znovu pou╛φt n∞kter² z p°edchozφch Ex-p°φkaz∙. Nebo jej lehce upravit. ZejmΘna p°i lad∞nφ slo╛it∞j╣φch nahrazovacφch p°φkaz∙ je takovß pot°eba tak°ka bytostnß. vim nabφzφ pomocnou ruku.

Mß toti╛ vestav∞n editor p°φkazovΘho °ßdku. Chovß se tak, jak jsme u podobn²ch nßstroj∙ zvyklφ - umφ vyvolßvat d°φve pou╛φvanΘ p°φkazy, dovolφ vßm po nich ╣mejdit kurzorem a upravovat je a dokoce dovede i dopl≥ovat nßzvy soubor∙ Φi jin²ch objekt∙.

Zßkladnφmi nßstroji pro pohyb v historii p°φkaz∙ jsou klßvesy [╣ipka nahoru] a [╣ipka dol∙]. Jejich prost°ednictvφm m∙╛ete vyvolßvat star╣φ Φi nov∞j╣φ p°φkazy. Kapacita historie je dßna volbou history. Nap°φklad p°φkazem :set history=50 na°φdφte, aby si editor pamatoval padesßt p°φkaz∙.

Pokud napφ╣ete zaΦßtek p°φkazu a pak stisknete [╣ipku nahoru], bude vim nabφzet jen ty zapamatovanΘ p°φkazy, kterΘ zaΦφnajφ vßmi zadan²m °et∞zcem. Tφm lze putovßnφ historiφ podstatn∞ urychlit.

P°φklad:
╪ekn∞me, ╛e konvertujete skupinu soubor∙ z textovΘho formßtu MS DOSu do Unixu a nemßte po ruce nic vhodn∞j╣φho, ne╛ vim. Klasick²m postupem je spustit vim *.txt a pro ka╛d² ze soubor∙ pak provΘst trojici p°φkaz∙
:set notextmode
:w
:n
U prvnφho souboru je budete muset vypsat, ale u dal╣φch pak staΦφ ji╛ pouhß sekvence :s[╣ipka nahoru] a na p°φkazovΘm °ßdku se objevφ cel² p°φkaz :set notextmode. StejnΘho v²sledku dosßhnete trojφm stisknutφm klßvesy [╣ipka nahoru].
V rßmci °ßdku se pak m∙╛ete pohybovat kurzorov²mi klßvesami [doleva] a [doprava]. Chovßnφ editoru p°ipomφnß vklßdacφ re╛im. Pφ╣ete-li viditelnΘ znaky, vsouvajφ se do °ßdku, [Backspace] ma╛e znak p°ed kurzorem atd. atp.

Krom∞ p°φkazovΘho °ßdku m∙╛ete stejn² editor pou╛φvat i pro vyhledßvanΘ vzory, v²razy a vstupnφ °ßdky funkce input(). Ka╛dß z t∞chto Φty° kategoriφ mß svou vlastnφ historii a nemφchß se s ostatnφmi.

Dopl≥ovßnφ

Moc milou v∞ciΦkou je automatickΘ dopl≥ovßnφ nßzv∙ soubor∙, voleb a dal╣φch konstrukcφ. Nebudu dlouho chodit kolem horkΘ ka╣e a namlsßm vßs p°φkladem.
P°φklad:
Zadejte :e (za "e" je mezera) a stiskn∞te [Tab]. Editor pφpne a nabφdne vßm jmΘno prvnφho souboru z aktußlnφho adresß°e. Kdy╛ [Tab] opakujete, nabφzφ dal╣φ a dal╣φ soubory.
Klßvesa [Tab] toti╛ aktivuje automatickΘ dopln∞nφ prßv∞ rozepsanΘho slova. vim dovede dopl≥ovat
  • jmΘna p°φkaz∙
  • jmΘna hesel
  • jmΘna soubor∙
  • jmΘna voleb
Chovß se inteligentn∞ - dopl≥ovanΘ objekty vybφrß podle pozice, kde se momentßln∞ nachßzφ kurzor. Nap°φklad ve v²╣e uvedenΘm p°φkladu byl kurzor na pozici parametru p°φkazu :e, kter²m mß b²t jmΘno souboru. Proto se nabφzely nßzvy soubor∙. Kdybyste mφsto :e zahßjili p°φkaz :set , nabφzel by nßzvy voleb.

Kdy╛ zadßte poΦßteΦnφ znaky, nabφzφ editor pouze jmΘna, kterß zaΦφnajφ uveden²m °et∞zcem. Vyhovuje-li jedinΘ, bude dopln∞no. Jestli╛e existuje n∞kolik vyhovujφcφch alternativ, vim pφpne (aby upozornil, ╛e by cosi mohlo drhnout) a doplnφ prvnφ vyhovujφcφ jmΘno. Pokud vßm nevyhovuje, stiskn∞te [Tab] znovu a dostanete dal╣φ. A tak dßle po°ßd dokola.

Klßvesou Ctrl-D si vypφ╣ete v╣echna vyhovujφcφ jmΘna, tak╛e budete mφt p°ehled. Pomocφ Ctrl-N a Ctrl-P m∙╛ete poskakovat mezi jednotliv²mi mo╛nostmi.

AutomatickΘ dopl≥ovßnφ ve skuteΦnosti nenφ pevn∞ svßzßno s klßvesou [Tab]. Nap°φklad p∙vodnφ editor vi k tomuto ·Φelu pou╛φval Ctrl-E a stejn∞ se chovß i vim, pokud pracuje v (implicitnφm) kompatibilnφm re╛imu. Klßvesu, kterß mß aktivovat automatickΘ dopln∞nφ urΦuje volba wildchar. Nap°φklad po provedenφ :set wildchar=<F5> bude dopl≥ovat funkΦnφ klßvesa [F5].

<-- predchozi  [obsah]  dalsi -->
© 1997, 1998 Pavel Satrapa