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. Mysql进阶-day1

     Mysql数据库启动-关闭-登录-查看帮助 #单实例启动 1./etc/init.d/mysqld start 2.service mysqld start/restart 3./usr/local ...

  2. 解读ARM成功秘诀:薄利多销推广产品

    解读ARM成功秘诀:薄利多销推广产品 2013年07月04日 15:04   新浪科技 微博    我有话说(2人参与)   导语:美国电子杂志Slate周一发表署名 法哈德·曼约奥(Farhad M ...

  3. (八)Linux之挂载命令

    挂载命令 其实挂载在Linux中可以理解为分配盘符的意思.想一下,比如一张光盘插入了Linux系统的 电脑上,要想读取其中的内容,需要做哪些操作呢?首先你要考虑的是这张外来光盘的的数据也是 外来的,如 ...

  4. iOS UI的几种模式

    iOS UI的几种模式: 1.平凡模式(原生控件组合): 2.新闻模式: 3.播放器模式: 4.微博模式:

  5. [19/04/20-星期六] Java的动态性_字节码操作(Javassist类库(jar包),assist:帮助、援助)

    一.概念 [基本] /** * */ package cn.sxt.jvm; import javassist.ClassPool; import javassist.CtClass; import ...

  6. [SCOI2005]互不侵犯(状压DP)

    嗝~算是状压DP的经典题了~ #\(\mathcal{\color{red}{Description}}\) 在\(N×N\)的棋盘里面放\(K\)个国王,使他们互不攻击,共有多少种摆放方案.国王能攻 ...

  7. 【题解】洛谷P1273 有线电视网(树上分组背包)

    次元传送门:洛谷P1273 思路 一开始想的是普通树形DP 但是好像实现不大好 观摩了一下题解 是树上分组背包 设f[i][j]为以i为根的子树中取j个客户得到的总价值 我们可以以i为根有j组 在每一 ...

  8. 2019年,iOS开发的你不可或缺的进阶之路!

    序言 我相信很多人都在说,iOS行业不好了,iOS现在行情越来越难了,失业的人比找工作的人还要多.失业即相当于转行,跳槽即相当于降低自己的身价.那么做iOS开发的你,你是否在时刻准备着跳槽或者转行了. ...

  9. Ubuntu下VsCode+CMake 交叉编译

    在安装配置好VsCode后,下载相关插件.如图: 其中CMake Tools是为了方便使用CMake的扩展工具. 在创建工程前,先在VSCode打开一个空的目录(你的Project目录),再对CMak ...

  10. 关于alias同时使用多个命令小记。

    为了方便自己快速使用命令,接触了一下alias.在使用多个命令时,一般有两种方式.各有不同 根据需求选择. 直接上代码: 1.alias Name='(date;pwd;cmd1;cmd2) 写法简洁 ...