普通人的编辑利器——VIM(forwindows)

上传人:平*** 文档编号:18005651 上传时间:2017-11-13 格式:DOC 页数:13 大小:337KB
返回 下载 相关 举报
普通人的编辑利器——VIM(forwindows)_第1页
第1页 / 共13页
普通人的编辑利器——VIM(forwindows)_第2页
第2页 / 共13页
普通人的编辑利器——VIM(forwindows)_第3页
第3页 / 共13页
普通人的编辑利器——VIM(forwindows)_第4页
第4页 / 共13页
普通人的编辑利器——VIM(forwindows)_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《普通人的编辑利器——VIM(forwindows)》由会员分享,可在线阅读,更多相关《普通人的编辑利器——VIM(forwindows)(13页珍藏版)》请在金锄头文库上搜索。

1、普通人的编辑利器 VIM (for windows)2007 年 03 月 21 日 星期三 下午 04:43FROM linxuelin2005 年 5 月,我开始用 VIM。此后渐入佳境,原来因版权自律而放弃盗版 UltraEdit 的遗憾一扫而空。并且,从 VIM 我才体会到,什么才是真正的编辑利器。在善用佳软或其他论坛发文,我都是先在 VIM 中输入,并方便高效地编辑好格式,再贴到网上。而我的通讯录、记事、读书笔记、工作记 录也是在 VIM 中完成的。包括一些文档、数据的处理,让 VIM 过一下,也会提高不少效率。一句话,自用 VIM 以来,对它迷恋日深,几乎要超过 Total Com

2、mander。但是,正如善用佳软及论坛发文所提,我大力推荐“用 IrfanView/XnView 代替 ACDSee、用 7-zip 代 替 WinRar/WinZip、用 GIMP 代替 PhotoShop”,但并未推荐 VIM 代替 UltraEdit。这并不意味着 VIM 不能胜任,恰恰相 反,如果说 IrfanView 等替代品比原共享软件还有些差距的话,VIM 则远胜 UltraEdit。不推荐的唯一原因是,VIM 对初学者有点难。但今天仍写了此文推荐给大家。原因有二:其一,编辑大人选定了题目,要向大众宣讲 VIM 和 Emacs,这种勇气鼓舞了我。其二,已发两位高手的文章( 王垠之

3、Emacs 是一种信仰!世界最强编辑器介绍,Dieken 之程序员的编辑器 VIM)可能会吓住一些对它们产生了兴趣的人,对此我要做些修正。因此本文内容有二:一是帮新手体验 VIM。这部分有些象实验教程,多用实例,且行文风格尽量傻瓜化,以便于新手(包括以前从未听说过 VIM)可以照我的操作,一步步体验 VIM。二是介绍我的应用,即VIM 如何便利我的日常工作和生活,而非编程。1 对 VIM 的基本介绍一句话介绍就是:VIM 是一个超级超级强大的文本编辑器。它和 Emacs 是一个数量级;而我认为,比 UltraEdit、Editpad、 EmEditor 要高一个(至少半个数量级)。如果你有兴趣

4、,不妨一读 程序员的编辑器VIM,以便于对 VIM 有更详尽全面的理论认识。要点 1:VIM 及前身 VI,历史悠久(可能比多数读者的年龄更大),经历了几十年的考验和发展,值得信赖。要点 2:VIM 有模式。通俗地做一下对比。notepad 无模式(或称为只有一种编辑模式),你按下 j,就是在正文中输入 j;要保存,就要 ctrl+ s;要下移一行,就要或鼠标。而在 VIM 中,打开一个文件后,并不处在编辑模式,而是 Normal 模式,此时你按 j,VIM 并不认为你要在正文中输入 j,而是代表光标下移一行。此时按 i 表示进入 insert 模式,即编辑模式,即 notepad 的模式。编

5、辑模式按 Esc 退回 normal 模式。 normal 模式下按:进入命令行模式,用于输入较复杂的命令。比如:w 代表保存文件,:e a.txt代表打开文件 a.txt。即 VIM 可以不用鼠 标、方向键、菜单、Ctrl、alt发出命令。因此,以下的体验中切记进入正确的模式:Esc 到 Normal;Normal 下 i 到编辑; Normal 下:到命令行。再说明一点是:文中:打头的是命令行模式,此外多数 Normal 模式。要点 3:复杂对抗复杂。 VIM 有的命令行很吓人,长长一串字符恍若天书。这些貌似复杂,实际上无非是一些简单命令的组合而已。借助于此,VIM 用户可以实现非常复杂的

6、需求。如果你没有这样的需求,就无须理会它们。要点 4:一能百能。这一点是 Unix 或命令行风格软件的显著长处,经过实用可以深刻体会。本文尽管有一些例子,但它运用之妙,存乎一心的感觉,仍未能 充分展示。这里先打个比方,如果 windows 下某软件号称能炒菜,那意味着你点一下菜单,菜就做好了这就是易用哲学。到底怎么做,你是没有多少发言 权的,而是由软件开发者固化。而如果 VIM 说能,那它就是有一个“炒菜” 命令,你可以把这个命令与原有的“原料”“ 数量”“火候”“ 风味”“灶具”命令结 合在一起用,甚至在它前面加上“买菜”“洗菜”,后面加上“装盘”“洗碗” 做成一个自动脚本,在合适的情况下自

7、动执行。要点 5:无限灵活,个性由我。你只要有具体需求,VIM 几乎都能满足。因此不同人的 VIM 是不一样的,即,把下载来的 VIM 配置成自己的 VIM。就此打住,开始体验之旅吧!2 下载和安装VIM 是跨平台的。在 Windows 下,我们用的是 gVIM for windows 版。最新的是 7.0 版,下载包约8MB,完全安装后约 20MB。注:体积太大?你如果是高手,完全可以把不用的文件删除(包括帮助文件,它是我见过的软件中最好的帮助),精简后的体积可以不到 2MB。或反之,仅下 载一个 gVIM.exe(1.5MB)就能运行。但对于这次体验,鉴于第一次使用,建议全部按默认项安装,

8、这样才能达到文中预想的结果。PCOnline 下载,官方下载安装,基本上,一直 Agree、Next 就行了。我通常是装在 d:program filesVIM 下。可参见3 体验之旅3.1 初见界面安装完成后,按提示打开 readme,你将看到或自行打开桌面的快捷方式,也可直接运行 d:program filesVIMVIM70gVIM.exe,你应该看到如此界面:什么?难看?土?我第一次见到它也是这种感觉,现在却只觉得亲切。再一点,你有没有奇怪它是中文界面?难道我给你下载的是汉化版?会不会捆绑流氓插件啊?你如果真这样想,我只能叹息无语了。3.2 试读 html请把此网页保存为 htm,比如

9、 test.htm,然后用 VIM 打开它。暂时用菜单吧!结果可能是这样:平平无奇,是吧?因为它是一个标准的 VIM,并且是性能优先,视效忽略的 VIM。无妨,请进入命令行模式(就是按一下冒号,注意是英文冒号:),注意到最下面一行的变化了吧。再输入 sy on 再回车。是不是有颜色了?它应该看起来象这个样子重要提醒:为简化起见,下文将用:sy on表示(先确认在 Normal 模式,如不确认,请按几次 Esc)你先按:进入命令行模式,再输入 sy on,再回车。补充说明:sy 表示语法加亮,on 当然是打开。:sy clear 表示取消加亮。3.3 改头换面体验 VIM 就要按 VIM 的思路

10、,所以我们要把 gVIM 改回 VIM 的本来面目。对了,如果你认为它的界面很土,请更要多看一眼当前的样子,因为下面的操作后可能会更土!执行如下命令:set go=这时的 VIM 应该是不要大惊小怪,不就是菜单和工具栏不见了嘛?VIM 中是不应该用到它们的。补充说明:set 表示一般性设置;go 是 gui option 的缩写,就是界面;等于空就是什么都没有再输入半条命令(先不要回车):colo ev然后,按一下 tab 键。是不是自动补全为 evening 了?VIM 是非常聪明的(但是不会象 MS Word 那样自做聪明)。然后你回车,看到了什么?天色全黑了?没错,现在是 evening

11、 嘛。补充说明:colo 就是设置调色方案。 VIM 自带了近十种调色方案,当然你还可以在网上下载更多,或改编自己的调色方案。你可以直接在:colo (加一个空格)就连续 tab,选择不同的配色方案来体验一下。当然,evening 是比较经典的一种。我一直就用它。3.4 准备并打开范例文件简化起见,请 下载 test.txt 并保存为 d:test.txt。然后,在 VIM 中输入半条命令:tabnew d:t输到这里后不要回车,按一下 tab,VIM 会自动补全为 test.txt 的。如果不对,再按几次 tab,直到正确为止。然后回车。你会看到 VIM 打开了 test.txt,并且是以多

12、页签(tab page)的方式。你可以点击各页签在打开的文件中间切换(高手有更方便的键盘命令做法)。在 VIM6.3 中,还没有此功能。当然了,这并不意味着 VIM 的用户没办法享受多页签的便利,下载一个插件后 VIM 有上千个插件就可以了。面对多页签风格的流行(IE6MaxthonIE7 ), VIM7.0 也新增了此功能。我喜欢这种简单的页签。如果你认为此页签太难看,可试一下:set go=e这时应如下效果3.5 统一格式,下载 vimrc上面所操作的各种命令,都是对 VIM 的设置。把它们写到一个_vimrc 文件中就成了默认选项。每个 VIM用户的_vimrc 文件都不一样,因为每个人

13、的需求不同。为了保证下面的操作得到预期的效果,请下载我的_vimrc。依次执行下述操作: 关闭所有的 VIM 找到你的 d:program filesvimvim7_vimrc,复制一份。 右键点击此处,“另存为”覆盖你的 d:program filesvimvim7_vimrc。注:这并不是标准做法,但对 windows 用户是比较方便的做法。3.6 打开 test.txt再次就模式进行提醒:Esc 到 Normal;Normal 下 i 到编辑;Normal 下: 到命令行。运行 VIM,并在命令行执行:e d:test.txt接下来,我们把此文章排一下版。如果你认为可以手工排版,请把此文

14、件复制到 10000 行再发表意见。 3.7 分段并保存原文没有分段,观察一下,发现可以在“以下是”前面加回车,于是:%s/以下是/r&/gc输入后,界面如下并提示 ,请回答 y 或 a。如果回答 y,则替换当前一个;到了下一个,VIM 还会再问你。所以,你回答几个 y 后不妨一 a 了之,全部替换。补充说明:s 表示替换;s/a/b 表示把 a 换为 b;上一命令是把“以下是 ”换为“r&”,r 表示回车,& 表示被替换的部分,即“以下是”;% 则表示全文;/gc 表示一直替换(不是仅替换第一个),并且要用户确认。看一下文件,你或许想,空 2 行可能更好。很简单,再重复一下刚才的命令就好了。

15、不过,对强大的VIM 来说,无须笨笨地重复输入上次的命令。在命令行按下:后,再按一下(向上的方向键),看到刚才的命令了吧?直接回车,提问时输入 a,任务完成。既有变化,请及时保存。命令是:w当然,你也可以按 ctrl+s。但 ctrl+s 之所以有效,是因为我在_vimrc 中做了定义:当按下 ctrl+s 时,系统执行:w 动作。因此,你完全可以定义其他热键,并把它映射到:w。3.8 继续编辑首先删除“坚持”两字,很简单,只要按 gg2x 就行了。为了看效果,你可以分开按:gg,这时光标移到文章头。2x,这时删掉了 2 个字符。再一次体验 VIM 的神奇,比如按 5x,于是 5 个字符消失了

16、。当然,这 5 个字符是要保留的,没关系,你按一次 u,就回来了吧?再按一下 Ctrl+r,是不是又没了?再来一次 u,是不是又回来了?没错。u 和 Ctrl+r 相当于(是相当于不是等同于)windows 的 undo 和 redo。再试一下 dd。是不是整行没有了?没关系,u 回来就行了。再试一下 3dd。一下子删除了 3 行!没关系,u 回来。再来一个 dG,哇,全文都没了?!仍然 u 回来啊。3.9 更多编辑任务 a:把每一句分为一行,即达到如下效果以*为荣、以*为耻,解决:如果你记得上面的替换命令,就会想到,可以用 2 次替换( “为荣、”换为“为荣、” 加回车,“为耻,”换为“为耻,” 加回车)。但这两次替换在 VIM 中完全可以一次完成,即用正则表达式,在“ 为”及后面 2字符(“荣、” 或“耻,”)后加入回车。怎么表示呢?:%s/为./&r/gc看一下高亮,没问题,直接 a哇,是不

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号