mc - már megint nem értek valamit

2017.07.25. 17:02
Ez lett belőle: https://midnight-commander.org/ticket/3843

2017.07.25. 14:58
Pédául ezt a sort lehetne meghaxolni, hogy UTF-8 esetén már 128-tól szíveskedjen unikódolni:


edit.c:3359         if (char_for_insertion > 255 && !mc_global.utf8_display)

2017.07.25. 12:25
Van egy ilyen rész benne (miután lenyomtam egy 'é'-t):


charsets.c:474	    res = g_unichar_to_utf8 (input_char, (char *) str);

p/x input_char => 0xffffffe9
p   res        => 6
p/x str        => {0xff, 0xbf, 0xbf, 0xbf, 0xbf, 0xa9, 0x0}

Látunk-e itt hibát?!

Eredeti topiknyitó
Már megint nem értek valamit... Nyitok egy 8-bites terminálemulátort (dtelnet, putty, rxvt); LC_CTYPE=hu_HU.ISO-8859-2; mcedit-ben (4.8.19) a 'Choose codepage'-nél azt mondom, hogy UTF-8

Begépelem az árvíztűrő tükörfúrógép-et, mentem, kilépek, és ezt látom a fájlban:
árvízt@@r@@ tükörfúrógép (ezzel azt próbálom érzékeltetni, hogy csak az ő és ű van utf8-ban, mindenki más latin2.

Valamit kellene nyomozni az ügyben... Mindenesetre UTF8-as emulációnal (LC_CTYPE=hu_HU.UTF-8 beállítással) minden működni látszik.

Hozzászólások

Tovabbra is kulonadot szednek minden utf8-on kivuli karakterkodolast hasznalo/utf8-at nem tamogato es nem defaultolo megoldas keszitoitol.

Én egy időben cp1250-en álltam linuxon... nem volt jó, főleg ha 8859-2 és cp1250 között kellett szöveget kezelni. Pld telnet, ftp. Jó ám az utf valójában az összes megelőző kódlapot tartalmazza. Visszafelé csak az ascii rész a tutira kompatibilis vele, ha néhány latin ékezetes betű ugyanott van az csak a véletlen műve.

Egy nem ciril és nem kínai karakterekkel operáló operációs rendszer alapbeállítása: C (POSIX)
Ezt betartva még nagyobb rakás problémád szűnik meg.

A terminál az teljesen más, mert beállíhatsz text módnál cp1250, cp852 vagy iso8859-2 kódolást. Ekkor vígan írod/olvasod a magyar szövegeket is.

Minek mc?

--
arch,debian,retropie,osmc,android,windows