技术解析

ubuntu 下有没有将 Alt + hjkl 映射为方向键的方法?
0
1975-02-25 05:17:30
idczone

用的是 ubuntu 16.10 ,方向键太远,所以希望能全局使用类似 vim 的移动方式,用网上的各种方法都没有实现,你们在 linux 下都是怎么做到的?


可以在~目录下建立 .Xmodmad 然后映射成 上下左右的功能键
具体参见: https://www.zouyesheng.com/xmodmap-usage.html
不过我也只知道单键映射可行,不太清楚双键的设置法

gh60 或者 poker

我把空格键 + ESDF 映射成了上下左右(单独按空格输出空格,组合按则是方向键)。你可以搜一下 xcape 。

https://geekhack.org/index.php?topic=51069.0
spaceFn ,很方便好用。
好用就点❤吧,谢谢。

如果用 xmodmap 和 xcape ,这是示例: http://pastebin.ca/3761929 (如果搞残了, log out )

看了下你说的这个,好像是一个意思。 Win 上我也用的 AHK 实现,这人似乎弄得很复杂……其实 AHK 只要 "space & x::Send {y}"(把“空格+x ” 变成 “ y ”) 和 "space::space"(单独还是“空格”) 就可以了……

i3wm 。。

谢谢,试了一下,组合基本都生效了,只是空格键不能敲空格了。。。

额……你运行 xcape -e "ISO_Group_Shift=space" 了吗……

执行了,不过都有错误信息
➜ ~ xmodmap kbd.xmodmap
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 118 (X_SetModifierMapping)
Value in failed request: 0x17
Serial number of failed request: 19
Current serial number in output stream: 19
➜ ~ xcape -e "ISO_Group_Shift=space"
WARNING: No keycode found for keysym space (0x20) in mapping ISO_Group_Shift. Ignoring this mapping.

同 2l, 买块客制化键盘 搞自定义配列省心

之前的错误还没查出来是怎么回事,不过用别的方法实现了 space + hjkl 的移动方式,把下面的代码保存到~/keyboard.xmodmap 文件里。
```
key which we must keep around.
keycode 65 = Mode_switch space space space
keycode anykey = space
keycode 43 = h H Left
keycode 44 = j J Down
keycode 45 = k K Up
keycode 46 = l L Right
```
执行`xmodmap ~/keyboard.xmodmap && xcape -e '-t 250`就行。

win 下 ahk 。。。
我的改键是
alt+ ikjl= udlr
alt+ uom. = home end pgup phdn
alt+h n = backspace delete

我在 win10 下用 ahk 有点问题,比如我把 Alt+j 映射为向下,如果快速按 Alt+j 几下或者一直按住的话,会偶尔弹出一个 j 来,你有没有这种情况?如果没有的话能不能分享一下你的脚本?谢谢。

Win 上的 AHK 可以参考我的: https://github.com/district10/neo_keyboard_layout/blob/master/neo4win/spek.ahk (按住空格加 esdf 是方向键),对应的 Linux 脚本: https://github.com/district10/neo_keyboard_layout/blob/master/neo2015/qwerty.sh

谢谢,我等试一下。

autokey-py3 可定制全局快捷键,也可以根据特定窗口设定

hi spacefn 的激活按键可以选成 left alt 么? 现在打字需要用空格, 这样感觉很滞后.

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服