美文网首页
VIM学习笔记

VIM学习笔记

作者: KevinLive | 来源:发表于2017-04-28 16:25 被阅读9次

    原文地址:LoveDev

    VIM == "编辑器之神"
    

    移动

    单词移动

    Command Alias
    W w 移动到下一个单词开头
    E e 移动到下一个单词结尾
    B b 倒退到上一个单词开头

    整行移动

    Command Alias
    0 移动到行首
    $ 移动到行末
    + 移动到下一行开头
    - 移动到上一行开头

    根据行号来移动

    Command Alias
    Ctrl+g 显示当前行信息
    nG 转至第n行
    G 转至文本末尾
    gg 移至文本开头

    行位置插入

    Command Alias
    A 在一行的结尾处追加
    I 在一行的开头处插入
    o 在光标所在位置的下一行打开新行插入
    O 在光标所在位置的上一行打开新行插入

    tips1:10I*<Esc>先输入10,然后输入i,接着输入*号,最后按<Esc>

    这样就可以在一行开头输入十个*

        

    tips2:同样,5o###<Esc>先输入5,然后输入o,接着输入###,最后按<Esc>

    这样就可以在下列5行中每一行开头插入###

       

    插入

    字符位置插入

    Command Alias
    i 在光标之前插入
    a 在光标之后追加

    删除

    字符删除

    Command Alias
    x 删除光标所在处字符
    X 删除光标所在前字符

    单词删除

    Command Alias
    dw 删除到下一个单词开头
    de 删除到本单词末尾
    dE 删除到本单词末尾包括标点在内
    db 删除到前一个单词
    dB 删除到前一个单词包括标点在内

    行删除

    Command Alias
    dd 删除一整行
    3dd 删除三整行
    D d$ 删除光标位置到本行结尾
    d0 删除光标位置到本行开头

    复制

    行复制

    Command Alias
    y^ 复制至行首
    y$ 复制至行尾
    yy 复制整行
    yH 从当前行复制到屏幕顶端
    yL 从当前行复制到屏幕低端

    单词和字符复制

    Command Alias
    ynl 向右复制n个字符
    ynh 向左复制n个字符
    ynw 向前复制n个单词
    ynb 向后复制n个单词

    修改

    字符替换

    Command Alias
    r 单个字符替换
    R 连续替换
    ~ 更改大小写

    单词修改

    Command Alias
    cw 从光标处修改到单词结尾
    cb 从光标处修改到单词开头

    行修改

    Command Alias
    c$ 从光标修改到本行末尾
    C 功能同上
    c0 从光标修改到本行开头
    cc 删除整行从头修改
    S 功能同上
    s 删除光标所在位置的字符,然后插入

    合并行

    多行合并成一行

    AAAAA
    BBBBB
    CCCCC

    合并为:
    AAAAA BBBBB CCCCC

    方法1: normal状态下 3J 其中的3是范围,可以是书签或者搜索位置等方式实现,J为合并
    注: 如果改为3gJ的话,则合并时各行没有空白AAAAABBBBBCCCCC, 下面方法类似,不再重复这两种合并方式的区别.

    方法2: 命令状态下 :1,3 join 或 :1,3 j

    方法3: 传统一点的,替换换行符的方式,为避免最后一行也被换掉,范围缩小了,命令状态下 :1,2s/\n/ /

    隔行合并

    AAAAA
    BBBBB
    CCCCC
    DDDDD
    合并为:

    AAAAA BBBBB
    CCCCC DDDDD
    方法1: 借用一下宏录制功能, normal状态下 qaJjq 实现录制, 然后在合适的区域重复执行n遍,这里2遍即可,normal状态下2@a

    方法2: 命令状态下 :1,4g/^/ join 增加了g过滤后,合并变成了隔行处理

    恢复

    Command Alias
    u 撤消上次命令
    U 恢复整行
    ctrl+r 重做
    . 重复
    e! 全文恢复

    相关文章

      网友评论

          本文标题:VIM学习笔记

          本文链接:https://www.haomeiwen.com/subject/sacazttx.html