我在从文件复制某些文本然后将其复制到新的拆分窗口时遇到问题。
3yy|新|p
在命令模式下它的工作
就像我按下
复制其工作后拆分窗口中的“p”
我了解您想要:
那是对的吗?
我不明白为什么你想在 Ex 模式下做它,而它在正常模式下很容易(并且工作):
3yy
:new<cr>
p
我认为您混淆了ex模式,可通过Q
和命令模式访问,可通过:
. 您可能还会混淆:p[rint]
命令和:pu[t]
命令。
在正常模式下执行以下操作:
:.,+2y|new|put!
知道您也可以将这三行直接写入文件可能会有所帮助:
:.,+2w filename
您可以使用以下方法之一从 Vim 的剪贴板中复制:
"+p
"*p
SHIFTINSERT
您使用哪一种取决于您的环境。
如果你使用 gVim 或 MacVim,你会想要"+p
如果你从命令行使用 Vim,你会想要"*p
如果你处于插入模式或前模式(我认为)你使用SHIFTINSERT
通过插入,我的意思是通过HOME,PAGE UP和DELETE
解释:
"
意味着你要指定一个寄存器+
or"
指的是未命名的缓冲区,它代表系统剪贴板p
是普通的 put 命令有关缓冲区的更多信息:
如果需要,您可以将不同的文本存储在不同的缓冲区中。
要将 3 行拉到名为x的缓冲区,请使用以下命令:
"x3yy
要将名为y的缓冲区的内容粘贴到光标上方:
"yP
p只是 vi 命令,所以它应该是pu in ex 而不是。或者您可以使用双引号"p或"np。n是缓冲区寄存器中的数字,“2p表示你所做的第二个最旧的 yank。