Проблема переключения раскладки в Elementary OS

Прошел почти год с момента выпуска релиза Elementary OS 5.x, но проблема медленного переключения раскладки клавиатуры так и не исправлена. Похоже разработчикам нет до неё никакого дела. Ключевые разработчики — американцы и им это просто не надо.

Долго мучился и ругался, пока не нашёл этот скрипт. Работает отлично. Большое спасибо его автору! Скрипт просто заменяет штатный переключатель раскладки. Значок раскладки в статусной строке остается.

Порядок установки:

sudo apt install python3-pip
python3 -m pip install --user pynput==1.4

Запуск скрипта можно поместить в автозапуск:

Настройка автозапуска в Elementary OS

У меня на клавиатуре бездействует клавиша «Win» с правой стороны. Можно сделать переключение языка с её помощью. Сама система такой настройки не предоставляет.

    {keyboard.Key.cmd_r},  # Super R

Ещё один хороший вариант – это «Caps Lock». Клавиша есть на всех клавиатурах, можно настроить на всех своих компьютерах. Будет очень удобно! Такая настройка есть в конфиге по умолчанию. Но она не всегда работает. Чтобы переключение этой кнопкой работало всегда следует прописать её следующим способом:

    {keyboard.KeyCode(16777215)}, # Caps Lock

Обязательно нужно в настройках выключить переключение раскладки и выключить стандартное поведение клавиши «Caps Lock», после чего перезапустить компьютер:

Настройки клавиатуры в Elementary OS

Можно задействовать вообще любую клавишу. Надо знать только её код. Узнать код можно, если установить параметр DEBUG в состояние True. Потом не забудьте вернуть обратно, когда код будет известен:

DEBUG = False
#DEBUG = True

2020 год

Дополнение, спустя некоторое время.

Сейчас июль 2020 года. Ситуация со сменой раскладки изменилась — переключение стало происходить довольно быстро. Не мгновенно, но реально быстро. Вы заметите проблему только если печатаете с высокой скоростью.

Но осталась другая неприятность. В момент переключения раскладки происходит какая-то непонятная вещь. Компьютер как бы подвисает на мгновение. Сейчас это мгновение, как я уже сказал, очень маленькое. Но подвисание сопровождается тем, что вы теряете фокус ввода текста. Происходит это лишь в некоторых программах. И только в некоторых ситуациях.

Например, вызов быстрого диалога переименования файла или вы начали редактирование стиля в инспекторе Mozilla Firefox. В момент переключения раскладки быстрый диалог переименования или редактирования стиля сворачивается.

Скрипт о котором шла речь выше переключает раскладку без этих неприятностей, так что он всё ещё актуален. Благодаря этому скрипту я всё ещё пользуюсь Elementary OS, суммарно уже больше 3 лет.

5 комментариев

Па
Как удалить данный скрипт из системы?
Скрипт - это же просто один файл, удаляем его и все. В автозапуске тоже его удаляем. Все.
Ро
В шестой версии все еще есть тормоза с переключением?
Ставил 6 только в виртуалбокс, вроде не тормозило. Вообще, уже под конец и в 5 не особо тормозило.
ОМ
и в 6-ой тоже тормоза. данный "костыль" все еще актуален, к сожалению.