Re: UTF8
- From
- Oleg Nosov (2:5030/952.11)
- To
- Stas Degteff
- Date
- 2005-11-27T14:19:08Z
- Area
- RU.UNIX.FTN
Привет, Stas!
27 ноя 05, 01:04. Stas Degteff -> Vadim Goncharov.
SD>>> Laurent Jumet спрашивает, как можно в Golded+ сделать
SD>>> перекодировку из юникода в ASCII. Я с этим кодом не разбирался,
SD>>> но похоже что таблица перекодировки всего 256 байт (символы
SD>>> 0-255) и в CHS-файле задать unicode для исходной кодировки
SD>>> нельзя. Есль мысли по этому поводу?
VG>> Хранить верхнюю половину? Первые 128 байт таблицы всегда известны.
SD> То ли я тебя не понял, то ли ты меня.
SD> В golded для задания перекодировочных таблиц используется формат CHS,
SD> в котором кодировка-источник всего 8бит. Таблицу для перекодирования в
SD> utf8 написать можно, а вот из utf8 - не получается.
SD> Если бы таблица трансляции была однозначная - проблем немного,
SD> минимальные исправления кода. А вот когда внутреннее представление в
SD> фидошных базах меньшее, а нужно внести (импортировать) из большего -
SD> тут собака и зарыта.
А если переделать только тот кусок, что отвечает за вывод на экран и ввод в текстовом виде в базу?
Как я себе это представляю:
1. вывод на экран - как ты сам говоришь принципиальных пробем не составляет, так как формат базы писем известен
2. Ввод писем в базу - если задать, к примеру, что кодировка системы utf8, кодировка базы - например 866 или latin-1 или "какой там ещё".
Затем получается цепочка "ввод текста -> запись в базу" преобразуется в такую: "ввод текста -> (если utf8) преобразование из формата ввода в формат хранения базы -> запись в базу".
Тут получается костыль - так как надо явно задавать кодировку системы и кодировку базы.
Я не прав?
зы: я не программер, так что рассуждать могу только на теоретическом уровне...
До свидания, Stas.
TEAM [Music][Guitar]
--- Omnia quamvis diversis gradibus, animata sunt. (c) Spinoza
* Origin: Gentoo (2:5030/952.11)
SEEN-BY: 46/50 50/12 400/814 450/210 1024 465/222 5000/5000 5010/53 5011/13
SEEN-BY: 5012/46 5015/10 28 5019/31 5020/545 715 2871 4441 5021/29 5025/3
SEEN-BY: 5027/16 5029/50 5030/7 73 97 110 115 251 266 378 382 437 449 468 518
SEEN-BY: 5030/536 621 640 671 786 845 851 864 888 920 952 995 1023 1041 1048
SEEN-BY: 5030/1115 1165 1181 1307 1763 2081 2982 5033/1 5035/38 5036/34 5038/9
SEEN-BY: 5048/7 5053/16 5054/1 8 9 18 37 45 63 67 81 5059/9 5060/900 5061/26
SEEN-BY: 5062/10 5063/3 5069/7 5077/70 5080/1003 5085/13 5095/20 5096/18
SEEN-BY: 5098/11 6000/12 254 6001/10 6083/11
PATH: 5030/952 920 1115 115 5020/545 5054/1 37