特殊:Badtitle/NS100:TrustMultimediaScrollKeyboardKB-2200:修订间差异
小无编辑摘要 |
小无编辑摘要 |
||
第5行: | 第5行: | ||
== Introduction == | == Introduction == | ||
The KB-2200 is a budget keyboard, and is available in many a bargain bin or budget shop. Without any configuration, the keyboard will work under any modern computer, but a number of the extra keys will not function without some further actions. This is perhaps due to the odd technical design of the keyboard. As far as the computer is concerned, this piece of hardware is a USB keyboard with a lot of keys, and a USB mouse with some more keys (or buttons), all in one. | The KB-2200 is a budget keyboard, and is available in many a bargain bin or budget shop. Without any configuration, the keyboard will work under any modern computer, but a number of the extra keys will not function without some further actions. This is perhaps due to the odd technical design of the keyboard. As far as the computer is concerned, this piece of hardware is a USB keyboard with a lot of keys, and a USB mouse with some more keys (or buttons), all in one. | ||
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconNote.png | |||
''I have found no other information on the Internet about using this keyboard under Linux. If you follow this guide and find mistakes, or even if it all works or if you know of a better, easier method, please contact the author ([email protected]). I would appreciate the feedback.'' | ''I have found no other information on the Internet about using this keyboard under Linux. If you follow this guide and find mistakes, or even if it all works or if you know of a better, easier method, please contact the author ([email protected]). I would appreciate the feedback.'' | ||
If we look at the input device entries our computer found for this keyboard, we see something like the following output: | If we look at the input device entries our computer found for this keyboard, we see something like the following output: | ||
第16行: | 第16行: | ||
Of the two <code><nowiki>event</nowiki></code> interfaces, however, only one is handled by the standard keyboard driver used by default. There are nine keys that send their signals through the second interface, so we need to use it as well if we want all the keys to work. | Of the two <code><nowiki>event</nowiki></code> interfaces, however, only one is handled by the standard keyboard driver used by default. There are nine keys that send their signals through the second interface, so we need to use it as well if we want all the keys to work. | ||
== Configuring all the relevant software == | == Configuring all the relevant software == | ||
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=warning.png | |||
'''There is no easy way to make this keyboard work completely under Linux at the moment of writing. The actions below affect your system and a mistake can disable your graphical environment. This document requires some experience with the command line interface.''' | '''There is no easy way to make this keyboard work completely under Linux at the moment of writing. The actions below affect your system and a mistake can disable your graphical environment. This document requires some experience with the command line interface.''' | ||
Without using the <code><nowiki>evdev</nowiki></code> driver in the X configuration, some of the keys on the keyboard do not generate keyevents. So first we need to configure X to use the keyboard through the <code><nowiki>evdev</nowiki></code> driver as well as the standard <code><nowiki>kbd</nowiki></code> keyboard driver. After that, a number of keys will be mapped to the wrong ''keysyms'' and a couple of keysyms appear twice, which causes some difficulty with the keyboard shortcuts configuration tool in Gnome, so we have to load a mapping for this keyboard using <code><nowiki>xmodmap</nowiki></code>. Finally, because a number of keys accessed through the evdev driver behave like mouse buttons, we link these to the keysyms we want to assign them using <code><nowiki>xbindkeys</nowiki></code> and <code><nowiki>xvkbd</nowiki></code>. | Without using the <code><nowiki>evdev</nowiki></code> driver in the X configuration, some of the keys on the keyboard do not generate keyevents. So first we need to configure X to use the keyboard through the <code><nowiki>evdev</nowiki></code> driver as well as the standard <code><nowiki>kbd</nowiki></code> keyboard driver. After that, a number of keys will be mapped to the wrong ''keysyms'' and a couple of keysyms appear twice, which causes some difficulty with the keyboard shortcuts configuration tool in Gnome, so we have to load a mapping for this keyboard using <code><nowiki>xmodmap</nowiki></code>. Finally, because a number of keys accessed through the evdev driver behave like mouse buttons, we link these to the keysyms we want to assign them using <code><nowiki>xbindkeys</nowiki></code> and <code><nowiki>xvkbd</nowiki></code>. |
2008年10月20日 (一) 00:49的最新版本
文章出处: |
{{#if: | {{{2}}} | https://help.ubuntu.com/community/TrustMultimediaScrollKeyboardKB-2200 }} |
点击翻译: |
English {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/af | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Afrikaans| [[::TrustMultimediaScrollKeyboardKB-2200/af|Afrikaans]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ar | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|العربية| [[::TrustMultimediaScrollKeyboardKB-2200/ar|العربية]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/az | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|azərbaycanca| [[::TrustMultimediaScrollKeyboardKB-2200/az|azərbaycanca]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/bcc | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|جهلسری بلوچی| [[::TrustMultimediaScrollKeyboardKB-2200/bcc|جهلسری بلوچی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/bg | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|български| [[::TrustMultimediaScrollKeyboardKB-2200/bg|български]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/br | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|brezhoneg| [[::TrustMultimediaScrollKeyboardKB-2200/br|brezhoneg]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ca | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|català| [[::TrustMultimediaScrollKeyboardKB-2200/ca|català]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/cs | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|čeština| [[::TrustMultimediaScrollKeyboardKB-2200/cs|čeština]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/de | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Deutsch| [[::TrustMultimediaScrollKeyboardKB-2200/de|Deutsch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/el | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Ελληνικά| [[::TrustMultimediaScrollKeyboardKB-2200/el|Ελληνικά]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/es | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|español| [[::TrustMultimediaScrollKeyboardKB-2200/es|español]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/fa | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|فارسی| [[::TrustMultimediaScrollKeyboardKB-2200/fa|فارسی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/fi | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|suomi| [[::TrustMultimediaScrollKeyboardKB-2200/fi|suomi]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/fr | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|français| [[::TrustMultimediaScrollKeyboardKB-2200/fr|français]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/gu | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|ગુજરાતી| [[::TrustMultimediaScrollKeyboardKB-2200/gu|ગુજરાતી]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/he | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|עברית| [[::TrustMultimediaScrollKeyboardKB-2200/he|עברית]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/hu | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|magyar| [[::TrustMultimediaScrollKeyboardKB-2200/hu|magyar]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/id | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Bahasa Indonesia| [[::TrustMultimediaScrollKeyboardKB-2200/id|Bahasa Indonesia]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/it | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|italiano| [[::TrustMultimediaScrollKeyboardKB-2200/it|italiano]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ja | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|日本語| [[::TrustMultimediaScrollKeyboardKB-2200/ja|日本語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ko | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|한국어| [[::TrustMultimediaScrollKeyboardKB-2200/ko|한국어]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ksh | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Ripoarisch| [[::TrustMultimediaScrollKeyboardKB-2200/ksh|Ripoarisch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/mr | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|मराठी| [[::TrustMultimediaScrollKeyboardKB-2200/mr|मराठी]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ms | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Bahasa Melayu| [[::TrustMultimediaScrollKeyboardKB-2200/ms|Bahasa Melayu]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/nl | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Nederlands| [[::TrustMultimediaScrollKeyboardKB-2200/nl|Nederlands]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/no | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|norsk| [[::TrustMultimediaScrollKeyboardKB-2200/no|norsk]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/oc | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|occitan| [[::TrustMultimediaScrollKeyboardKB-2200/oc|occitan]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/pl | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|polski| [[::TrustMultimediaScrollKeyboardKB-2200/pl|polski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/pt | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|português| [[::TrustMultimediaScrollKeyboardKB-2200/pt|português]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ro | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|română| [[::TrustMultimediaScrollKeyboardKB-2200/ro|română]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/ru | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|русский| [[::TrustMultimediaScrollKeyboardKB-2200/ru|русский]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/si | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|සිංහල| [[::TrustMultimediaScrollKeyboardKB-2200/si|සිංහල]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/sq | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|shqip| [[::TrustMultimediaScrollKeyboardKB-2200/sq|shqip]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/sr | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|српски / srpski| [[::TrustMultimediaScrollKeyboardKB-2200/sr|српски / srpski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/sv | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|svenska| [[::TrustMultimediaScrollKeyboardKB-2200/sv|svenska]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/th | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|ไทย| [[::TrustMultimediaScrollKeyboardKB-2200/th|ไทย]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/tr | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Türkçe| [[::TrustMultimediaScrollKeyboardKB-2200/tr|Türkçe]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/vi | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|Tiếng Việt| [[::TrustMultimediaScrollKeyboardKB-2200/vi|Tiếng Việt]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/yue | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|粵語| [[::TrustMultimediaScrollKeyboardKB-2200/yue|粵語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/zh | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|中文| [[::TrustMultimediaScrollKeyboardKB-2200/zh|中文]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/zh-hans | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|中文(简体)| [[::TrustMultimediaScrollKeyboardKB-2200/zh-hans|中文(简体)]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200 | {{#if: | :}}TrustMultimediaScrollKeyboardKB-2200}}/zh-hant | • {{#if: UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|中文(繁體)| [[::TrustMultimediaScrollKeyboardKB-2200/zh-hant|中文(繁體)]]}}|}} |
{{#ifeq:UbuntuHelp:TrustMultimediaScrollKeyboardKB-2200|:TrustMultimediaScrollKeyboardKB-2200|请不要直接编辑翻译本页,本页将定期与来源同步。}} |
{{#ifexist: :TrustMultimediaScrollKeyboardKB-2200/zh | | {{#ifexist: TrustMultimediaScrollKeyboardKB-2200/zh | | {{#ifeq: {{#titleparts:TrustMultimediaScrollKeyboardKB-2200|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:TrustMultimediaScrollKeyboardKB-2200|1|-1|}} | zh | | }}
- title Using the Trust Multimedia Scroll Keyboard KB-2200 in Ubuntu
The Multimedia Scroll Keyboard KB-2200 manufactured by Trust, is a USB keyboard, with a plethora of extra keys — sometimes referred to as multimedia keys — that can be used to launch applications, or to perform other useful actions. This document provides information on how to configure your Ubuntu system to make use of all these keys.
Introduction
The KB-2200 is a budget keyboard, and is available in many a bargain bin or budget shop. Without any configuration, the keyboard will work under any modern computer, but a number of the extra keys will not function without some further actions. This is perhaps due to the odd technical design of the keyboard. As far as the computer is concerned, this piece of hardware is a USB keyboard with a lot of keys, and a USB mouse with some more keys (or buttons), all in one. I have found no other information on the Internet about using this keyboard under Linux. If you follow this guide and find mistakes, or even if it all works or if you know of a better, easier method, please contact the author ([email protected]). I would appreciate the feedback. If we look at the input device entries our computer found for this keyboard, we see something like the following output:
# ls /dev/input/by-id -l usb-062a_USB-compliant_keyboard-event-kbd -> ../event1 usb-062a_USB-compliant_keyboard-event-mouse -> ../event2 usb-062a_USB-compliant_keyboard-mouse -> ../mouse1
The mouse
device will automatically work. Most of the time the X windowing system already uses the combined /dev/input/mice
device, so all mice connected will work.
Of the two event
interfaces, however, only one is handled by the standard keyboard driver used by default. There are nine keys that send their signals through the second interface, so we need to use it as well if we want all the keys to work.
Configuring all the relevant software
There is no easy way to make this keyboard work completely under Linux at the moment of writing. The actions below affect your system and a mistake can disable your graphical environment. This document requires some experience with the command line interface.
Without using the evdev
driver in the X configuration, some of the keys on the keyboard do not generate keyevents. So first we need to configure X to use the keyboard through the evdev
driver as well as the standard kbd
keyboard driver. After that, a number of keys will be mapped to the wrong keysyms and a couple of keysyms appear twice, which causes some difficulty with the keyboard shortcuts configuration tool in Gnome, so we have to load a mapping for this keyboard using xmodmap
. Finally, because a number of keys accessed through the evdev driver behave like mouse buttons, we link these to the keysyms we want to assign them using xbindkeys
and xvkbd
.
The X server
We want to add the second event
interfaces as an input device for the graphical environment, but because we are working with a USB device, we do not know for sure if it will always be assigned the exact same device name. Ostensibly, the symlinks found in /dev/input/by-id
are persistent and therefore useful, but unfortunately — at least up to Ubuntu 7.10 Gutsy Gibbon — the evdev driver we will use in the X server configuration does not accept those paths as an argument for the device. We can also refer to the name of the device, which is unique, but as noted above, there is more than one event device for this one keyboard, and they share the same name. To solve this, we refer to them by their physical path as well. The whole physical path is different for every USB port on your computer, but the last part is always the same for the device we want to use, namely /input1
.
By referring to the devices in this manner, we can plug the keyboard into another USB port, and it will work without any changes in the configuration.
Open the X configuration file in /etc/X11/xorg.conf
and add the following two device:
Section "InputDevice" Identifier "USB Keyboard part 2" Driver "evdev" Option "Name" "USB-compliant keyboard" Option "Phys" "*/input1" Option "SendCoreEvents" "true" Option "evBits" "+0-3 -4-23" EndSection
Also, add the this new device to the server layout section in the same file:
Section "ServerLayout" Identifier "Default Layout" screen 0 "Default Screen" 0 0 Inputdevice "Generic Keyboard" Inputdevice "Configured Mouse" Inputdevice "USB Keyboard part 2" "SendCoreEvents" EndSection
After restarting the X server, every button should generate some output when pressed if you run xev
in a terminal.
Xmodmap
Some of the multimedia keys are already recognized by the X server, but some of them are mapped to two keycodes. With Xmodmap we can assign the proper keysyms to all the keys. A good place to put the following configuration is in /etc/X11/Xmodmap
, because the login manager GDM will also use it automatically:
! Euro currency keycode 14 = 5 percent EuroSign ! Yen currency keycode 29 = y Y U00A5 ! Arrow characters: ← ↑ ↓ → keycode 98 = Up Up U2191 keycode 100 = Left Left U2190 keycode 102 = Right Right U2192 keycode 104 = Down Down U2193 ! Compose key keycode 113 = Multi_key Meta_R Alt_R ! Third level chooser keycode 116 = Mode_switch Super_R keycode 117 = Menu keycode 118 = keycode 121 = XF86AudioMute keycode 122 = XF86AudioLowerVolume keycode 123 = XF86AudioRaiseVolume keycode 124 = XF86PowerDown keycode 125 = keycode 126 = keycode 127 = keycode 128 = keycode 129 = XF86Launch1 keycode 131 = XF86Launch0 keycode 132 = keycode 133 = XF86LaunchB keycode 144 = XF86Search keycode 148 = XF86Calculator keycode 150 = XF86ScreenSaver keycode 152 = XF86MyComputer keycode 153 = keycode 156 = keycode 159 = keycode 160 = keycode 161 = keycode 162 = keycode 163 = XF86Mail keycode 164 = XF86Tools keycode 165 = keycode 171 = XF86AudioNext keycode 172 = XF86AudioPlay keycode 173 = XF86AudioPrev keycode 174 = keycode 176 = keycode 178 = keycode 179 = XF86AudioStop keycode 180 = XF86Explorer keycode 181 = XF86WWW keycode 204 = keycode 205 = keycode 208 = XF86Launch2 keycode 209 = XF86LaunchA keycode 223 = keycode 229 = keycode 230 = keycode 231 = keycode 232 = keycode 233 = keycode 234 = keycode 235 = keycode 236 = keycode 237 = keycode 247 = XF86Launch3 keycode 248 = XF86Launch4 keycode 249 = XF86Launch5 keycode 250 = XF86Launch6 keycode 251 = XF86Launch7 keycode 252 = XF86Launch8 keycode 253 = XF86Launch9 keycode 254 = XF86LaunchC keycode 255 = XF86LaunchD clear mod1 add mod1 = Alt_L clear mod4 add mod4 = Super_L clear mod5 add mod5 = Mode_switch
The keycodes from 247 onwards are used for a number of the multimedia keys which are seen as mouse buttons. These codes are not used, but if we don’t define their keysyms somewhere some applications — most notably, the Gnome keyboard shortcut manager — will ignore the keys. You can change this xmodmap to suit your own needs. I have added the Euro currency sign to the 5 key, because it has a label for it. You can access it by simultaneously pressing the right “Windows” key and the 5. I also added the Yen currency sign to the Y key, and the arrow characters to the arrow keys in the same way. The Alt Gr key is defined as the [compose] key. To make this keymap available to all users, you can simply create a symlink to the above file in their home folder:
ln -s /etc/X11/Xmodmap /home/user/.Xmodmap
Xbindkeys and Xvkbd
If Xbindkeys and Xvkbd are not installed, do so first:
sudo apt-get install xbindkeys xvkbd
We assign keysyms to the nine buttons that were not recognized at first. Add this configuration to a file called /etc/xbindkeys
:
"xvkbd -text '\[XF86Launch4]'" b:22 "xvkbd -text '\[XF86Launch5]'" b:26 "xvkbd -text '\[XF86LaunchC]'" b:27 "xvkbd -text '\[XF86LaunchD]'" b:28 "xvkbd -text '\[XF86Launch6]'" b:29 "xvkbd -text '\[XF86Launch7]'" b:30 "xvkbd -text '\[XF86Launch8]'" b:31 "xvkbd -text '\[XF86Launch3]'" b:32 "xvkbd -text '\[XF86Launch9]'" b:33 # Other examples: #"xset dpms force suspend" # XF86ScreenSaver #"scim-tomoe" # XF86LaunchA #"gjiten" # XF86Tools "nautilus --browser computer:///" XF86MyComputer
Add the command xbindkeys -f /etc/xbindkeys
to the session startup for the user. In Gnome you can add this in Preferences » Sessions
.
Finishing up
In Gnome, you can safely use the Preferences » Keyboard Shortcuts
configuration tool to use your keys to launch applications. An excellent usage of the four little keys above the F7, F8 and F9 keys is to use them to switch to another workspace.
Music player daemon (mpd)
If you use mpd
to play music, the following binds for xbindkeys
might be useful. Add these to .xbindkeysrc
:
"mpc next" XF86AudioNext "mpc prev" XF86AudioPrev "mpc stop" XF86AudioStop "mpc toggle" XF86AudioPlay
Open issues
When everything is set up, you should probably no longer use the Preferences » Keyboard
configuration tool in Gnome, because it will override our xmodmap settings. This should not be a problem, because we can set most of the options in there through our own xmodmap, but you may want to remove the entry from the menu so your users do not accidentally try to use it.