Комментарии пользователя izman

Linux пользовательizman

Комментарии пользователя (1)

  • 05.05.2015, 23:06
    Я подобного решения так и не нашел, потому написал свою утилиту https://github.com/mervick/kbsw,
    работает следующем образом (для Ubuntu):

    Пример 1: в системе установлено несколько языков, я хочу переключать определенный язык через свою комбинацию клавиш, допустим ctrl+shift+num1, ctrl+shift+num2, и т.д.
    Для этого сначала ввожу в терминале "bash /путь/к/файлу/kbsw.sh --show-layouts" и утилита выведет все лайоты установленных клавиатур, у меня это
    [ 'us' 'ru' 'ua' ]
    После, захожу Параметры системы->Клавиатура->Комбинации клавиш->Дополнительные комбинации и добавляю новые комбинации клавиш с командой "bash /путь/к/файлу/kbsw.sh --layout=ru" для русского языка, "...=ua" для украинского и "...=us" для английского соответственно, для каждой комбинации устанавливаю свою комбинацию клавиш нажатием напротив названия комбинации клавиш. Profit!

    Пример 2: в системе установлены три раскладки: английский, русский и украинский, я хочу через alt+shift переключать между собой только первые два, а украинский только по установленному до этого сочетанию клавиш (Пример 1).
    Для начала, нужно убрать стандартный переключатель на другой хоткей (я поставил на capslock), а после через комбинации клавиш (смотри выше) установить команду для хоткея "bash /путь/к/файлу/kbsw.sh --switch" (будет переключаться первые два установленных в системе языка между собой, если нужно переключать 3 или более, нужно указать с параметром --switch=N, где N - количество языков для переключения), после нужно установить хоткей для комбинации, однако система не разрешит установить сочетание alt-shift, поэтому для этого нужно в редакторе dconf
    $ sudo apt-get install dconf-tools
    $ dconf-editor
    в разделе org.gnome.settings-daemon.plugins.media-keys.org.gnome.custom-keybindings
    будут подразделы custom[0-9], ищем нужный нам подраздел по полю command (bash /путь/к/файлу/kbsw.sh --switch), в поле binding устанавливаем значение <Shift><Alt>. Все