我如何发出{
使用 ste 的信号?我尝试了以下方法,但似乎都不起作用:
xte 'key {' # Outputs: Unable to resolve keysym for '{'
xte 'key \{' # Outputs: Unable to resolve keysym for '\{'
xte 'str {' # Outputs: 7
xte 'str \{' # Outputs -7
xte "str {" # Outputs: 7
我对和有同样的问题}
。[
]
更新:我发现了这个邮政有人提到了同样的问题。但我仍然不清楚他们是如何解决这个问题的。
更新 2:我发现了这里您也可以使用 ASCII 代码。不幸的是,它不适用于{
:
xte 'key 0x7b' # Outputs: [
更新 3:调试问题所需的额外信息:
输出$ xmodmap
:
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):
shift Shift_L (0x32), Shift_R (0x3e)
lock
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
键盘布局:美国国际
答案1
第一种方法
查找 X 键符。您可以使用xev
并按下您感兴趣的键来找到它们,xmodmap -pke
打印出您当前的表格,或者查看/usr/include/X11/XF86keysym.h
。
使用其中一个,您会发现 的键符{
是braceleft
。
但是,有一个问题:key
、keydown
和keyup
会产生实际的按键。如果你的键盘上,比如我的键盘上,大括号需要 Shift 键,你也需要按下这个:
xte 'keydown Shift_L' 'key braceleft' 'keyup Shift_L'
在我的计算机上生产{
。
第二种方法
不要同时使用键盘符号,xte str
而应使用:
xte 'str {'