![]() |
Formátování textuAbych předešel případnému nedorozumění, předem vyjasním pozice. vim je ASCII editor, nikoli typografický nástroj. V této části budu proto mluvit o formátování textu, tedy uspořádání jednotlivých znaků do řádků a sloupců. Nebudu se zabývat sazbou, čili estetickou úpravou textu, která vyžaduje práci s proporcionálním písmem, jeho různými druhy a velikostmi. V oblasti sazby nemá vim co nabídnout. Může posloužit pouze jako nástroj k editaci zdrojových textů pro specializované typografické programy, jako je třeba TeX. Sám ho používám právě tímto způsobem.Pravý okraj a jeho dodržováníPůvodní vi byl navržen především k vytváření zdrojových textů programů. V nich bývají řádky krátké a proto problém hlídání pravého okraje nebyl nijak zvlášť palčivý. Pro editaci běžných textů je však tato vlastnost nezbytná.Ve vim lze nastavit šířku řádku (čili polohu pravého okraje) pomocí
kde šířka udává počet znaků na řádku. Implicitní hodnotou je nula, při
níž vim pravý okraj nehlídá a řádky mohou být široké, co hrdlo ráčí.
Jakmile do textwidth uložíte nenulovou hodnotu, začne
se editor starat o pravý okraj. Dělá to obvyklým způsobem. Jakmile jej při
psaní překročíte, vyhledá poslední mezeru od konce řádku, v jejím místě řádek
ukončí a slovo, které právě píšete, přesune na začátek dalšího.
Při zápisu se může uplanit též automatické odsazování. Zapnete je pomocí Změna formátováníPři úpravách textu snadno docílíte toho, že řádek překročí pravý okraj nebo se naopak neúměrně zkrátí. V takových případech přichází ke slovu přeformátování, které text znovu uspořádá v rámci současných okrajů.
Základním příkazem pro přeformátování části textu je
Speciálním případem je kombinace
Zarovnání textuKromě nejběžnějšího formátování, dodržujícího předepsaný pravý okraj, můžete použít ještě několik méně obvyklých způsobů. Všechny se vyvolávají v podobě ex-příkazů a týkají se proto vždy skupiny řádků:
:right a :center můžete jako
parametr stanovit šířku řádku, která se má při formátování použít. Například
centrování pro řádek o šířce 50 znaků zajistí příkaz
Pokud údaj chybí, použije se aktuální hodnota textwidth a jestliže je nulová, použije vim šířku
obrazovky či okna. Zadáte-li číselný parametr příkazu :left , bude pochopen jako počet mezer, které má vložit před
každý přeformátovaný řádek. Implicitní hodnotou je nula.
© 1997, 1998 Pavel Satrapa |