Недавно я обновился до Ubuntu 13.10. В Ubuntu 12.04 я смог определить клавишу, которая при ее удержании временно переключала на другую раскладку клавиатуры. Я не смог найти способ получить эту функциональность в 13.10: похоже, единственная возможность — переключаться между различными раскладками с помощью сочетания клавиш «Переключиться на следующий источник».
Есть ли способ реализовать функцию «удерживайте клавишу, чтобы временно переключиться на другую раскладку клавиатуры» в версии 13.10?
решение1
В Gnome 3.6 изменился метод настройки макета. Поэтому Ubuntu 13.10 и более поздние версии ведут себя иначе, чем раньше. Это должно хорошо работать в Gnome (проверено Ubuntu 13.10/14.04).
Unity, похоже, не использует
xkb-options
(Проверил в Ubuntu 13.10/14.04). Даже используя, например:setxkbmap us,ara -option grp:rctrl_switch
Он работает всего несколько секунд, а затем сбрасывается.
Редактировать
/usr/share/X11/xkb/symbols/pc
, удалить rctrl из привязки ctrl://modifier_map Control{ Control_L, Control_R }; modifier_map Control{ Control_L };
снова:
setxkbmap us,ara -option grp:rctrl_switch
Это просто работает, пока я не использую изменение макета с помощью Super+ Spaceили напрямую из индикатора. Так что в качестве обходного пути для Unity отключите сочетания клавиш переключения макета (индикатор макета также может быть удален), затем добавьте
-option grp:..._toggle
вsetxkbmap
.
Итак, для Gnome:
Использовать
dconf-editor
→ org → gnome → desktop → input-sourcesДобавьте
setxkbmap
параметрыxkb-options
, например:['grp:rctrl_switch']
Чтобы увидеть все возможные варианты:
more /usr/share/X11/xkb/rules/xorg.lst | grep grp:
решение2
Пожалуйста, выполните следующие действия:
ВыбиратьНастройки системы...из системного меню;
ВыбиратьКлавиатура;
Под вкладкой с надписьюПечатаниенажмитеНастройки макета;
вКлавиатураокно настроек, подЯрлыкивкладка, выберитеПечатание. Значение по умолчанию дляПерейти к следующему источникуэто Super+ SPACE; нажав на него, вам будет предложено назначитьНовый ускоритель..., нажмите нужную комбинацию клавиш, чтобы перейти к следующемуЛayout (я использовал Super+ L.) и ему будет назначено изменение на следующую раскладку.
(Затем я назначил что-то похожее для Switch на предыдущий источник, используя ту же предпочтительную раскладку, а затем начал их тестировать. Переключение с предпочтительной раскладки на альтернативную сработало, а вот обратное — нет. Пожалуйста, обратитесь к следующему шагу для исправления.)
В этом же окне вы можете выбрать/назначитьСочинятьключ. Предпочтительный вариант —Right Alt
После присвоения Super+ Lдля«Перейти к следующему источнику»используя предпочитаемый мной макет,Я изменил раскладку клавиатуры на альтернативную, а затем назначил комбинациюк«Перейти к предыдущему источнику»(для чего я использовал Shift+ Super+ L). Затем я проверил их, и они работают нормально.
Новые ускорители для комбинаций клавиш, которые я использовал, выглядят так:
Полезные ссылки:
Как мне набрать акцентированные символы, такие как ë? alt. Как использовать клавиши ввода?
Краткое содержание:
Используя composeключ, здесь назначено Rt. Alt:
- Для этого
ö
нажмите Composeклавишу Shify+, 'а затем oклавиши; то же самое можно выразить как Compose " oили Rt. Alt " o. - Для
ß
этого нажмите Composeи затем sклавиши s.
(..здесь вам придется запомнить комбинацию из двух символов)
Вы можете получить комбинацию для клавиши создания (и числа Unicode) с помощью этой команды в терминале:
cat /usr/share/X11/locale/en_US.UTF-8/Compose | grep ö
(где ö следует заменить на символ по вашему выбору.)
что выведет что-то вроде:
<Multi_key> <quotedbl> <o> : "ö" odiaeresis
(где
<Multi_Key>
находится клавиша «Compose» ( Shiftили Shift+ Rt.Alt),<quotedbl>
это двойная кавычка -"
т.е. Shift+ 'и<o>
это строчная букваот.е. oДля заглавных букв Ö используйтеОт. е. Shift+ oи вместо последнего символа в составе комбинации.)Использование шестнадцатеричного кода символа Unicode:
- Нажмите (и отпустите) Shift+ Ctrl+ U, затем, пока подчеркнутотывведите шестнадцатеричный код символа Unicode, а затем Returnили Space.
например, Ctrl+ Shift+, uза которым следует 2 6 3 bи затем Returnили Spaceдля ☻.
(..так что для этого вам потребуется запомнить номер Unicode)
- Для этого
☻ Ура...
решение3
С тех пор, как я задал этот вопрос, я перешел наЛинукс Минт 17с рабочим столом Cinnamon. Рабочий стол Cinnamon предоставляет те же возможности для временного переключения раскладок, которые были доступны в Ubuntu 12.04, включая возможность удерживать определенную клавишу для временного переключения раскладок клавиатуры.