我正在尝试通过 Openbox DE 中的键盘快捷键配置键盘布局切换。
$ cat /etc/default/keyboard
XKBLAYOUT="us,ua,ru"
XKBVARIANT=",winkeys,"
BACKSPACE="guess"
XKBMODEL="pc105"
XKBOPTIONS="grp:alt_shift_toggle,grp:win_space_toggle,grp_led:scroll"
$ cat /etc/bash.bashrc | grep kblayout
source /home/user/.kblayout.sh
$ cat /home/user/.kblayout.sh
#!/bin/bash
setxkbmap -layout us,ru,ua -option grp:lwin_space_toggle
$ setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from /usr/share/X11/xkb/rules/evdev:
rules: /usr/share/X11/xkb/rules/evdev
model: pc105
layout: us
options: grp:alt_shift_toggle,grp:lalt_lshift_toggle,grp:alt_shift_toggle,grp:win_space_toggle,grp_led:scroll,grp:alt_shift_toggle,grp_led:scroll
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete+ledscroll(group_lock)
symbols: pc+us+inet(evdev)+group(win_space_toggle)+group(lalt_lshift_toggle)+group(alt_shift_toggle)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete+ledscroll(group_lock)" };
xkb_symbols { include "pc+us+inet(evdev)+group(win_space_toggle)+group(lalt_lshift_toggle)+group(alt_shift_toggle)" };
xkb_geometry { include "pc(pc105)" };
};
$ cat .config/gxkb/gxkb.cfg
[xkb config]
group_policy=2
default_group=0
never_modify_config=false
model=pc105
layouts=us,ru,ua
variants=
toggle_option=grp:lwin_toggle,lv3:switch,terminate:ctrl_alt_bksp,grp_led:scroll
compose_key_position=
$ cat /etc/X11/xorg.conf
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "us,ru,ua"
Option "XkbModel" "pc105"
Option "XkbVariant" "pc105"
Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
EndSection
对于终端窗口输入Win,在Space我运行. 对于它的新实例有效,但不适用于刚刚打开的终端中的 bash。或者在终端中也可以使用的任何东西。在当前终端会话中,没有运行新的 bash 实例,我运行命令或使用该命令获取脚本。但它在 Openbox GUI 应用程序中不起作用。AltShiftbash
bash
setxkbmap -layout ru
setxkbmap
我已经安装了tint2
面板,以便能够通过鼠标单击来切换键盘布局。
IBus Preferences -> Keyboard Shortcuts中的键盘快捷键实际上不会改变键盘布局。尝试了不同的组合键:
相同的偏好在 iceWM 中以某种方式起作用,但它在那里奇怪地起作用(当我输入不同的非英语布局时,它经常输入英文字母而不是西里尔字母。它需要删除这些字母几次,直到字母变成西里尔字母)。我不经常使用 Cyrillic,我可以登录 Unity 进行正常的键盘布局切换,但我想弄清楚如何在 Openbox 中正确配置它。
Openbox 在 中查找用户定义的配置
~/.config/openbox
。如果那里什么都没有,那么它会在 : 处查找默认配置文件/etc/xdg/openbox/
。创建一个新用户,然后在您的用户目录中复制默认配置文件,以便我们可以编辑它们:
然后添加这一行:
至
现在您可以在注销并重新登录后使用Alt+更改布局。Shift