插入模式

回忆上节课内容

  • 我们总结了,模式切换的方式

    • 命令模式 Normal mode
    • 底线命令行模式 Command mode
  • 帮助文件的正确打开方式
    • :h
  • 在文档中使用鼠标
    • set mouse=a
    • 建议不用鼠标
  • 使用全键盘方式跳入跳出超链接
    • <kbd>ctrl</kbd>+<kbd>]</kbd>
    • <kbd>ctrl</kbd>+<kbd>o</kbd>
  • 帮助文件的两种手册
    • 用户帮助手册
    • 引用帮助手册
  • 这次我们来插入内容,修改文档

插入模式

想要插入内容的话,应该进入插入模式 (Insert mode)

  • 首先我们还是打开上次的那个 oeasy.txt
ls -l . > oeasy.txt
vi oeasy.txt

  • 然后如何进入插入模式呢?
  • 我们使用 :help insert 看看是否有什么命令

  • 我们需要先退出帮助模式

    • :q
  • 然后按下 <kbd>i</kbd> 进入插入模式
  • 进入插入模式后
    • 左下角 状态栏会显示 -- 插入 --
    • 这意味着已经进入了插入模式
    • 时刻留意左下角
    • 左下角就像小地图一样
    • 是统管全局的所在

  • 如果没有进入插入模式的话

    • 可能因为处在新开的帮助中
    • :q 退出帮助

插入文字️

  • 插入模式下我们可以任意打字
  • 按键不再是命令而是输入字符
  • 冒号回车都能打出来

  • 输入完成之后,又想要移动位置怎么办呢?

    • <kbd>esc</kbd> 退回到命令模式 Normal mode
    • 或者 <kbd>ctrl</kbd>+<kbd>c</kbd> 回到命令模式 Normal mode
    • 尽量选择 <kbd>ctrl</kbd>+<kbd>c</kbd> 因为可以让双手保持正位
    • 右手小指 <kbd>ctrl</kbd> + 右手食指 <kbd>c</kbd>
  • 注意退回到命令模式后
    • 左下角状态栏不再显示 -- 插入 --
    • 而是变回空白
  • 观察左下角
  • 时刻注意

文件细节

  • 注意有内容的地方是具体的文字内容
  • 在没有内容的地方
  • 前面会有 tilder(~) 进行提示
  • tilder(~) 意味着空行,就是啥都没有

使用 i 命令进入插入模式

  • 按 <kbd>i</kbd> 再次进入插入模式
  • 按 <kbd>esc</kbd> 或 <kbd>ctrl</kbd>+<kbd>c</kbd> 退回到命令模式

  • 可以用 <kbd>i</kbd> 和 <kbd>ctrl</kbd>+<kbd>c</kbd> 反复切换模式
  • 观察左下角

帮助细节

  • i 到底什么意思?
  • 可以 :h 他一下
  • :h i 就是 help 一下 i 命令究竟做些什么

  • 那 <kbd>ctrl</kbd>+<kbd>c</kbd> 是啥意思?

查询快捷键

  • 什么不会就 :h 什么
  • :h ctrl-c 就是帮助我们查找一下 ctrl-c 快捷键究竟做些什么

  • 同理还有 :h ctrl-g

  • <kbd>CTRL</kbd>+<kbd>G</kbd> 对应着 :f[ile] 命令
  • 可以查看当前文件信息

尝试退出

  • 输入 :q 希望退出
  • 但是屏幕 显示如下

  • 按照他的要求输入 :q!
  • cat oeasy.txt 显示文件并未修改
  • 原来 :q! 只是不保存,强制quit退出
  • 囧,虽然还没成功保存...
  • 但是曾经真的插入文字了!
  • 我们先总结一下

总结

  • 我们这一次进入了插入模式
  • 在正常模式下使用命令 <kbd>i</kbd>
  • 在插入模式下使用 <kbd>esc</kbd> 退回到正常模式
  • 使用 :!q 不保存强制退出
  • 哎~看来保存只能下次再说了
  • 我们下次再说!

oeasy教您玩转vim - 5 - # 插入模式的更多相关文章

  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. 无意发现vim里插入模式可以借助Alt键输入一些特殊字符

    无意发现vim里插入模式可以借助Alt键输入一些特殊字符.如: Alt+w: ÷ Alt+:: » Alt+f  :  æ Alt+ . :  ® Alt+ ? :  ¯...

  5. 【vim】插入模式与常用编辑操作

    vim不像很多编辑器那样一启动便可以直接编辑文本,需要在普通模式按下i, a等键才会进入插入模式进行文本编辑. 如何进入插入模式 以下的命令都会让vim从普通模式切换到插入模式,但命令执行后的字符插入 ...

  6. vim在插入模式粘贴代码缩进问题解决方法

    转载自:https://blog.csdn.net/commshare/article/details/6215088 在vim粘贴代码会出现缩进问题,原因在于vim在代码粘贴时会自动缩进 解决方法: ...

  7. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  8. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  9. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  10. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

随机推荐

  1. 鸿蒙HarmonyOS实战-Stage模型(开发卡片页面)

    一.开发卡片页面 HarmonyOS元服务卡片页面(Metaservice Card Page)是指在HarmonyOS系统中,用于展示元服务的页面界面.元服务是指一组提供特定功能或服务的组件,例如天 ...

  2. 基于ADB Shell 实现的 Android TV、电视盒子万能遥控器 — ADB Remote ATV

    ADB Remote ATV Android TV 的遥控器,基于 ADB Shell 命令 ADB Remote ATV 是一个 Android TV 的遥控器,基于 ADB Shell 命令,泛用 ...

  3. Immich让你从此告别百度网盘备份手机照片

    一. Immich 是什么 Immich是一个开源的图片自托管服务,它能实现类似于百度网盘的照片自动备份.分类等功能,它同时提供了Web管理页面,和移动端APP,可以轻松备份手机中的照片至家庭服务器中 ...

  4. 『手撕Vue-CLI』添加终端用户交互

    前言 经过上一篇文章的梳理,实现了可以从 GitHub 上拉取模板项目名称,已经可以得知可使用的模板有哪些了,那么我觉得是不是要进行选择呢?所以这一篇文章就来实现终端用户交互,让用户可以自己选择想要使 ...

  5. 鸿蒙极速入门(五)-路由管理(Router)

    页面路由指在应用程序中实现不同页面之间的跳转和数据传递.HarmonyOS提供了Router模块,通过不同的url地址,可以方便地进行页面路由,轻松地访问不同的页面. 一.基础使用 Router模块提 ...

  6. iOS技术管理思路

    iOS技术管理思路

  7. Windows库链接报错

    问题回溯 今天拿到别人已经编译好的库,发现在链接的时候出现了报错 [9/9 12.7/sec] Linking CXX shared module bin\plugins\AsensingPlugin ...

  8. 《Qt学习系列笔记》--章节索引

    Qt下载.安装及环境搭建:https://www.cnblogs.com/mrlayfolk/p/13111349.html Qt初始化代码基本说明:https://www.cnblogs.com/m ...

  9. NaN数值类型

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  10. else if

      // if(){}else if(){}...else{}         // 多种条件,多种情况下的判断语句         // 必须要注意         // 1,else if 之后有 ...