oeasy教您玩转vim - 72 - # 缩写abbreviation
缩写abbreviation
回忆上次折叠的细节
- 这次了解到了
:mkview、:loadview - 保存和加载视图
- 可以把当前的状态保存下来
- 可以在
viewoption中配置保存选项,设置哪些需要保存 还可以保存多个视图
- 在整个文档中跳来跳去
视图里面可以有很多本地窗口的设置
- 折叠
- 缩写
- 映射
- 那么到底什么是缩写(
abbreviations)和映射(mappings)呢?
缩写就是abbreviations)
缩写之类的东西我们早就见过
:se nu:se[t] nu[mber]
- 不用都打上,打上缩写形式就自动能好使

类似的还有
:%s- 等价于
:%substitute

缩写abbreviation
- 我们可以快速地定义缩写
:abbreviate hi hello- 这个时候如果输入
hi空格 - hi就自动变成了hello
- 不过目前系统配置有点问题
- 这个时候如果输入
调整设置
- 当前系统配置有点问题
- 需要看一下
~/.vimrc

- 把177这句
set paste是控制粘贴用的 - 有的时候粘贴出来时对不齐就用
:set paste - 粘贴完之后
:set nopaste - 现在我们
:set nopaste确保缩写可以用起来

设置缩写
- 这有点像颜文字转化工具
:abbreviate sml ヾ(❀╹◡╹)ノ~- 还挺好使 哈哈
还可以使用缩写形式
ab:ab o1z oeasy
还可以用来改错
:ab teh the
- 不论是在插入模式下,还是在命令行模式下
- 只要输入缩写形态,然后加一个空格
- 就自动完成切换

这个东西其实还是有一定实用性的
:ab sysout System.out.println();- 不过我可以控制最终的光标位置么?
光标的控制
定义新的缩写
:ab sysout System.out.println("");<left><left><left>- 这样就可以在快速得到输出语句之后
- 还把光标放在最合适的位置

- 这样就可以快速插入一些复杂的语句
- 那么这个可以换行么?
添加换行符号
:ab htmlbase <html><cr><tab><head></head><cr><body></body><cr><backspace></html><up><right><right>

- 这样就可以快速插入一些更大规模的模板之类的内容
- 目前有什么缩写abbreviate
- 可以列表出来么
列出所有的缩写abbreviate
ab[breviate]可以列出所有的缩写

第一列代表使用范围
!- 全部模式包括输入和命令行i- 输入模式 insertc- 命令行模式 command
单独定义某模式下的ab
:iab o1z oeasy只在插入模式下进行缩写替换:cab o1z oeasy只在命令模式下进行缩写替换:ab o1z oeasy在全部模式下都能进行缩写替换
取消缩写
:ab先看看有啥:una o1z

- 再
:ab发现这个o1z已经删除了 - 清空
clear :iabc[lear]- 清空输入(insert)状态下的缩写abbreviate
:cabc[lear]- 清空命令(command)状态下的缩写abbreviate
:abc[lear]- 清空一切状态下的缩写abbreviate

- 一个个定义映射有点麻烦
- 我能直接利用曾经写过的单词么?
自动补全

- 我们的缓冲中有很多已经写出来的单词
- 我们可以用这些来做自动补全
我们写下S然后按下ctrlp
- 出现一个提示框我们可以选择里面的单词
- ctrlp - previous
- ctrln - next
- 随着输入的进行还可以缩小查找范围

- 这个东西也是非常实用的小技巧
总结
- 这次了解到了
:abbrivate缩写 可以定义缩写
:ab o1z oeasy- 这里面还可以包括方向键、回车键之类的东西
可以定义到指定的模式
iabcab
查看缩写
:ab- 所有的:ab o1z- o1z
自动补全
- ctrlp
- ctrln
这些缩写都可以保存在视图里
- 保存的选项在
viewoption中
- 保存的选项在
- 可以保存的除了
缩写abbreviate还有个映射map 映射map什么意思呢?- 下次再说!
[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (oeasy 教您零基础玩转编辑神器 Vim_Linux 蓝桥云课)
oeasy教您玩转vim - 72 - # 缩写abbreviation的更多相关文章
- 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内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- Javascript/DOM:如何删除 DOM 对象的所有事件侦听器
Javascript/DOM:如何删除 DOM 对象的所有事件侦听器 一.重写 重写 EventTarget 添加监听事件方法 addEventListener if (EventTarget.pro ...
- IDS4 傻瓜式实践指南
前言: 这是一篇实践指南,不会过多的解释原理(因为我也说不清楚,想了解的同学请移步老张的博客,里面有非常详细的介绍),本篇文章讲解如何简单的使用IDS4来实现单点登录,以及遇到的一些坑实现功能: 1. ...
- CSS操作——文本属性
1.font-style(字体样式风格) /* 属性值: normal:设置字体样式为正体.默认值. italic:设置字体样式为斜体.这是选择字体库中的斜体字. oblique:设置字体样式为斜体. ...
- Android 12(S) Binder(一)
今天开始了解一下binder,就先从ServiceManager开始学习. 网上的相关博文普遍是Android 11之前的,阅读时对比Android 11或12的代码发现有很多内容找不到了,比如 fr ...
- 一键云部署:ROS的Terraform托管服务助你轻松上线2048经典游戏
在现代云计算环境中,自动化部署已经成为一项重要的任务.Terraform,作为HashiCorp公司的一款开源工具,以其强大的基础设施即代码(IaC)能力,使得我们能够轻松管理和部署各种云资源. 阿里 ...
- Bi-encoder vs Cross encoder?
本文永久地址:https://wanger-sjtu.github.io/encoder-cross-bi/ Bi-encoder和Cross-encoder是在自然语言理解任务模型的两种不同方法,在 ...
- 记一次 .NET某质量检测中心系统 崩溃分析
一:背景 1. 讲故事 这些天有点意思,遇到的几个程序故障都是和Windows操作系统或者第三方组件有关系,真的有点无语,今天就带给大家一例 IIS 相关的与大家分享,这是一家国企的.NET程序,出现 ...
- INFINI Labs 产品更新 | 发布 Easysearch Java 客户端,Console 支持 SQL 查询等功能
近年来,日志管理平台越来越流行.使用日志管理平台可以实时地.统一地.方便地管理和查看日志,挖掘日志数据价值,驱动运维.运营,提升服务管理效率. 方案架构 Beats 是轻量级采集器,包括 Filebe ...
- “Newtonsoft.Json”已拥有为“Microsoft.CSharp”定义的依赖项。
安装较低版本的Newtonsoft.Json: Newtonsoft.Json官网:https://www.nuget.org/packages/Newtonsoft.Json/ Install-Pa ...
- 三月二十一日 安卓app个人作业开发
已经完成了 登录 和 注册逻辑 目前还有 提交打卡记录 的 开始时间 和 结束时间没有弄好 还有个人打卡记录的显示问题 并且我希望增加 修改个人密码 显示个人信息 退出登录 返回页面 删除打卡记录 的 ...