1 前言
一直忙项目搞得许久没有写博客了,顿时有深重的负罪感,今天赶紧补几篇平复一下心情。。。
文本编辑器的重要性我记得当时还是在《程序员修炼之道》那本书中第一次看到,这些年下来感觉这个真的是太有道理了,为自己节约了很多的时间,所以我也不断的提醒身边的朋友去用好它。但是自己每次都从头说一遍感觉也挺费时间的,所以打算直接写下来可以更好的分享给更多人。
这里顺带提一下,windows自带的那个notepad就无视了吧,功能太弱了,而且文件稍微大一点就直接卡了,看了后文就知道差距实在是太大了。
2 推荐的文本编辑器
好用的文本编辑器有很多,只要选一到两个顺手的用即可,其实我用过的也就一些,相比较而言,我推荐几个自己比较喜欢的(主观性比较强,仅供参考)。
1. Vim:必须排第一,大爱它的快捷键了,手是完全不用离开主键盘区的,基本上常见文本编辑器有的功能它都拥有,唯一的缺点就是学习曲线比较高。在Linux下真的是一个无法替代的工具,Windows下的Gvim也可以使用,但是用起来总感觉怪怪的。。。
2. Sublime: 感觉是windows上用的最爽的一款了,是用Python编写的,界面很漂亮,插件也非常的丰富,貌似很多新语言都喜欢直接用这个做IDE了。非常喜欢它那种Python风格的简明操作,上面的插件也是这样的风格,ctrl+shift+p可以直接用命令行调用,所有快捷键都有个配置文件可以随便修改,感觉很酷!
3. Notepad++: 这个感觉比较容易上手,默认就有了绝多大数常用功能,推荐非程序员用户使用!最喜欢它的列复制之后,可以非常智能的进行列粘贴,sublime的列粘贴必须两列的行数一样多才行。
3 文本编辑器的强大之处
其实不用我说,大家也应该能想到牛逼的地方有很多,但是我个人觉得以下是个人觉得最实在的功能点,而且也应该成为你不得不会的几个功能。
3.1 列编辑
使用场景:
1. 在平时编辑文本的时候,经常会遇到一列要同时进行替换或者插入什么内容,这样的操作就是列编辑,可以方块式的选择一段内容,然后进行操作。
快捷键:Vim(Ctrl+v) Sublime(鼠标中键 或 shift+鼠标右键) Notepad++(Alt+鼠标左键)
2. 这里有个稍复杂一点但也非常常用的插入,就是要插一段等差数列,比如说是1、2、3、4...这样的值。
快捷键:Vim(无?) Sublime(Ctrl+Alt+N)[需先安装Insert Nums插件] Notepad++(Alt+C)
3. 还有一种特殊的场景,在任意位置同时编辑,这个就比列还要灵活一点。
快捷键:Vim(无?) Sublime(Ctrl+鼠标左键) Notepad++(无?)
3.2 行操作
这个可以操作的有很多,可以提高效率,简单列几个吧(以Sublime为例):
- 行缩进 Ctrl+] (Edit > Line > Indent)
- 取消缩进: Ctrl+[ (Edit > Line > Unindent)
- 当前行上移: Ctrl+Shift+Up (Edit > Line > Swap Line Up)
- 当前行下移: Ctrl+Shift+Down (Edit > Line > Swap Line Down)
- 复制当前行: Ctrl+Shift+D (Edit > Line > Duplicate Line)
- 合并行: Ctrl+J (Edit > Line > Join Lines)
- 向后删除一个词: Ctrl+Del
- 向前删除一个词: Ctrl+Backspace
- 删除整行: Ctrl+Shift+K (Edit > Line > Delete)
- Delete from cursor to end of line: Ctrl+K
- Delete from cursor to start of line: Ctrl+Backspace
3.2 文本替换
使用场景:
1. 替换文件中所有相同的地方,这里可以是字符、换行等。
2. 实用正则表达式进行替换,基本上所有你能想到的字符串都可以用正则来灵活匹配。
3. 退而求其次,还有个办法就是基于扩展符的替换,比如“\n”,有些文本编辑器也直接可以再正则中去一样操作。
快捷键:Vim(%s) Sublime(Ctrl+H) Notepad++(Ctrl+H)
3.3 宏命令
使用场景:
行列的操作起来虽然方便,但是稍微复杂一点的场景就不适用了。这里就需要用到宏,去录制一段操作,然后去回放刚才的操作,这样就可以轻松的复制大量重复的操作。
录制快捷键:Vim(qa) Sublime(Ctrl+Q) Notepad++(菜单里面选)
停止快捷键:Vim(q) Sublime(Ctrl+Q) Notepad++(菜单里面选)
回放快捷键:Vim(@a) Sublime(Ctrl+Shift+Q) Notepad++(Ctrl+Shift+P)
3.4 文件中查找
使用场景:
1. 很多时候要基于目录下所有文件的文本内容进行查找,windows的资源管理器只能查找文件名,这个时候貌似只有文本编辑器可以方便的去找。
快捷键:Vim(无) Sublime(Ctrl+Shift+F) Notepad++(Ctrl+Shift+F)
3.5 着色器
使用场景:
1. 为了方便的查看文本内容,没有着色器真的对着茫茫文本就很难找到自己想看的内容,特别是作为IDE去写代码,看Json什么的也能一眼看出格式问题。
快捷键:Vim(:sytanx on) Sublime(SublimeREPL) Notepad++(菜单里面选)
3.6 显示空白字符
使用场景:
1. 有些时候需要看清楚有多少个空白字符。
2. 要区分tab和空格的空白。
3. 更简单的对其列。
快捷键:Vim(无?) Sublime(鼠标拖拽框选) Notepad++(菜单里面选)
3.7 万能的插件
如果以上常见功能还没有你想要的,去插件库去找找,一般来说你能想到的都已经有了。比如说Json格式的自动格式化,联想词的自动补全等。
快捷键:Vim(没怎么装过) Sublime(Ctrl+Shift+P 然后输入Install Package) Notepad++(菜单里面选)
4 写在最后
真的文本编辑器是一个非常强大又非常方便的工具,可以让你从繁重重复的文本编辑中解放出来,绝对值得拥有。还没有一款用的顺手的小伙伴感觉去挑一个你的文本编辑利器吧!