插入字符

回忆上节课内容 正则表达式

  • 行头行尾

    • ^ 意味着行开头
    • $ 意味着行结尾
  • 任意字符

    • . 代表任意字符
    • [a-z] 代表任意小写字母
  • 字符数量

    • * 代表 0 到任意多个前字符
    • + 代表 1 到任意多个前字符
    • ? 代表 0 或 1 个前字符
  • 行头行尾

    • \< 意味着单词开头
    • \> 意味着单词结尾
  • 我们掌握了在 vi 中光标运动的各种方法
  • 但如何编辑文本呢?

简单操作

ls -l > oeasy.txt
ll > oeasy.txt
vi oeasy.txt
  • i 进入插入模式
  • 插入字符串 oeasy
  • esc 退回到命令模式
  • 移动一下位置
  • . 是重做
  • u 是撤销

字符大小

  • 修改默认字体大小

    • 编辑菜单 - 首选项
    • 外观选项卡
    • 字体大小调整为 40
    • 确认

插入字符

  • i 切换到插入状态

    • 输入 ctrl + v
    • 然后再输入 065
    • 会插入一个 A 字符
  • 注意在 插入 状态下ctrl + v

查询帮助

  • 查询帮助
  • :h i_ctrl-v 表示查询 insert(插入状态下的),ctrl + v 对应的操作
  • 找到 i_CTRL-V_digit 超链接,ctrl + ] 进入

十进制 ascii 字符

  • 065 使用的是 十进制
  • 对应十进制值为 065 的 ascii 字符 A
  • 如下是ascii 的对应表格

插入 unicode 字符

  • 可以使用 https://unicode-table.com/cn/search/ 进行编解码转化
  • 比如搜索 ,可以找到 2642
  • 然后再输入状态下 ctrl + v 之后输入 u2642 就可以输入这个字符了
  • 还有些什么好玩的字符吗?

    • ☯ 太极 u262F
    • ⚊ 阳爻 u268A
    • ⚋ 阴爻 u268B
    • ⚌ 太陽 u268C
    • ⚍ 少陰 u268D
    • ⚎ 少陽 u268E
    • ⚏ 太陰 u268F
  • 用心找的话,还可以找到八卦和六十四卦
  • 甚至各种生僻汉字
  • 如果终端支持的话也可以显示emoji

二合字符

  • vim还支持使用二合字符
  • h dig(raphs)

  • i 切换到插入状态(注意当前状态处于插入状态)

    • 输入 ctrl + k进入二合字符输入状态
    • 输入 Co(注意大小写)可得到

      • Co 0xa9 169 COPYRIGHT SIGN
      • 可在上图中找到
  • 可以快速输入分数

    • ⅓ 13 2153 8531 VULGAR FRACTION ONE THIRD
    • ⅔ 23 2154 8532 VULGAR FRACTION TWO THIRDS
    • ⅕ 15 2155 8533 VULGAR FRACTION ONE FIFTH
    • ⅖ 25 2156 8534 VULGAR FRACTION TWO FIFTHS
  • 可以输入编号

    • ⒈ 1. 2488 9352 DIGIT ONE FULL STOP
    • ⒉ 2. 2489 9353 DIGIT TWO FULL STOP
    • ⒊ 3. 248A 9354 DIGIT THREE FULL STOP
    • ㈠ 1c 3220 12832 PARENTHESIZED IDEOGRAPH ONE
    • ㈡ 2c 3221 12833 PARENTHESIZED IDEOGRAPH TWO
    • ㈢ 3c 3222 12834 PARENTHESIZED IDEOGRAPH THREE
  • 可以输入正确或错误

    • ✓ OK 2713 10003 CHECK MARK
    • ✗ XX 2717 10007 BALLOT X
  • 可以使用 :digraphs 查看 二合字符 列表

寄存器计算

  • 在插入状态下
  • 输入 ctrl + r
  • 输入 =3+3(注意要有=
  • 得到结果 6
  • 可以计算小数吗?你自己试试!
  • 帮助文件在 h i_ctrl-r_=(插入状态下,ctrl + r 之后输入 =)

总结

  • 通过十进制的 ascii 值输入字符

    • 在输入模式下
    • 输入 ctrl + v
    • 然后再输入 065
  • 通过十六进制的 unicode 值输入字符

    • 在输入模式下
    • 输入 ctrl + v
    • 然后再输入 u2642 就可以通过 unicode 编码输入字符
  • 通过二合字符的方式插入

    • 在输入模式下
    • 输入 ctrl + k
    • 输入 Co 可以得到
    • 输入 13 可以得到 ⅓
    • :digraphs 查看二合字符列表
  • 寄存器计算

    • 在插入状态下
    • 输入 ctrl + r
    • 输入 =3+3(注意要有 =
    • 得到结果 6
  • 我们掌握了在 vi 中插入字符的各种方法
  • 如何 vim 可以删除字符吗?
  • 下次再说

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

[Gitee地址] (https://gitee.com/overmind1980/vimtutorial)

[蓝桥实验楼] (https://www.lanqiao.cn/courses/2840)

oeasy教您玩转vim - 36 - # 插入字符的更多相关文章

  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教您玩转linux010107那啥在哪 whereis

    回忆上次内容 上次讲了 ls 的参数 (arguement) 和选项 (option) 的设置. 现在我们要制作这样一个列表:

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

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

随机推荐

  1. RocketMq开启安全认证ACL-解决服务器系统安全漏洞

    1.为什么要开启ACL 通过之前的文章我们已经知道怎么安装RocketMq了.如果你还不会安装RocketMq可以查看我的这篇文章:快速入门一篇搞定RocketMq-实现微服务实战落地 进行软件安装, ...

  2. java 项目的创建

    新建一个  Spring Initializr

  3. C#关键字 sealed

    定义在自定义类上,该类就不能被继承. 定义在基类的方法上,子类就不能用override 重写该方法.

  4. 浅析MySQL 8.0直方图原理

    本文分享自华为云社区<[MySQL技术专栏]MySQL8.0直方图介绍>,作者:GaussDB 数据库. 背景 数据库查询优化器负责将SQL查询转换为尽可能高效的执行计划,但因为数据环境不 ...

  5. PHP 中使用 ElasticSearch 的最佳实践 (下)

    引言 上一篇文章,我们使用同步的方式将数据,同步写入到 ElasticSearch 中.接下来的这篇文章,主要介绍使用 RabbitMQ 的方式,异步的将数据同步到 ElasticSearch . 部 ...

  6. Android 13 - Media框架(26)- OMXNodeInstance(三)

    关注公众号免费阅读全文,进入音视频开发技术分享群! 上一节我们了解了OMXNodeInstance中的端口定义,这一节我们一起来学习ACodec.OMXNode.OMX 组件使用的 buffer 到底 ...

  7. .net core 关于对swagger的UI(Index.html)或接口的权限验证;

    背景: 如何在ASP.Net Core的生产环境中保护swagger ui,也就是index.html页面.其实swagger是自带禁用的功能的,只需要设置开关即可.但是有一些场景,是需要把这些接口进 ...

  8. docker 监控数据整合

    安装docker #开启内核转发 echo net.ipv4.ip_forward=1 >>/etc/sysctl.conf sysctl -p wget -O /etc/yum.repo ...

  9. js 留言板(带删除功能)

    本文所用的知识点:创建节点和添加节点 创建节点:document.createElement('li') 添加节点  node(父亲节点).appendChild(child)    child:子节 ...

  10. Scrapy框架(九)--分布式爬虫

    分布式爬虫 - 概念:我们需要搭建一个分布式的机群,让其对一组资源进行分布联合爬取. - 作用:提升爬取数据的效率 - 如何实现分布式? - 安装一个scrapy-redis的组件 爬取到的数据自动存 ...