vim 复制/ 删除 多行?

  1. 有确定序号的行: :10,15m20, 10,15co20
  2. 没有确定序号的行: ndd, nyy. 其中的n表示, 从当前行开始算起(当前行本身要包含!!!), 向下共删除/复制 n行!
    4dd, 4yy, 表示, 从当前行算起, 向下删除 /复制 4行,
    !!! 注意, 这里就不用加 + 加号了. 因为单击加号的时候, 光标就向下 移动了!!!

粘贴put的方式:

  1. p, 光标停留在粘贴内容的第一行 的开头
  2. gp, 光标停留在粘贴内容的最后 一行的 开头
  3. gP, 光标则停留在 粘贴内容的最后 下面的一行!

10,15co20, 复制到20行, 10,15m20 移动到20行.

在vim中 的 复制/删除/粘贴 等操作都是通过 寄存器 来实现的: http://jingyan.baidu.com/article/7f766daf43789b4101e1d0f3.html

传统软件的复制(copy),剪切(cut),粘贴(paste),在Vim中对应的是yank,delete和put。在Vim中的复制,删除,替换等操作的临时内容,都会存储在寄存器中。

寄存器的操作方法是 : 寄存器的名称 + 操作

寄存器的表示方法: 以双引号开头 (表示 引用麻 )".....

  1. 寄存器的名称, 主要的有三种:
  • 默认寄存器: 总是收集 最近一次的 "操作" 结果, 不管是复制/删除/替换等等. 也叫 无名寄存器 : ""
  • 复制(专用)寄存器: 总是收集最近一次 "复制" 的结果, 用 "0表示
  • 删除(专用)寄存器: 从"1, 到 "9

  • 命名寄存器, 主要是放置比较重要的内容, 从"a, 到"z , 共26个命名寄存器.

  • 黑洞寄存器, "_ 将会彻底删除其中的内容.

  • 这个是最重要的!!! 系统剪贴簿 === "+ 寄存器, 即vim的 +加号寄存器就是我们的 系统剪贴簿. 复制和粘贴的操作是: "+yy, "+p.
    !!! 有的也叫做: 星号寄存器: "*.

=====================================================
额外的一些寄存器:
". 表示上一次输入的内容
": 表示上一次输入的命令
"/ 表示上一次的搜索 寄存器
"%, 只读寄存器, 表示当前的文件名
=====================================================

为什么我的vim不能使用系统粘贴板, 不能使用 "+p, 或"*p, "+gp, "+gP?
这篇文章上有讲的: http://www.cnblogs.com/soc-linux-driver/archive/2013/12/17/3478531.html

是因为, 我们使用的是 terminal形式的 vim, 没有使用gui图形界面的vim, 要使用"拖曳和系统剪贴簿" , 可以使用 gvim: 这个是用perl写的 支持图形界面的vim.
在图形界面下, 就可以使用 系统粘贴板. 而且你可以查看到 "*, "+这些寄存器中的内容.

使用vim --version. 可以查看到 系统剪贴簿对xterm并不可用: -xterm_clipboard.

~~~~~~~~~ 摘自网络:
只读(read-only)寄存器:":, "., "%, "#,分别缓存最近命令、最近插入文本、当前文件名、当前交替文件名;
表达式(expression)寄存器:"=,只读,用于执行表达式命令;
选择及拖拽(selection and drop)寄存器:"*, "+, "~,存取GUI选择文本,可用于与外部应用交互,使用前提为系统剪切板(clipboard)可用;

~~~~~~~~~ 摘自网络完

单引号+数字, 表示文件标记: file marks, 就是文件中的光标位置:
例如:

File marks:

'0 1 11 /var/www/html/main.css
'1 1 0 /var/www/html/index.php
'2 31 0 /var/www/html/index.php
'3 24 20 /var/www/html/index.php
'4 349 0 ~/.vim/bundle/snipMate/snippets/php.snippets
'5 37 0 /var/www/html/index.php
'6 38 0 /var/www/html/index.php
'7 1 0 ~/ab.php
'8 96 1 ~/.vim/bundle/snipMate/snippets/php.snippets
'9 107 0 ~/.vim/bundle/snipMate/snippets/html.snippets

如何调整vim窗口的大小?

  1. 水平方向是用 | , 左右调整, 竖直方向上是_, 下划线,
  2. |, _ ,分别表示最大化, 要最小化, 在前面加1, 即: ctrl+w 1|, ctrl+w 1_

上面这两个是最大和最小化.

如果不是最大和最小化, 则用上下 + /-, 左右 ><. 来调整....

  1. 要将名窗口恢复到正常大小, 使用ctrl+w =.

vim的寄存器和剪贴簿操作?的更多相关文章

  1. 终于掌握vim的寄存器和系统剪贴板的使用了- 要安装vim-X11包

    vim的系统剪贴板 vim的 加号寄存器 "+ 是和系统剪贴板 相关联的. 加号寄存器和系统剪贴板之间的内容, 可以互相切换. 要把 加号寄存器中的内容, -> 放到/转移到系统剪贴板 ...

  2. linux vim vi编辑时撤销输入操作

    linux vim vi编辑时撤销输入操作 1,esc退出输入状态 2,u 撤销上次操作 3,ctrl+r 恢复撤销

  3. 了解VIM的寄存器

    VIM下的删除:delete; 复制:yank; 粘帖:put; 都会用到VIM下的相关寄存器,今天就说说这个寄存器的问题: VIM中有多种寄存器:包括: 有名寄存器,用名字("a-&quo ...

  4. vim 计算器寄存器使用

    我们可能会在vim的使用中,碰到下面的情况 当我正在写一周预算的时候,我想计算下每天我买菜花2.7,每天买两顿,周死晚上出去吃,周六额外买1.5斤14.8一斤的猪肉... 这时候你打算怎么办呢,是不是 ...

  5. vim编辑器中撤销和恢复操作

    在VIM编辑器下切换至命令行模式: 撤销: u 恢复: ctrl + r

  6. MACOS配置VIM成简单IDE傻瓜式操作

    零.参考文献: https://www.jianshu.com/p/f0513d18742a 一.安照我的配置:保存文件 " Configuration file for vim " ...

  7. vim 的寄存器

    If you've been following my series on Vim, it should be clear now that Vim has a pretty clear philos ...

  8. VIM替换、截取及追加操作

    参考: http://blog.csdn.net/love__coder/article/details/6739670 http://blog.csdn.net/love__coder/articl ...

  9. <转载>Vim的寄存器(复制黏贴要用)

    https://blog.csdn.net/hk2291976/article/details/42196559 消除高亮 :noh

随机推荐

  1. OPENGL的入门第一个程序——Hello World

    #include "stdafx.h" #include<GL\glut.h> void Init() { glClearColor(0.0f,0.0f,0.0f,0. ...

  2. 【BZOJ-4547】小奇的集合 矩阵乘法 + 递推

    4547: Hdu5171 小奇的集合 Time Limit: 2 Sec  Memory Limit: 256 MBSubmit: 175  Solved: 85[Submit][Status][D ...

  3. Stream篇

    本文转自: http://www.cnblogs.com/JimmyZheng/archive/2012/03/17/2402814.html 什么是Stream? 什么是字节序列? Stream的构 ...

  4. SVN中(trunk tags branches)的使用理解

    trunk--主干(永远都是最新的,每发布一个版本会在tags和branches上进行分支) tags-标签(只读,用于存放发布后的文件冻结,以及对应发布后版本的源文件:可以是来自主干或者分支的发布: ...

  5. glibc resolv/res_send.c getaddrinfo() buffer stack smash when dealing malformation big DNS Response Package

    catalogue . 漏洞简述 . 调试环境搭建 . 漏洞利用 . 漏洞分析 . 缓解修复方案 1. 漏洞简述 0x1: 函数调用顺序 getaddrinfo (getaddrinfo.c) -&g ...

  6. crawler:简要了解一下PhantomJS

    有时,我们需要浏览器处理网页,但并不需要浏览,比如生成网页的截图.抓取网页数据等操作.PhantomJS的功能,就是提供一个浏览器环境的命令行接口,你可以把它看作一个“虚拟浏览器”,除了不能浏览,其他 ...

  7. POJ 2976 Dropping tests(最大化平均值 or 01整数规划)

    题目链接 忽略运算符逻辑导致奇怪的错误(代码中指明位置了) 输出没加0.5,WA. 还有,注意特殊情况k=0,所以scanf("%d%d", &n, &k)& ...

  8. 第三次作业——个人作业,k米案例分析

    第一部分 调研,评测 评测 1.下载并使用 第一次打开,没什么很深的印象,看见"扫一扫",随手就点了,然后就出现了严重的卡顿,大概是刚启动并且第一次启动的原因,后面就还好了.而且第 ...

  9. Linux下串口编制【转】

    串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用.常用的串口是RS-232-C接口(又称EIA RS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统.调制解调 ...

  10. 给linux添加yum源。

    在玩linux的过程中,经常会下载一些源码包.软件大多是国外人写的,由于众所周知的原因,网络下载很慢. 所以想到了更新yum源的方法. 我的linux版本是CentOS6.3的. 以下参考百度. 1, ...