避免得到" Emacs Pinky"的最佳方法是什么?
我刚开始使用GNU Emacs作为我的文本编辑器,并且我担心使用" Emacs Pinky"会感到困扰,因为使用Emacs时需要不断用我的小指按动控制键。如何避免潜在的这种重复性劳损?
解决方案
回答
使<KBD> caps锁定另一个控制键是一个不错的起点。购买符合人体工程学的键盘。一些emacs用户甚至还可以获取脚踏板控制和元数据的东西。
回答
Microsoft自然键盘对我来说非常非常好。我每天10个小时以上都使用emacs,没有任何问题。
回答
我也有MS自然键盘,它很棒。我设法训练自己使用左手的侧面(在小指下方)按Ctrl键。
回答
重新映射<KBD> Left-Ctrl和<KBD> Caps-Lock,以便它们应位于以下位置:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,3a,00,1d,00,1d,00,3a,00,00,00,00,00
?
回答
通过@Alasdair,将Ctrl重新映射到" Caps Locks"或者其他位置:适用于各种平台的说明。
P.S.我有点惊讶,这不能通过elisp函数完成。
回答
我在一台新机器上要做的第一件事是将Caps Lock重新映射到一个新的控件。
在Google周围,有很多可用的.reg文件,这些文件可以在Windows上为我们轻松完成。
回答
我开始用手的侧面\手掌而不是小指手指敲击控制键。我的理解是,在更符合人体工程学的键盘上,控制键按钮更大,这使执行该动作更加容易。
回答
踩脚踏板! (我有运动学。)完成后,请取消控件和大写锁定的地图,以便我们强迫自己使用脚。
(仅供参考,重新映射大写锁定将有所帮助,但是在一天内进行了充分的删除后,将不能完全解决问题。)
回答
我可以在西或者西南位置使用Control键,而不会遇到任何麻烦。许多Emacsers发誓,该控制键仅在西侧和西侧位置,其他任何东西都会破坏小指。我们唯一可以确定的是,导致键入RSI的原因是过多的键入。尝试使用type-break-mode,看看是否有一些常规的中断有帮助。
回答
购买在正确位置具有Ctrl(大写锁定已移至其他位置)的Happy Hacking键盘。它具有出色的响应能力,并且可以通过DIP开关进行配置,以在Mac,Windows和Linux上实现最大程度的集成(例如,我们可以直接从键盘上切换Alt和Windows键,而无需软件)。
如果适合话,它的占地面积也很小。
回答
我的建议是尝试在可及范围内时用拇指按修饰键(控制键,alt键)。在空格键较短的键盘上,即使不向内弯曲拇指也可以按Alt(Meta)键。我们可以例如重新映射将Alt设为Control,这样便可以方便地访问Control和Alt。
在MS Natural Keyboards上也可以这样做。
回答
考虑一个Kinesis Contoured键盘。我花了大约一个月的时间才开始熟悉我的产品,现在我认为它是理想的Emacs键盘,即使没有脚踏板也是如此。
可不是闹着玩的。我订购了第一个带有食物踏板的踏板,但发现我实际上无法协调脚和手的时序,因此无法充分利用它作为修饰键。有一阵子我用它来切换集成数字键盘,但是当我意识到自己不使用它时就放弃了,因为Kinesis上的数字行很容易到达。
回答
对于上帝的爱,请使用其他文本编辑器!如果它需要脚踏板正常工作,那么……好吧……坦白地说,我无言以对。那里有许多功能强大的当代文本编辑器,不需要我们记住大量的神秘按键或者购买高档硬件。
我们知道,我可以理解并接受很多东西,但是对于简单的文本编辑器而言,脚踏板确实是我画线的地方。
回答
另一种方法:如果要避免出现" emacs pinky",请不要使用Pinky按下控制键。
如果有必要,请按以下顺序重新映射键盘上的键:
[Ctrl] [Alt] [空格] [Alt] [Ctrl]
现在,在任何标准键盘上(对称地放置修饰键,例如任何MS键盘),我们都可以用无名指按Ctrl键和中指按Alt键。这些手指比小指强得多,可以忍受频繁使用。
轻松重新映射Windows上的键盘键的好工具是AutoHotKey
在Ubuntu上,我设法使用以下方法做到这一点:键盘首选项/布局/其他选项
回答
将修饰符放在原本应该的位置:在空格键的两侧,可以用拇指(或者我们选择的其他数字)在与按下修改字母的数字相反的另一只手上按下它们在Ctrl上是右拇指,在'g'上是左索引,而Ck在Ctrl上是左拇指,在'k'上是右中间)。我们会注意到,从内到外正确的顺序是Ctrl Meta Super Hyper。
如何执行此操作取决于操作系统和键盘。对于Windows,我们可能要从这里开始。在Mac OS X中,我们可以查看"系统偏好设置">"键盘和鼠标">"修饰键"。对于Linux,有一千本xmodmap和XKB教程。
回答
此处尚未提及的一种解决方案是用双手进行按键组合。
例如,假设我们要按<CTRL-K>。在QWERTY键盘上,<K>在右侧,因此,用左手按下<CTRL>,用右手按下<K>。一旦我们习惯了该系统,它就可以正常工作。
回答
尝试viper-mode,这是emacs中的vi模拟器。在过去的25年中,作为几次在vi / emacs / vim之间来回切换的人,我现在终于在emacs中尝试了viper模式,我喜欢它。我发现vi命令更舒适,但是我仍然可以保留我喜欢的emacs的高级功能。
回答
我每天一整天都使用emacs和bash,并且将capslock作为额外的左控制键,例如VT100。到目前为止,还没有人提到在X11上执行此操作的最佳方法。 (实际上,这特定于X.org/xfree86 X服务器,这几天所有东西都在使用):
setxkbmap -option ctrl:nocaps Or edit your xorg.conf to have Section "InputDevice" Identifier "Generic Keyboard" Driver "kbd" Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "us" Option "XkbOptions" "ctrl:nocaps" Option "Autorepeat" "200 40" EndSection
(XkbOptions和Autorepeat是我添加到预生成的XkbOptions和Autorepeat中的。然后X每次都会从正确的键映射开始,并且我们不必每次在登录时都需要放置setxkbmap的位置执行该命令,启动窗口管理器。)
正如boskom所说,尽管gnome确实有键盘管理器。
仅供参考,emacs最初是为使用"太空学员"键盘的MIT lisp机器编写的。 X11具有超级,超级,alt和元修饰符键。有时PC键盘上的" Windows键"被映射到Super。它们很容易绑定到窗口管理器内容(例如,切换虚拟桌面),因为几乎没有应用程序通常会使用它们。
回答
替代文字http://www.userfriendly.org/cartoons/archives/07sep/uf010710.gif
@熊加米奥夫
回答
我一直很好奇为什么如此庞大的程序员,作家,极客等社区尚未找到解决此问题的超级简单有效的解决方案。简单:1)取一小张纸,制成纸球; 2)使用苏格兰威士忌将其粘贴到左ctrl键上(暂时将其从该位置移除); 3)书写时,请用左手掌的侧面按该键,因为此键比其他键高,我们可以轻松进行操作。这样一来,我们无需购买超级键盘,也无需重新映射ctrl键来进行大写锁定(无论如何,最终我们还是会用小指推入该键)...
关于这么小的问题的讨论太多了。
回答
我完全同意重新映射大写锁定解决方案,这很有帮助。
更进一步,我尝试并喜欢Ergoemacs的键盘绑定。该项目正在积极开发中,并得到了很好的支持。我个人不使用它,因为它似乎未与Mac OS X集成(某些EMACS键已集成在Cocoa中),尽管似乎有人发布了带有Ergoemacs键绑定的inputrc文件。
我一直在玩的另一个技巧是启用StickyKeys。它在许多平台上都得到支持,并减轻了某些和弦特有的问题(而不是过度使用):显然建议在emacswiki上使用:http://www.emacswiki.org/emacs/StickyModifiers
回答
对周
昨天我找到了一个解决方案,可以在Mac上进行系统范围的ErgoEmacs键盘绑定。
诀窍是使用mac os x的键绑定系统,以便使用Control键在系统范围内进行ErgoEmacs键绑定。然后,在OS偏好设置中,交换Control和Cmd键。
这样一来,我们将获得ErgoEmacs键盘绑定系统,该系统在空格键旁边带有修饰符。缺点当然是普通的Mac Cmd + key现在位于键盘的角上。因此,对于我们是使用大多数应用程序进行文本编辑还是使用应用程序的快捷方式,这是一个折衷方案。
可以在这里试一下:
http://code.google.com/p/ergoemacs/wiki/ErgoEmacs_keys_system_wide
同样,几年前,我尝试了Mac OS上的广泛用户自定义键绑定,但某些可可应用仍不支持它。在这里看到底部
?如何在Mac OS X中创建键绑定
但是现在情况可能会好一些。
回答
由于此线程仍在继续,我将加两分钱:
有或者没有emacs,ctrl键对于Linux或者Windows上的大量内容都很有用:复制,剪切,粘贴,查找,关闭,退出...我经常使用这些东西。因此,正如其他人所建议的那样,我希望将其放在空格键附近,以便可以使用拇指。这就是Mac上默认情况下的方式,其中所有内容都使用cmd密钥:
[ctrl] [alt] [cmd] [空格键]
因此,我在Linux机器上使用了Mac键盘,并将cmd键设置为第二个Ctrl键(在Ubuntu Lucid中:Keyboard Prefs> Layouts> Options> Alt / Win Key Behavior> Control映射到Win键(并且通常的Ctrl键))
[ctrl] [alt] [ctrl] [空格键]
其他福利:
*有时需要使用Mac时,剪切/粘贴/等都在我惯用的位置。
- ctrl + tab(带有真实的ctrl键)仍在两个平台上的浏览器和其他应用程序的选项卡之间移动。
该计划的缺点是alt键已移至左侧,因此alt + tab命令(我用于窗口切换)不再与Mac等效的cmd + tab匹配。但是我仍然可以用拇指击打它,对我来说,它仍然比摧毁我的小指小得多。是的,我知道我可以使ctrl + tab成为窗口切换器,但是真正的ctrl键对选项卡切换不起作用。此外,随着应用程序进入浏览器,窗口/标签导航策略将在一段时间内不断变化-但是剪切/粘贴之类的基础知识一无所获,因此我希望将其锁定。在我的拇指下
(当然,如果我们想在Mac上使用emacs,我想我们会回到第一个方格的……)