别用ESC了,用ctrl-[ 更快捷
 
一. 移动:
    h,j,k,l: 左,下,上,右。
    w: 下一个词的词首。
    e:下一个词的词尾。
    b:上一个词的词首。
    <>: v 模式选中后进行缩进。
二. 跳转:
    %: 可以匹配{},"",(),[]之间跳转。
    H、M、L:直接跳转到当前屏幕的顶部、中部、底部。
    #H:跳转到当前屏的第#行。
    #L:跳转到当前屏的倒数第#行。
    zt: 当前编辑行置为屏顶。
    zz: 当前编辑行置为屏中。
    zb: 当前编辑行置为屏底。
    G:直接跳转到文件的底部。
    gg: 跳转到文件首。
    ():跳转到当前的行首、行尾。
    {}:向上、向下跳转到最近的空行。
    [{:跳转到目前区块开头。
    ]}:跳转到目前区块结尾。
    0: 跳转到行首。
    $: 跳转到行尾。
    2$: 跳转到下一行的行尾。
    #:跳转到该行的第#个位置。
    #G: 15G,跳转到15行。
    :#:跳转到#行。
    f'n':跳转到下一个"n"字母后。
    ctrl+b: 向后翻一页。
    ctrl+f:向前翻一页。
    ctrl+u: 向后翻半页。
    ctrl+d: 向前翻半页。
    ctry+e: 下滚一行。

三. 选择:
    1.V: 选择一行。
    2.^V: 矩形选择。
    3.v3w: 选择三个字符。  

四. 编辑:
    1. 新增:
        i: 光标前插入。
        I: 在当前行首插入。
        a: 光标后插入。
        A: 当前行尾插入。
        O: 在当前行之前插入新行。
        o: 在当前行之后插入新行。
    2. 修改 c(change) 为主:
        r: 替换光标所在处的字符。
        R:替换光标所到之处的字符。
        cw: 更改光标所在处的字到字尾处。
        c#w: c3w 修改3个字符。
        C:修改到行尾。
        ci':修改配对标点符号中的文本内容。
        di':删除配对标点符号中的文本内容。
        yi':复制配对标点符号中的文本内容。
        vi':选中配对标点符号中的文本内容。
        s:替换当前一个光标所处字符。
        #S:删除 # 行,并以新文本代替。
    3. 删除 d(delete) 为主:
        D:删除到行尾。
        X: 每按一次,删除光标所在位置的前面一个字符。
        x: 每按一次,删除光标所在位置的后面一个字符。
        #x: 删除光标所在位置后面6个字符。
        d^: 删至行首。
        d$: 删至行尾。
        dd:(剪切)删除光标所在行。        
        dw: 删除一个单词/光标之后的单词剩余部分。
        d4w: 删除4个word。
        #dd: 从光标所在行开始删除#行。
        daB: 删除{}及其内的内容。
        diB: 删除{}中的内容。
        n1,n2 d:将n1,n2行之间的内容删除。
    4. 查找:
        /: 输入关键字,发现不是要找的,直接在按n,向后查找直到找到为止。
        ?: 输入关键字,发现不是要找的,直接在按n,向前查找直到找到为止。
        *: 在当前页向后查找同一字。
        #: 在当前页向前查找同一字。
    5. 复制 y(yank)为主:
        yw: 将光标所在之处到字尾的字符复制到缓冲区中。
        #yw: 复制#个字到缓冲区。
        Y:相当于yy, 复制整行。
        #yy:表示复制从光标所在的该行往下数#行文字。
        p: 粘贴。所有与y相关的操作必用p来结合粘贴。
        n1,n2 co n3:复制第n1行到第n2行之间的内容到第n3行后面。
    6. 大小写转换:
        gUU: 将当前行的字母改为大写。
        guu: 将当前行的字母改为小写。
        gUw: 将当前光标下的单词改为大写。
        guw: 将当前光标下的单词改为小写。
        a. 整篇大写:
        ggguG
        gg: 光标到文件第一个字符。
        gu: 把选择范围全部小写。
        G: 到文件结束。
        b. 整篇小写:gggUG
    7.  其它:
        J:当前行和下一行合并成一行。
    8.  移动:
        n1,n2 m n3:将n1行到n2行之间的内容移至n3行下。
  9.撤销
    uu

五.退出:
     1. w filename: 保存正在编辑的文件filename
     2. wq filename: 保存后退出正在编辑的文件filename
     3. q:退出不保存。

六.窗口操作:
     1. ctrl+w p: 在两个分割窗口之间来回切换。
     2. ctrl+w j: 跳到下面的分割窗
     3. ctrl+w h: 跳到左边的分割窗。
     4. ctrl+w k: 跳到上面的分割窗。
     5. ctrl+w l: 跳到右边的分割窗。

 
 
 

Vim快捷键分类的更多相关文章

  1. 转: Vim快捷键分类

    Vim快捷键分类 http://www.cnblogs.com/jikey/archive/2011/12/28/2304341.html  一. 移动:    h,j,k,l: 左,下,上,右.   ...

  2. [ZT] Vim快捷键分类

    一. 移动:    h,j,k,l: 左,下,上,右.    w: 下一个词的词首.    e:下一个词的词尾.    b:上一个词的词首.    <>: v 模式选中后进行缩进.二. 跳 ...

  3. [No00004F]史上最全Vim快捷键键位图(入门到进阶)

    史上最全Vim快捷键键位重磅来袭!!学习Linux的朋友看过来啦,你是不是觉得Linux编辑器Vim操作复杂,步骤繁琐呢?Linux工程师是不是想大幅度提升自己的工作效率呢? 经典版        下 ...

  4. vim快捷键总结

    直接上图 原图地址:vim快捷键

  5. vim快捷键笔记【原创】

    Vim zR  全部展开 zM全部合并 vim  快捷键 shift   +  i      (‘I’)    进行编辑 shift   +  4     (‘$’)    跳到行尾 shift   ...

  6. VIM快捷键(转)

    VIM快捷键:光标移动:四个方向   kh 0 l   j  ctrl+f, ctrl+b                 向下翻页,向上翻页  ctrl+d, ctrl+u              ...

  7. 必须熟悉的vim快捷键操作

    转载请表明出处http://www.dabu.info/?p=801 Vim/Vi 没有菜单,只有命令 Vim/Vi 工作模式介绍:插入模式 和  命令模式 是vi的两个基本模式.——插入模式 ,是用 ...

  8. Linux vim快捷键

    1  替换    r  替换  先按r再按要替换的内容 2  按yy复制当前行  按p是粘贴 3 # add at 18-10-25 #-------------------------------- ...

  9. [No00004F]史上最全Vim快捷键键位图(入门到进阶)vim常用命令总结

    在命令状态下对当前行用== (连按=两次), 或对多行用n==(n是自然数)表示自动缩进从当前行起的下面n行.你可以试试把代码缩进任意打乱再用n==排版,相当于一般IDE里的code format.使 ...

随机推荐

  1. js for 循环中的 变量问题。

    今日处理项目中的一个循环,本来就是一个小小的for循环,后来发现该段程序出现了问题,仔细检查代码没有发现其中的错误.无奈只好叫来了老大帮忙.通过在模版中断点调试(该方式只能自己写debugger断点) ...

  2. Android下集成Paypal支付

    近期项目需要研究paypal支付,官网上的指导写的过于复杂,可能是老外的思维和中国人不一样吧.难得是发现下面这篇文章: http://www.androidhive.info/2015/02/andr ...

  3. Javascript自己动手实现getter/setter

    虽然ES5中为我们提供了Object.defineProperty方法来设置getter与setter,但此原生方法使用起来并不方便,我们何不自己来实现一个类,只要继承该类并遵循一定的规范就可以拥有媲 ...

  4. PyQt5应用与实践

    一个典型的GUI应用程序可以抽象为:主界面(菜单栏.工具栏.状态栏.内容区域),二级界面(模态.非模态),信息提示(Tooltip),程序图标等组成.本篇根据作者使用PyQt5编写的一个工具,介绍如何 ...

  5. Linux split拆分文件

    200 ? "200px" : this.width)!important;} --> 介绍 split可以将一个大文件拆分成指定大小的多个文件,并且拆分速度非常的快,拆分一 ...

  6. Android多线程分析之一:使用Thread异步下载图像

    Android多线程分析之一:使用Thread异步下载图像 罗朝辉 (http://www.cnblogs.com/kesalin) CC 许可,转载请注明出处   打算整理一下对 Android F ...

  7. Hello Mybatis 04 使用spring-mybatis

    顺着上一篇,这里介绍下spring-mybatis的配置. 我们使用mybatis去操作数据库的时候,每次都要不停地openSession,closeSession好烦躁哇--这样工作哪里有效率可言! ...

  8. [HIMCM暑期班]第2课:建模

    第二节课从最简单的模型开始入手:七桥问题. 首先,先去wikipedia上了解一些有关七桥问题的背景知识.http://en.wikipedia.org/wiki/Seven_Bridges_of_K ...

  9. 博文写作——摘要&摘要图标

    问题描述: 写博文的时候,一个比较好的习惯就是在博文的开头用简短的文字介绍一下本篇博文的大致内容.在博客园系统里面,如果博文没有在指定的地方添加摘要内容,那么系统会自动截取博文的开始部分作为摘要.如下 ...

  10. EF架构~DefaultValue让我的UnitOfWork更可读

    回到目录 在编程世界里,使用“否定式”不是一件好事,因为它的可读性并不高,但有时,为了让使用者减少代码量,还是使用了双重否定,直到DefaultValue的出现,它改变了这一切,它可以为你的属性设置你 ...