http://www.kotelna.sk/keso/unix/vim.html
Ak nemôžete, alebo nechcete používať rozloženie kláves pre slovenčinu, ale potrebujete
zadať pár našich znakov vo Vim, dá sa to urobiť pomocou príkazu
imap. Jeho formát je
{lhs} je postupnosť znakov, po ktorých zadaní (v
krátkom časovom intervale) sa vypíše {rhs}.
Pre slovenčinu by sa dali využiť imap definície znakov typu
Ako vidno, je to niečo podobné ako compose sekvencie z kapitoly o klávesnici na konzole.
Po zadaní týchto príkazov môžete aj so štandardným rozložením kláves zadávať vo vim znaky s
diakritikou. Tu je kompletný zoznam imap definícií pre slovenskú diakritiku. Uložte ho do
súboru napríklad sk.vim a vo Vim ho načítate
príkazom
imap =a á
imap =A Á
imap +a ä
imap +A Ä
imap +c č
imap +C Č
imap +d ď
imap +D Ď
imap =e é
imap +e ě
imap =E É
imap +E Ě
imap =i í
imap =I Í
imap =l ĺ
imap =L Ĺ
imap +l ľ
imap +L Ľ
imap +n ň
imap +N Ň
imap =o ó
imap =O Ó
imap +o ô
imap +O Ô
imap "o ö
imap "O Ö
imap =r ŕ
imap =R Ŕ
imap +r ř
imap +R Ř
imap +s š
imap +S Š
imap +t ť
imap +T Ť
imap =u ú
imap =U Ú
imap +u ů
imap +U Ů
imap "u ü
imap "U Ü
imap =y ý
imap =Y Ý
imap +z ž
imap +Z Ž
|
Ján 'judas' Tomka, <judas@linux.sk>
V prípade, že potrebujete z textového súboru odstrániť diakritické znamienka, môžete
použiť program sed, pomocou ktorého nahradíte výskyt znaku s diakritikou
jeho ekvivalentom bez nej.
Ak chcete odstrániť diakritiku úplne, musíte nahradiť výskyt všetkých znakov s
diakritikou. Ak ale chcete len to, aby sa súbor zobrazoval správne pri prezeraní bez
zavedeného fontu latin 2, stačí nahradiť len tie znaky, ktoré sa nezobrazujú správne pre
štandardný font (spravidla latin 1).
Toto je príkaz, ktorý možno použiť pri vytváraní verzie súboru úplne bez diakritiky:
sed -e "s:á:a:g" -e "s:Á:A:g" -e "s:ä:a:g" -e "s:Ä:A:g" \
-e "s:č:c:g" -e "s:Č:C:g" -e "s:ď:d:g" -e "s:Ď:D:g" \
-e "s:é:e:g" -e "s:É:E:g" -e "s:ě:e:g" -e "s:Ě:E:g" \
-e "s:í:i:g" -e "s:Í:I:g" -e "s:ĺ:l:g" -e "s:Ĺ:L:g" \
-e "s:ľ:l:g" -e "s:Ľ:L:g" -e "s:ň:n:g" -e "s:Ň:N:g" \
-e "s:ó:o:g" -e "s:Ó:O:g" -e "s:ô:o:g" -e "s:Ô:O:g" \
-e "s:ö:o:g" -e "s:Ö:O:g" -e "s:ŕ:r:g" -e "s:Ŕ:R:g" \
-e "s:ř:r:g" -e "s:Ř:R:g" -e "s:š:s:g" -e "s:Š:S:g" \
-e "s:ť:t:g" -e "s:Ť:T:g" -e "s:ú:u:g" -e "s:Ú:U:g" \
-e "s:ů:u:g" -e "s:Ů:U:g" -e "s:ü:u:g" -e "s:Ü:U:g" \
-e "s:ý:y:g" -e "s:Ý:Y:g" -e "s:ž:z:g" -e "s:Ž:Z:g" \
"Slovak-HOWTO.sgml" > "Slovak-HOWTO-nodiac.sgml"
|
Braňo Katreniak
Keď sa zmieňujete o tom, ako sa dá odstrániť slovenčina z dokumentu, zdá sa mi vhodné
spomenúť aj program cstocs. Je to milá utilitka štandardne dodávaná s
TeXom. Umožňuje konverziu súborov prakticky všetkých možných
kódových stránok medzi sebou navzájom, pričom jedna z možností je aj odstránenie diakritiky.
Pričom sa mi to zdá pohodlnejšie ako sed.
Ján 'judas' Tomka, <judas@linux.sk>
Existuje aj program recode, ktorý pravdepodobne tiež slúži na zmeny v
kódovaní súborov. Určite ho použijete na tento cieľ, ak sa predtým nestane niektorá z
nasledujúcich vecí:
Prídete o oči pri čítaní man stránky, info manuálu a všetkého čo je o tomto --
inak určite užitočnom programe -- popísané.
Prídete o nervy pri skúšaní všetkých možných kombinácií parametrov, volieb či
argumentov pre tento nesmierne užitočný program.
Prídete o počítač, keďže ho vyhodíte z okna po dvoch týždňoch psychického
utrpenia, ktoré zažijete pri pokusoch s týmto extrémne užitočným programom.
Podľa všetkého by mal stačiť nasledovný príkaz:
ale zdá sa, že to stačiť nebude. Latka na titul
„Linuxový Guru“ sa posunula do
závratných výšok, pretože -- aby ste sa stali jeho nositeľom -- musíte vedieť pomocou tohto
programu previesť dokument v latin2 na latin1 alebo dokonca
ASCII (a to
už je pekný Saigon...)