Vim 简介

vim是什么?听说它是编辑器之神!
神一样的存在,而我却经常用上下左右箭头来移动光标,实在是有点对不起它,所以想着稍微学学一点神的技能吧!

一. vim的三种模式

    • Nomal mode:默认模式,因为使用该模式场景最多,所有定为默认模式
    • Insert mode :插入模式,少用,尽量不要停留在找个模式下,操作完成之后,推荐返回默认模式
    • Visual mode:可视模式,一般在需要选中的时候使用

三种模式之间的转换:

    • 在插入或者可视模式下,按Esc键返回到默认模式
    • 在默认模式下,按i,a,o进入插入模式
    • 在默认模式下,按v,V进入可视模式

二. vim的操作

2.1 vim中的快捷键

    • 移动:h(左)、l(右)、j(上)、k(下)
    • 操作:d(delete)、i(insert)、a(append)、c(change)、y(copy)、p(paste)
    • 缩写:w(word)、s(sentence)

2.2 vim中的正则表达式

    • ^:行首
    • $:行尾

2.3 vim中的命令模式

    • :set nu,显示行号
    • :syntax on,语法高亮
    • :set autoindent,自动缩进
    • :set fileencoding,显示文件编码
    • :set fileencoding=utf-8,以utf-8的编码显示文件(然后w可以保存)

三. vim的神操作

3.1 移动、定位

    • h:光标向左移动
    • j:光标向下移动
    • k:光标向上移动
    • l:光标向右移动
      可以在字母前面加上「数量」就可以移动多行了,比如向上移动 10 行,就是10k
    • w:光标往前移动一个词
    • b:光标向后移动一个词
    • 0:移动光标到当前行首
    • ^:移动光标到当前行的第一个字母位置(注意与 0 的区别)
    • $:移动光标到行尾
    • ):移动光标到下一个句子
    • ( :移动光标到上一个句子
    • {:移动光标到上一段
    • }:移动光标到下一段
    • [n]gg : 光标移动到第 n 行
    • gg: 光标移动到文件首部
    • G:移动到文件尾部

3.2 快速编辑

    • i:在光标处插入(insert首字母小写)
    • I:在行首插入(insert首字母大写)
    • a:在光标处后一个字符插入(append首字母小写)
    • A:在行尾插入(append首字母大写)
    • o:在上一行插入
    • O:在下一行插入
    • s:清除当前字符并进入插入模式
    • cc/S:清除当前行并进入插入模式
    • cw: 清除当前单词并进入插入模式

3.3 复制、黏贴、剪切

    • d[n]w:剪切光标单词及后面单词的内容(共n个单词),dw 是剪切当前单词
    • [n]dd:剪切光标行及后面行的内容(共n行),dd 为剪切当前行
    • D/d$:剪切光标后到行尾的内容
    • d0:删除光标至当前行首
    • dG:删除光标行至文档结尾
    • dgg:删除光标至文档开头
    • yy/Y:复制当前行的内容
    • p:粘贴到光标后
    • P:粘贴到光标前

3.4 撤销、查找、替换

    • u:撤回上次操作
    • /aaa:表示在整篇文档中搜索匹配aaa的字符串, / 表示向下查找
    • ?aaa: 表示在整篇文档中搜索匹配aaa的字符串,?表示向上查找
      其中aaa可以是正规表达式。查找到以后,再输入 n 查找下一个匹配处,输入 N 反方向查找。
    • :%s/old/new:检索第一个“old”字符串并将其替换成 “new”
    • :%s/old/new/g:检索并将所有的 “old” 替换为 “new”
    • :%s/old/new/gc:检索出所有的 “old” 字符串,但在替换成 “new” 前,先询问是否替换

3.5 把vim暂时放置于后台

    • Ctrl+z: 把vim暂时放置于后台
    • fg : 调回之前放置于后台的vim,继续编辑

vim(vi)的常用快捷键的更多相关文章

  1. Linux下VIM配置以及常用快捷键

    一.VIM配置 在目录 /etc/vim下面,有个名为vimrc的文件,这是系统中公共的vim设置文件,对所有用户都有效.而在每个用户的主目录下,都能自己建立私有的设置文件,命名为:“.vimrc”. ...

  2. vi 编辑器常用快捷键

    vi 编辑器 vim 编辑器算是vi的进阶版本 所有的unix like 系统都会内建vi编辑器 vi三种模式分别为: 1.一般模式(默认模式或指令模式) 上下左右方向键 移动光标 pageUp pa ...

  3. Vim编辑器的常用快捷键.

    Linux中的文本操作离不开Vim编辑器的使用. Vim编辑器的使用相对门槛较高.需要挺长一段时间的适应. 总结一些Vim使用过程中常用的命令(这些命令基本上都是在vim的命令模式下使用) 1.跳转到 ...

  4. 编辑器之神vim的一些常用快捷键整理

    yy:复制 光标所在的这一行 4yy:复制 光标所在行开始向下的4行 p:粘贴 dd:剪切(删除) 光标所在的这一行 4dd:剪切(删除) 光标所在行向下的4行 D:从当前的光标开始向后剪切,一直到行 ...

  5. Vim/Vi常用操作(第二版)

    周围同事不是用vim就是Emacs,你要是用一ultraedit,你都不好意思跟人家打招呼;什么插件呀,语法高亮呀,拼写检查呀,能给它开的都给它开着,就是一个字儿:酷. 你说这么牛B一东西,怎么着学会 ...

  6. [转贴] VIM 常用快捷键 --一直记不住

    vim 常用快捷键  原帖地址: https://www.cnblogs.com/tianyajuanke/archive/2012/04/25/2470002.html 1.vim ~/.vimrc ...

  7. Linux系统下vim常用快捷键及功能

    1. 什么是vim Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在vi的基础上改进和增加了很多特性. vim编辑器是Linux系统下标准的编辑器,作用相当于windows系统中的记 ...

  8. VIM常用快捷键(转载)

    移动光标 h,j,k,l 上,下,左,右 ctrl-e 移动页面 ctrl-f 上翻一页 ctrl-b 下翻一页 ctrl-u 上翻半页 ctrl-d 下翻半页 w 跳到下一个字首,按标点或单词分割 ...

  9. vi/vim 文字处理器常用命令

    目录 vi 与vim vi 的三种模式 vi 光标移动 vi 搜索与替换 vi 删除 vi 复制 vi 粘贴 vi 其他 vi 进入编辑模式 vi 命令行命令 vim 附加功能 vi 与vim vi是 ...

  10. vi常用快捷键

    vi常用快捷键 1)移动光标 h :光标左移一个字符k :光标上移一个字符j :光标下移一个字符l :光标右移一个字符 0 :光标移至行首$ :光标移至行尾 H :光标移至屏幕首行M :光标移至屏幕中 ...

随机推荐

  1. 4.加密与token(node+express)

    一. 敏感数据加密1.安装并引入中间件     npm install utility     const utils = require('utility')2.加密方法     function ...

  2. jmeter json path espressions学习

    jsonpath表达式可以使用点或者括号来取值 管方详细介绍:https://goessner.net/articles/JsonPath/ $ :表示根对象 @:表示当前对象 . 或者[]:表示子运 ...

  3. Python大数据与机器学习之NumPy初体验

    本文是Python大数据与机器学习系列文章中的第6篇,将介绍学习Python大数据与机器学习所必须的NumPy库. 通过本文系列文章您将能够学到的知识如下: 应用Python进行大数据与机器学习 应用 ...

  4. bm25算法和tfidf

  5. ES6中对象的扩展

    ES6不仅为字符串.数值和数组带来了扩展,也为对象带来了很多新特性.这一节,我们来一起学习一下对象的扩展. 对象的传统表示法 我们回顾一下,对象的传统表示法: let person = { " ...

  6. <string>头文件常用成员函数

    之前说过 string和vector一样,也是一种顺序容器,并且它也自带成员函数,用法和vector的成员函数差不多,不过它只能用来存放字符,也就是字符串. 在c++中,<string>基 ...

  7. tp5--数据库查询的常用操作

    首先,我们要先明确,我们平时经常使用那些操作,我看了开发手册,主要是连贯操作比较多. 连贯操作有: field, order, limit, page, GROUP, HAVING, cache, 其 ...

  8. python学习11函数

    '''''''''函数:1.定义:指通过专门的代码组织,用来实现特定的功能的代码段,具有相对独立性,可供其他代码重复调用2.语法:def 函数名([参数]): 函数体[return 返回值]3.函数名 ...

  9. 009.Ansible模板管理 Jinja2

    一 Jinja2简介 Jinja2是基于python的模板引擎. 假设说现在我们需要一次性在10台主机上安装redis,这个通过playbook现在已经很容易实现.默认情况下,所有的redis安装完成 ...

  10. 自建Git服务器 - 创建属于你自己的代码仓库

    最近有线上朋友私信问我怎么搭建个人博客,也有咨询我个人项目的代码是如何保管的,还有一个朋友问我买了服务器玩了一段时间,等新鲜感过了就不知道做什么了. 关于这些问题并没有一个标准答案,每个人都有自己的使 ...