标签: xmodmap

后退键到鼠标中键

我想将我的鼠标 (A4Tech X-7) 的“返回”按钮(xev 显示为“按钮 7”)映射为鼠标中键。有没有办法做到这一点?我迷失在谷歌中,只找到如何使用 xbindkeys 等将按钮映射到键盘快捷键。

  • 操作系统:Centos 6.3 (x86_64)
  • DE:KDE 4.3.4

Ps 我可以用中键切换(使用 xmodmap)“后退”按钮,没有问题,但是有没有办法让它们都充当鼠标中键?

kde x11 mouse xmodmap

7
推荐指数
1
解决办法
1029
查看次数

xmodmap 睡眠后丢失

在 Ubuntu 18.04 中,我使用以下自动启动脚本:

[Desktop Entry]
Type=Application
Exec=/home/user/.xinitrc
Version=1.0
X-GNOME-Autostart-enabled=true
Name=xmodmap
Comment=xmodmap script
Run Code Online (Sandbox Code Playgroud)

这只是xmodmap /path/.Xmodmap &

当系统启动时,它就工作了。当系统从睡眠中醒来时,重新映射不再起作用。我怎样才能解决这个问题?

编辑:(回复评论)这也不能解决问题:

$ cat /etc/systemd/system/xmodmapbindings.service
[Unit]
Description=xmodmap bindings
Before=sleep.target
StopWhenUnneeded=yes

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStop=-/home/norake/.xinitrc

[Install]
WantedBy=sleep.target

$ cat ~/.xinitrc 
#!/bin/bash

if [ "$USER" != norake ]; then
    su norake -c 'sleep 5; /usr/bin/xmodmap /home/norake/.Xmodmap' &
    # without su, without sleep, without fork (&): doesn't work either
else
    (sleep 5; /usr/bin/xmodmap /home/norake/.Xmodmap) &
fi
Run Code Online (Sandbox Code Playgroud)

sleep 30也不行。当然,手动运行脚本是有效的。

ubuntu keyboard xmodmap

7
推荐指数
1
解决办法
2245
查看次数

如何将 AltGr+key 绑定到符号?

我想将AltGr+绑定Wæ,以及其他一些组合,我该怎么做?我还需要AltGr+ Shift+WÆ

我通常setxkbmap用来更改键盘映射。

x11 xmodmap xkb keyboard-layout

6
推荐指数
2
解决办法
2178
查看次数

如何重新映射超级键?

我正在玩键盘设置,为了方便起见,我想将我的 Windows 键重新映射到选项卡。所以我尝试了(133是我键盘上的左超级键)

xmodmap -e "keycode 133 = Tab Super_L"

但这不起作用,因为按 windows 键仍然会显示“windows”菜单,并且没有插入选项卡。同一主题的一些不同变体也不起作用,例如使 Tab 出现在 shift+super 上。

我正在使用 cinnamon(从 ubuntu 16.04 上的 ppa 安装)和 lightdm,我想象 windows/super 键在较低级别被拦截,xmodmap 无法完全处理......有没有办法实现我想要的?欢迎不涉及 xmodmap 的答案!

(我远非专家,所以也许有一个非常简单的解决方案......)

keyboard x11 xmodmap xkb

6
推荐指数
1
解决办法
1355
查看次数

如何知道什么是超级钥匙?

我有这个xmodmap命令输出:

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Caps_Lock (0x42),  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)
Run Code Online (Sandbox Code Playgroud)

所以我想知道这里的超级钥匙是什么?问题是,当我尝试映射超级关键,在这里我想mod4作为windows button left一个组合使用钥匙sxhkd守护进程,它似乎并没有工作,例如,地图打开firefox,没有效果。

编辑:我试图使用windows left button键盘上的快捷地图使用一些命令sxhkd在ArchLinux的守护进程,在意见中讨论,即使我有keycod 133 mod4 = Super_L.Xmodmap使用mod4.config/sxhkd/sxhkdrc映射例如以打开Firefox:

mod4 + f
   firefox
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用,按下windows lef …

xmodmap super-key

6
推荐指数
1
解决办法
4187
查看次数

xkbmap 重新映射 PrtScr 并插入 Home 和 Escape 键

我已经摸索了xkbmap一段时间,但不知道如何将“打印屏幕”按钮重新映射到“主页”。就好像美国键盘映射根本没有提到 PRSC 键代码。我无法使用xmodmap,因为切换键盘会破坏我的配置。

如何使用 将 PrtScr 键重新映射到 Home,将 Insert 键重新映射到 End xkbmap

x11 xmodmap xkb

5
推荐指数
1
解决办法
1830
查看次数

如何启用 Shift 锁定?(粘滞Shift键)

我想将我的一把钥匙映射为 Shift Lock 键。根据我的理解,Shift 锁定键是一种“粘性”Shift 键:它保持按下状态,移动布局的所有键,直到再次按下。

它与Caps Lock键类似,不同之处在于它影响所有键,包括数字行中的键。

我正在尝试用它setxkbmap -option ...来处理这个问题。

我在以下文件中发现了这些有希望的规则/usr/local/share/X11/xkb/rules/base.lst

  caps:internal        Caps Lock uses internal capitalization; Shift "pauses" Caps Lock
  caps:internal_nocancel Caps Lock uses internal capitalization; Shift doesn't affect Caps Lock
  caps:shift           Caps Lock acts as Shift with locking; Shift "pauses" Caps Lock
  caps:shift_nocancel  Caps Lock acts as Shift with locking; Shift doesn't affect Caps Lock
  caps:capslock        Caps Lock toggles normal capitalization of alphabetic characters
  caps:shiftlock       Caps Lock toggles ShiftLock (affects all …
Run Code Online (Sandbox Code Playgroud)

x11 xmodmap xkb keyboard-layout

5
推荐指数
1
解决办法
9798
查看次数

F1-F12 键不起作用

我买了紧凑型键盘。F1 = Fn + 1 且 F2 = Fn + 2 ... 在此输入图像描述 但 F1-F12 键在我的 Ubuntu 16.04 上不起作用。例如F1 可以调高亮度。我检查了 F1-F12 键的键码,它们无效。因此 F1 返回 232 键码(而不是 67)。

我尝试使用以下方法修复它:xmodmap -e "keycode 232 = F1 F1 F1 F1 F1 F1 XF86Switch_VT_1"但没有帮助。F1仍然改变亮度。我尝试重新映射其他 F1-F12 键,但没有结果。Xmodmap 仅适用于非功能键。

是否可以修复 F1-F12 键?(交换键码?)

Xmodmap 配置正确,但 F1 仍然改变亮度

$ xmodmap -e "keycode 232 = F1 F1 F1 XF86Switch_VT_1" # IT DON'T HELP!!

$ xmodmap -pke # everything is OK!
keycode  67 = F1 F1 F1 F1 F1 …
Run Code Online (Sandbox Code Playgroud)

keyboard xmodmap

5
推荐指数
2
解决办法
8723
查看次数

如何将鼠标键映射为键盘键而不丢失 Linux 的“数字键盘”?

我知道如何映射鼠标单击F1F2F3(分别为左键单击、中键单击、右键单击):

xkbset m   # required, but disable keypad
xmodmap -e "keycode 67 = Pointer_Button1 Pointer_Button1"
xmodmap -e "keycode 68 = Pointer_Button2"
xmodmap -e "keycode 69 = Pointer_Button3"
Run Code Online (Sandbox Code Playgroud)

但这需要我使用xkbset m慢速按键模式:

如果我按4键盘,光标将向左移动。我不需要这个功能,只需要上面的映射。

我试图用 来解决这个问题xdotool,但我不知道如何处理按下的键/释放的键(用于拖放)

xdotool mousedown 1
xdotool mouseup 1
Run Code Online (Sandbox Code Playgroud)

我如何才能使用此模式或如何重新映射所有键盘按键?

请问键盘上的数字和算术符号怎么样?

还有其他解决方案吗?

有关 Debian (cinnamon) 和 Archlinux (xfce) 所需的信息,如果可能的话,我想要一个不基于窗口管理器的解决方案。

编辑:

尝试了这个解决方案,但我无法拖放F1

~/.xbindkeysrc

"xdotool mousedown 1"
    F1
"xdotool mouseup 1" …
Run Code Online (Sandbox Code Playgroud)

linux xorg keyboard mouse xmodmap

5
推荐指数
1
解决办法
4543
查看次数

当键盘模式改变时 xmodmap 重置

我有一个 Keychron K2 机械键盘,键盘右侧的按键如下所示:

在此输入图像描述

我想将它们交换为更标准的布局,这样,从上到下,我就会有Light Toggle, Home, Page Up, Page Down, 和End

我曾经xev检索关键代码并编写了一个小脚本,用于xmodmap将它们交换为我喜欢的:

#!/bin/bash

xmodmap -e "keycode 110 = Next" && xmodmap -e "keycode 112 = Home" && xmodmap -e "keycode 117 = Prior"
Run Code Online (Sandbox Code Playgroud)

该脚本在启动时执行,并且完全按照预期工作。

问题是这个键盘既是有线的又是蓝牙的。当我在有线模式和蓝牙模式之间切换时,反之亦然,按键会返回到默认位置,我需要再次手动运行上述脚本。xev向我表明,在这两种情况下,关键代码是相同的。有没有更好的方法来解决这个问题,以便无论我使用什么键盘模式都可以交换这些键?

keyboard xmodmap

5
推荐指数
1
解决办法
1362
查看次数

标签 统计

xmodmap ×10

keyboard ×5

x11 ×5

xkb ×4

keyboard-layout ×2

mouse ×2

kde ×1

linux ×1

super-key ×1

ubuntu ×1

xorg ×1