- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
技巧_高效文本编辑的7个习惯
技巧_高效文本编辑的7个习惯
进行有效编辑的七种习惯
Bram Moolenaar
如果你的很多时间是用来敲纯文本,写程序或HTML,那么有效地使用一个好的编
辑器能节省你不少时间。这篇文章里的指导和提示将有助于你更快工作,更少犯
错误。
文中采用开源文本编辑器Vim(Vi IMproved)说明有效编辑的思想,但这些思想也
适用于其他编辑器。择合适的编辑器只是有效编辑的第一步,对于哪个编辑器更
好的讨论将占很大地方,这里就不提了。如果你不知道该用哪个编辑器,或者对
现在所使用的不太满意,不妨试试Vim;你是不会失望的。
第一部分:编辑一个文件
快速定位
编辑中大部分时间是花费在阅读、查错和寻找应该进行编辑的地方上,而不是插
入新文字或进行修改。在文件中不断定位(navigate)是经常要做的,所以最好学
会如何快速地进行。
你常会搜寻文档中的一些文字。或者找出包含特定词或词组的行。你当然可以使
用搜寻命令 /pattern,不过还有更聪明的方法:
* 如果你看到一个特定词,想看看其他地方是不是出现过同样的词,可以使用
* 命令。它将对光标所指的词进行搜寻。
* 如果设置了 incsearch 选项,Vim将在你正在输入搜寻模式的时候就
显示搜寻的结果(而不是等到你敲了回车之后)。这能够使你更快地找出拼写
错误。
* 如果设置了 hlsearch 选项,Vim将使用黄色背景对搜寻结果进行高亮
显示。你可以对搜寻的结果一目了然。应用在程序代码中可以显示变量的所有
引用。你甚至不需要移动鼠标就能看到所有的搜寻结果。
对于结构化的文档,快速定位的办法就更多了。Vim提供专门针对C程序(以及
C++、Java等等)的特殊命令:
* 使用 %可以从开始括号跳到对应的关闭括号。或者从 ``#if 跳到对
应的 ``#endif。事实上, % 可以完成许多对应项之间的跳转。可
以用来检查if()和{}结构是否平衡。
* 使用 [{可以在代码段(block)中跳回到段起始的 ``{``。
* 使用 gb 可以从引用某个变量的地方跳转到它的局部声明。
定位的方法当然不止这些。关键是你需要知道有这些命令。你也许会说不可能学
会所有命令 — Vim里有成百个定位命令,有的很简单,有的很聪明 — 这需要
几星期的学习。不过,你不必如此;你只需要了解自己的编辑特点,然后掌握相
关的定位命令就可以了。
可以采取三个基本步骤:
1. 在你进行编辑的时候,注意那些重复进行的操作。
2. 找出能快速进行这些操作的编辑命令。阅读文档,问问朋友,或者看看其他
人是如何做的。
3. 进行练习,知道熟练为止。
让我们通过以下这个例子说明一下:
1. 你发现在写C程序时,经常要查找函数定义。你目前使用 * 命令对函
数名进行搜寻,但得到的往往是函数的引用而不是函数定义。你觉得一定会
有更好的办法。
2. 读过一篇快速参考以后,你发现关于定位标记的说明,里面说明了如何定位
函数定义,这正是你要找的!
3. 你试着生成了一个标记文件,使用Vim自带的ctags程序。你学会了使用
CTRL-] 命令,发现这省了不少事。为了更方便,你在 Makefile 里加
入了几行以自动生成标记文件。
当你使用以上三个步骤时,有几点需要注意的地方:
* ``我只想完成任务,不想去读那些文档来找新的命令。。如果你真的是这
么想的,那么你将永远停留在计算的石器时代。有些人编写什么都用
Notepad,却总不明白为什么其他人总能用他一半的时间成任务。
* 不要过分。如果你总为一点小事也要去找完美的命令,你就没法集中精力到
你本要完成的任务上了。只要找出那些耗费过多时间的操作,然后使用相关
的命令直到熟练就可以了。这以后你就能集中精力到自己的文档上了。
下面这些章节给出了大多数人遇到的操作。你仿照它们在实际工作中使用
三个基本步骤。
不要敲两次
我们所使用的字词集合是有限的。既使是词组和句子也不过是有限的几个。对于
程序来说更是如此。很明显,你不想把同样的东西敲上两遍。
你经常会想把一个词替换成另一个。如果是全文件替换,你可以使用
:s (substitute)命令。如果只是几个位置需要被替换,一个快速办法是使
用 * 命令找出下一个词,使用 cw 来进行替换。然后敲
n 找到下个词,再用 . 重复 cw 命令。
. 命令重复上一个改变。这里的改变是插入、删除或替换
文档评论(0)