Portál AbcLinuxu, 8. května 2025 14:34
Pokusil jsem se trochu víc porozumět editoru VI. Tomu prastarému, ale stále funkčnímu.Mám rád VI a následně i jeho klon VIM. Jenže přeci jen umět VI je ještě o něco víc složitější protože je skutečně starý a chybí mu zdánlivě mnoho do VIM. Jenže občas zjišťuji, že mnohé věci jak se jeví, nejsou jak se jeví.
Myslel jsem si například,že ve VI je oproti VIM problém s formátováním. Bylo mi divné,že by autoři se nepokusili alespoň trochu ten nedostatek napravit. Probrouzdal jsem net a zjistil, že existuje zajímavý příkaz,
fmtkterý správně namapovaný. Asi takhle
map .w :1,$!fmt -w 72dokáže ještě rychleji a pohodlněji než příkaz
ggVGgqve VIM formátovat celý soubor. Samozřejmě za předpokladu, že máte v v .exrc správně nastavené
set wrapmargin=72Pokud ano, tak potom jedno klepnutí na .w a následný Enter vám zformátuje celý soubor jako už uvedený „ggVGgq”
=Úspěch mě potěšil a nedalo mi a pokračoval jsem dál a zjistil jsem ke radosti, že existuje další možnost jak zformátovat odstavec za pomoci příkazu
!} fmt -w 72jednotlivý odstavec. Což se pochopitelně dá použít ve VIM taktéž. Takže se celý proces podstatně zrychlí. Je na jedinci každém jaké mapování zvolí, ale mě tohle v obou editorech skutečně bezproblémově funguje. Jak ve .vimrc, tak v .exrc.
map .w :1,$!fmt -w 72
map z :sh
map , :w!
map ,w :wq!
map .q :q!
map ; :r
map " :e
map L mz}
map f mz{
map F !} fmt -w 72
Sice jsem musel trošku dumat nad tím, jak neudělat chybu a nepřiřadit základní příkazové klávesy, abych v tom neměl guláš, ale nakonec po menším zkoušení jsme vymyslel, co jsem vymyslel. Strávil jsem nad tím vlastně celý večer.Ale bavil jsem se. Konečně jako i jindy se bavím. Unix, potažmo VI a VIM jsou zdrojem neutuchající zábavy. Vzhledem ke skutečnosti, že jsem celý proces výzkumu provozoval na FreeBSD zjistil jsem že pro mne jako pro neprogramátora je docela pohodlné si nainstalovat cs-aspell, udělat si v „.bashrc”
alias as="aspell -c"a v klidu za pomoci
:shse přepnout do shellu, pak si průběžně dělat kontrolu pravopisu. (Stále mluvím o VI). Poté příkazem
exitnebo
Ctr-DPak se vrátit do bufferu a pokračovat v psaní. Není to zas až tak nepohodlné. Ve Slackware jsem nainstalovall ispell-cz. Je jasné,že přímá kontrola pravopisu ve VIM 7 je pohodlnější, ale i takhle lze aspell poměrně pohodlně použít.
Nemyslím, že kvůli VI opustím VIM, ale přesto jsem si s tím pohrál
abych si vlastně uvědomil, co vše je ve VI a především VIM na dosah,
jaké pohodlí a výkon. VI a UNIX rulez... Psáno ve VI. Stále je co se učit. I když je to jen libůstka.
Tiskni
Sdílej:
VI a UNIX rulez...
To jsou dva odlišné výroky. S druhým z nich částečně souhlasím, s prvním ostře nesouhlasím. Jsem totiž typický zástupce lidského rodu. Kdybych byl android, souhlasil bych nejspíš s oběma tvrzeními.
map .w :%!fmt -w ${WRAPMARGIN:-72}
% ... celý súbor, v príkaze sa expanduje za meno súboru (napr :!chmod u+w %
)
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.