以前在 vim 下工作需要在 vim 和其它的编辑器之间复制东西,使用 Shift + Ctrl + v/c.感觉这样很不方便,今天在网上搜索了以下可以用 “+y/p,但是自己实验怎么也不行,在命令模式下输入reg之后看不到 "+. 原来用 apt-get install安装的vim不能使用系统剪贴板,即复制:"+y,和粘贴"+p不能用;

软件环境:

我使用的是ubuntu 12.04

解决办法

首先安装相关软件包,然后再安装 vim.

在这之前先把以前安装的相关软件包用 apt-get remove. apt-get purge 卸载干净。

安装相关软件包:

  1. $ sudo apt-get install build-essential
  2. $ sudo apt-get install ncurses-dev
  3. $ sudo apt-get install xorg-dev
  4. $ sudo apt-get install libgtk2.0-dev

安装vim

  1. $ sudo apt-get install vim vim-scripts vim-gtk vim-gnome
  2. $ sudo apt-get install exuberant-ctags cscope

设置映射:

  1. let mapleader = ","
  2. let g:mapleader = ","
  3. map Y "+y
  4. map P "+p

请现在使用一下“:reg”命令,看到了?屏幕上的输出结果!是不是特别眼熟,对了!就是您之前复制过的所有内容!也许这 时候您还发现,VIM的剪切板原来有这么多个,按照数字还有符号一个一个的区分开的,这里举一个编号的例子——"5,看到了吗?是以"开头的。还有!有没 有看到编号为"+的剪切板?里面的内容是不是刚才你在浏览器里复制的那段文字啊?呵呵……没错了!系统剪切板的编号就是"+。
好了, 这时候您已经知道了如何查看之前的所有剪贴板内容,我们现在就试着把某一个特定剪切板的内容复制进我们正在编辑的文件中。我们知道,vim的粘贴指令是 "p",但是如果要粘贴一个特定的剪贴板,只是用p就不行了,那怎么办?简单!把剪贴板的编号带上不就可以了?现在先按ESC,退出编辑模式,然后一词 按"+p这三个字符(怎么按?不会吧!"和+怎么按?用Shift啊!),好了!你看看,之前在浏览器中复制的这段文本,是不是被粘贴进文档中了?
如何将系统剪切板里的内容复制进VIM当中,您已经清楚了。那如何将ViM中复制的字符粘贴到其他地方呢?很简单,我们只需要把要复制的文字,复制 进"+剪切板不就可以了?在VIM中,复制的指令是y(在非编辑模式下按y就可以了),那要将文本复制进指定的剪切 板,和粘贴指定剪切板内容的方法一样,只需要加上剪切板的编号就可以了。举个例子,我们希望把VIM中的一段文本复制下来,然后粘贴到浏览器的地址栏中: 第一步,现把需要复制的文字选中(非编辑模式下),然后在键盘上依次按"+y这三个字符,OK!已经复制下来了,现在用:reg命令看看,是不是在"+剪 切板中了?

最新文章

  1. Python调用C++的DLL
  2. 【原】文本图片自适应高度小bug以及解决办法
  3. Knockout 新版应用开发教程之Computed Observables
  4. android中progress进度条的使用
  5. java Exchanger 2
  6. 使用nexus搭建maven仓库(本地私服)
  7. HOWTO: Create native-looking iPhone/iPad applications from HTML, CSS and JavaScript
  8. 清除HTML中的特殊字符
  9. Array.prototype.map()详解
  10. 深度this指针
  11. tcp粘包和拆包的处理方案
  12. Python中的列表操作
  13. 静态IP设置
  14. 使用 Node.js 搭建API 网关
  15. java面试基础题------》Java 中List、Set、Map异同点
  16. This iPhone 6s is running iOS 11.3.1 (15E302), which may not be supported by this version of Xcode.
  17. 利用python的KMeans和PCA包实现聚类算法
  18. 【PyQt5-Qt Designer】QComboBox(下拉列表框) 使用模板
  19. Linux学习之路-2017/12/25
  20. jfinal控制器添加多个拦截器

热门文章

  1. NPOI2.2.0.0实例详解(八)—设置EXCEL单元格【数字格式】
  2. java.net.SocketException: Connection reset 问题分析
  3. Java分支结构 - if...else/switch
  4. C# SQLite写入和读取DateTime类型
  5. Linux常用插件
  6. css3中自定义 placeholder 文本颜色
  7. 031——VUE中表单控件处理之使用vue控制input和textarea表单项
  8. mysql中的tinyint在C#中的类型
  9. 十八、dbms_repair(用于检测,修复在表和索引上的损坏数据块)
  10. C#学习历程(五)[高阶概念]