如何在VI编辑器中复制粘贴内容?

您所在的位置:网站首页 vim中粘贴 如何在VI编辑器中复制粘贴内容?

如何在VI编辑器中复制粘贴内容?

#如何在VI编辑器中复制粘贴内容?| 来源: 网络整理| 查看: 265

问题描述

我尝试使用CTRL + V粘贴VI编辑器文档中的内容,但CTRL + V不被解释为粘贴。

最佳解决思路

首先,确保您处于编辑模式(按i)。然后,如果您使用的是gnome-terminal等终端模拟器(或从right-click菜单中选择”Paste”),则可以粘贴Ctrl + Shift + V。

您也可以在粘贴之前在vim中键入:set paste以禁用自动缩进等,然后在粘贴内容后粘贴:set nopaste。

另请参阅stackoverflow.com上的this question以获取更多信息。

如果要复制/粘贴vim中的行(而不是粘贴剪贴板内容),则需要查看yank命令。这可能有助于cheat sheet。

次佳解决思路

与普通文本编辑器(如Gedit)相比,Vi(和Vim)的工作方式非常不同。它也有一个非常陡峭的学习曲线。如果您想学习一些基本命令,请从this interactive tutorial开始。

但是,要回答你的问题。系统剪贴板的内容可以通过加号寄存器进行访问。因此,要从系统剪贴板粘贴某些东西,您可以在正常模式下按下:"+p(不是同时,而是一个接一个地)。

第三种解决思路

如果要将粘贴内容复制到同一文件中,请使用yank和paste。

如果要在终端间复制粘贴内容,请打开第一个文件,取出所需文本,然后在vim中打开第二个文件(例如:tabnew /path/to/second/file),然后按p将其粘贴。

如果你想从vim复制粘贴内容到外部程序,你需要访问系统剪贴板。我假设你使用Ubuntu。 vim的GUI版本总是支持剪贴板,但是,如果您想从终端使用Vim,则必须检查X11剪贴板支持。

在控制台中输入:

$ vim --version | grep xterm

如果您发现-xterm_clipboard,您有两个选择:

1)自己编译vim,打开xterm_clipboard标志

2)卸载vim,改为安装gvim(vim-gtk或vim-gnome)。您可以通过从终端调用vim来坚持non-gui vim,就像以前一样。这一次当你检查你应该找到+ xterm_clipborad。

现在,当您在vim编辑器(例如“+ yy)中的+寄存器中抽取一些文本时,它也会被复制到系统剪贴板,您可以使用Ctrl + V从外部程序(如gedit编辑器)中检索该剪贴板。

如果要从外部程序将粘贴内容复制到vim,首先通过Ctrl + C将文本复制到系统剪贴板,然后在vim编辑器插入模式下,单击鼠标中间按钮(通常是滚轮)或按Ctrl + Shift + V + V粘贴。这些是4个基本的复制&粘贴与vim相关的条件。我希望这有帮助。

第四种思路

当我想将文本粘贴到终端中时,我总是使用Shift + Insert,可以在所有终端程序中使用。

(这也是为什么我从来没有拿到笔记本电脑的原因,你不能按下Insert键而没有按下辅助键)

第五种思路

使用鼠标的中心按钮插入您在其他地方突出显示的文字。

当您无法访问系统剪贴板时(例如在远程ssh会话中)

必须在vim的编辑/插入模式下

第六种思路

一旦你输入vi,按i进入插入模式,右键单击终端,点击粘贴。

第七种思路

使用yank和put在vi中复制/粘贴文本行的详细说明

(在vi的命令模式下使用以下命令)

复制(YANK)

在vi中复制一行:

在命令模式下,将光标移动到需要复制的行并键入yy或键入Y

在vi中复制2行:

在命令模式下,将光标移动到需要复制的第一行并键入2yy或键入2Y

(同样,可以复制任意数量的行)

要将当前位置的所有行复制到文件末尾:

在命令模式下,将光标移动到需要复制的第一行并键入yG

要将当前位置的所有文本复制到当前单词的结尾:

在命令模式下,将光标移动到需要复制文本的位置,然后键入yw

要将当前位置的所有文本复制到行尾:

在命令模式下,将光标移动到需要复制文本的位置,然后键入y$

粘贴(PUT)

在剪贴板中粘贴文本 – 在光标位置之后:

在命令模式下,键入p

在剪贴板中粘贴文本 – 在光标位置之前:

在命令模式下,键入P

参考资料 How to copy paste contents in VI editor?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3