繁体   English   中英

抽出所有行并将其粘贴在Vim的末尾

[英]yank all lines and paste at the end Vim

例如标题,我要复制所有行并粘贴在末尾。

之前:

apple
cat
dog
sun

后:

apple apple
cat cat
dog dog
sun sun

使用替代命令

:%s/.*/& &

其中.*匹配所有内容,而&替换为匹配项(在本例中为整行)


或者,如果您真的想拉线,可以使用普通命令

:%norm yyPJ

在正常模式下,在每行上运行yyPJ命令。


注意:如果有前导空格,这些命令将给出稍微不同的输出。

如果您使用的是类Unix系统:

:%!paste -d' ' % -

另一个Unix风格的答案(尽管我会使用@FDinoff的解决方案):

:%!awk '{print $1, $1}'

还有一个:normal答案,因为有很多方法可以给猫剥皮:

:%norm y$A <C-v><C-r>"

还有一个:

:%norm y$Pa<space>   <-- just press the <space> bar

换句话说,如果您的文字是这样(〜代表空白)

apple
cat~~
dog~~
sun~~

这意味着所有单词的列数相同。

您可以按ctrl-v全选,然后将光标移到“ apple”的末尾,然后键入p进行粘贴。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM