vim na ex

Editor vi, p°edek vim, vznikl jako druhß tvß° editoru ex. Jednalo se o jeden program, kter² m∞l dv∞ jmΘna a jim p°φslu╣ejφcφ dva druhy chovßnφ. Spustil-li se jako vi, pracoval v celoobrazovkovΘm re╛imu. Pokud jste jej zavolali pod jmΘnem ex, pracoval jako editor °ßdkov².

I v souΦasnΘm vim z∙stala zachovßna mo╛nost pou╛φvat p°φkazy p∙vodnφho ex. Budou vßm pravd∞podobn∞ p°ipadat zvlß╣tnφ, proto╛e °ßdkovΘ editory ji╛ ukonΦily svou pou╗ poΦφtaΦov²m sv∞tem a tento pojem dnes mßlokomu n∞co °φkß. Jednalo se o interaktivnφ editory, v nich╛ jste se ale nepohybovali p°φmo v textu. Mφsto toho jste editaΦnφ operace °φdili z jakΘhosi ovlßdacφho panelu. Zadßvali jste p°itom p°φkazy typu "p°esu≥ se na °ßdek 10", "sma╛ 3 °ßdky", "nahra∩ na aktußlnφm °ßdku slovo Ivßnek slovem Ivan", "zobraz 5 °ßdk∙" a podobn∞.

Do kategorie ex-p°φkaz∙ pat°φ r∙znΘ nastavovßnφ parametr∙, definice maker, prßce se soubory a podobn∞. Jist∞ si vzpomφnßte, ╛e jejich zadßvßnφ aktivujete z normßlnφho re╛imu dvojteΦkou a ukonΦujete bu∩ klßvesou [Enter] nebo [Esc] (pokud se rozhodnete akci odvolat).

EditaΦnφ p°φkazy ex

Malou skupinu ex-p°φkaz∙ tvo°φ tΘ╛ p°φkazy editaΦnφ. Z nich je masivn∞ pou╛φvßn jedin²: p°φkaz s (substitute), slou╛φcφ pro vyhledßvßnφ a nahrazovßnφ °et∞zc∙. V tΘto kapitole budu pou╛φvat jin² - p°φkaz d (delete), kter² likviduje °ßdky. Je toti╛ mnohem jednodu╣╣φ.

EditaΦnφ ex-p°φkazy majφ jednotn² tvar:

<°ßdky><p°φkaz><parametry>
╪ßdky stanovφ, kter²ch °ßdk∙ textu se bude t²kat. Nßsleduje urΦenφ p°φkazu, jen╛ mß b²t proveden. Ten m∙╛e ke svΘ Φinnosti vy╛adovat Φi se nechß ovlivnit jist²mi parametry. V tΘto kapitole se budu podrobn∞ji v∞novat pouze definici °ßdk∙.

Specifikace °ßdk∙

V nejjednodu╣╣φm p°φpad∞ m∙╛e zcela chyb∞t. Pak se p°φkaz t²kß pouze aktußlnφho °ßdku. Zadßnφm :d[Enter] tedy sma╛ete °ßdek, na n∞m╛ se prßv∞ nachßzφ kurzor.

Druhou jednoduchou mo╛nostφ je zadat po°adovΘ Φφslo danΘho °ßdku. Nap°φklad o odstran∞nφ devatenßctΘho °ßdku se postarß :19d (abych zkrßtil p°φkazy, budu s dovolenφm vynechßvat zßv∞reΦnou klßvesu [Enter]). Specißlnφ "Φφslo" p°edstavuje znak $, kter² oznaΦuje poslednφ °ßdek textu. Druhou specialitou je teΦka (.), kterß zt∞les≥uje aktußlnφ °ßdek.

Jak zji╣╗ovat Φφsla °ßdk∙? Pokud nepracujete z pomalΘho terminßlu, nejlep╣φ je nechat si trvale zobrazovat pozici kurzoru pomocφ :set ruler. V pravΘ Φßsti poslednφho °ßdku obrazovky se objevφ dvojice Φφsel, z nich╛ prvnφ je Φφslo °ßdku, na n∞m╛ se prßv∞ nachßzφ kurzor. Pokud toto zobrazovßnφ z n∞jakΘho d∙vodu nechcete zapnout, pou╛φvejte ke zji╣╗ovßnφ Φφsel CTRL-G.

Pom∞rn∞ Φasto pot°ebujete provΘst p°φkaz pro urΦitou skupinu °ßdk∙. V takovΘm p°φpad∞ je zadejte prost°ednictvφm intervalu, jeho╛ dolnφ a hornφ mez odd∞lte navzßjem Φßrkou. Tak╛e ke smazßnφ pßtΘho a╛ osmΘho °ßdku poslou╛φ :5,8d. M∙╛ete samoz°ejm∞ vyu╛φt i specißlnφ "Φφsla", tak╛e vymazßnφ textu od aktußlnφho °ßdku a╛ do konce souboru zajistφ :.,$d. V╣imn∞te si, ╛e mezi jednotliv²mi znaky se ned∞lajφ mezery.

V °ad∞ p°φpad∙ (zejmΘna p°i hledßnφ a nahrazovßnφ) chcete p°φkaz provΘst pro cel² soubor. Pak sßhn∞te po specißlnφm znaku %, kter² na mφst∞ definice °ßdk∙ slou╛φ jako zkratka za 1,$. P°φkaz tudφ╛ zasßhne cel² text.

Nejlah∙dkov∞j╣φ konstrukcφ je zadat Φφslo °ßdku prost°ednictvφm vyhledßvßnφ. Mφsto prostΘho Φφsla m∙╛ete toti╛ uvΘst /°et∞zec/ a p°φkaz se bude t²kat nejbli╛╣φho nßsledujφcφho °ßdku, obsahujφcφho uveden² °et∞zec. Obdobn∞ ?°et∞zec? vyhledßvß sm∞rem k zaΦßtku souboru. Chcete-li tedy smat nejbli╛╣φ nßsledujφcφ komentß° v jazyce C, pou╛ijte :/\/*/,/*\//d.

V╣imn∞te si, ╛e lomφtko zde mß funkci specißlnφho znaku (ukonΦuje hledan² v²raz). Pokud se mß vyskytnout uvnit° hledanΘho textu, je t°eba p°ed nφm uvΘst zp∞tnΘ lomφtko, aby se tento specißlnφ v²znam potlaΦil. Proto se zaΦßtek komentß°e /* zapisuje ve tvaru \/* a konec analogicky.

A na zßv∞r n∞co pro lφnΘ. Nejpohodln∞j╣φm (a Φasto i nejrychlej╣φm) zp∙sobem k zadßvßnφ rozmezφ °ßdk∙, jich╛ se mß p°φkaz dotknout, je vizußlnφ re╛im. Prost∞ si vyberte dotyΦn² text a stiskn∞te :. Ve spodnφm °ßdku se objevφ rozsah °ßdk∙ '<'>, co╛ znamenß "od prvnφho do poslednφho vybranΘho °ßdku".

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