使用标记

回忆上节课内容

  • 跳转到行号

    • 200G
  • 设置行号选项

    • 显示行号 :se nu
    • 显示相对行号 :se rnu
  • 如何用命令行跳转 :100
  • 但是我如何有的时候记不住到底跳到多少行
  • 能否做个标记留个记号呢?

跳回原地

  • 如果我使用 G 跳转到最终行
  • 然后我想要回到跳转之前的位置

    • 不只是 G 对应的跳转包
    • 还括行跳转、搜索等
  • 那这个跳前位置在哪里呢?

    • 我们可以使用 `` 回到跳转之前的位置
    • ` 位置在键盘 1 前面
    • 这个字符就是我们的反引号
    • 叫做 open single quote chararcter
    • 可以试着玩玩
  • 跳过来再跳过去
  • 反复横跳
  • 但是这个只能在两个位置之间来回来去的跳

  • 我想要跳到更久之前的位置
  • 怎么办呢?

跳转列表

  • 所有曾经的跳转都在跳转列表里面
  • 比如我们从

    • 第一行跳到 33
    • 然后再跳到以 ^The 开头的行

  • CTRL-O 跳转到

    • Older position
    • 上一次
    • 上一次的上一次
  • CTRL-I 跳转到

    • 下一次
    • 下一次的下一次

  • 这里跳转的位置我们使用了 标记 mark

查询帮助

  • 使用 h(elp) m(arks) 查询关于标记的帮助

    • 可以使用 ma 来做一个标记 a
    • 然后可以用 'a 或者 `a 进行跳转

进行定义并进行试验

  • :se nu 设置显示行号
  • 使用 ma 把当前光标的位置做一个标记 a
  • 然后 G 跳转到最终行
  • 这个标记你在文档里面看不见
  • :marks 来查看所有标记

    • 注意这个 mark 都是包含行和列的具体位置的
    • a 对应795行 6列

其他标记

  • ma 是我们自己定义的 a 标记
  • 其他的标记是什么意思呢?
  • 我们可以用 :h '' 来看 '' 的含义

更多标记

  • '' 是上次跳转操作光标所在的位置
  • '" 是上次退出当前文件的位置
  • '[ 是上次编辑(删除修改等)的开始位置
  • '] 是上次编辑(删除修改等)的结束位置
  • '. 是上次编辑(删除修改等)的最后的操作位置

  • 那么,这个大写、小写、数字的标记有什么不同呢?

标记细节

  • 小写 a-z 可以标记本文件内部的位置坐标
  • 大写 A-Z 可以跨文件标记位置坐标
  • 数字 0-9 在配置文件 .viminfo 中,可以保留标记
  • 我们还可以用 :delm(arks) a 来删除 a 标记

总结

  • 定义标记 a ma
  • 删除标记 a :delm a
  • 跳转到标记 a 'a

    • `a 跳到 a 对应的行和列
    • 'a 跳到 a 对应的行
  • 查看所有标记 :marks
  • 各种标记类型

    • '' 是上次跳转操作光标所在的位置
    • '" 是上次退出当前文件的位置
    • '[ 是上次编辑(删除修改等)的开始位置
    • '] 是上次编辑(删除修改等)的结束位置
    • 小写 a-z 可以标记本文件内部的位置坐标
    • 大写 A-Z 可以跨文件标记位置坐标
    • 数字 0-9 在配置文件 ~/.viminfo 中,可以保留标记
  • 每次都需要 ctrl + g 显示坐标
  • 能否一直显示坐标呢?
  • 下次再说

oeasy教您玩转vim - 19 - 使用标记的更多相关文章

  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. linux ls命令的重要用法:按照文件大小排序和按照时间排序

    1.ls命令是list的缩写,用来打印当前目录清单或者打印出指定目录下的文件及文件清单. 2.本文介绍ls的重要用法:按"文件大小"排序列出文件清单和按"时间" ...

  2. JS 监听用户页面访问&页面关闭并进行数据上报操作

    JS 监听用户页面访问&页面关闭操作并进行数据上报 前言 最近在做安全方面的项目,有个需求是在用户访问页面和关闭页面的时候,发送对应的数据. 刚拿到需求的时候,觉得没啥东西,init 的时候发 ...

  3. go encoding/json 替代者

    https://github.com/json-iterator/go 可以替代官方包encoding/json 提升json编码和解码效率

  4. Python的进程和线程——一些基础概念

    1. 线程和进程 1.1 线程和进程 进程可以包含多个并行运行的线程: 通常,操作系统创建和管理线程比进程更省CPU资源: 线程用于一些小任务,进程用于繁重的任务: 同一个进程下的线程共享地址空间和其 ...

  5. kettle从入门到精通 第六十五课 ETL之kettle 执行动态SQL语句,轻松实现全量&增量数据同步

    本次课程的逻辑是同步t1表数据到t2表,t1和t2表的表机构相同,都有id,name,createtime三个字段. CREATE TABLE `t1` ( `id` bigint NOT NULL ...

  6. Linux扩展篇-shell编程(十)-shell范式

    shell编程提供一个范式,有利于统一程序风格,增加可读性. 范式: ASSIGN SHELL/指定壳 DESCRIPTION/程序说明 BODY/程序体 扩展: 1.ASSIGN SHELL/指定壳 ...

  7. RSA算法中,为什么需要的是两个素数?

    PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全.密码学.联邦学习.同态加密等隐私计算领域的技术和内容. RSA算法中,为什么需要的是两个素数? RSA算法是一种广泛使用 ...

  8. List集合中的元素进行排序

    Collections对List集合中的数据进行排序 有时候需要对集合中的元素按照一定的规则进行排序,这就需要用到Java中提供的对集合进行操作的工具类Collections,其中的sort方法 1 ...

  9. 一文详解分布式 ID

    前言 分布式系统中,我们经常需要对数据.消息等进行唯一标识,这个唯一标识就是分布式 ID,那么我们如何设计它呢?本文将详细讲述分布式 ID 及其生成方案. 一.为什么需要分布式 ID 目前大部分的系统 ...

  10. 我写CSS的常用套路(附demo的效果实现与源码)

    大赞: https://mp.weixin.qq.com/s/dYCWYeM629DwiSqmaaAs1w