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. vue2.x学习笔记(二十二)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12633051.html. 自定义指令 简介 除了核心功能默认内置的指令([v-mode]和[v-show]等),v ...

  2. [YII2] COOKIE的操作使用

    PHPcookie的设置 setcookie('username',$data['username'],time()+3600*24*7); YII2cookie的设置 $cookies = Yii: ...

  3. HDFS一些基本操作方法

    启动hadoop cd /usr/local/hadoop ./sbin/start-dfs.sh 在浏览器中打开localhost:50070 找到 进入  操作 1)新建文件夹      在根目录 ...

  4. MarkDown排版测试

    1.标题设置 标题(大标题) 标题(小标题) 标题(一级标题) 标题( 二级标题) 标题(三级标题) 标题(四级标题) 备注:大标题与一级标题一样,小标题与二级标题一样,"#"前无 ...

  5. 蘑菇街CEO陈琪上市致辞:科技是生产力 美丽也是生产力

    雷帝网 乐天 12月7日报道 蘑菇街CEO陈琪今日在纽交所上市致辞时表示,蘑菇街的使命是让时尚触手可及,立志成为最领先的时尚目的地,并把"科技是生产力,美丽也是生产力"作为蘑菇街价 ...

  6. MongoDB学习(三)

    MongoDB条件操作符 $gt  > 大于 $lt   < 小于 $gte >= 大于等于 $lte  <= 小于等于 $ne  !=  不等于 条件操作符可用于查询语句中, ...

  7. java中文乱码解决之道(七)—–JSP页面编码过程

    我们知道JSP页面是需要转换为servlet的,在转换过程中肯定是要进行编码的.在JSP转换为servlet过程中下面一段代码起到至关重要的作用. <%@ page language=" ...

  8. webpack4.x下babel的安装、配置及使用

    前言 目前,ES6(ES2015)这样的语法已经得到很大规模的应用,它具有更加简洁.功能更加强大的特点,实际项目中很可能会使用采用了ES6语法的模块,但浏览器对于ES6语法的支持并不完善.为了实现兼容 ...

  9. CodeForces - 1047CEnlarge GCD(这题很难,快来看题解,超级详细,骗浏览量)

    C. Enlarge GCD time limit per test1 second memory limit per test256 megabytes inputstandard input ou ...

  10. 图论--差分约束--POJ 1201 Intervals

    Intervals Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 30971 Accepted: 11990 Descripti ...