web-dev-qa-db-ja.com

すべてのキーストロークをアプリケーションにバインドします

古いサーバーでLXDEを使用して16.04を実行しています。グラフィックスは明らかに素晴らしいものではありません(8MBオンボードグラフィックス)。したがって、私はx2goを使用してxsessionを10 100 1000を超えて転送しています。問題は、キーストローク( alt+tab、 ctrl+alt+rightなど)、アプリケーションにバインドしないため、アプリケーションを切り替える代わりにwithin x2go、x2goアプリケーションからクライアントマシンで次に開いているプログラムに切り替えます。

すべてのキーストローク(より良いキーストローク、1つのキーストロークは除外)を単一のアプリケーションにバインドするにはどうすればよいですか?

クライアントコンピューターはUnityを実行しています。ホスト(セッションをx2go経由で送信しているコンピューター)はLXDEを実行しています。

6
anonymous2

Unityショートカットを無効にする

  1. インストールccsm

    Sudo apt-get install compizconfig-settings-manager
    
  2. デスクトップカテゴリ→Ubuntu Unityプラグイン→スイッチャータブに移動します

    各ショートカットをクリックし、[有効化]のチェックを外してから[OK]

  3. [デスクトップ]カテゴリ→[デスクトップウォール]→[バインド]タブに移動します

    同様に、必要なショートカットを無効にします。

  4. 閉じるccsm、閉じる直後に有効です。

ccsmショートカットは、システム設定のカスタムショートカットよりも優先されます。 GUIを使用して上記の手順を実行すると、dconfを使用して基本設定が変更されたことを確認できます。

$ dconf watch /
/org/compiz/profiles/unity/plugins/unityshell/alt-tab-prev
  'Disabled'

/org/compiz/profiles/unity/plugins/unityshell/alt-tab-prev
  'Disabled'

/org/compiz/profiles/unity/plugins/unityshell/alt-tab-forward
  unset

/org/compiz/profiles/unity/plugins/unityshell/alt-tab-forward
  unset

ユニティスイッチャーのショートカットを無効にするラッパースクリプトを作成し、x2goclientを起動し、x2goclientを閉じた後にそれらを有効に戻す方が良いでしょう。

dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-prev "'Disabled'"
dconf write /org/compiz/profiles/unity/plugins/unityshell/alt-tab-forward "'Disabled'"
...
x2goclient
dconf reset /org/compiz/profiles/unity/plugins/unityshell/alt-tab-prev
dconf reset /org/compiz/profiles/unity/plugins/unityshell/alt-tab-forward
...

LXDEショートカットを無効にする

一部の人に役立つ古い回答

あなたが言及するショートカットはOpenBoxに属します。 Lubuntuの事前定義設定で起動されます。 (少なくとも、これはLubuntu 14.04の場合です)。

~$ pgrep -a openbox
4772 openbox --config-file /home/lubuntu/.config/openbox/lubuntu-rc.xml

OpenBoxからバインドを解除するか、既にバインドされているツールを解除する必要があります。

  1. 構成ファイルを編集用に開きます

    leafpad ~/.config/openbox/lubuntu-rc.xml
    
  2. 次に、XMLコメントタグ<!-- -->を使用して、必要なショートカットにコメントを付けるか、削除します。


X2goclientに転送される新しいカスタマイズされたショートカット

その後、wmctrlxvkbdを使用してx2goclientウィンドウにショートカットを転送するグローバルショートカットをセットアップします。

  1. システム設定→キーボード→ショートカットタブ
  2. コマンドで新しいカスタムショートカットを追加

    bash -c 'wid=$(wmctrl -l | awk "/X2Go Client/ {print $1; exit}"); echo $wid; if [ "$wid" ] ; then xvkbd -window $wid -xsentevent -text "\A\t"; fi'
    

    ために AltTab

2
user.dz