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

Re: А может ну ее нафиг, эту Xkb.



>     С удовольствием пpисоединился бы к subj.  Я давным-давно пользуюсь
> xrus'ом, и он делает все, что надо -- в частности, позволяет иметь
> одновpеменно pаскладки koi и 1251 (что в Xkb делается какими-то весьма
> извpатными способами -- см. у И.Паскаля).

  Гм. В чем там изврат? :-)
  Просто надо в одну таблицу собрать раскладку и для koi8 и для 1251,
а не держать их в двух разных как в xrus.
  А если вы о том как я "переключатели конструировал", то это да - изврат.
Но я честно предупредил, что это не лучшие и не правильные решения.
К сожалению в xkb кое-что неудачно сделано - наворотов много, а
на практике оказывается, что большинство из них бесполезны.

>     Но вот есть пpоблемы...  Во-пеpвых, xmodmap -- вещь очень кpивая: к
> пpимеpу, поставить ";" на Shift+4 (как в Dos) не удалось -- после двойной
> пеpезагpузки таблицы (->1251->koi) что-то едет и ";" начинает вводиться уже
> вместо пpосто "4";  в стаpых веpсиях X подобное было и с "," над "6";
> кавычка же на "2" почему-то не глючит.

  Я извиняюсь, но ... Это не xmodmap глючный, это "руки кривые".
Не столько у вас, сколько у состоавителей modmap'ов. (Еще раз извините.)
  Дело в том, что xmodmap позволяет не только задавать конструкции
типа
keycode <какой кейкод> = <в какие кейсимы отображать>
но и
keysym <какой кейсим> = <какими кейсимами заменить>
(то есть - найти клавишу у которой хоть в одной позиции есть указанный
"кейсим" и переписать ей все кейсимы).
  А вот это и есть потенциальный источник глюков.
Если у вас в раскладке присутствуют строчки
keysym 4 = 4 semicolon
а далее
keysym semicolon = semicolon colon
  То вот она ваша "четверка" и улетучивается после первых же переключений

>     Во-втоpых, многие совpеменные пpогpаммы уже настолько "пpодвинутые", что
> не хочут в pусской локали бpать "евpопейские" символы.  Пpимеp -- xterm.  Я
> на все свои машины ставлю Xrus и LC_CTYPE=ru_RU.KOI8-R (или ru_SU в RH6.0),
> и в последних веpсиях RedHat'а пpиходится заменять xterm на nxterm из rh5.2
> (что есть плохо из сообpажений security) -- дистpибутивный xterm киpиллицу в
> упоp не видит, а всякие rxvt пpи пеpеключении pус/лат (у меня оно Pause=F35)
> вводят ESC [ 4 9 ~ ...

  Я уже говорил (ох, сколько раз!) наличие/отсутствие xkb и использование
"европейских" символов или Cyrillic - вещи ортогональные.
  Что в том же xterm "в последних версиях RedHat'а" нельзя использовать
раскладки jcuken-cyr ? Быть того не может!

  А по поводу subject'а ...
Я собирался год назад написать статейку для BYTE. Но поленился, а потом
решил, что это - пройденный этап.
  Похоже зря.

  В общем то я готов согласиться - "ну его нафиг". Тем более, что в нем
глюков предостаточно (некоторые by design).
  Ну так дело то не столько в xkb, сколько вообще в иксовой клавитуре
и locale-зависимом преобразовании клавиатурного input'а.
  У меня и так все работало и с xkb, и с xrus и просто с xmodmap (и без
глюков). Проблемы не в них, а в правильной настройке locale и раскладок
(как xkb так и xrus и xmodmap). 

P.S. Надеюсь, я никого не обидел.
-- 
 Ivan U. Pascal         |   e-mail: pascal@tsu.ru
   Administrator of     |   Tomsk State University
     University Network |       Tomsk, Russia