web-dev-qa-db-ja.com

スクリプトからキーボードショートカットを設定する方法

カスタムキーボードショートカットが再起動時に失われることを意味するこのバグ に苦しんでいるようです。 8個のカスタムショートカットがあり、8個すべてを キーボードショートカットを設定するためのGUIメソッド で再設定するのは面倒です。

12.10とUnityを使用しています。カスタマイズしたいキーボードショートカットは

  • 「ワークスペース左にシフト」(右/上/下)-ショートカット付き CtrlAltl (h/k/j)
  • 「ウィンドウを左に1ワークスペース移動」(右/上/下)-ショートカット付き ShiftCtrlAltl (h/k/j)。

(少なくとも、これらはキーボードショートカットダイアログに表示される名前です。)

バグが修正されるまで、ログイン後に8つすべてを設定するスクリプトを実行できるようにしたいと思います。キーボードショートカットを設定するには、どのコマンドラインプログラムとオプションを実行する必要がありますか。

7
Hamish Downer

次のようなスクリプトを使用してその効果を達成できると思います(デスクトップの切り替えのみを扱いますが、switch-to-workspace*move-to-workspace*に変更することで拡張できます):

#!/bin/bash
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-up "['<Control><Primary><Alt>k']"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-down "['<Control><Primary><Alt>j']"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-left "['<Control><Primary><Alt>h']"
gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-right "['<Control><Primary><Alt>l']"

注:おそらく、ショートカットの<Primary>部分は冗長です。自分で試してみてください。

プロセスを自動化するには、「スタートアップアプリケーション」プログラムを使用して、起動時にこのスクリプトを実行することもできます。

5
Salem