VIM 简易教程(4)

第四课 基本的复制、粘贴操作

剪切和粘贴

当用命令 或 删除了一段文字后,被删除的文字就自动被 vim 保存到了一个特殊的剪切板中。之后可以用 命令(put)将其粘贴到光标所在的位置的后面。

大家可以试试依次输入下面两条命令:

dd

p

这两条命令执行下来相当于将两行内容调换了位置,类似下面的命令

x

p

将两个字母颠倒了位置。

命令同样可以在前面加上个数字,表示重复粘贴 次。

文本中加入标签

有时,我们要删除一个大的文本块,直接用d命令很难描述这个文本块的开始和结束。这时可以用 命令(mark)在文本中做个标记。还是举个具体的例子。比如有如下的文本:

int main(void)

{

    double x = 1e-2;

    double y[5];

    y[0] = gsl_log1p(x);

    y[1] = log1p(x);

    y[2] = log1p2(x);

    y[3] = log1p3(x);

    y[4] = log(1+x);

    printf("gsl_log1p = %.15e\n", y[0]);

    printf("log1p = %.15e\n", y[1]);

    printf("log1p2 = %.15e\n", y[2]);

    printf("log1p3 = %.15e\n", y[3]);

    printf("log(1+x) = %.15e\n", y[4]);

    return 0;

}

想要将几条printf 语句都删除掉。先将光标移动到第一个printf语句的第一个字符p处。执行命令 ma 。其中的 是给这个标签命的名字,命名的规则与 命令相同。然后将光标移动到 return 语句的 第一个字符 r。输入命令 d`a。可以看到几行 printf 语句都被删除了。

`a 表示做标记的位置

‘a 表示标记所在的行的开始位置

当我们在一篇文章中做了多个标记后,可能我们自己都记不清那些标记都放到了哪里。这时可以用下面的命令显示出所有的标记。

:marks

可以看到,除了我们定义的标记,还多了许多系统自定义的标记。他们的含义以后在介绍。

复制命令

Vim 中称复制操作为 yank。对应的命令是 y

命令与命令相似,只是它不删除所选的区域。

你可能感兴趣的:(VIM 简易教程(4))