Chinaunix首页 | 论坛 | 博客
  • 博客访问: 74307
  • 博文数量: 83
  • 博客积分: 1320
  • 博客等级: 中尉
  • 技术积分: 805
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-20 14:54
文章分类

全部博文(83)

文章存档

2010年(83)

我的朋友

分类:

2010-08-19 15:51:13

Vimdiff user guide

1.start

    vimdiff  FILE_LEFT  FILE_RIGHT

or    vim -d FILE_LEFT  FILE_RIGHT

or    vim FILE_LEFT

    然后在vimex模式(也就是"冒号"模式)下输入:

    :vertical diffsplit FILE_RIGHT

2.After start, pic as follow:

 

屏幕被垂直分割,左右两侧分别显示被比较的两个文件。两个文件中连续的相同的行被折叠了起来,以便使用者能把注意力集中在两个文件的差异上。只在某一文件 中存在的行的背景色被设置为蓝色,而在另一文件中的对应位置被显示为绿色。两个文件中都存在,但是包含差异的行显示为粉色背景,引起差异的文字用红色背景 加以突出.

3.交换两个窗口的位置,或者希望改变窗口的分割方式,可以使用下列命令:

       1). Ctrl-w K(把当前窗口移到最上边)
       2). Ctrl-w H
(把当前窗口移到最左边)
         3). Ctrl-w J
(把当前窗口移到最下边)
         4). Ctrl-w L
(把当前窗口移到最右边)

              其中1)3)两个操作会把窗口改成水平分割方式。

4 光标移动

接下来试试在行间移动光标,可以看到左右两侧的屏幕滚动是同步的。这是因为"scrollbind"选项被设置了的结果,vim会尽力保证两侧文件的对齐。如果不想要这个特性,可以设置:

    :set noscrollbind

5.差异点跳转

    使用快捷键在各个差异点之间快速移动。跳转到下一个差异点

    ]c

    反向跳转是:

    [c

    如果在命令前加上数字的话,可以跳过一个或数个差异点,从而实现跳的更远。比如如果在位于第一个差异点的行输入"2]c",将越过下一个差异点,跳转到第三个差异点

6.文件合并

    文件比较的最终目的之一就是合并,以消除差异。如果希望把一个差异点中当前文件的内容复制到另一个文件里,可以使用命令

    dp diff "put"

    注意,修改的结果是将光标所在文件的差异点merge到另一个文件中

    如果希望把另一个文件的内容复制到当前行中,可以使用命令

    do (diff "get",之所以不用dg,是因为dg已经被另一个命令占用了)

7.文件跳转

    如果希望在两个文件之间来回跳转,可以用下列命令序列

    Ctrl-w, w

8.手动刷新比较结果

    在修改一个或两个文件之后,vimdiff会试图自动来重新比较文件,来实时反映比较结果。但是也会有处理失败的情况,这个时候需要手工来刷新比较结果:

    :diffupdate

9.撤销修改

    如果希望撤销修改,可以和平常用vim编辑一样,直接

    , u

    但是要注意一定要将光标移动到需要撤销修改的文件窗口中

10.对两个文件操作

    退出两个文件

    qa

    保存全部文件

    wa

    保存全部文件,然后退出

    wqa

    退出的时候不希望保存任何操作的结果:

    qa

11.上下文的展开和查看

    Vimdiff 缺省是会把不同之处上下各 6 行的文本都显示出来以供参考。其他的相同的文本行被自动折叠。 如果希望修改缺省的上下文行数,可以这样设置:

    :set diffopt=context:3

    简单的折叠命令来临时展开被折叠的相同的文本行

    zo folding open,之所以用z这个字母,是因为它看上去比较像折叠着的纸)

    用下列命令来重新折叠:

    zc folding close

阅读(401) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~