私はDebianでxfce4を実行しています。 homeキーとendキーにキーボードショートカットを割り当てたい(具体的にはカーソルを行の先頭と最後に移動)。
設定マネージャには、コマンドにキーボードショートカットを割り当てるためのGUIインターフェイスがあります。しかし、別のキー(homeまたはend)にキーボードショートカット(ctrl + aやctrl + eなど)を設定するにはどうすればよいですか?
ありがとうございます!
答え1
私は-toや-toxmodmap
のようないくつかのツールを試しました。xbindkeys
xdotool
CtrlLeftHomeCtrlRightEnd
問題は次のとおりです。その結果Ctrl-Leftそして - なぜならHomeCtrlRightEndボタンが外れないそして効果もなく…
睡眠を使用してスクリプトを作成する必要があります。
$ cat HomeEnd.sh
#!/bin/bash
sleep .2
KEY=${1?key}
xdotool key ${KEY}
次に、設定マネージャ>キーボード>アプリケーションショートカットを使用するか、コマンドラインを使用してショートカットを割り当てました。
$ xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Ctrl>Left" -s "${HOME}/bin/HomeEnd.sh Home" -n -t string
$ xfconf-query -c xfce4-keyboard-shortcuts -p "/commands/custom/<Ctrl>Right" -s "${HOME}/bin/HomeEnd.sh End" -n -t string
これで機能し、Ctrlキーを押したり放したりできます。LeftCtrlRight
答え2
今、最も簡単な方法はAutoKeyを使用することです。
https://github.com/autokey/autokey/wiki
一連のキーストロークを呼び出すには、新しいスクリプトを作成する必要があります。
keyboard.send_keys("<ctrl>+a")
そしてショートカットに割り当てます。
答え3
これは答えかもしれませんが、役に立つヒントを提供することが目的です。
私が正しく理解したら、単一のキーをバインドしようとしています。いくつかの鍵押す。与えられた例は+Endに再マッピングすることです(理解しやすいかもしれません)。CtrlE
xmodmap
そしてxbindkeys
xev
古典的な方法は、Xツールを使用してキーコードを確認することです。たとえば、xmodmap
次の説明に従ってキーを再マップします。この回答はaskubuntu.comにあります。。ただし、これは回答に記載されている複数のキーを再マップすることはできません。この質問について。
xbindkeys
別の方法は、キャッチキーと送信キーを使用することですxvkbd
。答えは次のとおりです。この投稿。しかし、誰かがコメントで述べたように、このアプローチにも注意があり、集中力を失う可能性があります。
実際にはあります。エマルジョン複数のキーを別の複数のキーに再マップするように求められました(あなたの要求よりも一歩難しいです)。残念ながら、答えxmodmap
ではこれを達成することはできませんxbindkeys
。
選択する:xdotool
しばらく前に、私はまだ2ボタンマウス(非常に古いハードウェアであることがわかっています)を使用しながら、マウスの中のボタンクリックをシミュレートしようとしました。その後、xdotool
キーボードキーだけでなくマウスクリックもシミュレーションできることがわかりました。
私の提案はxdotool
シミュレートされたキーボードキーを使用することですEnd(これは一連のコマンドを提供します)。次に、このコマンドを使用して、次の場所にあるXfce4にカスタムショートカットCtrl+を割り当てます。E設定マネージャ>キーボード>アプリケーションショートカット。
ビルドコマンドを使用するには、xdotool
次を参照してください。いくつかの例そのうちの1つが以下に引用されています。
例: Firefox URL バーに焦点を当てる
WID=`xdotool search "Mozilla Firefox" | head -1` xdotool windowactivate --sync $WID xdotool key --clearmodifiers ctrl+l # As of version 2.20100623, you can do this simpler version of above: xdotool search "Mozilla Firefox" windowactivate --sync key --clearmodifiers ctrl+l
このツールを使用してから古くなっており、お客様の質問に正確な回答を提供することはできません。xdotool
Xfce4を使用しているようです。アプリケーションのショートカットDebian Xfce で試すことができる最高のソリューションです。