基础工具
大约 2 分钟约 578 字
让需求来驱使你不断选购新的工具。
纯文本的威力
用纯文本保存知识。
shell 游戏
发挥 shell 命令的优势。花费一些精力熟悉 shell。
加强编辑器能力
熟悉编辑器:
- 当编辑文本时,以字符、单词、行、段落为单位移动光标及进行选择。
- 当编辑代码时,在各种语法单元(配对的分隔符、函数、模块……)之间移动。
- 做完修改后,重新缩进代码。
- 用单个指令完成代码块的注释或取消注释。
- Undo 并 Redo 变更。
- 把编辑窗口切割成多个面板,然后在它们之间跳转。
- 跳转到特定的行号。
- 对选出的多行进行排序。
- 搜索普通字符串,或用正则表达式搜索,然后重复上一次的搜索。
- 基于框选或某个模式匹配的结果,临时创建多个光标,并行地在多个光标处编辑文本。
- 显示当前项目的编译错误。
- 跑一下当前项目的测试。
编辑时要自省。每次发现自己又在重复做某件事情的时候,要习惯性地想到「或许有更好的方法」,然后找到这个方法。
一旦你发掘出一个新的有用的特性,需要尽快把它内化成一种肌肉记忆,这样在使用的时候就能不假思索。
当你在使用编辑器过程中遇到明显的限制时,可以四处找找有什么扩展可以解决问题。
更进一步,深入研究一下编辑器的扩展语言。搞明白怎样用它来将一些重复工作自动化——通常也就是一两行代码的事情。
有时你还会走得更远,不知不觉就写出一个完整的扩展。那么,不妨发布出去:你需要它,其他人也会需要的。
版本控制
永远使用版本控制。
调试
- 复现
- 阅读错误信息
文本处理
学习一门文本处理语言,py
、js
、ruby
。
工程日记
记录所做的事情、所学的东西、想法的草图——基本上都是各种与工作有关的东西。