Обсуждение:HOWTO hal и устройства ввода
Материал из Gentoo Linux Wiki
У меня не работало переключение раскладки, и в Xorg.0.log не было упоминания xkb_options. Не работало же потому что в .fdi тип xkb.options нужно было ставить strlist, и соответственно писать
<merge key="input.xkb.options" type="strlist">grp:caps_toggle</merge>
<append key="input.xkb.options" type="strlist">grp_led:scroll</append>
Да, а ещё нужно убрать из xorg.conf все секции InputDevice и упоминания о них в Severlayout, по крайней мере у меня в логе были ругательства от xorg...
| 91.201.48.96 22:51, 1 февраля 2008 (UTC) |
| Солидарен, но не у всех работает, пока причины не очевидны |
PS. Давно мучает проблема что если поставить grp:caps_toggle и grp_led:scroll то почему-то при включении русской раскладки включаются оба индикатора (scroll и caps). а при нажатии shift-caps индикатор caps не меняет своего состояния но буквы становятся заглавными. Причём это уже давно и не зависит от того, evdev ли, hal или старый метод... Нет ли решения этой проблемы?
Спасибо огромное, заработало переключение клавиатуры :)
[править] thx
Спасибо огромное, заработало переключение клавиатуры :)
[править] Неочевидные моменты, которые я только что собрал
added by Jay [JID:jay@xmpp.ru]
Файл в /etc/hal/fdi/policy/ должен заканчиваться расширением .fdi, иначе hald его не подхватывал..
Вот мое содержимое этого файла (согласно примерам с http://dev.gentoo.org/~compnerd/temp/hal-config-examples/)
| Файл: 55-xorg-xkb.fdi |
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="input.device" string="/dev/input/event40">
<merge key="input.x11_driver" type="string">kbd</merge>
<merge key="input.xkb.layout" type="string">us,ru</merge>
<merge key="input.xkb.model" type="string">microsoftprousb</merge>
<merge key="input.xkb.rules" type="string">xorg</merge>
<!--merge key="input.xkb.variant" type="string">,winkeys</merge-->
<merge key="input.xkb.options"
type="strlist">grp:shift_caps_toggle,grp_led:scroll,caps:internal,compose:rwin</merge>
</match>
</device>
</deviceinfo>
|
| Примечание: /dev/input/event40 - это устройство клавиатуры, обозванное так правилом udev, дабы в дальнейшем оно не изменялось. |
Вот тут и проблема... Приходится ещё udev копать. Правильней таки через имя или тип устройства. В общем работать будет, только как-то через.. зад.
