Emacs似乎已经在它的命令之间随机分配了所有可能的键盘组合.:p
如果我要定义新的键盘快捷键,我应该在哪里放置它们?我应该使用哪些前缀?
例如:我想为以下函数定义快捷方式:
你会把这些放在哪里?为什么?
我开始获得RSI,当我读到这个时,我正在浏览解决方案:
我喜欢将空格键映射为空间和控制的解决方案,但问题在于:
我经常旅行很多,无法访问一台电脑.我在几个不同的计算机上编辑我的文档,我没有root访问权限(哎呀,我甚至没有正常访问权限).
是否有电池包含实施空格键解决方案的方式?一个小的lisp代码可能吗?
现在只在Windows上的emacs上整整一周,我可以感觉到CTRLkey组合开始受到伤害.没有人因为emacs而遭受RSI :-)?
有没有办法暂时选择另一个键(M键可以被我注意到的ESC键替换)
我想使用tab键来进行更改.有办法吗?
我通过按Cx来开发了一个emacs pinky的案例.理想情况下,我想使用空格键而不是控制作为前缀命令,因为用拇指按住更容易.按下和释放空间仍应添加空格,但同时按下Space + x应该可以绑定到命令.例如:
(local-set-key (kbd "SPC-s") 'search-forward)
Run Code Online (Sandbox Code Playgroud)
有没有人对如何实现这一点有任何想法?是否有可能只使用elisp或者我必须修改emacs源并编译我自己的版本?
我更喜欢一种独立于操作系统的解决方案,因为我在Windows和Linux上使用emacs.
编辑:我尝试过key-chord.el,它在某些情况下有所帮助,但并非所有(Cx Cs).我更喜欢一种次要模式,例如hold-space-is-control或holding-space-is-meta
编辑:感谢所有的回复.我目前正在使用键和弦将许多C-*命令映射到j*或f*,具体取决于if是左手还是右手键.例如,我用jb替换Cx b.它适用于您通常键入一次的所有命令,但不适用于重复使用的命令(例如前向或后向段落).它是迄今为止最好的跨平台解决方案,因为它只需要自定义的.emacs和key-chord.el文件.我更喜欢一种解决方案,它需要更少的重新映射,并降低键入"fyi"和获得"<yank> i"的风险.我相信使用空间可以工作,但我不太了解emacs的技术细节,使其工作.
我已经考虑过用Ctrl替换Caps-Lock或Alt,但这只对左小指有帮助.许多常见命令使用右小指(Cx,Cs,Cw,Cy)执行.