Как настроить переключение раскладки клавиатуры через Caps Lock в Chrome OS

Придётся немного повозиться, так как штатно создать хоткей из одной кнопки нельзя, плюс нужно избавиться от штатного поведения кнопки Caps Lock.

Вам потребуется: доступ к терминалу (Crosh, либо Ctrl-Alt-F2). Скорее всего придётся включить режим разработчика.

  1. Откройте настройки системы, и в Клавиатура -> Caps Lock выберите вариант "Отключить". Теперь эта кнопка будет отвечать системе keycode-ом ноль;
  2. В chrome://flags включите "Enable shortcut customization app" и "Enable customization in new shortcuts app", если не делали этого раньше, и перезагрузитесь. Возможно, в более новых версиях ОС это не будет требоваться, однако на версии 118 их нужно включить;
  3. Откройте приложение "Shortcuts", делается сочетанием клавиш Search-Ctrl-S. Найдите сочетание клавиш, выполняющее переключение языка ввода, и отредактируйте его (кнопка карандаша справа). Добавьте новое сочетание клавиш вида Search-Ctrl-CapsLock. Кнопка CapsLock будет отображаться на экране по-странному, так как мы её отключили, например она будет видна как MailSend, это нормально (наверное);
  4. Закройте все окна (поскольку нам придётся перезапустить графический интерфейс) и откройте терминал.

В нём (bash-шелле), создайте копию файла Preferences развернув его содержимое в человеко-читаемый вид этой командой:

cd ~
cat Preferences | jq > NewPrefs

Теперь, откройте файл NewPrefs чем-нибудь (vim/nano или иной текстовый редактор) и найдите наше добавленное сочетание клавиш, например поиском по слову overrides. Это должна быть секция на подобии этой:

  "accelerator": {
    "overrides": {
      "86": [
        {
          "action": 0,
          "key": 0,
          "key_state": 0,
          "modifiers": 20,
          "state": 0,
          "type": 0
        }
      ]
    }
  },

Единственное, что нам нужно поменять – изменить значение modifiers на 0. Делаем, сохраняем файл.

Теперь нужно заменить файл Preferences нашим изменённым и быстро перезапустить оболочку ОС. Одной строкой это можно сделать так:

mv Preferences Preferences.bak && cp NewPrefs Preferences && pkill -4 chrome

Ждём 5-15 секунд, пока оболочка осознает произошедшее и вновь запустится. После этого можно проверить результат, язык должен начать меняться кнопкой Caps Lock.

Если зайти в приложение Shortcuts, можно увидеть что именно мы сделали: убрали модификаторы (Search и Ctrl) от нашего хоткея. На этом всё.

thumb_up 2 thumb_down 0 chat Комментарии (0) favorite Донат