web-dev-qa-db-ja.com

CTRL + qキーをCTRL + cイベントにマッピングする方法は?

どうすれば Ctrl+Q キーの組み合わせは Ctrl+C イベント?

私のキーボードはProgrammer-dvorakにマッピングされており、 Ctrl+X 、 Ctrl+C そして Ctrl+V マッピングされるイベント Ctrl+' 、 Ctrl+Q 、 Ctrl+J キーをそれぞれ押します。

Mac OSXには、これを行うDvorak-Qwertyと呼ばれるものがあります。

また、Dvorak-Qwertyを試してみてください。入力にはDvorakを使用しますが、Q(コマンド)AなどのキーボードショートカットにはQwertyを使用します。X、C、V(カット、コピーなど) 、貼り付け)など、キーボード上の場所によって、

これまでのところ、私はxbindkeysとxdotoolを組み合わせて、運なしで試しました。

#Dvorak Cut
"xdotool key --delay 0 --clearmodifiers ctrl+x"
    m:0x4 + c:52
    Control + apostrophe 

#Dvorak Copy
"xdotool key --delay 0 --clearmodifiers ctrl+c"
    m:0x4 + c:53
    Control + q 

#Dvorak Paste
"xdotool key --delay 0 --clearmodifiers ctrl+v"
    m:0x4 + c:54
    Control + j

また、XKB経由で次のエントリを試しました。

// Ctrl+' for Cut
interpret apostrophe + Ctrl {action = Redirect(Key=<AB05>, modifiers=Control);};

// Ctrl+q for Copy
interpret q + Ctrl {action = Redirect(Key=<AD08>, modifiers=Control);};

// Ctrl+j for Paste
interpret j + Ctrl {action = Redirect(Key=<AB09>, modifiers=Control);};

しかし、それでもうまくいきません。

4
Richard Ayotte

autokey-gtkを使用してこれを実現できます。Autokeyをログイン時に実行するように設定できます。Autokeyはバックグラウンドで動作し、キーボードとマウスからの入力を監視します。

例:Ctrl+qCtrl+cのように動作させたいと述べました。これは、このプログラムを使用して非常に簡単に実現できます。

autokey-gtkをインストールするには、ターミナルで次のコマンドを発行します

Sudo apt-get install autokey-gtk

これをインストールしたら、Dashからアクセスするか、ターミナルでauto-gtkと入力してアクセスできます。上記のキーの組み合わせを設定するには、次の手順を実行します。

ステップ1

Run autokey-gtk

ステップ2

File -> create -> New Top-Level Folderから新しい最上位フォルダーを作成します

ステップ

フォルダを選択し、File -> create -> New Scriptから新しいスクリプトを作成します

ステップ4

"#Enter script code box""keyboard.send_keys(shortcut you desire to imitate)"を入力します

例:

1. keyboard.send_keys("<ctrl>+c")

2. keyboard.send_keys("<ctrl>+v")

3. keyboard.send_keys("<ctrl>+x")

注:追加するホットキーごとにステップ3-4を繰り返します

ステップ5

作成した各スクリプトについて、Hotkeyの横にある2番目の"set button"をクリックし、模倣に使用するキーの組み合わせを入力します。

keyboard.send_keys("<ctrl>+c") scriptの場合、テキストボックスにqと入力し、click on the Control buttonと入力して、[OK]をクリックします。

*スクリプトごとにこれを行い、もちろんホットキーを変更してください。

ステップ6

Click on Edit -> Preferences

Automatically start Autokey at Loginの横のチェックボックスを選択します

これはあなたが求めていることを達成するはずです:)

3
Scott Stookey
"xdotool key --delay 0 --clearmodifiers ctrl+c"
    Control + q + Release

ソース: http://www.ict.griffith.edu.au/anthony/info/X/event_handling.txt (「Xキーボードイベントの生成」を検索)

1
thomie