私はいくつかの調査をしましたが、うまくいく解決策が見つかりませんでした。キーボードボタンをどのように作成できますか? 、、、、、KP_1とKP_2まったく同じですかKP_3?Shift_LAlt_LControl_L
私はLinux Mint 17シナモンを使用しています。
新しいキーがDota 2で動作することを願っています(しかし、世界中で動作していても構いません)。別の方法を試しましたが、どちらも期待どおりに機能しません。
xmodmap
端末で実行します。
xmodmap -e "keycode 87 = Shift_L"
xmodmap -e "keycode 88 = Alt_L"
xmodmap -e "keycode 89 = Control_L"
結果:
- オペレーティングシステム:KP_1およびKP_2動作する必要がある方法(例:ShiftおよびAlt)は機能しますが、どういうわけか動作しませkp_3ん。Ctrl
- Dota 2: , kp_1, 動作kp_2しません // (なぜ?)kp_3ShiftAltCtrl
remap.inc
文書
次の行を追加しました。/etc/console-setup/remap.inc
keycode 79 = Shift
keycode 80 = Alt
keycode 81 = Control
その後実行
sudo dpkg-reconfigure console-setup -phigh
結果:どこにも動作しません。このキーコードが「xev」が返すものとなぜ異なるのかわかりませんが、ダンプキーを使用して見つけたものは次のとおりです。
sudo dumpkeys | egrep "^keycode.*KP_[123]"
keycode 79 = KP_1
keycode 80 = KP_2
keycode 81 = KP_3
xbindkeys
+xte
次の行を追加しました~/.xbindkeysrc
。
"xte 'key Shift_L'"
Mod2 + KP_End
端末で「xbindkeys」を実行してください。
結果:どこにも機能しません(おそらく一度だけ押すだけです。通常のボタンのように押し続けている場合は、押し続けたいShift_L
)。KP_1Shift
答え1
新しいキーを修飾子キー(Shift、Ctrl、Altなど)にマップするには、keycode
withを使用するだけではxmodmap
不十分です。次の作業を行う必要があります。
keycode 87 = Shift_L
clear shift
add shift = Shift_L
keycode 88 = Alt_L
clear mod1
add mod1 = Alt_L
keycode 89 = Control_L
clear control
add control = Control_L
マニュアルページにはいくつかの例がありますxmodmap(1)
。複数回呼び出す代わりに、これらのコマンドをxmodmaprc
ファイルに入れて実行できます。xmodmap xmodmaprc
xmodmap -e