18 октября 2013

Не работают горячие клавиши раскладки клавиатуры в Ubuntu 13.10

К сожалению после установки системы Ubuntu 13.10 и попытки назначить горячие клавиши для смены раскладки клавиатуры с английской на не латинскую раскладку (русскую, украинскую и т.п.), не приводит к положительному результату, т.е. назначение происходит, а переключение раскладки - нет. И поэтому приходится "лезть" указателем в индикатор для переключения обычным кликом с перемещением в контекстном меню на желаемую раскладку. Это очень неудобно, особенно для тех пользователей, которые много печатают на разных языках.
Баг известен разработчикам оказывается давно ( с 2013-08-29 https://bugs.launchpad.net/ubuntu/+source/indicator-keyboard/+bug/1218322), но как говорится: "А воз и ныне там".
Извечный русский вопрос: "Что делать?" заставил меня искать решение в Великом Google, но и там я пока ни чего не нашёл. Тогда я решил попробовать заменить стандартный индикатор keyboard на XNeur Switcher - программа для автоматического переключения раскладок клавиатуры, в зависимости от набираемого текста и сделать из него обычный переключатель раскладки клавиатуры с назначением горячих клавиш. Всё получилось и прекрасно работает.


Итак всё по порядку.

Устанавливаем в систему XNeur Switcher.
Установить его можно из Центра приложений Ubuntu, но там версия более старая, поэтому лучше установить из его собственного репозитория.

Откройте терминал (Ctrl+Alt+T), скопируйте и выполните следующие команды:

sudo add-apt-repository ppa:andrew-crew-kuznetsov/xneur-unstable
sudo apt-get update
sudo apt-get install xneur

После установки и запуска программы, если значок не появился в трее, выполните ещё эту команду:

gconftool-2 -s -t string /apps/gxneur/rendering_engine AppIndicator & exit

Когда значок появится в трее, кликните на нём, в выпадающем меню выберите Параметры:


В открывшемся окне Настройки XNeur, в вкладке Общие активируйте пункт Включить ручной режим переключения:


Далее переходим в вкладку Комбинации клавиш, двойной клик на строке Включение первой раскладки. Когда откроется окно Добавить пользовательские действия, нажмите клавишу/клавиши для назначения и нажмите кнопку ОК:


Теперь переходим в вкладку Параметры и активируем параметр Запускать автоматически при старте системы:


Чтобы все настройки применились, нажмите ОК, что в правом нижнем углу окна.

Для использования назначенных клавиш нужно остановить демон:


Теперь вы можете делать переключение раскладки назначенными клавишами/клавишей.

И последнее. Удаляем с панели "недоделанный" индикатор, он всё-равно теперь без надобности. Кликаем на нём и в контекстном меню выбираем Параметры ввода текста:

 

В открывшемся окне убираем флажок с пункта Показать текущий источник ввода в панели меню:


Вот и всё решение вопроса с назначением горячих клавиш для раскладки.

Удачи.

71 комментарий :

  1. Володя, я не перестаю удивляться твоей оперативности. Хоть меня с моей Xubuntu это и не касается, нельзя не отметить, что это если и костыль, то довольно остроумный :) Будем надеяться, что вскоре починят и стандартный переключатель.

    ОтветитьУдалить
    Ответы
    1. А что делать? Раз не поправляют разрабы, приходится выдумывать.

      Удалить
    2. я все у себя поменял без костылей. Достаточно открыть настройки параметры ввода текста кликнуть мышкой в окне "перейти на след источник используя" чтоб появилась надпись "новая комбинация, затем нажать ту комбинацию, которая вам удобна для переключения раскладки и все. У меня все заработало.

      Удалить
    3. О! Спасиб! И у меня заработало

      Удалить
  2. Этот остроумный костыль я еще к 12.04 прибил.Там как известно язык-то клавишами переключается,а вот отображение индикатора бывает зависает.После 10 версии глюки с переключением постепенно нарастают.14.04 наверно будет моноязыковой :)

    ОтветитьУдалить
  3. ===И поэтому приходится "лезть" указателем в индикатор для переключения обычным кликом с перемещением в контекстном меню на желаемую раскладку. Это очень неудобно, особенно для тех пользователей, которые много печатают на разных языках.=== vladimir dolgirev

    Серьёзный недостаток. Для меня очень важный.

    ===нельзя не отметить, что это если и костыль, то довольно остроумный :)===

    Хороший выход из положения.

    Ну, а вообще - тенденция нехорошая. Косячили бы лучше в с чем-нибудь другим, а не с раскладкой.

    ОтветитьУдалить
    Ответы
    1. в кубунту нет таких косяков-система отлично настраивается и работает

      Удалить
    2. +1,в "кедах" всё замечательно и безо всяких костылей.

      Удалить
  4. Так теперь автоматом переключаться не будет, я так понял?

    ОтветитьУдалить
    Ответы
    1. Если остановить демон, то не будет переключаться автоматом. Не останавливай демон и будет переключаться автоматом, только надо ещё в Настройки XNeur флажок убрать в вкладке Общие - Включить ручной режим переключения. Выбор только за тобой. Вот и всё.

      Удалить
  5. есть ли терминальная команда , чтобы удалить с панели "недоделанный" индикатор, в гном-фоллбэк нет пункта Показать текущий источник ввода в панели меню. по крайней мере у меня.

    ОтветитьУдалить
    Ответы
    1. В Редактор dconf можно удалить индикатор по следующему адресу: com/canonical/indicator/keyboard удали флажок в значении visible.

      Или в как ты хочешь в терминале:

      gsettings set com.canonical.indicator.keyboard visible false

      Удалить
    2. спасибо, помогло! Админ, ты самый лучший админ!!! Всегда можешь помочь, и всегда знаешь правильный ответ. Ты крут!!!

      Удалить
  6. Скажите, пожалуйста, а автоматическое переключение раскладки(-ок) gxneur умеет делать в меню даш? Я в своё время остался на 12.04 и не перешёл на 12.10 (и всё, что выпускалось после) по этой причине и по причине того, что в даш тогда не работал copy-paste.

    ОтветитьУдалить
    Ответы
    1. В Даш можно копипастить только колёсиком мышки.

      Удалить
    2. Спасибо, не знал. Простите. Про 12.10 и 12.04 напутал; в общем, речь была о том, когда впервые запилили unity, 11.10 что ли… К этому меню даш так и не привык. Как и все выражаю признательность за оперативное размещения информации (из 4-х сайтов про ubuntu - вчера эту новость прочитал здесь первой).

      Удалить
  7. Спасибо за полезные советы. Ждем статью - Настройка 13.10 после установки :)

    ОтветитьУдалить
  8. Я чего то не пойму, у меня alt+shift работает из коробки, как говорится. Или здесь разговор не об этом?

    ОтветитьУдалить
    Ответы
    1. У меня тоже работает из коробки, но у многих - нет. Это системный баг и разработчики о нём знают. А статья для тех у кого не переключается раскладка после назначения горячих клавиш.

      Удалить
  9. не знаю, как на 13.10, но на 12.04 XNeur нормально работает НЕКОТОРОЕ ВРЕМЯ.
    потом некоторые вводимые буквы начинают удваиваться, чем дальше, тем больше.
    перезагрузка помогает, но разве так можно работать?!
    баг тоже известен разработчикам XNeur давно, и тоже "воз и ныне там" -
    версии 0.16 уже почти год.
    https://bugs.launchpad.net/xneur/+bug/1085626
    ...
    "налево пойдёшь - коня потеряешь, направо - убитому быть" :-/

    ОтветитьУдалить
    Ответы
    1. У меня такая проблема была до перехода на chromium. C тех пор проблем не было с Xneur на 12.04 уже больше года. Не перехожу на новые версии из-за того, что очень старый компьютер и он их не тянет. Кстати, на ноуте стоит 13.10 и тоже все работает без этих "удваиваний". Возможно где-то и что-то не так у Вас в настройках...

      Удалить
    2. с хромиумом понятно, а как насчёт libreoffice?
      и ещё, я специально вставил ссылку на описание бага,
      чтобы показать, что "что-то не так" не только у меня...

      Удалить
  10. Ноги проблемы с переключением раскладки растут из Gnoma, за этот баг несет ответственность не Ubuntu. С этой проблемой Fedora столкнулась раньше. И окончательного решения так и не найдено, проблему решают через разные костыли. Самое странное , что этот баг у всех ведет себя по разному. Кому повезло, вообще проблем нет. Поэтому решение использовать Xneur простое и эффективное , до выхода Unity 8 которая основана на QT и проблема решиться автоматически. А сейчас решением проблемы по моему ни кто заниматься в Canonical не будет ( не до этого ).

    ОтветитьУдалить
  11. тому оленю который перепилил раскладку надо в машине поменять назначение всех педалей пусть падла привыкает рулём газовать а педалями поворачивать. зачем было менять работающую весчь. дайте мне его не 10 мин - поговорить

    ОтветитьУдалить
  12. А я вот наоборот, не могу получить этот ... индикатор на пенели: "Схема «com.canonical.indicator.keyboard» отсутствует"

    ОтветитьУдалить
    Ответы
    1. "Схема «com.canonical.indicator.keyboard» отсутствует" В Редактор Dconf такой адрес com.canonical.indicator.keyboard есть. Возможно ты смотришь в редакторе Gconf, то там этой схемы нет.

      Удалить
    2. gsettings такое пишет, в dconf-editor такой схемы тоже нет. Многократное удаление и добавление раскладок кнопку или этот пункт в панели не дает... :(

      Удалить
    3. Pavel, система у тебя какая и не в виртуалке ты всё это делаешь?

      Удалить
    4. Не виртуалка. Обновился до 13.10, но индикатора не было в unity и на 13.04. Кто-нибудь знает в какой файл настроек прописывается эта фигня?

      Удалить
    5. Конечно проще setxkbmap "us,ru,ua" ",winkeys,winkeys" "grp:menu_toggle,grp_led:scroll,terminate:ctrl_alt_bksp,compose:ralt" и fbkbd использовать, но хочу понять хотя бы где конфиг прописывается...

      Удалить
    6. Теперь понятно. Сделай следующее.
      Открой Редактор dconf по следующему адресу: org/gnome/settings-daemon/plugins/keyboard и активируй (поставь галочку) в значении active:

      [im]http://s020.radikal.ru/i722/1310/ff/9f09245f107e.png[/im]

      Индикатор должен сразу появиться на панели.

      Удалить
    7. Было активировано, реактивация не помогла...
      Ладно, не буду тебя мучать ;) Спасибо за попытки помочь.

      Удалить
    8. Павел сделай ещё одну попытку в активации индикатора по следующему адресу в Редакторе dconf: org/gnome/settings-daemon/plugins/xrandr - active устанои флажок если не стоял.

      Удалить
    9. Этот комментарий был удален автором.

      Удалить
    10. Все оказалось проще, почему-то был удален или не установлен indicator-keyboard ;( Теперь значек есть, но бажок с быстрыми клавишами остался... Но зато так хоть мышкой можно переключиться... Еще раз спасибо за советы.

      Удалить
  13. не подскажете где находятся флаги, чтобы на другие картинки поменять?

    ОтветитьУдалить
    Ответы
    1. В Ubuntu 13.10 флажки в раскладке не устанавливаются. Сожалею, но сам бы хотел установить.

      Удалить
    2. Флажки в раскладке установить можно.Надо в тему значков , которую используете,а именно в папку status ("имя папки темы значков/status") вставить флажки языков в формате png для русского языка с именем indicator-keyboard-Ru,английского - indicator-keyboard-En и т.д.

      Удалить
    3. А размер флажков какой нужен? А то 256х256 не проходит.

      Удалить
    4. Доброго времени суток Владимир!Совсем забыл ещё одно.Через dconf в org/gnone/libgnomekbd/indicator в show-flags поставить галочку.Идут и 128 и 256.

      Удалить
    5. На экране входа в систему(выбор окружения,ввод пароля,выбор пользователя) используется по умолчанию тема ubuntu-mono-dark.Флажки в неё устанавливаются с расширением svg.Преобразовать формат png в svg можно с помощью программы Inkscape.Имена иконок остаются те же.С правами администратора заходим в usr/share/icons/ubuntu-mono-dark/status/22 и заменяем иконки.

      Удалить
  14. я имел ввиду XNeur Switcher, он же выводит флажки значит, их можно заменить - теоритически

    ОтветитьУдалить
  15. У меня не захотел работать никаким образом!
    Не переключает.
    Сработала только настройка раскладки в gnome-tweak-tool, но в индикаторе в панели значки En/Ru не меняются, хотя при вводе текста всё работает...

    ОтветитьУдалить
    Ответы
    1. Заметил, что на разных машинах по разному...
      На рабочей всё управляется, на моём не хочет, на друга работает но через раз и т.д...

      Удалить
  16. позор, неделя прошла после реалеза но ошибку так и не исправили. поэтому сижу на win 7 ни ни ссу что мягкие пришлют обновление после которого система ни запустится.иногда использую ubuntu 12.04, жду минт 16

    ОтветитьУдалить
  17. хотя после выхода win 8, она была ни лучше. поэтому наверн сижу на win 7 и ubuntu 12.04 (люблю стабильность).за сайт спасибо, очень много полезной инфы, хоть и много подобных ресурсов но они либо слабо развиваются, либо вобще умерли

    ОтветитьУдалить
  18. Только что залил 13.10 с нуля и сразу обновил - всё корректно заработало.
    Походу поправили, проверьте.

    ОтветитьУдалить
  19. У меня теперь русский всегда с капсом, а английский - норм (писал с зажатым шифтом :)). Как можно это исправить? Не нашел в новой убунту этой настройки...

    ОтветитьУдалить
  20. Обновился с 13.04 до 13.10
    сначала шифт+альт не переключали

    полез в инет искать не нашел
    назначил клавиши
    альт+пробел

    а потом при старте системы вводе логина пароля
    заметил что стандартными шифт+альт переключает

    залогинился в системе, значок в трее не меняется но раскладка переключается
    а если альт+пробел переключать то тогда и значок переключается

    Вообщем вот такие пироги.

    ОтветитьУдалить
  21. Тут ребята-фиксики пишут: http://askubuntu.com/questions/356357/how-to-use-altshift-combo-to-switch-keyboard-layout-in-13-10 о небольшом патче по нашей проблеме. У меня сработало на ура, теперь наслаждаюсь переключением значка по Alt+Shift без всяких там xneur'ов (Ubuntu 13.10)

    ОтветитьУдалить
    Ответы
    1. >>Тут ребята-фиксики пишут<< Да. Но там же ребята пишут, что не у всех эта "заплатка" работает правильно. После применения данного патча назначенные клавиши раскладку переключают, а в значке буквенное отображение не меняется. Так что уж лучше использовать XNeur Switcher или ждать обновления, которое должно скоро выйти.

      Удалить
    2. Шикарно, работает фиксик данный! Поставил на свежо установленную ubuntu, и все заработало и Shift+Alt и кстати изображение на индикаторе раскладки тоже меняется!!!

      Удалить
    3. СПАСИБО товарищ! Комсомол Вас не забудет! ;)

      Удалить
  22. Скажите, а раскладки можно менять только между русской и английской? Украинский как-то можно добавить?

    ОтветитьУдалить
    Ответы
    1. Ну почему только между русской и английской? Можно добавить и украинский. Если в дефолтном индикаторе, то нужно кликнуть на значок, выбрать Параметры ввода текста. В открывшемся окне нажать на плюсик, что в в левом углу окна и добавить Украинская.
      Если в XNeur, то открыть Настройки - Раскладки и тоже добавить украинскую.
      Вот и всё.

      Удалить
    2. В том то и дело, что в XNeur в окошке "раскладки" нет клавиши "добавить". Хотя сам XNeur я установил по указанному тут методу, и XNeur версии 0.17.0.
      Где может быть глюк? Прошу помощи, в линуксе я меньше недели :)

      Удалить
  23. Можно и не ставить ничего, достаточно назначить свободные клавиши на мультимедийной раскладке для переключения языка. Либо на худой конец клавишу F12. Да - это не удобно, у меня на клавише Win переключение раскладки стояло, но в новой убунте, какая то умная голова эту клавишу задействовала.

    ОтветитьУдалить
  24. Нашел в сети решение проблемы с переключением раскладок.
    sudo apt-add-repository ppa:attente/1218322
    sudo apt-update
    sudo apt-get dist-upgrade
    Далее презагрузка и устанавливаем желаемую комбинацию клавиш для переключения раскладки.
    У меня все заработало как полжено,Ubuntu 13.10 64

    ОтветитьУдалить
  25. Ну лично я заюзал вот такую вещь... http://startubuntu.ru/?p=104300 А теперь маты вылетают, когда во что-то играю, так как смена раскладки на русскую корежит все управление. К примеру в пенумбра или Пейнкиллер просто не реагирует персонаж, а в Дота 2 игра думает, что у меня зажат контрол и еще куча непонятностей творится. Кроме того сочетания клавиш типа Ctrl + Alt + T или Ctrl + S работают теперь только в английской раскладке, то есть еще куча неудобств. Одно только удобство язык с полпинка переключается и индикатор не гонит. Но неудобств стало больше. Вот теперь не знаю каких он мне библиотек наставил и как вернуть все к стандартному виду. И к стати поставил этот xNeur, а значек так и не появляется даже после той команды gconftool. При запуске xNeur из дэша пишет, что запустился и попрежнему молчок. Вот теперь понятия не имею, как эту кашу разгребать. Подозреваю, что тот кустарный набор библиотек, который я поставил мне даже и xNeur глушит...

    ОтветитьУдалить
  26. сегодня обновил систему,и стандартное переключение раскладки заработали,вернул переключение по CapsLock , полет нормальный!

    ОтветитьУдалить
    Ответы
    1. Ну тоже вот вчера крупное обновление сделал... Тот левый репозиторий грохнул с помощью ppa-purge предварительно. Но по прежнему те же тупняки...

      Удалить
  27. Здравствуйте Владимир. Вот недавно просматривал у Вас на сайте тему , связанную с раскладкой клавиатуры, а именно индикатор раскладки отображающий раскладку на дисплее в Linux Mint 16 Petra

    Вот, на подобии этого: http://itmages.ru/image/view/1334950/f6247659 ...

    Владимир подскажите пожалуйста как включить этот индикатор в Linux Mint 16 Petra ?
    Дело в том ,что на ноутбуке дисплей не большой, а панель управления включена в режиме _ АВТОСКРЫТИЕ _, и что бы постоянно не _ дёргать_ панель для определения раскладки, хотелось бы утсановить выше указанный индикатор ...
    За ранее спасибо.

    ОтветитьУдалить
    Ответы
    1. >>хотелось бы утсановить выше указанный индикатор ...<< Выше никак. Только в системном трее, который находится в панели.

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

    Но, горячие клавиши скопировать Ctrl+C вставить Ctrl+V и другие, работают в английской раскладке, а в русской клацаю клацаю бесполезно.

    Собственно вопрос, как решить? Потому что в тексте когда нужно скопировать там вставить там, клацаешь клацаешь не работает а потом вспоминаешь что нужно включить английский. И когда печатаю на русском, тут нужно переключать потом обратно включать русский, очень очень неудобно, в три раза больше действий, плюс нужно помнить в голове держать, что нужно переключить.

    ОтветитьУдалить
    Ответы
    1. Самое интересное, например в браузере когда раскладка Ру, комбинация Ctrl+C, Ctrl+V работает, все копирует и вставляет.
      А в либре офис нет.

      Удалить
    2. Чтобы не держать в голове переключение раскладки скопировать/вставить, используй мышку/клавишу тачпада.

      Удалить
  29. В Ubuntu 13.10 проблема с xneur. В системе установлено три раскладки - англ, рус, укр. Во вкладке настроек "Раскладки" программы xneur отображается только одна раскладка - та которая активна в данный момент. Соответственно xneur не работает. При переключении раскладок xneur сам перезапускается.

    ОтветитьУдалить
    Ответы
    1. В xneur только одна раскладка отображается, хотя установлено два языка в системе. При смене раскладки вручную xneur перезапускается уже с двумя языками, но после перезагрузки всё повторяется сначала-что делать?

      Удалить
  30. Всё проделал как описано, но так и не заработало

    ОтветитьУдалить