Как НЕ показывать всплывающее окно выбора раскладки клавиатуры при смене языка в GNOME 3


12

Так как я установил 17.10, при переключении языка с помощью назначенного сочетания клавиш я получаю это окно переключателя, которое мешает мне печатать в течение пары секунд. И да, пара секунд - это огромное количество времени при переключении языков.

огромный захватывающий индикатор переключения языка

Это происходит как в X11, так и в Wayland, но не происходит (окно с препятствиями не появляется), когда я переключаю язык, нажимая на индикатор lang на верхней панели. Есть ли способ сказать этому окну "пожалуйста, уходи"?

Ответы:


4

Это возможно путем запроса к gnome-shell через его интерфейс JS с gdbus call( src ).

Следующий скрипт будет чередовать два настроенных источника ввода. Легко изменить, если у вас есть больше.

#!/usr/bin/env bash

cur_idx=$(
        gdbus call \
                --session \
                --dest org.gnome.Shell \
                --object-path /org/gnome/Shell \
                --method org.gnome.Shell.Eval \
                "imports
                        .ui.status
                        .keyboard
                        .getInputSourceManager()
                        .currentSource
                        .index" |
        cut -d"'" -f2
)

next_idx=$(( 1 - $cur_idx ))

gdbus call \
        --session \
        --dest org.gnome.Shell \
        --object-path /org/gnome/Shell \
        --method org.gnome.Shell.Eval \
        "imports
                .ui
                .status
                .keyboard
                .getInputSourceManager()
                .inputSources[$next_idx]
                .activate()" \
        &> /dev/null

Сделайте его исполняемым с помощью, chmod a+x </path/to/script>и вы можете затем привязать его к пользовательской комбинации клавиш:

Откройте « Настройки» -> «Устройства» -> «Клавиатура» и нажмите кнопку выбора « + » внизу, чтобы назначить сценарий какому-либо ярлыку

(Для Gnome <3.x: Настройки -> Устройства -> Клавиатура -> Пользовательские сочетания клавиш ).


1
Спасибо, скрипт работает без нареканий в SID + последняя версия Gnome-3.
Анкостис

3

Наложение появляется, если нажать и удерживать немного дольше. Быстрое нажатие и отпускание должны изменить макет без отображения наложения.

В качестве обходного пути вы можете установить другое сочетание клавиш для переключения раскладок, см. Это для справки: Ubuntu 17.10 не может изменить сочетание клавиш для ввода на alt + shift .


Да, я мог сделать то, что хотел, назначив новый ярлык, как вы предложили. При моем предыдущем выборе (это было нажатие F2 / F3) это окно (оверлей, как вы его называете) появилось бы, даже если бы я кратковременно нажимал клавиши. Спасибо.
Никосал

Я всегда переназначал переключение lang на клавиши F2 / F3 вместо alt + shift, очевидно, потому что я предпочитаю поглаживание «одной клавишей» вместо комбинации. Когда я обновился до 17.10, переключение F2 / F3 давало мне это наложение. Когда я назначил новую клавишу (ScrLk), оверлей не появится, поэтому я более или менее в порядке (хотя ScrLk находится далеко справа и неудобен для быстрой печати).
Никосал

Я нажимаю клавишу настолько быстро, насколько это возможно, и окно все еще появляется (что в порядке), и оно крадет фокус клавиатуры (что не в порядке).
Flimm

@Flimm Что насчет альтернативного предложения (например, alt + shift)?
Помский

1
Установка другого ярлыка заставляет пользователей менять общие ключи, ломать привычки, а также нарушать совместимость с другими системами. Я лучше возвращаюсь к окнам. Я бы не считал что-либо, что близко к «проектному решению - принимай или уходи», как правильное решение ...
user1656671
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.