Vim学习(一)



  • Vim学习笔记

    • 三种模式

      • <b>命令模式</b>:
        进入vim后自动为命令模式,输入字符为命令,但支持命令较少。
      • <b>输入模式</b>:
        ESC退出
      • <b>底线命令模式</b>:
        在最底部输入命令,ESC退出
    • 命令

      • 启动

        命令
        vim xxx.txt 创建或修改文件
      • 移动

        命令
        h/pgLeft 左移一位
        j/pgDown 下移一位
        k/pgUp 上移一位
        l/pgRight 右移一位
        nh/j/k/l 移动n位
        + 移动到非空格行的下一行
        - 移动到非空格行的上一行
        n<Space> 向右移动n位
        0/<Home> 移动到当行首位
        $/<End> 移动到当行末尾
        H 移动至当前范围首行
        M 移动至当前范围中间行
        L 移动至当前范围底行
        G 移动至文件末尾行
        gg 移动至文件首行
        nG 移动至文件第n行
        n<Enter> 向下移动n行
        w 下一单词
        W 下一单词(将连续的字符视为一个单词)
        e 词尾
        E 词尾(将连续的字符视为一个单词)
        b 上一单词
        B 上一单词(将连续的字符视为一个单词)
      • 搜索替换

        命令
        /word 向下搜索word
        ?word 向上搜索word
        n 向后重复搜索命令
        N 向前重复搜索命令
        :m,ns/word/replace/g 在m到n行中用replace替换word
        :1,$s/word/replace/g或 :%s/word/replace/g 从1到末尾中用replace替换word
        :1,$s/word/replace/gc或 :%s/word/replace/gc 与6一样,但是会有提示是否替换
      • 删除

        命令
        x 向后删除一位
        X 向前删除一位
        nx/X 删除n位
        dd 删除整行
        ndd 向下删除n行
        dG 删除当前行到文档末尾行的所有行
        dnG 删除当前行到文档第n行的所有行
        d0 删除光标所在到当前行首的所有字符
        d$ 删除光标所在到当前行末尾的所有字符
      • 复制

        yy 复制整行
        nyy 向下复制n行
        y0 复制光标所在到当前行首的所有字符
        y$ 复制光标所在到当前行末尾的所有字符
        yG 复制当前行到文档末尾的所有行
        ynG 复制当前行到文档第n行的所有行
      • 合并粘贴

        J 将当前行和下一行合并
        p 在当前行的下一行粘贴
        P 在当前行的上一行粘贴`
        nc 重复n次删除
      • 操作

        u 撤销
        <Ctrl>r 重做
        . 重复上个操作
        i,I 进入输入模式, i为光标所在处输入, I 为在目前所在行的第一个非空格符处开始输入
        a,A 进入输入模式,a为从光标所在的下一个字符开始输入,A为从光标所在行的最后一个字符处开始输入
        o, O 进入输入模式,o 为在光标所在的下一行处输入, O 为在光标所在处的上一行输入
        r, R r 替换光标所在的字符一次,R会一直替换光标所在的字符,直到按下 ESC 为止
        <ESC> 退出
        :w 退出vim
        :w! 强制保存
        :q 退出vim
        :wq 退出并保存
        ZZ 自动判断是否保存并退出
        :w [xxx] 另存为
        :r [xxx] 在光标后加入xxx的数据
        :m,n w[xxx] 将m到n行的内容另存为

 

Copyright © 2018 bbs.dian.org.cn All rights reserved.

与 Dian 的连接断开,我们正在尝试重连,请耐心等待