1. 概述

  1. 简述 vim 模式
  2. 很简单的东西, 随便说说得了

2. 模式们

  1. 概述

    1. vim 各个模式
    2. 后面的切换, 都是从 标准模式 切换到其他模式

1. Normal Mode

  1. 名称

    1. 标准模式 / 常规模式 /普通模式
    2. 后面都叫 标准模式
  2. 作用
    1. vim 的默认模式
    2. 在文档中做 简单的位置跳转
    3. 还有 复制, 粘贴, 删除 等操作
  3. 标志
    1. 左下角没有任何显示
    2. 按 h, j, k, l, 可以对 光标 做 向左, 向下, 向上, 向右 的 位移操作

2. Insert Mode

  1. 名称

    1. 插入模式
  2. 作用
    1. 编辑文本, 做 增删改 操作
  3. 标志
    1. 左下角有文本
      -- INSERT --
  4. 切换
    1. i
    2. a

3. Visual Mode

  1. 名称

    1. 视觉模式
    2. 名字有点别扭, 但是暂时想不出别的了
  2. 作用
    1. 可以选定整块内容, 并执行操作
    2. 支持 列模式
  3. 标志
    1. 左下角有文本
      -- VISUAL --
  4. 切换
    1. v

4. Command Mode

  1. 名称

    1. 命令模式
  2. 作用
    1. 执行命令

      1. 调整 vim 环境
      2. 查找, 替换内容
      3. 多窗口切换
      4. 其他强大功能
  3. 标志
    1. 左下角以 : 或者 / 开头
  4. 切换
    1. :
    2. /

5. Replace Mode

  1. 名称

    1. 替换模式
  2. 作用
    1. 替换光标位置的 文本内容
    2. 用的比较少
  3. 标志
    1. 左下角有文本
      -- REPLACE --
  4. 切换
    1. R

3. 留个坑

  1. 模式之间, 是可以相互切换的

    1. 切换的操作, 简单讲了一部分, 没有系统归类, 以后应该也不会了
    2. 我认为, 刻意去记忆 如何在模式间切换, 不是一个很好的学习方式
      1. 我的思路, 还是以功能为主
      2. 按照常见的行为模式, 分类处理
  2. vim 使用
    1. 好些同学觉得, 我不用 linux, 就接触不到 vim, 这玩意没啥用处
    2. 实际上, vim 是个强大的文本编辑器, 而且获取很方便, 不用, 其实有点亏
    3. windows 下的 vim
      1. 可以安装 git , 在 git bash 中, 使用 vim 命令
      2. 对于 使用 intelliJ 的 IDE 的同学, 可以在 setting 的 plugin 里, 找到 ideavim 插件
    4. 在废话一句, 熟练地使用 vim, 对于工作效率, 是有帮助的

ps

  1. ref

    1. freecodecamp
      https://guide.freecodecamp.org/vim/modes/

VIM - 模式简介的更多相关文章

  1. MVVM模式和在WPF中的实现(一)MVVM模式简介

    MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...

  2. Sublime Text 3 插件安装及Vim 模式设置

    1.安装Sublime Text 3  下载安装:http://www.sublimetext.com/3 Package Control安装:https://sublime.wbond.net/in ...

  3. 【前端学习】sublime开启vim模式

    学习目标:在sublime下开启vim模式,了解基本vim的编辑快捷键. 下载安装Sublime Text 3 :http://www.sublimetext.com/3 Vim/Vi: Vim/Vi ...

  4. 代理(Proxy)模式简介

    Proxy 模式简介 代理模式的两个应用: 打开文档时加载大图片 例如:如果有个对象是一张很大的图片,而这张图片需要花费很长时间才能显示出来,那么当这个图片包含在文档中的后面时,使用编辑器或浏览器打开 ...

  5. Sublime Text 3配置与vim模式(待完整)

    Sublime Text 3通过设置默认值与用户值的方式,来进行配置.默认值不允许更改,用户值是用户进行配置.同一属性,当用户值存在时,默认值就无效.打开Preference,如图: 先贴下我的Set ...

  6. (转)Qt Model/View 学习笔记 (一)——Qt Model/View模式简介

    Qt Model/View模式简介 Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系.这种结构带来的 功能上的分离给了开发人员更大的弹性来定制数据项 ...

  7. vim模式下报错E37: No write since last change (add ! to override)

    故障现象: 使用vim修改文件报错,系统提示如下: E37: No write since last change (add ! to override) 故障原因: 文件为只读文件,无法修改. 解决 ...

  8. 转:vim模式下报错E37: No write since last change (add ! to override)

    故障现象: 使用vim修改文件报错,系统提示如下: E37: No write since last change (add ! to override) 故障原因: 文件为只读文件,无法修改. 解决 ...

  9. idea取消vim模式

    在安装idea时选择了vim编辑模式,但是用习惯了eclipse,总是要拷贝粘贴,在idea中一直按ctrl+c和ctrl+v不起总用.于是想把vim模式关闭掉.方法:菜单栏:tools->vi ...

随机推荐

  1. 结构类型:Struct

    一.概述: 结构类似于类,但结构为值类型,存储于栈中. 结构不能继承和被继承,但可实现接口. 结构成员访问级别有public,private(默认) ,internal. 1.简单结构 可以将无方法, ...

  2. Angular Reactive Form - 填充表单模型

    setValue 使用setValue,可以通过传递其属性与FormGroup后面的表单模型完全匹配的数据对象来一次分配每个表单控件值. 在分配任何表单控件值之前,setValue方法会彻底检查数据对 ...

  3. js oc与线程

    分属不同的线程 //定义需要暴露给js的内容,这里我们只暴露personName和queryPersonName接口 @protocol PersonProtocol <JSExport> ...

  4. 如何批量下载bing的背景图片?

    工具准备 wget(点击下载) 批处理命令(点击下载) 网友提供的接口:http://area.sinaapp.com/bingImg?daysAgo=1(1代表天数) 实现步骤 1.打开记事本,并将 ...

  5. rand7生成rand10,rand1生成rand6,rand2生成rand5(包含了rand2生成rand3)

    这种题要分两步,第一步是“插空儿”,第二步是“筛” 1.rand7生成rand10 只要是10的倍数就好 int rand10() { int num; do{ num = (rand7() - ) ...

  6. Maven profile动态选择配置条件

    背景 在开发过程中,我们的软件会面对不同的运行环境,比如开发环境.测试环境.生产环境,而我们的软件在不同的环境中,有的配置可能会不一样,比如数据源配置.日志文件配置.以及一些软件运行过程中的基本配置, ...

  7. PAT——1070. 结绳

    给定一段一段的绳子,你需要把它们串成一条绳.每次串连的时候,是把两段绳子对折,再如下图所示套接在一起.这样得到的绳子又被当成是另一段绳子,可以再次对折去跟另一段绳子串连.每次串连后,原来两段绳子的长度 ...

  8. 用javascript调用表单验证事件时,为什么return false了还是把表单submit了?

    表单提交前,都会有定义一个验证的方法以对用户提交的内容进行限定,今天写到了这个,但出现了一个好郁闷的东西,就是一点提交了,调用我自己写的一个CheckForm()方法时,我明明写了return fal ...

  9. Mysql数据库写入数据速度优化

    Mysql数据库写入数据速度优化 1)innodb_flush_log_at_trx_commit 默认值为1:设置为0,可以提高写入速度.  值为0:提升写入速度,但是安全方面较差,mysql服务器 ...

  10. Hibernate工作原理及为什么要用?. Struts工作机制?为什么要使用Struts? spring工作机制及为什么要用?

    三大框架是用来开发web应用程序中使用的.Struts:基于MVC的充当了其中的试图层和控制器Hibernate:做持久化的,对JDBC轻量级的封装,使得我们能过面向对象的操作数据库Spring: 采 ...