dosemu-freedos és az Ó

Fórumok

Sziasztok,

már lerágtam az összes kefét és kínvallattam a guglit is, de nem találok megoldást arra a problémára, hogy dosemu (1.4.0.0) és freedos (0.84-pre2) alatt Ó betűt varázsoljak. Eddig hardyn és intrepiden próbálkoztam.

dosemu.conf-ban external_char_set "utf8", az internal_char_set "cp852", a layout pedig "hu". Az autoexec.bat-ban a szokásos codepage beállítások megvannak. Minden karakterem jön, kivéve azt a rohadt Ó-t.

Próbáltam a hu layout-tal is, xdosemu -I 'include "keymap/hu"' módon indítva. A 224-es kódú karaktert definiáltam a layout-ban a Ó billentyűre, egy csipogás az eredmény. Az érdekes az, hogy alt-224 et beütve simán előjön a dosemuban az Ó barátom.

Van valakinek valamilyen ötlete a probléma megoldására? Vagy van valaki, akinek valamilyen módszerrel jön az *összes* magyar karakter dosemuban 852-es kódlapot használva?

Hozzászólások

Külön X ablak, grafikus terminál vagy "mélykonzol"? Esetleg több is hibás?

A LANG és LC_* változók ugye UTF-8-asak?

Hasonló jelenséget másmilyen progikban akkor láttam, amikor valamelyik komponens nem tudja, hogy UTF-8-ról van szó, és Latin-1-ként továbbítja az adatokat. Például bizonyos programokat (talán lynx ilyen például) ncursesw helyett ncurses-hez fordítasz hozzá, akkor majdnem mindegyik ékezetes betűt jól írja ki, de egy-kettőt nem. (Az ncurses az alkalmazástól kapja az UTF-8-as szöveg byte-jait, azokat Latin-1-ként egyesével értelmezve továbbítja a terminál felé, a terminál meg újra összerakja őket UTF-8-ként, de a Latin-1-es továbbító egy-két speciális értéket másképp kezel.)

Azt gyanítom, hogy itt is hasonló hiba van, csak épp az inputnál. A nagy Ó betű specialitása a 0x93-as byte, ez semelyik másik magyar ékezetes betű UTF-8 ábrázolásában nincs benne. Ez a byte a Latin-1 szerint a "Set Transmit State", ennél bőbeszédűbb információra nem találtam rá.

Érdemes szerintem keresned egy másik ékezetes betűt, amiben van ilyen byte, és hozzá DOS kódlapot amiben benne van ez a betű, és megnézni, hogy az megy-e. Ha az sem, az alátámasztja azt a tippet, hogy valakinek valahol az inputként kapott 0x93 byte-tal van valami problémája. Persze jó kérdés hogy kinek és miért.

Külön X ablak, grafikus terminál vagy "mélykonzol"? Esetleg több is hibás?
Mindegyik rossz.

A LANG és LC_* változók ugye UTF-8-asak?
Igen.

Megpróbáltam görög kódlappal, ott van megfelelő karakter (0x93-al). Az sem megy. :(
Köszönöm a tippet, erre nem gondoltam. Ha minden igaz lemondhatok az Ó betűről.

A dosemu alatt tényleg jók az ékezetek, de nagyon belassítja a rendszert és egyes gépeken nem is lehet kilépni, így a cpu 100% körülire megy fel.