在 GNOME 中通过 CLI 在键盘语言之间切换

5 command-line keyboard-layout language

我正在寻找一种可以使用终端切换键盘语言的方法。

输入源

已经有一些像setxkbmap us 这里提到的解决方法。

但这是一种解决方法,并且它不会执行某些操作(例如Ctrl+S在非英语键盘上停止工作,并且 gnome 右上角的语言图标不会改变。这就是为什么setxkbmap不是解决方案)。

UnK*_*OWn 5

已经添加的布局:

如果您已经通过 GUI 添加了输入源..使用以下命令获取列表

gsettings get org.gnome.desktop.input-sources sources
Run Code Online (Sandbox Code Playgroud)

例子:

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

从 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()"
Run Code Online (Sandbox Code Playgroud)

例子:

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:~$
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

添加新布局:

以类似的方式,您可以使用命令添加新的输入源gsettings set,按照您想要的顺序并从 0、1、2 和 3 等开始计数。

并运行gdbus命令在输入源之间切换。

  • 看起来不错,但不起作用。返回(假,'')。有什么改变吗?Wayland 上的 Ubuntu 22.04.1。 (2认同)