Ubuntu 10.10でMicrosoft Natural Ergonomic Keyboard 4000を使用しています。マルチメディアキー(ボリューム、再生/一時停止)、メールボタン、電卓ボタンも機能します。
ズームスライダーを使用したいのですが、可能であればページスクロールを使用したいと思います。それを有効にする方法はありますか?
Ubuntu 10.10でMicrosoft Natural Ergonomic Keyboard 4000を使用しています。マルチメディアキー(ボリューム、再生/一時停止)、メールボタン、電卓ボタンも機能します。
ズームスライダーを使用したいのですが、可能であればページスクロールを使用したいと思います。それを有効にする方法はありますか?
回答:
/etc/udev/rules.d/98-ms-ergo.rules
次の内容のファイルを作成します。
ACTION=="remove", GOTO="keyboard_end"
KERNEL!="event*", GOTO="keyboard_end"
ENV{ID_INPUT_KEY}=="", GOTO="keyboard_end"
SUBSYSTEMS!="usb", GOTO="keyboard_end"
SUBSYSTEMS=="usb", IMPORT{builtin}="usb_id"
ENV{ID_VENDOR}=="Microsoft", ENV{ID_MODEL_ID}=="00db", RUN+="keymap $name 0xc022d pageup 0xc022e pagedown"
GOTO="keyboard_end"
これにより、にインストールされているファイルを変更せずにズームキーがページアップ/ページダウンにマップされます/lib/udev
。
追加したら、キーボードを取り外して再接続するだけで機能します。
evtest
、人間工学に基づいた7000キーボードの他のほとんどのキーとは異なり、ズームスライダーがイベントをトリガーしないという事実に関連しているのかもしれません。Web / Homeボタンはevtest
どちらにも出力を表示しないため、Ubuntu はそれを取得しますが、それについてはわかりません。
xev
。
xev
も私には機能しません。とは何ですかevtest /dev/input/event3
。event3
このキーに反応がない場合は、他のイベントでテストします(event[0..9]
)。
Xubuntu 13.10(おそらくUbuntu 13.10でも)では、次のように同じことができます。
のキーマッピングを編集します/lib/udev/hwdb.d/60-keyboard.hwdb
。
###########################################################
# Microsoft
###########################################################
# Microsoft Natural Ergonomic Keyboard 4000
keyboard:usb:v045Ep00DB*
KEYBOARD_KEY_c022d=pageup
KEYBOARD_KEY_c022e=pagedown
走る
sudo udevadm hwdb --update
リブート。
katakana
とkatakanahiragana
(からまたは他の未使用のキーコードhal.freedesktop.org/quirk/quirk-keymap-list.txtではなく、エイリアス既存のキーに)。このようにして、キーを修飾子と組み合わせて認識および使用し、ボリューム、言語、サイズなどを切り替えることができます(2つの新しいスーパーキーを使用するようにウィンドウマネージャーを構成します)。
設定するためには、マイクロソフト人間工学に基づいたキーボード4000を、私たちは、キーボードの宣言とキーをマッピングするためのレコードを含む設定ファイルを作成する必要があります。
そのためには、次の3種類の情報を決定する必要があります。
scancode
キーボード上の実際のキーでありますname
選択されたキーに所望の機能を割り当てます最初にキーボードの種類を見つけます:
ターミナルで次のコマンドを実行します。
lsusb
出力によってキーボードのタイプが決まります。
...
Bus 004 Device 022: ID 045e:00db Microsoft Corp. Natural Ergonomic Keyboard 4000 V1.0
...
後に表示されID
ます。この場合は045e:00db
次に、スキャンコードとキーの名前を見つけます。
それらを決定するにはevtest
、端末上の特定のデバイスのイベント情報をログアウトするプログラムを使用します。
evtest
プログラムがない場合は、次のコマンドを実行してインストールします。
sudo apt-get install evtest
evtest
プログラムを実行すると、次の出力が得られます。
No device specified, trying to scan all of /dev/input/event* Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Power Button
/dev/input/event2: PixArt USB Optical Mouse
/dev/input/event3: Microsoft Natural® Ergonomic Keyboard 4000
/dev/input/event4: Microsoft Natural® Ergonomic Keyboard 4000
/dev/input/event5: HDA Intel Front Headphone
/dev/input/event6: HDA Intel Line Out
/dev/input/event7: HDA Intel Line
/dev/input/event8: HDA Intel Rear Mic
/dev/input/event9: HDA Intel Front Mic
/dev/input/event10: HDA ATI HDMI HDMI/DP,pcm=3
Select the device event number [0-10]:
出力はほぼ自明であり、キーボードに適切な番号を挿入します。ここに番号があり3
、Enter キーを押します。
これを行うと、端末に多くの情報が出力され、次の行で終了します。
...
Testing ... (interrupt to exit)
Event: time 1472203902.240594, type 17 (EV_LED), code 0 (LED_NUML), value 0
Event: time 1472203902.240594, -------------- SYN_REPORT ------------
Event: time 1472203902.281456, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70058
Event: time 1472203902.281456, type 1 (EV_KEY), code 96 (KEY_KPENTER), value 0
Event: time 1472203902.281456, -------------- SYN_REPORT ------------
キーボードのキーを押すたびに、キー情報がダンプされます。たとえば、右シフトの横にあるスラッシュキーは次を示します。
Event: time 1472205062.294078, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70038
Event: time 1472205062.294078, type 1 (EV_KEY), code 12 (KEY_SLASH), value 0
Event: time 1472205062.294078, -------------- SYN_REPORT ------------
ログの最初の行には、値の後に来るなど、キーボード上の実際のキーに関する情報が含まれてscancode
います。この場合は70038です
2行目には、キーの名前などの割り当てられた機能情報が含まれます。この場合、SLASHです。他のキーを調べて、適切な名前を見つけます。
簡単に言えば:
必要な情報を収集した後、構成ファイルを作成します。
sudoedit /etc/udev/hwdb.d/61-keyboard-local.hwdb
ヒットi
して挿入モードをアクティブにし、次を入力します。
keyboard:usb:v045Ep00DB*
KEYBOARD_KEY_70038=minus
を押してescape
入力し:wq
、Enter キーを押して保存して終了します。
次に、構成を有効にするために次の2つのコマンドを実行します。
sudo udevadm hwdb --update
sudo udevadm control --reload
最後にキーボードのプラグを抜き、再度差し込みます。
構成ファイルに関する注意事項:
sudoedit
他のテキストエディタを使用する代わりに、上記のファイルの正確な形式に従うことを忘れないでください。v
し、p
どのベンダーと製品のために立っています。それらも重要です。KEYBOARD_KEY_
の 問題は、ということです> evdevのドライバーがキーコードを無視する255。
ソリューションは、Marco Chiapperoに感謝します。
1)必要なすべての再マッピングを(次の形式で定義する必要があります) 「キーコードをスキャンコード」リスト)、「/ lib / udev / keymaps /」の下のファイルに配置します (たとえば、そこにlogitech-lx710-cordlessを作成しました)。あなたが見つけることができます evtestを使用したスキャンコード( "sudo evtest / dev / input / eventX"、Xは キーボードデバイス。注意してください、これらの余分なキーは時々公開されます 別のデバイスまたはマウスインターフェース:例 event3-> kbd、event4-> マウスと追加のキー)。ここにいくつかのサンプル出力: イベント:時間1294153475.909379、タイプ4(Misc)、コード4(ScanCode)、値c1028 「c1028」は、キーマップファイルに配置するスキャンコード値です。 前述のようにinput.hから数値を取得し、それを 16進数。次に、説明的なファイルを使用して、ファイルにリマップペアを書き込みます 次のようなコメント: 0xC1028 0x9a#回転ボタン 255を超えるキーごとに繰り返します。 2)遭遇するたびにこのリマッピングファイルを適用するようにudevに指示する必要があります キーボード、「/ lib / udev / rules.d / 95-keymap.rules」ファイルを編集して追加します HWに一致するudevルール。ルールを定義するように頼まないでください 君は。 注:自分で入力してキーマップファイルをすぐに適用できます 「sudo / lib / udev / keymap / dev / input / eventX / lib / udev / keymaps / $ YOUR_FILE」および evtestでもう一度確認してください。 これで、Gnomeショートカットエディターを使用して、キーが X内で使用でき、新しいショートカットを作成します。ただし、 keysymはそのキーコードに割り当てられます(したがって、XF86Fooではなく0xXYが表示されます)。 xmodmap -pkeを使用して現在のマッピングを確認し、出力を ファイルし、必要に応じて編集します(完全なキーシムコードリストは、 「/ usr / lib / X11 / XKeysymDB」)。 再マップしたキーにキーシムを追加したら、このファイルを保存できます 〜/ .Xmodmapとして(またはすべてのユーザーに適用したい場合は/ etc / X11 / Xmodmapとして)。
/lib/udev/rules.d/95-keymap.rules
。このファイルを編集するだけです。(launchpadで同じハードウェアを持っている人を見つけることができます。したがって、bugs.launchpad.net / ubuntu / + source / xorg-server / + bug / 313514を支援することができます )。上記のファイルを編集しましたか?