Что-то странное случилось: после смены XF86 на 3.3.6, настроенная переключалка раскладки "ru" работать не перестала, но перестала выводить буквы. То есть кнопки давлю, но ничего не печатается. Где лажа?
Нигде ничего не печатается. Пользуюсь этим выродком kikbd. XF86Config взят старый, с ним на 3.3.3 все было пучком. А locale и LANG какое отношение к делу могут иметь, если работает (показывает) все, кроме конкретно второй раскладки из "ru"?
От kikbd меня тошнит, я бы рад его выбросить. Конкретно, вот /etc/sysconfig/i18n: === LANG=ru LINGUAS=ru LC_ALL=ru_SU SYSFONT=Cyr_a8x16 SYSFONTACM=koi2alt === Или я чего-то недопонимать? Раньше-то работало. И в консоли работает. И со шрифтами все нормально. Где лажа?
Ну вот так сказать, где она именно тяжело. Хотя и видны ее проявления. Во-первых, LANG у русского человека ru_RU.KOI8-R. Во-вторых, чтобы это работало, надо, чтобы имелась соответствующая локаль, как ее собрать -- man localedef, или я недавно запостил в ответ на что-то типа "кодировки xwindows". Вот только после этого можно начинать смотреть, работает оно или нет.
Простите, погорячился. В соответствии с ответом в другой ветке, сделал localedef'ом (кстати, мана на него у меня нет) ru_RU.KOI8-R. Никаких изменений. Всеж-таки клава-то переключается? Кстати, абсолютно непонятный симптом: в тот момент, когда у kikbd установлена рюсская раскладка, переключение по свитчеру из xkb работает абсолютно корректно. Доктору это что-то говорит? Быть может, и вправду что-то с локалями?
это становится занудным. Так что не работает kikbd, или переключение
раскладок в XKB? Для начала надо послать kikbd подальше и проверить keyboard
секцию в XF86Config, должно быть что-то типа моего:
Section "Keyboard"
Protocol "Standard
Xkbkeycodes "xfree86"
XkbTypes "default"
XkbCompat "default"
XkbSymbols "en_US(pc101)+ru"
XkbGeometry "pc"
EndSection
это становится занудным. Так что не работает kikbd, или переключение
раскладок в XKB? Для начала надо послать kikbd подальше и проверить keyboard
секцию в XF86Config, должно быть что-то типа моего:
Section "Keyboard"
Protocol "Standard
Xkbkeycodes "xfree86"
XkbTypes "default"
XkbCompat "default"
XkbSymbols "en_US(pc101)+ru"
XkbGeometry "pc"
EndSection
Значит, так. Кикбд работает по жизни. Но мне не нравится. Переключение раскладок от ХКБ тоже работает, но при этом в русском режиме не высвечиваются буковки. Кроме случаев, когда включено кикбд и установлено на "Ru". То есть, включив кикбд, живу, как раньше. Но это - череззадничество. Что касается XF86Config, там прописано не "en_US(pc101)+ru", а просто "ru". Действительно, ведь в "ru" уже сидит две переключаемые раскладки. Я неправ?
А что если выбросить kikbd?
"Переключение в XKB работает" означает, что что-то роисходит, но не то, что хочется?
"Не высвечиваются буквы" где: везде? в Qt-приложениях? в GTK? в xterm?
Пришли всю секцию Keyboard
Запасти xev и посмотри, что он пишет, когда в его окошке нажимаются русские буковки.
Еще раз суть. При отсутствии кикбд, либо при ее наличии и
установке в ней английской раскладки, кнопка Правый Альт
переключает с английской ракладки на пустую (то есть, при нажатии
буквонесущих кнопок реакции нет в KDE/QT-приложениях, в xterm, в нетшкафе).
При наличии кикбд, установленного в русскую раскладку, в большинстве
приложений (нетшкаф, кде-редакторы, кмайл) кнопка правый альт переключает с
английской на русскую. В хтерме все по прежнему (после альта пикает и не
пишет), в konsole пишет цифирью в стиле "\xxx\yyy...".
Результаты xev.
С русской раскладкой в kikbd:
KeyPress event, serial 30, synthetic NO, window 0x6000001,
root 0x26, subw 0x0, time 2569232531, (54,90), root:(58,516),
state 0x1, keycode 26 (keysym 0xf5, otilde), same_screen YES,
XLookupString gives 1 characters: "У"
Без таковой:
KeyPress event, serial 30, synthetic NO, window 0x4c00001,
root 0x26, subw 0x0, time 2569316942, (26,80), root:(30,506),
state 0x2000, keycode 41 (keysym 0x6c1, Cyrillic_a), same_screen YES,
XLookupString gives 0 characters: ""
ну ты парень даешь!
я же писал!
1. ну отконфугурируй ты X xf86config'ом, он все правильно делает!
или
2. не хочешь -- возьми мой Keyboard секцию
---
background explanations:
3. какого хрена в XkbSymbols ни слова о РОССИИ?
4. от xev должно вылезать как во втором случае (Cyrillic_*)
>1. ну отконфугурируй ты X xf86config'ом, он все правильно делает!
Он делал все тоже самое. Возможно, я неправильно его использовал?
Мне казалось, что вариантов нет.
>2. не хочешь -- возьми мой Keyboard секцию
Пробовано. "+ru" ничего не дает.
>3. какого хрена в XkbSymbols ни слова о РОССИИ?
Такого, что раньше не было (вставка от Usoft 6.0), и работало.
К тому же, упоминание не помогает.
>4. от xev должно вылезать как во втором случае (Cyrillic_*)
Cам вижу. Но ведь не вылезает?