你肯定见到过程序员们面红耳赤地争论哪个 IDE 好用,哪个编程语言语法更牛 —— 这个争论可以扩展成我们现在要讨论的问题,即我们是怎样使用键鼠来操作电脑的。
按照使用电脑的方式,可以划分出两类人:一类很依赖鼠标,也不能理解为什么有人愿意用键盘输入代替鼠标来操作电脑;另一类人,就是我们(作者自夸),人数虽少,但是懂得用键盘的便捷之处,尽可能地使用键盘。
一旦习惯了键盘以后,你的速度会快得多
使用鼠标并没有什么问题,但是假如你明确知道自己要做什么(而不是漫无目的地网上冲浪),那毫无疑问使用键盘是一个更快的选择。
举个大家都懂的简单例子,使用 Ctrl-C/V 进行复制粘贴操作,而不是鼠标右击,在众多的选项中找到复制,然后再把这个操作重复一遍,进行粘贴。几乎所有我认识的人都是很早就懂得使用键盘来进行复制/粘贴操作,即使是那些非 IT 岗的同事。
但这只是冰山一角,并且大部分人在 Ctrl-C/V 之前仍然需要用鼠标选中文字,而不是使用 Ctrl-Shift-方向键 或者是 Shift-End/Home。大部分人使用回退键删除打错的字母,而不会使用 Ctrl-Backspace 来删除整个单词再重新输入。还有许多人使用鼠标在程序窗口之间切换,而不是使用 Alt-Tab 组合键。
很难去解释为什么像用鼠标操作这么简简单单的事情,其实会浪费大量时间。而且大部分人并没有意识到,因为比起使用快捷键,鼠标操作多花的时间少得可怜。但是我可以向你保证,依赖鼠标的人,一天会多浪费一个小时,甚至更多的时间。用这些时间偷偷懒休息一下或者再做点工
作,不香吗?
每次你用鼠标,你都多花了十几二十秒 —— 这还不算用鼠标打断你工作节奏的代价。
使用键盘来操作文本
即使快捷键很简单,但是仍然有相当多人不知道这些基本的快捷操作。
几乎所有的文本编辑器都可以让你做到下面这些基本的快捷操作,长期来看可以帮你省下几个小时的时间:
- Ctrl-Backspace/Ctrl-Delete 可以直接把左/右的单词删除,不用一个字母一个字母的删。
- Shift 键加上方向键可以选中文字,再同时按下 Ctrl 键的话,就是以单词的跨度来选中。Shift 和 Home/End 键同时按,直接向前/后选中一整行,而不需要按住 Shift 逐词选中。这样你就可以用 Shift-Backspace-Home/End 直接删除前/后一整行。
- Ctrl-方向上键 在许多文本编辑器中可以往上跳一个段落,虽然我不经常用,但是这个小技巧确实可以比只用方向键更快。
- Ctrl-F 可以搜索单词,也可以让你快速地跳转到网页或者文档的某个部分,如果你知道自己在寻找什么的话。Ctrl-H 可以在同一个程序中打开相同的窗口并且替换掉单词/词组。
- Ctrl-Home/End 可以让你跳转到文档的开头/结尾,这个技巧很有用。比如你在某个地方做了更正,然后需要再返回文档结尾继续编辑,就可以使用这个快捷键。
浏览器的快捷操作
几乎所有我认识的人,都会依靠鼠标来操作浏览器,好像没有人知道其实你可以用 Ctrl-L 跳转到地址栏,然后直接输入你想访问的网址。
- Ctrl-T 可以打开一个新的浏览器页面。
- Ctrl-W 可以关闭当前页面。
- Ctrl-1 到 8 可以按排列顺序打开相应的页面,Ctrl-9 则总是会跳转到最后一个页面。
- Ctrl-PageUp/PageDown 可以在打开的页面中逐个来回穿梭,PageUp/PageDown 则可以让你上下滚动页面。
- 说到滚动页面:你还可以用空格键往下滚动页面,很方便,尤其是你另一只手很忙的时候...端着水杯喝水,同时又能很好地工作。
- Ctrl-R 会重新加载页面,和 F5 功能一样。
- 浏览器的地址栏同时也是搜索栏,所以直接在地址栏里输入你要搜索的东西就可以啦,不需要先打开 google。
浏览器的高阶快捷操作
这些操作需要你安装一个叫做 Vimium 的 chrome 浏览器插件,这玩意是自切面包机发明以来最好的东西了。
有了这个插件,你就可以在网站里自如穿梭,滚动页面,查找和点击链接,所有这些操作都不需要借助鼠标。如果你了解各类 IDE 如 VS/VSCode/Jetbrains 的多快捷键操作,那么这个插件会让你如虎添翼,而且这个插件学起来超快的!
比如在 VSCode 中,Ctrl-KD 这个快捷键代表着按住 Ctrl 键,然后按 K 和 D,这样你的代码就会自动整理成优美的格式。这个快捷键最开始有点令人迷惑,但是它已经成了我有生以来的最棒的快捷键之一,因为它意味着几乎所有我用的应用程序中的功能,都可以有对应的快捷操作,我可以把他们中我最需要的那些给记住。而且,如果我真的不记得的了话,我也可以用鼠标,在窗口,菜单栏,选项里随意搜索,直到我发现我需要的功能藏在哪里。
安装了 Vimium 以后,只需简单按下 “F” 然后网页就会变成这样:
为什么我老婆不再爱我了?然后只需要确定你要打开的链接,比如按下 “P” 键,你就能知道为什么你的老婆对你这么冷淡,却对隔壁那个懂得修理马桶的老王那么亲昵,可是他明明什么快捷键都不懂啊,比你差远啦!
还有许多好用的快捷键,但是我给你介绍的这些初级快捷键,也是我自己用得最多的。还有的,比如像 j/k 可以让你非常顺滑地滚动页面。如果你用空格键觉得滚动太快了,那不妨试试这个。
“我的电脑”其实就是浏览器
许多人没有意识到的是,“我的电脑”其实就是一个浏览器,浏览器的快捷键同样适用。
- Win-E 打开文件管理器。
- Ctrl-L 可以让你跳转到地址栏,然后你可以输入文件地址。
- tab,shift 和方向键可以选中文件。F2 可以重命名。
除此以外,是时候用上你的控制台了
我不知道你有没有在现实中有幸看过别人用控制台表演奇迹淫巧,他们可能会说些这样的话,“对,只要 cd 到那个文件夹,然后跑 build.ps1,问题应该就解决了” 。
其实这些话别人压根听不懂。甚至有些开发人员也不懂,毕竟,如果你不 cd 到那个目录,你跑什么东西呢?
在工作中要善用这些命令。当然,Git 是有 GUI 版本的,但是有必要用吗?还是打开 pwershell 或者 cmd,输入 git 命令,记得提交代码要加说明信息,比如“修复了一个 bug”。
在 VSCode 中集成了一个终端,听起来好像没什么用,但是用了之后,真香!我用的是德文键盘,用 Ctrl-Ö 就能打开终端,而且很容易记忆,因为德文里终端的单词就是 Ökonsole。可以说十分友好了。Ctrl-P 可以打开命令盘(pan),在里面找到所有通用的 VSCode 功能。
Tab 键在终端中可以用作自动补全。多次按下 tab 键在提示出的可选项中切换,Shift-tab 可以回到上一个可选项。
使用方向上键会自动输入上一个命令,你可以修复一下语法错误。如果你不小心已经提交到了 master 分支的话,教你一个神奇的命令,git -unfuck -everything,然后一切都变好了,不需要 rebase 和 merge。
少装逼,要谦虚,好学好问,才是真理
虽然我写了这么多,苦口婆心,但是我知道没有几个人会听得进去。如果你读到了这里,不是因为我的真心打动了你,而是因为你曾经看过某人用键盘装逼,那种感觉,你也想有。
那时候的你想知道如何才能练就键盘装逼大法,现在我告诉你了,给你指了一条明路。等你学成之后,你就不再需要异性了(老婆算个啥?),因为没有人会像键盘那样接受你亲密的抚摸,也没有人会像你的电脑一样懂你需要什么。
恭喜,你跨过了这道坎。即使你还现在还没有秃顶,甚至头发浓密,但你已经走上聪明绝顶的道路。相信我,当别人看到你用键盘现场装逼的时候,他也一定会想跟你学一手的。
网友评论