如何将 Super + UpArrow 映射到 PageUp?

gue*_*442 14 keyboard keyboard-layout shortcut-keys

我要地图

  • Super+UpArrowPageUp

  • Super+DownArrowPageDown

  • Super+LeftHome

  • Super+RightEnd

在 Apple 铝制无线键盘上。熟悉键盘的人会注意到,Fn默认情况下它已经用按键完成了这些操作;很好,我想保留它,但也可以用单手组合键做同样的事情,因此我想要Super映射。

我一直在寻找通过 xmodmap 执行此操作的可能方法 3 小时,但没有任何效果。

mkm*_*mkm 6

尝试编辑您的 /usr/share/X11/xkb/symbols/pc 键盘定义

(这将全局更改您的绑定,如果您想要更精细的调整,还有一些工作要做,例如创建自定义键映射或自定义变体)

正如你在这里看到的:

键 { [ 先验 ] };
键 { [ 下一个 ] };

如您所见,键 PGUP 绑定到“Prior”。尽管:

 键 { [ 左 ] };
 键 { [ 向下 ] };

LEFT 和 DOWN 键绑定到“Left”和“Down”。

括号之间的部分[ ]是要生成的符号列表。你可以放多个。第一个是与未修改的键相关联的符号,而其他位置是与键相关联的符号 + 一些修饰符。

通常它用于定义键的行为加上“SHIFT”修饰符:

  键 { [ l, L ] };
  键 { [ 分号,冒号 ] };

但也可以指定其他修饰符,例如在世界语地图 (epo) 中:

  键 { [ jcircumflex, Jcircumflex, 左括号, 左括号] };
  键 { [ hcircumflex, Hcircumflex, 括号右, 括号右 ] };

您可以通过键入 AltGr + 键(美国键盘映射上的 [ 键)和 { 通过 Shift+AltGr + 键键入 [ 字符。

到现在为止还挺好。通过看一些简单的例子,我们可以理解的顺序是:

plain shift altgr shift+altgr


但是,我们希望能够将 LEFT 和 RIGHT 键绑定到普通和 CTRL+ALT 修饰符。如何做到这一点?

我不知道,也从未尝试过,但我会从 /usr/share/X11/xkb/symbols/pc 中获得灵感:

xkb_symbols“功能”{
    钥匙 {
        type="CTRL+ALT",
        符号[Group1]= [ F1, XF86_Switch_VT_1 ]
    };

也许我们可以对箭头键做同样的事情。让我们尝试添加以下几行:

 key { type="CTRL+ALT", symbols[Group1]= [ Left, Prior ] };
 key { type="CTRL+ALT", symbols[Group1]= [向下,下一个] };

就在 LEFT 和 DOWN 的原始定义下方,在 'pc' 文件的底部。

然后重启X服务器。抱歉,我现在无法关闭会话来测试它。

顺便说一句,您可能对http://code.google.com/p/partiwm/wiki/xpra感兴趣,这样您就可以重新启动 X 会话并在重新启动后仍然保留一些应用程序。


loe*_*org 4

我已经尝试使用 xmodmap 及其同源词进行类似的操作,但没有成功。尝试xbindkeys与 结合使用xdotool。这是我将~/.xbindkeysrc数字键盘 1 和 2 绑定到Ctrl-PageUpCtrl-的内容PageDown

"xdotool key ctrl+Prior" 
  Release + KP_End

"xdotool key ctrl+Next" 
  Release + KP_Down
Run Code Online (Sandbox Code Playgroud)