Discussion:
font-os kerdes
Kosa Attila
2005-09-15 06:55:06 UTC
Permalink
Hello!
Van egy C++-ban irott program, amely egy tvision-szeru library-t
hasznal, es egy sajat fuggvennyel oldottak meg a tobbnyelvuseget.
A programhoz mellekeltek sajat fontot, keymap fajlt. Vannak
dinamikus library-k, amelyek a tvision-hoz kotodnek. Ha a
binarist a strings programmal megnezem, akkor a menupontok es az
osszes szoveg helyesen latszik. Ha strace-szel futtatom a
programot, akkor a kapott logban a write fuggveny parametereben
(amely irna a kepernyore) mar az é betu helyett ~B latszik (1
helyett 2 karakter). A kepernyon is a ~B jelenik meg (persze
elrontva ezzel a kepernyot). Ha shell-ben ekezetes betut
szeretnek irni, akkor mindenfele erdekes szamokat kapok csak,
sot, minden betu ugyanoda irodik (tehat nem egymasutan, hanem
mindig ugyanarra a helyre), mintha escape szekvencia lenne benne
(de a kodok valtoznak, tehat kulonbozo ekezetes betuhoz kulonbozo
kod tartozik). Ekezetes szoveget tartalmazo fajlt cat-tal nezve
viszont helyesen latszanak az ekezetek (az é betu is).

Ami erdekes meg: SuSE 9.0 alatt jol mukodik ez a program,
helyesen jeleniti meg az osszes ekezetes betut.

Nem all modomban belenyulni a programba, megis szeretnem, ha
jol jelennenek meg nalam is a betuk (Debian Sarge).

Hogyan tudnam kideriteni, hogy hol romlik el a dolog, es/vagy mi
okozhatja a problemat?
--
Udvozlettel
Zsiga
Milus János
2005-09-15 07:56:31 UTC
Permalink
Post by Kosa Attila
Ami erdekes meg: SuSE 9.0 alatt jol mukodik ez a program,
helyesen jeleniti meg az osszes ekezetes betut.
Vesd ossze a Suse LANG es konzol-font beallitasait a debianeval.
Valoszinuleg az egyik ISO-8859-XX lesz a masik med UTF-8.
--
Üdv:
Jo-Hans
Kosa Attila
2005-09-15 08:41:15 UTC
Permalink
Post by Milus János
Post by Kosa Attila
Ami erdekes meg: SuSE 9.0 alatt jol mukodik ez a program,
helyesen jeleniti meg az osszes ekezetes betut.
Vesd ossze a Suse LANG es konzol-font beallitasait a debianeval.
Valoszinuleg az egyik ISO-8859-XX lesz a masik med UTF-8.
A locale parancs ugyanazt adja vissza mindket gepen.

SuSE alatt igy nez ki a /etc/sysconfig/console fajl:
CONSOLE_FONT="sygma.fnt"
CONSOLE_UNICODEMAP=""
CONSOLE_SCREENMAP="sygma"
CONSOLE_MAGIC="(B"
FB_MODULES=""
FBSET_PARAMS=""
CONSOLE_ENCODING="ISO-8859-1"

Debian alatt pedig igy a /etc/console-tools/config:
SCREEN_FONT=sygma.fnt
SCREEN_FONT_MAP=sygma
BLANK_TIME=30
BLANK_DPMS=off
POWERDOWN_TIME=30

A (SuSE alatti) CONSOLE_ENCODING-ot Debian alatt hogyan tudom
ellenorizni? Beallitani gondolom a locales paranccsal kell...

A fontok kezelese sem teljesen vilagos :) SuSE alatt a
/etc/sysconfig/keyboard fajlban ez van:
KEYTABLE="sygma.kmap"
KBD_RATE=""
KBD_DELAY=""
KBD_NUMLOCK="bios"
KBD_SCRLOCK="no"
KBD_CAPSLOCK="no"
KBD_DISABLE_CAPS_LOCK="no"
KBD_TTY="tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty12 tty13 tty14 tty15 tty16 tty17 tty18 tty19 tty20"
COMPOSETABLE="clear winkeys shiftctrl latin1.add"
YAST_KEYBOARD="english-us,pc104"

De ha a KEYTABLE sorban megadott sygma.kmap fajlt berakom Debian
alatt a /etc/console konyvtarba (bootime.kmap.gz neven, tomoritve
persze az eredetit), akkor a kovetkezo hibauzenetet kapom a boot
folyaman:

Setting up console font... Cannot (yet) load a non-seekable RAW file
read_simple_font(): Invalid argument
failed.
--
Udvozlettel
Zsiga
Rizsányi Zsolt
2005-09-15 09:32:12 UTC
Permalink
Post by Kosa Attila
Post by Milus János
Post by Kosa Attila
Ami erdekes meg: SuSE 9.0 alatt jol mukodik ez a program,
helyesen jeleniti meg az osszes ekezetes betut.
Vesd ossze a Suse LANG es konzol-font beallitasait a debianeval.
Valoszinuleg az egyik ISO-8859-XX lesz a masik med UTF-8.
A locale parancs ugyanazt adja vissza mindket gepen.
Es mi az amit kiir? UTF-8 vagy ISO?
Igaz, hogy ugyanaz, de attol meg fontos lehet, hogy melyik.

Szerintem kulonben a problema az encodinggal van es nem a fontokkal, mert
ha font lenne akkor egy karakterbol nem csinalna kettot (az az encoding
ugyekre jellemzo).

Udv
Zsolt
Kosa Attila
2005-09-15 09:51:19 UTC
Permalink
Post by Rizsányi Zsolt
Post by Kosa Attila
A locale parancs ugyanazt adja vissza mindket gepen.
Es mi az amit kiir? UTF-8 vagy ISO?
LANG=hu_HU
LC_CTYPE="hu_HU"
LC_NUMERIC="hu_HU"
LC_TIME="hu_HU"
LC_COLLATE="hu_HU"
LC_MONETARY="hu_HU"
LC_MESSAGES="hu_HU"
LC_PAPER="hu_HU"
LC_NAME="hu_HU"
LC_ADDRESS="hu_HU"
LC_TELEPHONE="hu_HU"
LC_MEASUREMENT="hu_HU"
LC_IDENTIFICATION="hu_HU"
LC_ALL=hu_HU
--
Udvozlettel
Zsiga
Sickboy
2005-09-15 10:14:26 UTC
Permalink
Post by Kosa Attila
Post by Rizsányi Zsolt
Post by Kosa Attila
A locale parancs ugyanazt adja vissza mindket gepen.
Es mi az amit kiir? UTF-8 vagy ISO?
LANG=hu_HU
LC_CTYPE="hu_HU"
LC_NUMERIC="hu_HU"
LC_TIME="hu_HU"
LC_COLLATE="hu_HU"
LC_MONETARY="hu_HU"
LC_MESSAGES="hu_HU"
LC_PAPER="hu_HU"
LC_NAME="hu_HU"
LC_ADDRESS="hu_HU"
LC_TELEPHONE="hu_HU"
LC_MEASUREMENT="hu_HU"
LC_IDENTIFICATION="hu_HU"
LC_ALL=hu_HU
dpkg-reconfigure locales

es latszik, hogy 2 fele HU locale van. UTF-8 meg ISO-8859-2, gondolom
neked az utobbi kene, de mindenesetre probald a masikat, mint ami eppen
van. :)
--
.SiCk of IT.
Salamon Attila
2005-09-15 10:14:27 UTC
Permalink
Post by Kosa Attila
Post by Rizsányi Zsolt
Post by Kosa Attila
A locale parancs ugyanazt adja vissza mindket gepen.
Es mi az amit kiir? UTF-8 vagy ISO?
LANG=hu_HU
...
Post by Kosa Attila
LC_ALL=hu_HU
A kolléga valószínűleg egy `grep hu_HU /etc/locale.gen`-re gondolt,
csak nem jól fejezte ki magát. :-)
Suse is áttért az utf8-ra, bár nem tudnám megmondani melyik
verziónál...
--
Sala
Rizsányi Zsolt
2005-09-15 10:27:47 UTC
Permalink
Post by Salamon Attila
Post by Kosa Attila
Post by Rizsányi Zsolt
Post by Kosa Attila
A locale parancs ugyanazt adja vissza mindket gepen.
Es mi az amit kiir? UTF-8 vagy ISO?
LANG=hu_HU
LC_ALL=hu_HU
A kolléga valószínűleg egy `grep hu_HU /etc/locale.gen`-re gondolt,
csak nem jól fejezte ki magát. :-)
Suse is áttért az utf8-ra, bár nem tudnám megmondani melyik
verziónál...
Nem pont arra gondoltam, ugyanis nalam ez van:
grep hu_HU /etc/locale.gen
hu_HU ISO-8859-2
hu_HU.UTF-8 UTF-8

Ezek utan minden user maga valaszthat, hogy azt adja meg a LANG-ban, hogy
LANG=hu_HU
vagy
LANG=hu_HU.UTF-8

Az egy masik kerdes, hogy csak egy user van a gepen, mert epp egy
notebook :)
No meg az is, hogy az /etc/locale.gen tartalma nelkul a LANG=hu_HU nem tul
sokat mond :)

Udv
Zsolt
Viragh Janos
2005-09-15 07:40:27 UTC
Permalink
Post by Kosa Attila
Hello!
Van egy C++-ban irott program, amely egy tvision-szeru library-t
hasznal, es egy sajat fuggvennyel oldottak meg a tobbnyelvuseget.
.........
Ami erdekes meg: SuSE 9.0 alatt jol mukodik ez a program,
helyesen jeleniti meg az osszes ekezetes betut.
Nem all modomban belenyulni a programba, megis szeretnem, ha
jol jelennenek meg nalam is a betuk (Debian Sarge).
Hogyan tudnam kideriteni, hogy hol romlik el a dolog, es/vagy mi
okozhatja a problemat?
Unicode support?
Üdv
VJ
Kosa Attila
2005-09-15 08:41:48 UTC
Permalink
Post by Viragh Janos
Post by Kosa Attila
Hogyan tudnam kideriteni, hogy hol romlik el a dolog, es/vagy mi
okozhatja a problemat?
Unicode support?
Egy picit bovebben kifejtened, hogy mire gondolsz?
--
Udvozlettel
Zsiga
Viragh Janos
2005-09-15 10:04:15 UTC
Permalink
Post by Kosa Attila
Post by Viragh Janos
Post by Kosa Attila
Hogyan tudnam kideriteni, hogy hol romlik el a dolog, es/vagy mi
okozhatja a problemat?
Unicode support?
Egy picit bovebben kifejtened, hogy mire gondolsz?
kb amit a többiek is írtak +
nálam a Fedora Core 4-ben a profile.d alatt ilyesmik vannak a nyelvi
beállításokkal kapcsolatban:
...
if [ -n "$LANG" ]; then
case $LANG in
*.utf8*|*.UTF-8*)
if [ "$TERM" = "linux" -a "`/sbin/consoletype`" = "vt" ]; then
[ -x /bin/unicode_start ] && /sbin/consoletype fg &&
unicode_start $SYSFONT $SYSFONTACM
fi
;;
...
lehet hasonlók után turkálni a megfelelő disztribokban
Üdv
VJ
Kosa Attila
2005-09-15 10:41:49 UTC
Permalink
Post by Viragh Janos
Post by Kosa Attila
Post by Viragh Janos
Unicode support?
Egy picit bovebben kifejtened, hogy mire gondolsz?
kb amit a többiek is írtak +
Kozben kiderult, hogy SuSE alatt ki kell kapcsolni a Unicode
supportot, hogy normalisan mukodjon a program. Sarge alatt ezt
hogyan lehet megtenni?
--
Udvozlettel
Zsiga
Sickboy
2005-09-15 11:20:46 UTC
Permalink
Post by Kosa Attila
Kozben kiderult, hogy SuSE alatt ki kell kapcsolni a Unicode
supportot, hogy normalisan mukodjon a program. Sarge alatt ezt
hogyan lehet megtenni?
Szerintem ugy, hogy nem .UTF8 localet adsz meg, hanem "simat"?
De ehhez az le kell legyen generalva (a nem utf8-as) !
--
.SiCk of IT.
Kosa Attila
2005-09-15 12:33:54 UTC
Permalink
Post by Sickboy
Post by Kosa Attila
Kozben kiderult, hogy SuSE alatt ki kell kapcsolni a Unicode
supportot, hogy normalisan mukodjon a program. Sarge alatt ezt
hogyan lehet megtenni?
Szerintem ugy, hogy nem .UTF8 localet adsz meg, hanem "simat"?
Eddig igy volt :(
--
Udvozlettel
Zsiga
Milus János
2005-09-15 15:13:42 UTC
Permalink
Post by Kosa Attila
Post by Sickboy
Post by Kosa Attila
Kozben kiderult, hogy SuSE alatt ki kell kapcsolni a Unicode
supportot, hogy normalisan mukodjon a program. Sarge alatt ezt
hogyan lehet megtenni?
Szerintem ugy, hogy nem .UTF8 localet adsz meg, hanem "simat"?
Eddig igy volt :(
Akkor próbáld meg a hu_HU.ISO-8859-2 -t megadni, meg persze
legeneráltatni ezeket a locale-okat is. Ha csak hu_HU-t adsz meg, akkor
az első hu_HU-t amit megtalál fogja használni.
--
Üdv:
Jo-Hans
Sickboy
2005-09-16 08:54:26 UTC
Permalink
Post by Kosa Attila
Post by Sickboy
Post by Kosa Attila
Kozben kiderult, hogy SuSE alatt ki kell kapcsolni a Unicode
supportot, hogy normalisan mukodjon a program. Sarge alatt ezt
hogyan lehet megtenni?
Szerintem ugy, hogy nem .UTF8 localet adsz meg, hanem "simat"?
Eddig igy volt :(
De le van generalva az a locale? (Az iso-8859-2 ?)
dpkg-reconfigure locales -t nezted?
--
.SiCk of IT.
Kosa Attila
2005-09-16 09:00:16 UTC
Permalink
Post by Sickboy
Post by Kosa Attila
Post by Sickboy
Szerintem ugy, hogy nem .UTF8 localet adsz meg, hanem "simat"?
Eddig igy volt :(
De le van generalva az a locale? (Az iso-8859-2 ?)
dpkg-reconfigure locales -t nezted?
Persze.
--
Udvozlettel
Zsiga
Loading...