Я использую английскую и персидскую раскладку клавиатуры в своей системе Ubuntu. Я хочу изменить раскладку клавиатуры как с помощью Left Alt kbd> + Left Shift kbd> и Right Alt kbd> + Right Shift kbd>. В настоящее время я не могу использовать Right Alt kbd> + Right Shift kbd>, чтобы изменить раскладку клавиатуры с персидского на английский, чтобы мне пришлось использовать Left Alt kbd> + < kbd> Сдвиг влево kbd>, чтобы изменить его.
Кто-нибудь знает, как я могу установить Alt kbd> + Shift kbd> для изменения раскладки клавиатуры с обеих сторон? Я использую Ubuntu 12.04.
Спасибо!
Хорошо, еще одна попытка, этот добьется цели, я надеюсь... ;)
Кредиты происходят из-за reverendj1, кто описал способ присвоить Пользовательский ключ для переключения раскладки клавиатуры, с помощью setxkbmap, который показал в обходном решении, которое ссылаются на в Редактировании 2 из моего предыдущего ответа...
Здесь немного более включенный путь, но даст Вам больше гибкости для сочетания клавиш. Во-первых, скопируйте и вставьте этот сценарий, который я записал, и назовите его чем-то как kb_toggle.sh. Удостоверьтесь, что отредактировали LANG1, и LANG2, чтобы быть раскладкой клавиатуры кодирует Вас потребность.
#!/bin/bash LANG1="us" LANG2="de" CURRENT_LANG=$(setxkbmap -query | tail -n 1 | cut -f6 -d ' ') if [ "$CURRENT_LANG" = $LANG1 ]; then setxkbmap $LANG2 else setxkbmap $LANG1 fi
сделайте файл путем щелчка правой кнопкой по нему-> вкладка "Properties"-> "Permissions", затем выберите, "Позволяют выполнять файл как программу.
Теперь, откройте вкладку "System Settings"-> "Keyboard"-> "Shortcuts" и избранные "Пользовательские Ярлыки". Нажмите + кнопка в нижней части и назовите ярлык "Переключателем Клавиатуры" или независимо от того, что Вы хотите, действительно. Затем дайте полный путь сценарию, который Вы сделали ранее в поле команды. Хит Применяется. Нажмите, где это говорит "Отключенный" затем, можно установить ярлык на то, что Вы хотите путем нажатия на сочетание клавиш!
Я думаю, что необходимо было бы измениться "de"
кому: "ir"
.
Снова, удачи!
Править
Можно даже сойти с рук острота, если Вы предпочитаете:
setxkbmap us,ir -option "grp:alt_shift_toggle"
Теперь можно переключиться путем нажатия alt+shift
См. также http://wiki.lxde.org/en/Change_keyboard_layouts и http://www.x.org/releases/X11R7.7/doc/man/man1/setxkbmap.1.xhtml
Редактирование 2
В зависимости от того, как Вы решаете достигнуть своей цели, можно хотеть включать lv3:ralt_alt
в Вашей команде, приводящей к
setxkbmap us,ir -option "lv3:ralt_alt,grp:alt_shift_toggle"
Посмотрите man xkeyboard-config | grep lv3
для деталей:
lv3:ralt_alt
Правильная клавиша Alt никогда не выбирает 3-й уровень
xkeyboard-config provides the description files for the X Keyboard Extension (XKB). The configuration options below are usually applied with setxkbmap(1).
«Правая клавиша Alt» часто (всегда?) не совпадает с «левой клавишей Alt», но соответствует AltGr kbd> см., например,
и как таковая имеет различную и отличную функцию.
Возможно, вы захотите попробовать использовать xdotool
- для имитации определенного поведения комбинации клавиш. Таким образом, вы можете установить
Left
Alt kbd> + Left
Shift kbd> способом, описанным Abdulkader в своем ответе и Right
AltGr kbd> + Right
Shift kbd> ) с xdotool
. Редактировать
Подробный пример того, как это можно сделать в целом , со скриншотами , plz ссылается на превосходный ответ izx здесь . Что касается ваших вопросов, вы могли бы попробовать
xdotool key --clearmodifiers alt + shift
blockquote>, а затем назначьте эту команду
Shift+Level3 Shift
(не вводите ее, просто нажмите right_Shift kbd> + right_AltGr kbd>) в пользовательских ярлыках , Опять же, plz ссылается на соответствующую часть ответа izx .Вуаля, вы отсортированы.
Обратите внимание, что если вы попытались сделать это «наоборот», как это сделано
xdotool key --clearmodifiers ISO_Level3_Shift + Shift
blockquote>( или альтернативно, но с меньшей вероятностью сработает,
Alt_R+Shift_R
), отметив, что AltGr «эквивалентен» ISO_Level3_Shift ,вы, вероятно, застряли, потому что «Alt_R + Shift_R» не , по-видимому, предлагается в стандартном диалоговом окне переключения клавиш.
Дополнительная информация : со страницы xdotool man :
Как правило, любая допустимая строка X Keysym будет работать. Несколько клавиш разделены знаком «+». Существуют псевдонимы для « alt », «ctrl», «shift», «super» и «meta», которые все отображаются на Foo_L, такие как Alt_L и Control_L и т. Д. [ 1146] blockquote>
также Переназначение клавиши AltGr в Control с помощью setxkbmap может быть вам интересно ...
Изменить 2
См. https://bugs.launchpad.net/ubuntu/+source/xdotool/+bug/696247 и [ 1118] http://code.google.com/p/semicomplete/issues/detail?id=13 ... и предложенный в нем обходной путь (и подтверждено, что он работает с ноября 2012 г. ) из «В настоящее время обходной путь заключается в использовании setxkbmap для принудительной установки вашей раскладки клавиатуры в xmodmap (setxkbmap dvorak и т. д.)» . Таким образом, пожалуйста, обратитесь к моему 2-му отдельному ответу.
Просто добавьте эту команду в качестве запускаемого приложения :
setxkbmap -option lv3:ralt_alt,grp:alt_shift_toggle us,ir
Это должно включить оба переключателя Alt-Shift. Однако вы потеряете функциональность композиции правой клавиши Alt (например, вы не сможете нарисовать знак евро (€), нажав RightAlt + E).
Опции setxkbmap
, включая языковые коды, описаны в /usr/share/X11/xkb/rules/base.lst
.
Вы можете сначала проверить команду в терминале, прежде чем добавлять ее в свои приложения автозапуска.
Источник: http://crunchbang.org/forums/viewtopic.php?id=11038 (пост № 7)
Персидский и некоторые другие макеты жестко закодированы, чтобы иметь ISO_Level3_Switch (AltGr или любой другой!) Вместо Right Alt, поэтому, когда вы находитесь в английском макете, вы можете использовать Alt_R + Shift_R / Shift_R + Alt_R для переключения на персидский, но когда вы используете персидский В раскладке ключ больше не Alt_R, а ISO_Level3_Switch!
Благодаря Sneetsher мы знаем, как вернуть жестко закодированный ISO_Level3_Switch обратно в обычный ALT
Можно использовать Alt-Shift для обоих языков
Параметры настройки системы... → Раскладка клавиатуры → (нажимают "+" для Добавления новых разметок Языка),
Опции... → (нажимают) "На ключ (ключи) для изменения расположения" → (галочка) "Левый Сдвиг Alt+Left" → Близко
перейдите к раскладке клавиатуры из тире, а затем нажмите опции, есть опция key(s) to change layout
check alt+shift
. Это работает для меня, и alt и shift работают, даже вправо alt + left shift работает:)