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内容回顾
我们来回顾一下 我们都讲了什么?
随机推荐
- 你可能不知道的秘密——String s=new String(“abc”)到底创建了几个对象?
String s=new String("abc")创建了几个对象? 在探讨上述问题结论之前,我们需要了解常量池这个概念. 常量池 由于字符串在Java中被大量使用 ...
- 提速15%,PaddleOCRSharp新版v4.3发布
PaddleOCRSharp v4.3版本,已经于5月23日发布.该版本的发布,在不影响识别精度的同时,带来了10%~15%速度的提升. 项目地址:https://gitee.com/raoyutia ...
- Redis单线程
Redis是基于Reactor模式开发的网络事件处理器,这个处理器是单线程的,所 以redis是单线程的. 为什么它是单线程还那么快呢? 主要有以下几个原因: 一.纯内存操作 由于Redis是纯内存操 ...
- JavaSE print printf println 区别
*print与println,printf区别 System.out.print();括号内必须含有参数 System.out.println();括号内可以不含参数,此时代表newline即换行; ...
- CF364E
problem 算法1 我会暴力!!! 直接枚举右上角和左下角,然后计算答案,使用前缀和优化后时间复杂度为 \(O(n^4)\). 算法2 我会分治!!!. 我们知道答案就是左边+右边+两边都有的个数 ...
- ABC319题解
直接从 D 开始了. D 可可爱爱的二分捏. check 就按照题目里写的就行了. 然后 \(l\) 的初值要注意一下,就是 \(\max^{i \le n}_{i=1}a_i\). 代码: #inc ...
- C# .NET 压缩ZIP时 OOM OutOfMemoryException
C# .NET 压缩ZIP时 OOM OutOfMemoryException. ZipArchiveEntry.ZipEntry.SharpZipLib.ZipOutputStream.OutOfM ...
- Vue学习:20.综合案例-商品列表
学而时用之,方能融会贯通! 实例:商品列表 实现功能 要求表格组件支持动态数据渲染.自定义表头和主体.标签组件需要双击显示输入框并获得焦点,可以编辑标签信息. 思路 首先是表格组件,动态渲染需要使用组 ...
- 安装nodejs易遇到的坑
@ 目录 背景描述 流程步骤 小结 背景描述 我的服务器是centos7.9,打算先直接通过yum安装,但是yum不能指定node版本,我直接指定显示404找不到,然后我设置了下node下载的源,还是 ...
- Java api zookeeper
package com.redis.demo.zookeeper; import java.io.Serializable; public class User implements Serializ ...