[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: XFree 4.0 released. UNICODE wanted.



Ivan Pascal wrote:

>   Обо всех. В том то и дело, что сейчас многие кинулись внутренние
> представления строк загонять в уникод. Так что скро будет в каждом
> тулките свои конвертеры.
> 
Во-во, вчера как раз читал на linuxtoday.com письмо одного 
парня из Израиля, где он материл отсутствие координации 
в плане поддержки Unicode под Юникс вообще, и под Линукс 
в частности, и объяснял, почему для работы он до сих пор 
использует NT.

Подписываюсь под каждым словом.

Действительно, между консолью (на выбор kbd, console-tools 
& console-tools-cyrillic), иксами, KDE & Gnome (pango) скоро 
разведется куча юникодов, причем один другого лучше.

Motif & CDE, xforms и некоторые еще на Юникод пока кладут.

И ни фига все это не работает.

Не лучше ли вынести полностью поддержку Юникода, 
кодировок и таблиц перекодировки на общесистемный 
уровень, а все тулкиты и программы будут искать там.

Типа так:

локаль ru_RU.UTF-8
default 8 bit charset=KOI8-R (тоже пора объединиться, а то я 
уже насчитал пять разных КОИ, против одного 1251).
Это кодировка по умолчанию для всех программ, которые 
не поддерживают Юникод, для совместимости.

А дальше все. Если программа держит Юникод, то хоть на 
китайском, а если нет, также будут писать в совместимом и 
удобном пользователю чарсете. При этом, разумеется, 
остальные языки отрубаются.

и продумать схему запуска программ для иной кодировки. 
Например, человек системно работает в UTF-8, для старых 
программ выставил КОИ, а ему надо сделать файл в 1251 в 
некоей программе, которая не поддерживает перекодировку, 
типа как AEN сделал для Ted в RE 7.0.

Тогда он делает что-то типа path/.program {locale=Windows-
1251}. Его юникодная клавиатура выдает правильные 
символы, его юникодный шрифт тоже, либо выбирается 
виндовый шрифт.

И надо поддерживать одну базу и один набор таблиц 
перекодировки. Да и патчить легче, если что.

Кроме того, было бы неплохо полностью продумать заново 
вопрос клавиатуры.

Сейчас в консоли клавиатура конфигурируется текстовыми 
файлами, хотя уже идут препроцессоры.

При этом для создания двуязычных раскладок жертвуем 
режимом AltGr. Жалко его.

При восьмибитных раскладках это проходило, но как будет 
при юникоде.
Надо будет придумывать режим типа XKB, чтобы можно 
было иметь ряд клавиатур, каждую с режимом AltGr и 
полным наборов символов своей кодировки (например, 
латиница с аксанами) или даже кодировок (повесить 
некоторые символы из совсем других кодировок на 
комбинации клавиш), переключаясь между ними 
стандартным набором клавиш. А то надоело выходить в 
шелл и loakeys.

Да и под иксами можно разрешить сделать более четырех 
групп.

При этом XKB пока также режет символы, которые не 
допускает локаль.

Вот под Виндой я использую три раскладки:

Русскую стандартную (1251)
Русскую КОИ8-Р (сделал для Пегаса, которым пишу, так как 
он сам плохо перекодирует)
US INTERNATIONAL (это американская клавиатура, где 
добавлены аксаны через мертвые клавиши, плюс AltGr 
работает на всю катушку для остальных символов).

Все три живут, цветут и пахнут. Переключаюсь везде по 
LeftAlt+LeftShift.

Под Линуксом в консоли просто не выставляю локаль, 
меняю шрифты и мотаюсь между us+ и ru.

Кстати, пора бы подумать и о том, чтобы локаль, шрифт и 
раскладку клавиатуры сделать независимой для каждого 
пользователя. Это я про консоль.

А вот под иксами, если локаль выставлена на КОИ8, то 
сделать аналог США МЕЖДУНАРОДНОЙ + РУССКИЙ не 
получается, так как XKB не дает вводить символы, которых 
нет в кодировке.

Осваиваю Emacs+MULE. Но только нужен ли такой геморрой 
людям, которым всего-то надо напечатать пол странички 
на разных языках, отдать на принтер и забыть.

Думаю, что так значительно лучше.

Владимир 
************************
Vladimir NOVIKOV		
vnovikov@novikov.org    		
100713.20@compuserve.com
+++++
We don't need Windows, we don't need Gates, we have the whole Linux Universe. 	
*************************