いくつかのUbuntu 14.04/14.10デスクトップをプロビジョニングする必要があります。構成ファイルまたはコマンドラインから設定できるため、ほとんどのものを簡単にプロビジョニングできました。
しかし、利用可能な言語を設定し、言語を切り替えるためのキーボードショートカットを設定するという2つのことに問題があります。私はgnome-control-center
からそれらを行う方法を知っています
利用可能な言語を設定する
Region & Language > Input Sources > English (US) + German + Italian
言語を切り替えるためのキーボードショートカットを設定する
Shortcut Settings > Typing > Switch to next source (Super+Escape), Switch to previous source (Shift+Super+Escape)
しかし、構成ファイルまたはコマンドラインから実行する方法がわからないため、自動的にプロビジョニングすることはできません。
探しているキーは次のとおりです。
入力ソースを編集する場合:
org.gnome.desktop.input-sources sources
言語を切り替えるためのキーボードショートカットを編集するには:
org.gnome.desktop.wm.keybindings switch-input-source
入力ソースを逆方向に切り替える場合:
org.gnome.desktop.wm.keybindings switch-input-source-backward
コマンドラインから3つを編集するコマンドの例:
入力ソースを編集するには、質問に記載されているように入力ソースを設定します。
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'it'), ('xkb', 'de')]"
スイッチとショートカットキーの組み合わせを設定するには Ctrl+space
gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Primary>space']"
スイッチ-ショートカットキーの組み合わせを設定して後方に切り替える Shift+Super+space
gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Shift><Super>space']"
gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.wm.keybindings switch-input-source
gsettings get org.gnome.desktop.wm.keybindings switch-input-source-backward
次のコマンドですべてのキーをリストすることにより、データベース内のキーワードを検索できます。
gsettings list-recursively
既存のすべてのキーを一覧表示するか、(私が定期的に行う)dconf-editor
をインストールして、単にキーワードを検索します Ctrl+F。
Edit
コメントで要求されたように、コマンドラインから入力ソースをウォークスルーする小さなスクリプトを追加しました。
#!/usr/bin/env python3
import subprocess
import sys
src = sys.argv[1]
key = "org.gnome.desktop.input-sources"
get = lambda cmd: subprocess.check_output(["/bin/bash", "-c", cmd]).decode("utf-8").strip()
src_list = len(eval(get("gsettings get "+key+" sources")))-1
current = int(get("gsettings get "+key+" current").split()[-1])
if src == "+":
set_new_value = "gsettings set "+key+" current "+(str(current+1) if current < src_list else "0")
Elif src == "-":
set_new_value = "gsettings set "+key+" current "+(str(current-1) if current > 0 else str(src_list))
subprocess.Popen(["/bin/bash","-c", set_new_value])
switch_source.py
として空のファイルに保存します次のコマンドで実行します:
python3 /path/to/switch_source.py +
次の入力ソースに移動する
python3 /path/to/switch_source.py -
前のものに行く