Atlas's Blog

技术、生活、思考

Vim笔记

发布于 2021-11-11 22:32

Vim笔记

  1. 在vi中添加文本
    a    在光标后插入文本
    A    在当前行尾插入文本
    i    在光标前插入文本
    I    在当前行首插入文本
    o   在当前行的下边插入新行
    O  在当前行的上边插入新行
    s   删除当前字符并进入插入模式
    S   删除当前行并进入插入模式 
    :r file    读入文件file内容,并插在当前行后
    :nr file   读入文件file内容,并插在第n行后
    escape    回到命令模式
    ^v char    插入时忽略char的指定意义,这是为了插入特殊字符

  2. 在vi中删除文本
    x    删除光标处的字符,可以在x前加上需要删除的字符数目
    nx    从当前光标处往后删除n个字符
    X    删除光标前的字符,可以在X前加上需要删除的字符数目
    nX    从当前光标处往前删除n个字符
    dw    删至下一个字的开头
    ndw    从当前光标处往后删除n个字
    dG    删除行,直到文件结束
    dd    删除整行
    ndd    从当前行开始往后删除
    db    删除光标前面的字
    ndb    从当前行开始往前删除n字
    :n,md    从第m行开始往前删除n行
    d或d$    从光标处删除到行尾
    dcursor_command   删除至光标命令处,如dG将从当前行删除至文件的末尾
    ^h或backspace   插入时,删除前面的字符
    ^w    插入时,删除前面的字

  3. 在vi中修改文本
    每个命令前面的数字表示该命令重复的次数
    rchar    用char替换当前字符
    R text escape   用text替换当前字符直到换下Esc键
    stext escape   用text代替当前字符
    S或cctext escape 用text代替整行
    cwtext escape   将当前字改为text
    Ctext escape   将当前行余下的改为text
    cG escape   修改至文件的末尾
    ccursor_cmd text escape 从当前位置处到光标命令位置处都改为text

  4. 连接行
    J    将下一行连接到当前行的末尾
    nJ    连接后面n行
  5. 翻页命令
    整页:
            ctrl-f 向前一页 forword
            ctrl-b 向后一页 backward
    半页:
           ctrl-d 向前半页 down
           ctlr-u 向后半页 up
    一行:
         ctrl-e 向下滚一行
         ctrl-y 向上滚一行
    滚动屏幕:
         zz 让光标所杂的行居屏幕中央
         zt 让光标所杂的行居屏幕最上一行 t=top
         zb 让光标所杂的行居屏幕最下一行 b=bottom