我在 Ubuntu 系统上使用英语和波斯语键盘布局。我想使用Left Alt+Left Shift和Right Alt+更改键盘布局Right Shift。目前我无法使用Right Alt+Right Shift将键盘布局从波斯语更改为英语,因此我必须使用Left Alt+Left Shift进行更改。
有人知道我该如何设置Alt+Shift来更改两侧的键盘布局吗?我使用 ubuntu 12.04。
谢谢!
答案1
好的,再试一次,我希望这次能够成功... ;)
学分归因于verendj1,他描述了一种分配自定义键切换键盘布局, 使用设置xkbmap,其中收录于解决方法提到编辑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
通过右键单击文件->“属性”->“权限”选项卡,然后选择“允许将文件作为程序执行”来创建文件。
现在,打开“系统设置”->“键盘”->“快捷方式”选项卡,然后选择“自定义快捷方式”。单击底部的 + 按钮,将快捷方式命名为“键盘切换”或任何您想要的名称。然后在命令框中提供您之前创建的脚本的完整路径。点击应用。单击显示“已禁用”的位置,然后您可以通过单击您的组合键将快捷方式设置为您想要的任何内容!
我认为您需要"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 键永远不会选择第三级
xkeyboard-config provides the description files for the X Keyboard Extension (XKB). The configuration options below are usually applied with setxkbmap(1).
答案2
“右 Alt 键”通常(总是?)不是与“左 Alt 键”相同,但对应于AltGr,例如
因此具有独特的功能。
你可能想尝试使用xdotool
到仿真某些组合键行为。因此,您可以设置
Left
Alt+Left
Shift按照描述的方式阿卜杜勒卡德尔在他的回答中,- 第二种组合是
Right
AltGr+Right
Shift)xdotool
。
编辑
详细例子如何做到这一点一般来说,附有截图,请参考韋萊的精彩答案在这里。关于你的问题,你可以尝试
工具键 --clearmodifiersAlt+Shift
然后将此命令分配给Shift+Level3 Shift
(不要输入此命令,只需按right_Shift+ right_AltGr)快捷键自定义快捷方式。 再次,请参考相关部分韋萊的回答。
瞧,您已经整理好了。
请注意,如果你尝试“反过来”做这件事,就像这样
xdotool 键 --clearmodifiers ISO_Level3_Shift+Shift
(或者另一种方法,但不太可能奏效Alt_R+Shift_R
),注意到韓國“相当于”ISO_Level3_Shift,
你可能会卡住,因为“Alt_R+Shift_R”不是似乎在标准布局切换键对话框中提供。
进一步阅读: 来自xdotool 人页:
通常,任何有效的 X Keysym 字符串都可以使用。多个键以“+”分隔。“替代"、"ctrl"、"shift"、"super" 和 "meta" 都映射到 Foo_L,例如Alt_L和 Control_L 等等
还使用 setxkbmap 将 AltGr 键重新映射到 Control您可能感兴趣...
编辑2
看https://bugs.launchpad.net/ubuntu/+source/xdotool/+bug/696247和http://code.google.com/p/semicomplete/issues/detail?id=13...和解决方法其中建议的(并确认截至 2012 年 11 月有效)“目前的解决方法是使用设置xkbmap强制使用键盘映射修改映射(setxkbmap dvorak 等)”。因此,请参考我的第二个单独的答案。
答案3
您可以使用 Alt-Shift 来处理两种语言
系统设置... → 键盘布局 → (点击“+”添加新语言布局)→
选项... →(点击)“更改布局的键”→(勾选)“左 Alt+左 Shift”→关闭
答案4
从 dash 进入键盘布局,然后单击选项,有一个选项key(s) to change layout
检查alt+shift
。这对我来说很管用,alt 和 shift 都可以使用,甚至右 alt+左 shift 也可以使用 :)