キーボード入力をシミュレートする方法は?


15

これは、Ubuntu / Linuxを楽しむことができない最大の理由です。

理想的には、UbuntuでAutoHotKeyスクリプトを実行できるようにしたいだけですが、それをWineで動作させることができなかったのです。

AHKで行っていることは次のとおりです(追加の修飾子を使用しても機能します。Shift+ Alt+ lShift+ですright)。

!l:: Send, {Right}
+!l:: Send, +{Right}
^!l:: Send, ^{Right}
^+!l:: Send, ^+{Right}

私は、オートキーを試してみましたが、それは再マッピング、入力を消費していなかったAlt+をI働いた右矢印キーに、それはまだ実行Alt+ I、時々 、アプリケーションメニューから項目を選択します。

私が得た最も近いものはxbindkeys、ホットキーを設定することでした。これはうまくいくようです。またxvkbd、入力のシミュレーション用。この部分は本当にバグです。すべてのプログラムで機能するわけではなく、他の問題の中でも特に集中力を失います。

私が何をしようとしているのか疑問に思っている人のために:私はダウンI J K L中に矢印キーとして使用しますAlt


ちょっとスティーブン、私はまったく同じものを探しています。これに成功しましたか?
lolmaus-アンドレイ・ミハイロフ

回答:


18

私はxvkbdを使用したことがありませんが、キーボード入力をシミュレートするために私が気に入って使用している2つの素晴らしいプログラムがあります。1つはでxte、もう1つはですxdotool

sudo apt-get install xautomation xdotool  

両方xdotoolxte非常に似ていますが、私が使用しているためxte、ほとんど私はその一つに行きます。

xte:

の最も基本的な構文xteは次のとおりです。

xte 'command key/mousebutton/xyCoordinates'

xte ただし、キーボード入力を作成するだけでなく、マウスを動かしたり、マウスボタンの押下などをシミュレートしたりすることもできます。

構文例:

  • 単一のキーを押すには: xte 'key keyName'

  • キーの組み合わせを呼び出すには: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName

  • マウスボタンを呼び出すには:(xte 'mouseclick buttonNumber'ボタン番号はから検索できますxev

  • マウスを移動するには: xte 'mousemove xCoordinate yCoordinate'

  • もっと!読んだman xte

キーネーム:

キー名のリストは次のとおりです(明らかなもの以外)。

Home
Left
Up
Right
Down
Page_Up
Page_Down
End
Return
BackSpace
Tab
Escape
Delete
Shift_L
Shift_R
Control_L
Control_R
Meta_L
Meta_R
Alt_L
Alt_R
Multi_key  
Super_L  
Super_R

読書:

読むことにも興味があるかもしれません:

キーボードのキーの機能を変更するにはどうすればよいですか?(カスタムキーボードコマンド/ショートカットを作成するにはどうすればよいですか?)

特定のキーまたはデバイスを再マップするにはどうすればよいですか?


これはよさそうですが、では動作しませんxbindkeys。ときxte 'key a'から呼び出されxbindkeys、私は私のホットキーを押したときに、それはちょうど私のカーソルが点滅します。xte 'key a'コマンドラインで動作します。作品gnome-terminalから呼ばれxbindkeysます。問題がどこにあるのかわかりません。
ファーザー

... xteから呼び出されたときに、フォーカスされたウィンドウにキーイベントを送信しようとしているようには思えませんxbindkeys
...-Farzher

@StephenSarcsamKamenar私自身は、いくつかの問題があったが、されている私の経験から、xbindkeys私にとっては問題..私はでキーの組み合わせを押す必要が正確に取得するために同時にxbindkeysコマンドを送信します。YMMV。
セス

たぶんxbindkeys問題。xdotoolそれで働いたが、私がキーを押したとき、それは決して繰り返さないだろう。良い代替品は何xbindkeysですか?
ファーザー

1
@StephenSarcsamKamenar Xmodmapにはで説明され、この答えだけでなく、この 1。xbindkeys十分に前処理を行わなかった場合は、それを使用します(少なくとも私にとってはそうではありません。)
セス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.