web-dev-qa-db-ja.com

GNOMEでCLIを使用してキーボード言語を切り替える

ターミナルを使用してキーボードの言語を切り替える方法を探しています。

input-sources

setxkbmap usここに記載 のような回避策はすでにいくつかあります。

しかし、これは回避策であり、特定のことは行いません(たとえば、 Ctrl+S 英語以外のキーボードでの動作を停止し、gnomeの右上隅の言語アイコンは変更されません。これがsetxkbmapが解決策ではない理由です)。

3
user999598

すでに追加されているレイアウト:

GUIを介して入力ソースをすでに追加している場合は、以下のコマンドでリストを取得します

gsettings get org.gnome.desktop.input-sources sources

例:

pratap@pratap:~$ gsettings get org.gnome.desktop.input-sources sources
[('xkb', 'se'), ('xkb', 'us'), ('xkb', 'ru'), ('xkb', 'de')]
pratap@pratap:~$

0、1、2、3から数えます。番号を覚えたら、以下のコマンドを使用して入力ソースを変更します(番号を任意の番号に置き換えます)。

gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[2].activate()"

例:

pratap@pratap:~$ gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().inputSources[2].activate()"
(true, '')
pratap@pratap:~$

enter image description here

新しいレイアウトを追加するには:

同様に、gsettings setコマンドを使用して新しい入力ソースを追加し、必要な順序で0、1、2、3などから数えることができます。

gdbusコマンドを実行して、入力ソースを切り替えます。

1
PRATAP