2

我有以下场景,两个打开的文件

vim -O2 file1.txt file2.txt

我的光标在 file1.txt 中。我想在 file2.txt 中选择一些行(比如从第 80 行到第 100 行),但不必将光标移动到 file2.txt 并将文本拉到那里。如果可能的话,使用 vim 的命令行。你有什么建议吗?

谢谢。

4

4 回答 4

5

我能想到的最接近的是:

:bn|80,100y|bp|pu
  • 切换到下一个缓冲区
  • 猛拉
  • 切换回来
  • 放东西
于 2013-07-11T03:12:28.657 回答
2

这应该有效:

:call setline(80, getbufline(bufnr('file2.txt'), 80, 100))
于 2013-07-11T08:52:39.003 回答
1

如果您安装了类似的东西sed,另一种可能性是:

:r!sed -n '80,100p' file2.txt
于 2013-07-11T08:54:39.680 回答
0

你在找diffput吗?

vimdiff file1.txt file2.txt
:80,100diffput
于 2013-07-11T07:26:05.193 回答