引言

对于程序员来说,键盘输入是我们工作的基本方式,当你的手指在键盘上飞起来的时候,不但能够提高工作效率,还常常引来旁人羡慕的目光。下面将从不同方面介绍一些提高键盘使用效率的方法。

程序员最主要的文字输入内容是代码输入,本文将主要讨论英文和代码的输入能力,最后将稍微讨论一下如何提高中文输入能力。

准备

一说到“提高键盘输入能力”,大家都会想到要练习打字,没错,练习打字就是我们提高键盘输入能力的主要途径。在正式练习打字之前,一些相关的准备也许会帮助你在练习打字的过程中事半功倍,或是让你更有练习打字的意愿。

键盘

很多人享受打字时机械键盘的噼里啪啦声,不过并不是所有人都有购置机械键盘的计划。这时不妨试试Tickeys这款软件,它虽然不能提供机械键盘的触觉反馈,但是能够模仿机械键盘的声音,让你在没有机械键盘的时候也能享受按键声音的愉悦,让你爱上打字。

键位选择

如何提高程序员的键盘使用效率?——ASE第一次作业-LMLPHP

不少读者可能听说过鼎鼎大名的Dvorak键盘家族,其拥护者宣称Dvorak键盘是更科学高效的键位设计。不过我是不推荐使用Dvorak键盘家族的。我认为,对于写代码来说,键入效率并不是那么重要,只要键入速度不拖思路的后腿就可以了,不值得为了键入效率而花费巨大的精力和时间去适应新键位。同时,还有以下理由:

  • Dvorak键盘家族的效率可能没有想象中的那么高。这些键位基本都是针对英文输入设计的,无法同时满足输入中英文都能提高效率的需求。另外,键位改变之后,各种软件中的原本好用的快捷键会变得难用。
  • Dvorak键盘限制了你的自由。如果你想在所有平台上都使用Dvorak键盘,不但会花费相当大的精力,而且会失去使用一些本身很好用的平台、设备或软件的机会,只因为它们不支持Dvorak键盘的机会。而且不论你怎么努力,你总有被迫使用qwerty键盘的时候,这时又要重新熟悉原来的键位。

总之,使用Dvorak键盘很可能是弊大于利的,如果想深入了解,可以参考这篇文章。所以,我还是推荐使用传统的qwerty键盘。

指法

如何提高程序员的键盘使用效率?——ASE第一次作业-LMLPHP

标准指法是一种公认比较合理的指法方案,强烈建议学习标准指法。有的读者可能会想,我原本的指法打字也很快啊。事实上,标准指法能够提高键入效率的上限,刚刚开始输入效率会降低一段时间,练习一段时间后效率能得到很大的提升。另外,标准指法的手指分工更加科学,能够减少长时间打字产生的疲劳。

关于标准指法的详细介绍,参加标准打字指法;更多基于标准指法的建议,可以参考一个过来人的打字指法纠正之路

打字练习

输入效率的指标

输入效率的通用指标是打字速度和准确率。其中打字速度的单位是WPM,意为每分钟能输入多少单词(字)。有不少测试工具能够检测你的输入效率。在此提供一个在线测速网站:Typeracer。在 Typeracer 中,你可以在线和全世界的打字爱好者同台竞赛,测试出自己的打字速度的同时,还能大致了解自己的输入效率处于一个什么水平。

我认为,打字速度在 30 - 50 WPM即可满足一般的代码输入需求。目前我的打字速度只有 20 WPM,准确率在95%左右,看来我还需要一定的练习。

打字练习网站

不用说,盲打是效率最高的打字方式,而且熟练的打字都是靠肌肉记忆。我找到了几个广为推荐的打字练习网站,这些网站都是教会你盲打和培养肌肉记忆为宗旨。我将选择自己喜欢的网站进行正式的打字练习,你也可以选择自己喜欢的打字网站。

Typing

Typing 提供了从入门到进阶共计45门打字课程,还提供足够的不同领域的练习文本,其中甚至还有针对HTML和CSS使用者的内容。另外,还有8个打字小游戏供你练习。

如何提高程序员的键盘使用效率?——ASE第一次作业-LMLPHP

我体验了几节入门课程,课程包括一些完全从0开始教起的视频教程、键入练习和穿插其中的打字小游戏。键入练习的虚拟键盘也提供了包含按键手势的的指法提示,对于不熟悉标准指法的用户非常友好。

总之,Typing比较适合从0开始,不熟悉标准指法的打字练习者。

Typingclub

Typingclub 提供了648个关卡供你练习打字,经过体验下来,Typingclub和Typing是差不多的,课程内容基本一样,只是字母的学习顺序和一些交互细节有所不同,不妨分别体验一下,选择你喜欢的网站进行打字练习。

Kebr

如何提高程序员的键盘使用效率?——ASE第一次作业-LMLPHP

Kebr 网站只有这一个界面,但是其设计却大有学问。屏幕上的键位图帮助你熟悉键盘,丰富的数据监测帮助你了解自己目前的输入效率。最有特色的是其练习文本:

  • 练习特定字母的时候,文本不再是简单枯燥的“jjjfff”这种无意义的字符串,而是英文中真正会出现的字母组合。
  • Kebr 会根据你打字时的数据针对性设计文本,专门练习你的弱项字母。
  • 练习文本中字母出现的频率符合一般的英文文本中字母出现的频率,字频更高的字母你将练习得更多。

我在体验的过程中发现,屏幕中的键位图在输入时没有指法提示,在对标准指法不熟悉的阶段可能需要适应一段时间。所以,该网站比较适合对标准指法比较熟悉的打字练习者。

Speedcoder

程序员打字的特点是单词分布比较集中,需要输入大量的符号,而 Speedcoder 就是一个针对程序员打字需求的网站,为程序员提供真实的代码作为练习素材,支持 C, C++, Java, Python, Javascript, PHP等十余种编程语言,还可以上传自己的代码作为练习素材。同样的,Speedcoder 支持虚拟键盘以及指法提示,不过不像前两个那样提供按键手势。该网站适合程序员的代码输入练习。

练习方案

对于以上提供的几个网站,你既可以坚持使用一个网站进行打字练习,也可以组合使用,不论如何只要坚持练习,输入效率一定会有所提升。组合使用的话,我推荐的方案是先使用 Typing 或者 Typingclub 练习所有的按键,熟悉标准指法,然后使用 Kebr 进行巩固练习,最后使用 Speedercoder 进行代码输入专项练习,也可以在熟悉标准指法后直接使用 Speedercoder 进行练习。

快捷键

Cheat Sheet

快捷键能让程序员尽量拜托鼠标,是提高键入效率的利器。各种软件都有各自好用的快捷键,但是记忆大量的快捷键的负担是很重的,忘记自己想用的快捷键再去查询设置就有些麻烦,Cheat Sheet是一个克服这个问题的不错的选择。在Cheat-Sheets.orgCheatography这两个网站中你可能会找到你需要的Cheat Sheet,在一开始仔细阅读一下Cheat Sheet,保存起来以备查阅,

当然,不少软件查询快捷键也很方便。比如在VS Code中,可以按ctrl+k,ctrl+s来打开快捷键查询和绑定页面;或者是按F1打开终端输入命令shortcuts来打开一个实时更新的VS Code快捷键的Cheat Sheet文档。

你也可以试着建立自己的Cheat Sheet,前面提到的Cheatography即可满足你自制Cheat Sheet需求。

Vim

在写作本文时,我还不会使用Vim。出于对提高键入效率的考虑,我已经决定开始学习Vim,原因有以下几点:

  • Vim虽然是一款古老的编辑器,但是其输入思想非常高效。
  • 面对复杂的编辑需求时,Vim更是无可匹敌的存在。
  • 有些时候你将不得不使用Vim,比如ssh登录Linux时。
  • 当你使用不同的IDE、编辑器时,需要记忆大量不同的快捷键方案,即时是查阅Cheat Sheet也有些笨拙。而不少流行的IDE和编辑器往往都支持Vim扩展,学会Vim的使用后你掌握一套可以到处使用的高效快捷键方案。学习Vim将使你受益终生。

不少人对Vim陡峭的学习曲线望而却步,之前的我也是如此。Vim 不是那么可怕,这里有5个免费的资源可以用来学习它这篇文字集合了一些高质量的Vim学习方法,相信你能够通过这些资源掌握Vim。

中文写作

除了输入代码之外,程序员也有写博客、文档等中文写作需求,相信大家对自己的中文键入速度都有一定的自信,而排版会耽误一些写作时间,或者是为了省事放弃了排版。事实上,高效和美观是可以兼得的。

Markdown 是一种轻量级标记语言,非常适合博客、文档这种没有硬性排版要求的场景,Github的默认Readme文档就是Markdown 格式的,本文也是用Markdown 写作的。Markdown 语言有如下优点:

  • 语法简单。Markdown 语言最常用的语法规则不到十条,而且都很简单,能够被迅速掌握。想要快速了解常用的Markdown语法,可以参考Markdown教程语法汇总大全
  • 输入流畅。和所见即所得的富文本编辑器不同,Markdown 是一种标记语言,用纯文字就能赋予文档格式。在大部分写作场景中,Markdown 能够让你在写作时双手不离开键盘,这对提高输入效率是非常重要的。

  • 跨平台性好。在各大平台都有非常优秀的Markdown编辑器,很多博客网站也支持用Markdown写作。在不同平台上,Markdown 文档的显示效果也能保证基本一致。

如果你对Markdown非常感兴趣,可以参考Markdown 完全入门深入了解Markdown语言。

如果你使用的是Win平台,推荐一款非常优秀的Markdown编辑器:Typora。本文就是在Typora上编辑的。Typora的优点有很多,下面介绍两个比较重要的:

  • Typora的主打功能是即时渲染,能够将Markdown源码立即渲染成带格式的文本,让Markdown也能“所见即所得”。
  • Typora提供了打字机模式和专注模式。打字机模式是让当前行始终保持在屏幕中央,专注模式是将除了当前行以外的所有文字变成灰色。Typora本身的UI就非常简洁,这两个模式相互配合能够让你更加专注地进行写作,进一步提高输入效率。

参考让 Markdown 写作更简单,免费极简编辑器:Typora,了解Typora的更多特性,相信我,Typora绝对不会辜负你的期望。

总结

键盘输入效率虽然重要,但是追求太高的输入速度是没有意义的,只要能够满足基本的输入需求即可。对于程序员来说,最重要的是代码思想和能力,在编程的过程中真正用于键盘输入的时间是很少的,现实情况往往是思路远远跟不上你的键入速度,花费过多的时间在“提高效率”上面反而是一种浪费,不如把这些时间花在提高代码能力上面。

祝愿读者的键入效率和代码能力能够齐头并进。

05-27 02:32