Pro převod mezi kódováními češtiny můžete zde na FI použít tři způsoby:
Převod pomocí cstocs
Na fakultních strojích je v modulu cstools dostupný
program cstocs pro převod mezi jednotlivými kódováními češtiny.
Použití je následující:
Přidáme modul cstools: module add cstools.
cstocs 1250 il2 <prace.txt >prace.il2.txta v souboru prace.il2.txt máme náš soubor v kódování ISO-8859-2.
Jaké všechny druhy kódování cstocs umí? Zde je část manuálové stránky (celá
je dostupná pomocí příkazu man cstocs):
AVAILABLE ENCODINGS
ascii
This is 7-bit ASCII encoding. Can be used to strip
diacritic from characters.
il1 ISO-8859-1 (West European languages)
il2 ISO-8859-2 (East European languages)
cork Cork (T1) encoding used by TeX's DC fonts and by LaTeX
2e.
kam Kamenicky encoding (it was one of the most popuar
encodings in Czech/Slovak language space).
koi It is KOI8-cs encoding (very old).
vga Encoding used by standard IBM PC vga cards.
pc2 PC-Latin2 encoding, supported by M$-DOS.
1250 Encoding used by czech M$-Windows.
Protože cstocs pracuje se standardnim vstupem a vystupem, je mozne ho pouzit i v "rouře" příkazů:
skript_generujici_text | cstocs il2 1250 | lpr -Ptlj4
nebo se pro překódování může použít
Převod pomocí iconv
Na fakultních strojích je v základní instalaci dostupný
program iconv pro převod mezi jednotlivými kódováními, jejichž seznam obdržíte pomocí:
iconv -lSamotné použití
iconv je obdobné jako u cstocs. Zde je nápověda (více viz man iconv):
Použití: iconv [PŘEPÍNAČ...] [SOUBOR...]
Konvertuje zadané soubory z jednoho kódování do druhého.
Zadání vstupně/výstupního formátu:
-f, --from-code=NÁZEV kódování vstupního textu
-t, --to-code=NÁZEV výstupní kódování
Informace:
-l, --list vypíše všechny známé znakové sady
Řízení výstupu:
-c omit invalid characters from output
-o, --output=SOUBOR výstupní soubor
-s, --silent suppress warnings
--verbose vypisuje informace o průběhu
-?, --help Vypíše tuto nápovědu
--usage Vypíše krátký návod na použití
-V, --version Vypíše označení verze programu
nebo se pro překódování může použít
skript od L. Škarvady
K prevodu textu mezi ruznymi kodovanimi slouzi nasledujici prikazove soubory pro sed ulozene v adresari /packages/share/CHARSETS:
cork.ascii isolat1.ascii isolat2.koi8 koi8.ascii unix.dos cork.isolat1 isolat1.cork isolat2.pclat2 koi8.isolat2 cork.isolat2 isolat2.ascii kam.ascii koi8.kam dos.unix isolat2.cork kam.isolat2 pclat2.ascii hex-cork.kam isolat2.kam kam.pclat2 pclat2.isolat2
Pouzit je lze napr. pro prevod "Kamenicky do ISO 8859-2" nasledovne:
cat soubor.kam | sed -f /packages/share/CHARSETS/kam.isolat2 > soubor.isolat2
Pro usetreni psani lze do souboru ~/.kshrc pridat:
cnv () { if [ -z "$4" ]
then sed -f /packages/share/CHARSETS/$1.$2 $3
else sed -f /packages/share/CHARSETS/$1.$2 $3 >$4
fi
}
a psat uz jenom:
cnv kam isolat2 soubor.kam soubor.isolat2Informace o jednotlivych kodech najdete napr. zde.
Autorem skriptu je Libor Škarvada libor (at) fi.muni.cz.
fi
muni