标签: xkb

如何获取 xmodmap 的键码?

我正在尝试使用xmodmap重新映射Alt/Super戴尔 L100 键盘上的键,但在获取键码时遇到问题。

例如,使用xev不会给我键码Alt

FocusOut event, serial 36, synthetic NO, window 0x4a00001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 36, synthetic NO, window 0x4a00001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  122 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
Run Code Online (Sandbox Code Playgroud)

对于Right …

keyboard-shortcuts keyboard x11 xmodmap xkb

104
推荐指数
5
解决办法
18万
查看次数

如何获得当前的键盘布局?

我想知道是否有任何命令行工具可以返回当前的键盘布局。

我已经XkbLayout设置为us, ru.

更新: setxkbmap返回布局设置,而不是选定的布局。例如:

$ setxkbmap -print | grep xkb_symbols
xkb_symbols   { include "pc+us+ru:2+inet(evdev)+capslock(grouplock)+terminate(ctrl_alt_bksp)"   };
Run Code Online (Sandbox Code Playgroud)

无论当前布局是什么,它都会返回相同的结果。

xorg keyboard xkb

83
推荐指数
8
解决办法
9万
查看次数

列出所有有效的 kbd 布局、变体和切换选项(与 setxkbmap 一起使用)

有没有办法从命令行检索所有可用键盘布局和相关变体的列表?

我需要从 setxkbmap 列出所有要使用的有效布局/变体选择。

还有关于布局切换选项,有没有办法检索所有可用选项的列表(例如 grp:shift_caps_toggle ,...)

我知道与

setxkbmap -query
Run Code Online (Sandbox Code Playgroud)

我检索了我当前的列表,但我需要整个选项列表。

更新:

我被告知命令

man xkeyboard-config
Run Code Online (Sandbox Code Playgroud)

它向命令行提供所有信息。

此外,使用

man -P cat xkeyboard-config
Run Code Online (Sandbox Code Playgroud)

输出到标准输出,可以用脚本或 C 代码解析

xorg keyboard xkb keyboard-layout

71
推荐指数
4
解决办法
7万
查看次数

除了 Alt + Shift 切换键盘布局,还有其他 Xorg 组合键吗?

我能找到的关于 XkbOptions 的所有信息是:

Option "XKbOptions" "grp:alt_shift_toggle"
Run Code Online (Sandbox Code Playgroud)

似乎我只能使用alt+shift组合来切换键盘布局,我可以使用任何其他键吗?

linux xorg keyboard-shortcuts xkb

45
推荐指数
1
解决办法
3万
查看次数

交换 alt 和 super

我有一台运行 Linux 的 Macbook Air。我想互相交换键盘两侧的altsuper键。

如何使用 cli 工具执行此操作?

更新

按照 Drav Sloan 的回答,我使用了以下内容:

keycode 64 = Alt_L
keycode 133 = Super_L
remove Mod1 = Alt_L
remove Mod4 = Super_L
add Mod1 = Super_L
add Mod4 = Alt_L

keycode 108 = Alt_R
keycode 134 = Super_R
remove Mod1 = Alt_R
remove Mod4 = Super_R
add Mod1 = Super_R
add Mod4 = Alt_R
Run Code Online (Sandbox Code Playgroud)

linux xkb keyboard-layout macintosh

34
推荐指数
3
解决办法
2万
查看次数

重新映射生成多个扫描码的键

我有一台 ThinkPad W540。在它的键盘上,小键盘上方有四个多媒体键。其中两个键生成对应于键组合Win_L+LWin_L+的键码(显然还有扫描码)E。换句话说,对于生成Win_L+的键L
showkey --scancodes返回这个:

0xe0 0x5b 0x26 0xa6 0xe0 0xdb
Run Code Online (Sandbox Code Playgroud)

setkeycodes命令需要未转义的单字节或转义的两字节序列来表示扫描代码,并且showkey给我的方式不止于此,因此我无法使用简单的setkeycodes <scancode> <keycode>.

我真的很感激任何提示,我可以将该键重新映射到其他东西,而不仅仅是复制键盘上现有的组合键之一。

keyboard-shortcuts thinkpad xkb keyboard-layout

34
推荐指数
1
解决办法
3197
查看次数

如何将上下文菜单键重新映射到超级键

这个键盘只有一个超级键,所以我想重新映射菜单键来弥补这一点。

xorg keyboard xkb

31
推荐指数
2
解决办法
1万
查看次数

Wayland 是否使用 XKB 进行键盘布局?

由于 XKB 是 X 窗口的一部分,Wayland 中是否也使用了 XKB?如果是这样,是否有任何实用程序计划在某个时候取代 XKB?

在韦斯顿,setxkbmap 显然不起作用。当前推荐的更改键盘布局的方法是什么?

wayland xkb keyboard-layout

27
推荐指数
1
解决办法
8087
查看次数

如何显示当前的键盘布局?

是否有允许以图形方式显示当前键盘布局的实用程序?

例如,当使用外语书写并且物理键盘仅指示本地语言(符号的位置等)时,这可能很有用。我想获得类似于以下内容的显示: 在此处输入图片说明

keyboard xkb keyboard-layout

26
推荐指数
4
解决办法
2万
查看次数

独立于键盘布局的快捷键

有没有办法定义键盘的特定物理键与某些操作的关联,独立于该键在任何布局中关联的字母?

实施例:在大多数默认侏儒快捷键关联,按压Alt+ Ctrl+T打开一个终端。但仅限于拉丁键盘布局。在希腊语布局中执行相同的物理操作不起作用,因为相关的字母是“希腊语T,而不是“拉丁语T

因此,首先要切换到拉丁布局,然后按快捷键,这可能会令人沮丧,因为人们永远不确定是否一开始没有正确按下该键,因此可能会尝试多次直到意识到问题在布局中。

一种解决方案可能是在一个使用的所有布局中为相同的键定义相同的关联 - 但随后必须为所有快捷方式执行此操作,因此该解决方案不能很好地扩展。

keyboard-shortcuts x11 xkb keyboard-layout

25
推荐指数
1
解决办法
3814
查看次数