Переключение между языками клавиатуры с помощью CLI в GNOME

Вопрос или проблема

Я ищу способ переключать язык клавиатуры с помощью терминала.

input-sources

Существуют обходные решения, такие как setxkbmap us упомянуто здесь.

Но это обхождение, и оно не выполняет определенные функции (например, Ctrl+S перестает работать на клавиатурах не на английском языке, и иконка языка в правом верхнем углу GNOME не меняется. Вот почему setxkbmap не является решением).

Уже добавленные раскладки:

Если вы уже добавили источники ввода через графический интерфейс.. получите список с помощью следующей команды

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:~$

вставьте описание изображения здесь

чтобы добавить новые раскладки:

Аналогично, вы можете добавить новые источники ввода с помощью команды gsettings set, в указанном вами порядке и считайте с 0, 1, 2 и 3 и так далее..

и выполните команду gdbus, чтобы переключаться между источниками ввода..

Список всех возможных языков:

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

Вывод:

[('xkb', 'se'), ('xkb', 'us'), ('xkb', 'ru'), ('xkb', 'de')]

Чтобы переключить язык на ‘se’ (0 – индекс языка, в данном случае возможные индексы 0-3):

gsettings set org.gnome.desktop.input-sources current 0

Ответ или решение

Переключение языков клавиатуры с помощью CLI в GNOME на Ubuntu 24.04

Введение

В данной статье будет рассмотрен способ переключения языков клавиатуры в GNOME на Ubuntu 24.04 при помощи командной строки (CLI), особенно в контексте использования среды Wayland. Также будут предоставлены команды для добавления и управления языковыми раскладками.

Просмотр доступных раскладок клавиатуры

Для начала нужно узнать, какие раскладки языков уже добавлены. Это можно сделать с помощью следующей команды:

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

Пример вывода:

[('xkb', 'se'), ('xkb', 'us'), ('xkb', 'ru'), ('xkb', 'de')]

Вывод показывает список текущих источников ввода, а раскладки могут быть обозначены по индексу, например:

  • 0 – коммутатор на ‘se’ (шведский)
  • 1 – коммутатор на ‘us’ (английский)
  • 2 – коммутатор на ‘ru’ (русский)
  • 3 – коммутатор на ‘de’ (немецкий)

Переключение раскладок клавиатуры

Для переключения на нужную раскладку клавиатуры используйте следующую команду, заменив N на индекс нужного языка:

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

Например, если вы хотите переключиться на русский (индекс 2), выполните:

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, что подтвердит успешное переключение:

(true, '')

Добавление новых раскладок

Если вы хотите добавить новые раскладки, вы можете сделать это с помощью команды gsettings set. Например, чтобы добавить раскладку fr (французский), выполните:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'se'), ('xkb', 'us'), ('xkb', 'ru'), ('xkb', 'de'), ('xkb', 'fr')]"

После добавления новой раскладки, не забудьте обновить порядок индексации и использовать команду gdbus для активации раскладки по желаемому индексу.

Заключение

В данной инструкции описана последовательность действий для переключения раскладок клавиатуры через терминал в GNOME на Ubuntu 24.04. Этот подход удобен для пользователей, которые предпочитают работать с клавиатурой и терминалом. Переключение через CLI обеспечивает гибкость и возможность быстрого редактирования раскладок.

Если вы столкнулись с проблемами или у вас есть вопросы, не стесняйтесь обращаться за помощью в специализированные форумы или сообщества Ubuntu.

Оцените материал
Добавить комментарий

Капча загружается...