X11:キーボードキーをマウスボタンに置​​き換える

X11:キーボードキーをマウスボタンに置​​き換える

キーボードのメニューキー(キーコード135)が右クリックと同じ機能を持つことを望みます。

https://superuser.com/questions/336674/emulated-mouse-click-with-a-keyboardこれにより、キーボードの数字パッド領域が犠牲になり、キーが正常に機能しなくなります。私はキーボードを使用しているので、それを犠牲にしたくありません。

だから解決策を探しています。ただメニューボタン(キーコード135)をタッチします。

ベストアンサー1

[注:明らかにこれは意図的なものです。「交換」マウスボタン付きのキーボードキー。キーボードキーはマウスボタンのように機能しますが、マウスボタンはキーボードキーのようには機能しません。

xkbset m
xkbset exp =m  # keep the state unchanged after the AccessX timeout
xkbcomp "$DISPLAY" - |
  sed -e 's/ Menu / Pointer_Button3 /' -e '/interpret KP_/,/};/d' | 
  xkbcomp - "$DISPLAY"

他のキーの組み合わせをバインドしてコントロールを切り替えることもできますMouseKeys。例えば。そしてShift-Menu

xkbcomp "$DISPLAY" - |
  sed -e 's/ Menu \| Pointer_Button3 / Pointer_Button3, MouseKeys_Enable /' -e '/interpret KP_/,/};/d' |
  xkbcomp - "$DISPLAY"

これはMenu、キーが別のものとして返送されなかったと仮定します。

xbksetandの代わりに、同じタスクを実行する小さなプログラムを簡単に作成できますxkbcomp(それらが実行するすべてのタスクは通常のX11クライアントで実行できます)。

これを面倒な「デスクトップ環境」(独自のルールに従ってxkb設定を変更する)と統合する方法は、読者に練習課題として残されます。

おすすめ記事