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. python基础-json、pickle模块

    json.pickle区别 总结: """ json: 1.不是所有的数据类型否可以序列化,序列化返回结果为字符串 2.不能多次对同一文件序列化 3.json数据可以跨语 ...

  2. [XML] XML格式【有道翻译】API 的数据转化输出

    <?php header("content-type:text/html;charset=utf-8"); //echo "飞飞仔超级智障"; $cont ...

  3. 2020年必须掌握的硬核技能k8s

    Kubernetes 是一个软件系统,使你在数以万计的电脑节点上运行软件时就像 所有节点是以单个大节点一样, 它将底层基础设施抽象,这样做同时简化了应用开发.部署,以及对开发和运维团队的管理. Kub ...

  4. swoole学习--登录模块

    使用swoole+thinkphp6.0+redis 结合开发的登录模块,做完之后有几点感悟: 1.不要相信任务数据,包括请求的外部接口,特别是超时者部分,尽可能的交给task完成. 2.原来可以在入 ...

  5. 2019-2020-1 20199325《Linux内核原理与分析》第九周作业

    第九周作业要求: 理解Linux系统中进程调度的时机,可以在内核代码中搜索schedule()函数,看都是哪里调用了schedule(),判断我们课程内容中的总结是否准确: 使用gdb跟踪分析一个sc ...

  6. 数据库SQL---数据库、基本表、视图、索引的定义、修改、删除

    1.SQL(结构化查询语言)的组成:数据定义语言DDL.数据操纵语言DML.数据控制语言DCL.其他. 2.SQL语言的功能: 1)数据查询:SELECT 2)数据定义:CREATE   DROP  ...

  7. CentOS7编译安装NodeJS

    概述 在CentOS7下采用编译NodeJS二进制源码包的方式安装NodeJS 下载NodeJS安装包 你可以先下载NodeJS二进制源码安装包文件然后上传到CentOS系统,也可以通过wget命令直 ...

  8. 中国AI觉醒 阿里王坚:云智能将成为大趋势

    2019独角兽企业重金招聘Python工程师标准>>> <麻省理工科技评论>新兴科技峰会EmTech China于北京召开.大会中,其中一项热门的讨论便是:中国和美国的科 ...

  9. C语言编程入门题目--No.13

    题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身.例如:153是一个"水仙花数",因为153= ...

  10. C++课程设计详解-12306的模拟实现

    目录 设计思路... 3 思路分析:.... 3 数据组织:.... 4 具体功能实现过程... 4 管理端具体功能实现:.... 4 用户端具体功能实现:.... 5 调试截图和调试过程中遇到的问题 ...