Настройка клавиатуры

Купил Microsoft Natural Ergonomic Keyboard 4000
xev ловит все клавиши, кроме колесика зума и F10 с выключенным F Lock (Орфография), которые мне не очень нужны и париться с ними абсолютно не хочется.
Задача:
  • заставить Fx-клавиши при выключенном F Lock выполнять те действия, которые на них написаны (а именно Справка(F1), Отмена(F2), Повтор(F3), Создать(F4), Открыть(F5) и Печать(F12); остальные не интересуют);
  • на кнопки 1-4 из ряда “My Favourites” забиндить переключение на соответствующий рабочий стол;
  • на кнопки управления звуком и воспроизведением повесить соответствующие команды, так чтобы работало во всех плеерах (мало ли что).

    Использую xfce и alsa. Подскажите, в какую сторону копать?
Можно установить xmodmap, если еще не установлена. Затем отловить с помощью xev коды клавиш, и если этим кодам не присвоены значения - присвоить их в ~/.xmodmaprc. Пример ~/.xmodmaprc:
keycode 175 = XF86Word
keycode 176 = XF86Launch0
keycode 177 = XF86TopMenu
keycode 178 = XF86View
keycode 179 = XF86Launch3
keycode 180 = XF86Launch4
keycode 181 = XF86Launch5
keycode 182 = XF86Launch6
keycode 183 = XF86Launch7
keycode 184 = XF86Launch8
keycode 185 = XF86Launch9
keycode 186 = XF86Select
keycode 187 = XF86LaunchB
keycode 188 = XF86LaunchC
keycode 189 = XF86LaunchD
keycode 190 = XF86LaunchE
keycode 191 = XF86LaunchF
keycode 192 = XF86Documents
keycode 193 = XF86Excel
keycode 194 = XF86Messenger
Запустить xmodmap (и поместить в автозагрузку). После чего неработающим клавишам можно присвоить нужные действия. У меня (openbox) это сделано в ~/.conifig/openbox/rc.xml, в разделе keyboard добавлены примерно вот такие записи:
<keybind key="XF86Word">
      <action name="Execute">
        <command>gedit</command>
        <startupnotify>
          <enabled>yes</enabled>
        </startupnotify>
      </action>
  </keybind>
yura_n
Не, это немного не то. Просто повесить сочетания клавиш на действия я умею. Сейчас дам пример того, что хочу сделать.
Например, есть клавиша с кодом 134. Нужно, чтобы она выполняла действие “Открыть” во всех программах, в которых диалог открытия файла можно вызвать через <C-o>.
HerrWeigel, назначение действий на клавиши для оболочки зависит от используемой оболочки, какая среда?
HerrWeigel
yura_n
Не, это немного не то. Просто повесить сочетания клавиш на действия я умею. Сейчас дам пример того, что хочу сделать.
Например, есть клавиша с кодом 134. Нужно, чтобы она выполняла действие “Открыть” во всех программах, в которых диалог открытия файла можно вызвать через <C-o>.
Если я правильно понял, то вам нужно перехватить нажатие клавиши и отправить клавиатурное событие. Тогда смотрите в сторону xbindkeys и xdotool. Я здесь пробовал делать что-то похожее.
yura_n
Спасибо - это то, что нужно! Сейчас разберусь поподробнее и выложу, что получится.
 
Зарегистрироваться или войдите чтобы оставить сообщение.