oeasy教您玩转vim - 47 - # 使用标记
使用标记
回忆上节课内容
有了这个
range、address我们可以做很多事情- 跳转
:44
- 跳转
复制和剪切
1,3d3,$y%d o
配合搜索
/oeasy/,$y5;/oeasy/d
其实还有一种
address- 是
mark标记
- 是
- 还记得
mark标记 是什么意思?
查看手册
:h mark可以查看相应的细节

- 我们可以使用m来定义一个标记
- 比如我们在第
3行 ma - 我们就在 第
3行 标记了一个mark叫做a - 这个标记能看见么?
查看标记
我们用
:marks- 就可以看到里面有了一个新
mark - 名字叫做
a
- 就可以看到里面有了一个新
注意这个
a包括- 行、列坐标
- 还有具体文本

查看具体标记
:marks abc- 查看具体abc这三个mark

跳转到引用
ma
- 定义了一个名字叫
a的mark
- 定义了一个名字叫
'a
- 可以将光标从任意位置跳转到 标记
a
- 可以将光标从任意位置跳转到 标记
注意
- 单引号是跳转到标记
- 寄存器是放在后面的
- 这个也可以配合行命令来操作

'ay就是把a标记那行,放入默认寄存器- 可以用
:reg查看 'a,'b就是把从a标记那行,到b标记那行'a,'b相当于3,5是 {range}
- 如果我想使用标记
- 也想使用寄存器怎么办?
单双引号
:'a,'by o'a,'b是 {range}y是 yank复制o是制定的寄存器

- 如下是寄存器情况

^J是换行的标记
操控marks

marks不可见,但是可以存储文件信息小写字母
ma- 用于当前文件
内部
- 用于当前文件
大写字母
mA- 可以
跨文件定义marks
- 可以
0-9的数字标记- 可以预先放到
~/.viminfo的配置文件中
- 可以预先放到
- 可以查看指定的标记
:marks a 也可以删除标记
:delm(arks) a- 甚至清空所有标记,
:delm(arks)!
常用标记
'[上一次修改或复制的第一行或第一个字符']上一次修改或复制的最后一行或最后一个字符'<上一次在可视模式下选取的第一行或第一个字符'>上一次在可视模式下选取的最后一行或最后一个字符''上一次跳转之前的光标位置'"上一次关闭当前缓冲区时的光标位置'^上一次插入字符后的光标位置'.上一次修改文本后的光标位置'(当前句子的开头')当前句子的结尾'{当前段落的开头'}当前段落的结尾
总结
我们这次研究了
mark的定义和使用mb定义'b跳转- 可以对
marks查询 :delm(arks)!删除
三种
marks- 小写 本文件内
- 大写 跨文件
- 数字 配置文件中
可以在命令行中,使用标记
'a,'by从标记a的行复制到标记b的行'a,'bt.把从a到b的行复制到当前位置'a,'bmG把从a到b的行移动到文档最后
- 命令行模式可真是太方便了!
可是,你知道吗?
- 命令行模式来自于ed
- 本是当时的无奈之举?
- 怎么回事?
- 下次再说
[Github地址] (GitHub - overmind1980/oeasyvim: 这是oeasy制作的的一套关于vim的教程 可以在 https://www.lanqiao.cn/teacher/courses/2840 做实验 邀请码FJWYIMGB 本教程从0基础开始,到精通vim配置,和高级命令。希望能让vim是你的开发更高效。)
[Gitee地址] (overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 Vim_Linux - 蓝桥云课)
oeasy教您玩转vim - 47 - # 使用标记的更多相关文章
- oeasy教您玩转vim - 56 - # 字符可视化模式
可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...
- oeasy教您玩转vim - 57 - # 行可视化
可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...
- oeasy教您玩转vim - 53 - # 批量替换
查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...
- oeasy教您玩转linux010203显示logo
我们来回顾一下 上一部分我们都讲了什么?
- oeasy 教您玩转linux010101查看内核uname
linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...
- oeasy教您玩转linux010202软件包管理apt
顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010201持续输出yes
我们来回顾一下 上一部分我们都讲了什么?
- oeasy教您玩转linux010108到底哪个which
到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?
- oeasy教您玩转python - 006 - # hello world
Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...
- oeasy教您玩转linux-010110内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- 深入学习Semantic Kernel:创建和配置prompts functions
引言 上一章我们熟悉了一下 Semantic Kernel 的理论知识,Kernel 创建以及简单的Sample熟悉了一下 SK 的基本使用.在Semantic Kernel中的 kernel fun ...
- 源码分析——MyBatis与Spring整合后如何保证SqlSession线程安全
在MyBatis架构中SqlSession是提供给外层调用的顶层接口,它是MyBatis对外暴露的最重要的接口,用户通过该接口即可完成数据库的全部操作.在上文中我们明白了我们常用的Mybatis动态代 ...
- tkinter时钟(实时更新显示)
from tkinter import * import time root = Tk() root.geometry('300x200') var = StringVar() def show(): ...
- mysql 5.6 inner join and 慢优化
慢示例: SELECT o.id FROM o_schoolnotice o INNER JOIN o_schoolnotice_parent p ON o.id = p.noticeid AND p ...
- weak引用表原理探究
一.weak引用实现原理探究 首先对<Xcode 10 下如何调试objc4-723>建立的objc源码调试工程表示感谢! 地址:https://www.jianshu.com/p/9e0 ...
- NumPy 通用函数(ufunc):高性能数组运算的利器
NumPy 通用函数(ufunc) 简介 NumPy 通用函数(ufunc),代表"通用函数",是一类用于对 ndarray 对象进行逐元素运算的高性能函数.ufunc 使 Num ...
- 谁说.net core不好动态访问webservice?看这篇文章,C#快速实现动态访问webservice,兼容.net framework和.net core+
前言:访问webservice,大多数人都是用服务引用的方式,但是这种方式比较麻烦,例如遇到服务更新了,你还需要手动更新你的服务引用,再重新发布,很麻烦.或者已有的一些例子,至少我看到的很多案例,动态 ...
- apollo配置中心从数据库中查询所有的配置及项目
apollo配置中心从数据库中查询所有的配置及项目 需求背景:如果需要从Apollo查询某个配置项做批量的更新替换,如果一个一个找不合适且容易遗漏,需要从底层数据库表中模糊查询来实现. 1.查看apo ...
- http请求方式GET,POST工具类RestTemplate
http请求方式GET,POST工具类RestTemplate import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serial ...
- Linux curl支持http/https方法,Curl请求示例语法
Curl请求示例curl -X GET "http://<host:port>/api/1/test/get?test=<value>&app_id=< ...