我正在寻找某种参考,它显示了流行编程语言的符号频率.我正在尝试为编程设计最佳的键盘布局.
如果没有这样的参考,我不介意创建一个简单的实用程序来解决这个问题.但是,我需要就每种语言分析哪些文件提出建议.
我可以预见的一个问题是我得到了一些Objective-c代码,如果它是一个没有对象的简单程序,那么[和]键的频率远远低于普通的objective-c文件.所以,我会说其中一个指导原则是示例代码应该代表一个普通文件,并使用该语言最常用的功能.
最初我认为我应该使用不同的语言编写相同的代码,但我不确定这是不是一个好主意,因为某些语言的用途不同于其他语言.
对于用于统计分析的大型代码示例,您可以尝试浏览流行的开源项目或按语言搜索Koders.
几年前我对QWERTY布局进行了一些简单的更改,从那时起我一直在使用它作为我的通用布局:
_和-:用下划线的名字是常见的,现在-和+都需要转变.[]和{}:块比下标更常见.加上两个可选的变化,品尝:
`和~:析构函数很常见.'和":字符串比字符更常见.最后一个是唯一一个通常会干扰打字普通英文文本的人.对于C++,Perl以及我在过去两三年中使用过的其他内容,这种布局非常有效.显着的速度增加来自于按下Shift键的急剧减少.我发现使用Shift作为数字并不是什么大问题,因为数字键盘通常更快.
@Derek Jones 引用了《新 C 标准:经济和文化评论》,其中包含信息,但以下是其中包含的频率以供快速参考:
space 15.083
! 0.102
" 0.376
# 0.175
$ 0.005
% 0.105
# 0.175
& 0.237
' 0.101
( 1.372
) 1.373
* 1.769
+ 0.182
, 1.565
- 1.176
. 1.512
/ 0.718
: 0.192
; 1.276
< 0.118
= 1.039
> 0.587
? 0.022
@ 0.009
[ 0.163
\ 0.97
] 0.163
^ 0.003
_ 2.550
{ 0.303
| 0.098
} 0.210
~ 0.002
Run Code Online (Sandbox Code Playgroud)
这是按频率排序的相同内容:
space 15.083
_ 2.550
* 1.769
, 1.565
. 1.512
) 1.373
( 1.372
; 1.276
- 1.176
= 1.039
/ 0.718
> 0.587
" 0.376
{ 0.303
& 0.237
} 0.210
: 0.192
+ 0.182
# 0.175
] 0.163
[ 0.163
< 0.118
% 0.105
! 0.102
' 0.101
| 0.098
? 0.022
@ 0.009
$ 0.005
^ 0.003
~ 0.002
Run Code Online (Sandbox Code Playgroud)