Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在vim中阻止(列?)粘贴_Vim - Fatal编程技术网

如何在vim中阻止(列?)粘贴

如何在vim中阻止(列?)粘贴,vim,Vim,如何在多行上粘贴内容 我正在努力实现以下目标: 在现有文本中,我可以使用jjjhelloworld 在5行中插入HelloWorld 但是我不想输入HelloWorld,而是想从寄存器中获取文本。 我想先拖动HelloWorld,然后将其插入5行。当您处于插入模式时,可以按Ctrl-R,然后按要粘贴的缓冲区的字母。然后像往常一样按Escape,它将像往常一样被块插入。您可以使用宏来执行此操作,如qq0Pjq4@q qq启动名为q 0转到行的开头,并将拖动的内容粘贴到光标之前 j向下一行,然后q结

如何在多行上粘贴内容

我正在努力实现以下目标: 在现有文本中,我可以使用jjjhelloworld 在5行中插入HelloWorld

但是我不想输入HelloWorld,而是想从寄存器中获取文本。
我想先拖动HelloWorld,然后将其插入5行。

当您处于插入模式时,可以按Ctrl-R,然后按要粘贴的缓冲区的字母。然后像往常一样按Escape,它将像往常一样被块插入。

您可以使用宏来执行此操作,如
qq0Pjq4@q

qq
启动名为
q

0
转到行的开头,并将拖动的内容粘贴到光标之前

j
向下一行,然后
q
结束宏


4@q
q
宏重复4次

假设vim缓冲区中有以下内容:

1|  Do the dishes
2|  Get milk
3|  Take out the trash
您希望在每行的开头插入
[]
,使其成为:

1|  [ ] Do the dishes
2|  [ ] Get milk
3|  [ ] Take out the trash

  • 转到第一行的第一列
  • CTRL+V
    (块选择)
  • 按两次
    j
    (到第三行)。现在,第1行、第2行和第3行的第一列被选中
  • I
    (shift+I-大写字母“I”)-这是“块插入模式”
  • 键入
    []
  • 按esc键(退出)
  • 文本将插入每行

  • @sotto-StackOverflow用于编程问题。您的问题可能会被迁移到SuperUser.com,这是一个更好的讨论一般计算机使用问题的论坛。@Oded vim是一个像VS一样的编程工具。它怎么可能是不相关的呢?因此,根据Doug下面的回答,这将是,在猛拉您要填写的文本后,
    jjI“
    (假设您进行正常拉伸,但不指定缓冲区)。