如何把vim中的内容粘贴到外部

来源:互联网 发布:高音 知乎 编辑:程序博客网 时间:2024/05/19 13:55

问题:如何把vim中的内容粘贴到外部?如gedit,wps等。

现阶段,我写C语言代码的时候大多数是用vim编辑器,但是有一个问题就是:有的时候想把写的代码复制出来,提交到OJ系统进行检查评测,那么,问题来了,如何才能把代码从vim中复制出来,粘贴到博客或者是gedit等文档编辑器?经过网上大量搜索,终于找到了解决问题的办法。具体方法如下:

查看当前vim是否支持clipboard

  • 在终端输入命令:
      vim --version | grep "clipboard"

这里写图片描述

  • 如果clipboard前面的标记是一个减号,那么就说明当前vim编辑器不支持“把文档粘贴到外部”这一功能。(注:因为我前边已经配置过了,所以我的编辑器显示的是+clipboard,但是对于大多数人,没有进行下面几个步骤的话,显示的一般为“-clipboard”

安装图形化界面vim

  • 如果显示“-clipboard”,则需要安装图形化界面的vim,或者重新编译vim;如果显示“+clipboard”,这一步骤就不需要操作了。
      sudo apt install vim-gnome
  • 如果执行完上述安装命令后再执行:
      vim --version | grep "clipboard"

下面是介绍如何进行粘贴复制操作

  1. 系统剪贴板
    • “*y
    • “+y
    • “+2yy – 复制两行
    • {Visual}”+y – copy the selected text into the system clipboard
      【注:这一个选项是我经常使用的,注意是在Visual视图进行操作,双引号一定不要漏了。我刚开始时,一直没有加双引号,导致复制之后,在外部粘贴时一直没有反应,浪费了不少时间。我一般会选择全选代码,那么我执行的操作详细过程可以如下:Ctrl+v(进入VIsual视图),ggVG(代码全选),Shift+”,shift++,y。整个看来复制操作的代码就是:”+y,相当于Ctrl+c】
    • “+y{motion} - copy the text specified by {motion} into the system clipboard
    • :[range]yank + - copy the text specified by [range] into the system clipboard
  2. 剪切到系统剪贴板
    • “+dd – 剪切一行
      从系统剪贴板粘贴到vim
    • “*p
    • “+p
    • Shift+Insert
    • :put + – Ex command puts contents of system clipboard on a new line

“+p比 Ctrl-v 命令更好,它可以更快更可靠地处理大块文本的粘贴,也能够避免粘贴大量文本时,发生每行行首的自动缩进累积,因为Ctrl-v是通过系统缓存的stream处理,一行一行地处理粘贴的文本。

参考内容

vim粘贴时保留原格式

解决网vim里粘贴代码格式散乱问题:

方法一:
在vim里面:set paste

方法二:
使用 “+p

1 0
原创粉丝点击