我经常听到抱怨说,为了简洁而大量使用符号的编程语言,尤其是C和C++ (我不会接触APL),很难输入,因为它们需要频繁使用Shift键。一两年前,我自己也厌倦了它,下载了微软的Keyboard Layout Creator,对我的布局做了一些修改,再也没有回头看过。速度的差异是惊人的;通过这些简单的更改,我能够输入C++代码大约快30%,当然,这取决于它有多多毛;最好的是,我在普通运行文本中的输入速度不会受到影响。
我的问题是:编程已经有了什么替代的键盘布局,这些布局已经变得流行起来,它们中的任何一个仍然在现代使用中,你个人是否使用任何改变的布局,以及如何进一步优化我的布局?
我对标准的QWERTY布局做了以下更改。(我不使用Dvorak,但有一个programmer Dvorak布局值得一提。)
由于长的或重复的文字数字通常用带有代字号的命名反引号替换,因为在许多语言中很少使用反引号,但是在带有下划线的
我怀疑最后这一点可能是最有争议的,因为它通过使用shift来输入常见的缩写,从而最大程度地干扰了文本的运行。这种布局极大地提高了我在C++、C、Java和PERL语言中的输入速度,并在一定程度上提高了LISP和Python语言的输入速度。
发布于 2010-02-22 00:00:38
我仍然认为,打字速度不是项目完成所需时间的主要因素。如果是这样,那就有一个很大的问题(几周的编码为我们节省了几个小时的计划)。
关于你的问题,我更喜欢使用标准布局,因为这意味着当我看到标准键盘布局时,我不必在前10分钟看起来很愚蠢。
你建议的一些替换,例如,顶行的特殊字符不会有任何区别,因为另一只手的外指应该同时移动到移位。
我有一件事可以帮助链接布局,那就是只使用键盘快捷键。推荐使用Vim和Emacs。它使得移动文本的速度更快。
发布于 2011-01-31 10:02:01
我会用下面的方式来回答你的问题。该任务是以最小化给定文本的击键和手部移动的方式来组织键盘。
走向可能的解决方案的步骤。编写一个程序,该程序:
现在,手动或通过编写程序,以以下方式重新定义您的布局。将最常用的符号放在离你的强手更近的中心位置。第二个符号是你在中间位置的弱手。第三个符号返回到强hand...and,依此类推。然后,您逐渐从手的中心位置移动到键盘上更“远”的区域。当所有键盘都已满时,您可以继续分配按键的过程,但这次是按下Shift键。另一个不同之处在于,当按下Shift时,您不会为每个符号旋转强手和弱手。首先按下shift键,您将填充键盘上的中心位置,然后移动到更远的位置。
完成所有这些操作后,再次对新布局执行步骤3,以查看该布局是如何改进的。
你可能需要随身携带你的键盘。好的一面是没人会碰你的电脑。它会让你看起来像个职业选手。
最后,别忘了分享你的发现。
发布于 2011-07-13 18:51:38
我正在尝试Colemak布局的一个变体,其中包含大量的符号变化:
不使用SHIFT:
`-{};<>()_=
Q w f p g j l u y*/#\
A r s t d h n e i o‘
Z x c v b k m,.好了!
使用SHIFT键:
~1 2 3 4 5 6 7 8 9 0&+
Q W F P G J L U Y@^$|
A R S T D H N E I O“
Z X C V B K M%:?
也许我会恢复/密钥..。
但这并不是基于任何合理的研究,我也希望看到布局优化(优化包括手动修改等内容,也包括ZXCV保存,...)使用基于源码的语料库,因为所有这些布局似乎都只针对散文进行了优化。例如,'f‘在C中是一个非常常见的字母(if,for)。
更新:我目前正在使用
`-{}@<>()_=
Q w k r g y u l p*;#
A s f t d h n e i o‘\
\z x c v b j m,./
使用SHIFT键:
~1 2 3 4 5 6 7 8 9 0^+
Q W K R G Y U L P&!$
A S F T D H N E I O“|
|Z X C V B J M%:?
这是基于Carpalx的6键交换部分优化,保留了通常的剪切/复制/粘贴/撤消快捷方式,并对其进行了修改,以便更好地访问通常的编程字符。
https://stackoverflow.com/questions/2306423
复制相似问题