复制粘贴

回忆上节课内容

  • 我们上次的内容是粘贴

    • 小写p意味着在光标下面或者后面粘贴
    • 大写P意味着在光标上面或者前面粘贴
    • p的意思是放上去,就是put
  • 把什么放上去呢?
  • reg"" 的内容 放上去
  • 如果reg剪切的是一整行或者多行

    • 那么粘贴的时候就在当前行上面或者下面粘贴
  • 如果reg剪切的是不包含换行

    • 那么粘贴的时候就在当前行前面或者后面粘贴
  • 有了 删除d 和 粘贴p
  • 我们其实可以做剪切的操作了
  • 但是如果我想要复制粘贴
  • 那应该怎么办呢?

关于复制

  • 复制其实就在粘贴上面一点点
  • 往上翻就可以找到
  • 命令是y
  • 对应的单词是 yank
  • 什么意思呢

    • "to pull, jerk," 1822, Scottish, of unknown origin. Related: Yanked; yanking. The noun is 1818 in sense of "sudden blow, cuff;" 1856 (American English) as "a sudden pull."
    • 来自于苏格兰语
    • 意思是猛的拉过来
    • 拉到哪里?

      • 拉到默认寄存器register ""

具体操作

  • 找到一行 然后进行yy操作
  • 观察:reg发现这一行已经进入了寄存器
  • 找到一个合适的地方p

    • 可以把寄存器里面的内容放到当前行下面
  • 再找到一个位置P

    • 可以把寄存器里面的内容放到当前行上面
  • 加上[count]翻倍因素

    • 来他个10yy
  • 再观察:reg
  • 注意换行标识符为^J

配合移动

  • y之后加一个motion
  • motion 那一大套还是都可以用的
  • 我们再来重温一遍

    • 首行g g 、末行G 、第n行n G
    • 光标运动的方式是h j k l
    • 单词运动wbe

      • w 是到下一个word的开头
      • b 是到当前word的开头
      • e 是到当前word的结尾
      • 除了word之外还有WORD
    • 行头行尾

      • ^ 是到本行第一个非空字符
      • 0 是到本行第一个字符,不管是不是空格
      • g_ 是到本行最后一个非空字符
      • $ 跳到本行最后一个字符,即使他是空格
    • 行内跳跃和贴靠

      • 跳跃是f
      • 跳跃是F
      • 贴靠是t
      • 贴靠是T
    • 全文查找

      • 查找的话就是/
      • 反向查找的话就是?
    • 文本区块

      • {、}按段落移动
      • (、)按句子移动

具体复制

  • 比如我们可以

    • y$
    • y4j
    • yf(
    • yt)
    • y/}
    • 具体啥意思
  • 注意复制内容中有没有换行的区别
  • 其实就和d到的寄存器内容是一样的

总结

  • 我们这次的内容是复制

    • d就是把东西delete到寄存器里,就是剪切
    • y就是把东西yank到寄存器里,就是复制
  • yank也可以配合motion
  • 不管是yankdelete都是把东西放到默认寄存器
  • 到底什么是寄存器
  • 有什么可玩的呢?
  • 下次再说

[Github地址] (https://github.com/overmind1980/vimtutorial)

[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)

[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)

oeasy教您玩转vim - 40 - # 复制粘贴的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. vim的复制粘贴(包括系统剪贴板)

    1.vim常用复制粘贴命令 Vim的复制粘贴命令无疑是y (yank),p(paster),加上yy,P PS: vim有个很有意思的约定(我觉得是一种约定),就是某个命令的大小写都是实现某种功能,只 ...

  5. 【vim小小记】vim的复制粘贴(包括系统剪贴板)

    1.vim常用复制粘贴命令 Vim的复制粘贴命令无疑是y (yank),p(paster),加上yy,P PS: vim有个很有意思的约定(我觉得是一种约定),就是某个命令的大小写都是实现某种功能,只 ...

  6. Vim中复制粘贴缩进错乱问题的解决方案

    Vim中复制粘贴缩进错乱问题的解决方案 当你把这段缩进优美的代码直接ctrl+c,ctrl+v到Vim的时候,就会出现如下恶心的情况 可以看到,这种直接粘贴的方式会导致代码丢失和缩进错乱等情况. 解决 ...

  7. 在LINUX终端和VIM下复制粘贴

    http://www.tinylab.org/linux-terminal-and-paste-copy-under-vim/ 在GUI界面下,我们可以很自由的复制粘贴.但是在字符界面下,我们不得不用 ...

  8. VIM系统复制粘贴

    1 需求 系统复制粘贴主要是满足下面两个需求. 在多个对象之间复制粘贴 vim窗口与vim窗口之间 外部界面与vim窗口之间 不变复制粘贴.从外部界面复制粘贴到vim窗口时,文本不发生任何变化. 2 ...

  9. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  10. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

随机推荐

  1. OpenOCD + DAP-LINK调试ESP32的失败经历

    目的 手里有调试STM32的DAP-LINK,想试试通过JTAG调试ESP32 OpenOCD支持CMSIS-DAP DAP-LINK支持的芯片,我手上这款描述如下,应该JTAG协议的都支持 平台 w ...

  2. C# Socket 封包 拆包 ProtoBuf 的使用

    //这是消息头包,消息头包大小是固定的, //每次传输都要先传消息头,在传消息体 enum EnumMsgType:消息类型 long PackgeSize:包大小 long TotalPackage ...

  3. Android 11(R) MultiMedia(十五)MediaCodec同步模式实现一个简易播放器

    这一节是实践,学习android原生SimplePlayer并自己码一遍,果然学到很多. MyPlayer.h #include <media/stagefright/foundation/AH ...

  4. 阅读LXH《FFMPEG+SDL的视频播放器》总结

    一.原文地址 https://blog.csdn.net/leixiaohua1020/article/details/46889389 在此向雷霄骅致敬!!! 二.视频播放器实现思路 1)视频播放器 ...

  5. 京东web端h5st—4.7逆向分析

    声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 目标网站 aHR0cHM6 ...

  6. kettle从入门到精通 第五十九课 ETL之kettle 邮件发送多个附件,使用正则轻松解决

    问题场景: 一个朋友说他用kettle将生成好的多个文件(a.xls和b.xls,文件在data目录下)发送给客户,但是data目录下还有其他的文件,他如果指定data目录发送会把 data目录下面的 ...

  7. kettle从入门到精通 第十二课 kettle java代码过滤记录、利用Janino计算Java表达式

    1.下图通过简单的示例讲解了根据java代码过滤记录和利用Janino计算Java表达式两个组件. 2.根据java代码过滤记录 1)步骤名称:自定义 2)接收匹配的行的步骤(可选):下面条件(jav ...

  8. Scrapy框架(三)--全站数据爬取

    scrapy基于Spider类的全站数据爬取 大部分的网站展示的数据都进行了分页操作,那么将所有页码对应的页面数据进行爬取就是爬虫中的全站数据爬取.基于scrapy如何进行全站数据爬取呢?1.将每一个 ...

  9. 项目管理--PMBOK 读书笔记(10)【项目沟通管理】

      1.沟通技术 1)交互式沟通:双方多方之间的多项信息沟通,确保全体参与者对特定话题达成共识,回馈. 2)推式沟通:将信息发送给接收方,不确保受众理解. 3)拉式沟通:自主自行反问信息   2.沟通 ...

  10. 58同城的登录(RSA算法)

    Tips:当你看到这个提示的时候,说明当前的文章是由原emlog博客系统搬迁至此的,文章发布时间已过于久远,编排和内容不一定完整,还请谅解` 58同城的登录(RSA算法) 日期:2016-11-23 ...