vimdiff

回忆上次

  • 上次有三种批量替换,分别是

    • :windo
    • :bufdo
    • :argdo
  • 执行的{cmd}可以用按顺序增加

    • update 自动更新
    • :set autowrite 自动写入
    • :set hidden 可以隐藏未保存 buffer
  • 分别对应的windowbuffersarguments
  • 各有各自的列表、切换、删除、增加的方式
  • 多文件多窗口还有什么可玩的么?
  • 下次再说

观察对比

  • 首先编辑一个go.java

  • 连续数字产生方法

    • ctrl-v进入块·可视化
    • 纵向选中1
    • g之后ctrl-a
    • 完成加法操作

进行修改

  • 对于这个go.java复制粘贴出一个副本

    • :saveas go2.java
    • :e go2.java
    • 新增一行
    • 修改一行
    • 删除一行
  • 然后保存并退出vim

进行比较

  • vimdiff go.java go2.java
  • vimdiff 就是专门用比较的
  • 后面两个参数是待比较的文件

  • {1..9}行被折叠了

    • 因为都是相同的
  • 16行有修改

    • 紫色的
  • 19行被删除了

    • 左蓝色右青色
    • 右边是-----------
  • 22行是增加的一行

    • 左青右蓝
    • 左边是-----------

编辑的时候比较

  • :vi go.java
  • 如果文件已经打开
  • :vertical diffsplit go2.java 可以开启比较

    • 如果vertical被省略
    • 就会横向打开文件
  • 同步滚动

    • 属性为scrollbind
    • 默认同步滚动
    • 可取消同步
  • 遍历所有的修改change

    • ]c 下一条修改
    • [c 上一条修改
    • 其中

      • [] 指的是跳转
      • c 指的是 change 变化
  • 根据当前光标位置

    • 把当前的改成对比的

      • do
      • diff obtain
    • 把对比的改成当前的

      • dp
      • diff put

总结

  • 我们可以用vimdiff快速的比较文件
  • 这很实用!!!
  • 实用的一些跳转方式
  • 遍历所有的修改change

    • ]c 下一条修改
    • [c 上一条修改
  • 遍历所有的函数method

    • ]m 下一条修改
    • [m 上一条修改
  • 面对不同点

    • 把当前的改成对比的 - do - diff obtain
    • 把对比的改成当前的 - dp - diff put
  • 关于多窗口
  • 还有什么好玩的吗?
  • 下次再说

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

[Gitee地址] (overmind1980/oeasyvim)

[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 vim_Linux - 蓝桥云课)

oeasy教您玩转vim - 66 - # 比较修改模式 vimdiff的更多相关文章

  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. oeasy教您玩转linux010203显示logo

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

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

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

  6. oeasy教您玩转linux010202软件包管理apt

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

  7. oeasy教您玩转linux010201持续输出yes

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

  8. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  9. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

  10. oeasy教您玩转linux-010110内容回顾

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

随机推荐

  1. 23ai免费版本环境快速就绪

    笔者感受就是搞一套Oracle 23ai的学习测试环境,从未如此的简单高效. 因为近期Oracle 23ai这个话题很火,很多人也在找实验环境想亲自体验测试一番. 其实搞这样的环境没有任何的门槛,甚至 ...

  2. 史上最全shell脚本编程语法上册

    1. shell 脚本语言的基本用法 1.1 shell 脚本的用途 将简单的命令组合完成复杂的工作,自动化执行命令,提高工作效率: 减少手工命令的输入,一定程度上避免人为错误: 将软件或应用的安装及 ...

  3. 手写Word2vec算法实现

    1. 语料下载:https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml.bz2 [中文维基百科语料] 2. ...

  4. Django模板templates

    1.模板文件的路径配置 2.模板中变量替换 3.变量渲染之深度查询 4.内置过滤器 过滤器的语法: {{obj|过滤器名称:过滤器参数}} 内置过滤器: 过滤器例子: 5.注释 6.多行注释 7.if ...

  5. C++笔记(11)工厂模式

    建议直接空降至参考文献,点击链接 简单工厂模式 #include<iostream> using namespace std; class BasicCamera { public: vi ...

  6. Visual Studio编程效率提升技巧集(提高.NET编程效率)

    前言 本文大姚将为你介绍一些Visual Studio的使用技巧和建议,旨在帮助.NET开发者更加高效地利用Visual Studio进行编程工作.无论你是.NET初学者还是经验丰富的.NET开发者, ...

  7. OpenSearch 与 Elasticsearch:哪个开源搜索引擎适合您?

    当谈论到搜索引擎产品时,Elasticsearch 和 OpenSearch 是两个备受关注的选择.它们都以其出色的功能和灵活性而闻名,但在一些方面存在一些差异.在本文中,我们将从功能和延展性.工具与 ...

  8. Scrapy框架(四)--五大核心组件

    scrapy的基本使用我们已经掌握,但是各位心中一定会有些许的疑问,我们在编写scrapy工程的时候,我们只是在定义相关类中的属性或者方法, 但是我们并没有手动的对类进行实例化或者手动调用过相关的方法 ...

  9. ps top命令查看内存空间

    [root@VM-4-3-centos local]# ps aux --sort -rss | head USER PID %CPU %MEM VSZ RSS TTY STAT START TIME ...

  10. AGE SORT

    AGE SORT 你有所有城市的人的年齡資料,而且這城市的人們都大於1歲,且都不會活超過100歲.現在你有個簡單的任務以升冪去排序所有的年齡 Input 接下來會有很多筆的資料,每筆資料從輸入n 開始 ...