zoukankan      html  css  js  c++  java
  • 【最简单的vim教程】vim学习笔记-基础操作

    说明

    • C-字母 = Ctrl + 字母
    • char = 任意字符

    开始编辑

    insert

    按键 功能 说明
    i(I) insert 当前位置插入(当前行前)
    a(A) append 当前字符后面插入(当前行后)
    o(O) open a line below 当前行的下面(当前行上面)

    模式

    模式 功能 说明
    普通模式(ESC) normal 操作和移动
    插入模式(i,a,o) insert 编辑
    命令模式(:) command 执行命令
    可视模式(v,V,C-v) visual 选择

    可视模式

    visual

    按键 说明
    v 选中字符
    V 选中当前行
    C-v 方块选择

    插入模式技巧

    insert

    按键 功能 说明
    C-h 删除 上一个字符
    C-w 删除 当前单词
    C-u 删除 当前行(终端可使用)
    C-a 移动到开头 终端
    C-e 移动到结尾 终端

    切换insert和normal模式

    按键 功能 说明
    C-[ 切换到normal 代替ESC
    C-c 切换到normal 代替ESC
    gi 跳转到上一次编辑的位置操作

    普通模式

    normal

    快速移动

    按键 功能 说明
    hjkl 移动 上下左右
    w(W) 移动 下一个单词开头
    e(E) 移动 下一个单词结尾
    b(B) 移动 上一个单词开头

    大写以空白格为分隔符

    行间搜索移动

    按键 功能 说明
    f{char}(F) 跳转 跳转到char上(往前搜)
    t{char} 跳转 跳转到char前一个字符
    ; or , 继续 继续查找

    水平移动

    按键 功能 说明
    0 移动 移动到行首
    $ 移动 移动到行尾

    页面移动

    按键 功能 说明
    gg 移动 文件开头
    G 移动 文件结尾
    C-o 移动 快速返回上一位置
    H/M/L 移动 屏幕开头/中间/尾
    C-u 翻页
    C-f 翻页
    zz 翻页 中间

    删除命令

    按键 功能 说明
    {number}x 删除 删除一个字符
    diw delete 删除一个单词(不删除空格)
    dw 删除word 删除一个单词
    {number}dd 删除 删除当前行
    dt{符号} 删除 删除符号之间的内容
    d 删除 直接删除选中部分

    快速修改

    按键 功能 说明
    r(R) 替换 替换一个字符(替换后面一个字符)
    c{任意命令} 改变 删除然后进入i
    caw 改变 删除并改变一个单词
    s(S) 替换 删除当前字符,然后进入i(删除整行)
    u 回退 撤销
    C-r 回退 前进

    查询

    按键 功能 说明
    / or ? 查询
    n or N 移动 下 /上
    * / # 移动 前 / 后

    Text Object

    [ number ]< command >[ text object ]

    按键 功能
    viw 选中一个单词
    vaw 选中一个单词(周围)
    caw 修改一个单词
    ci+符号 删除符号内的内容
    ...

    寄存器

    复制粘贴

    normal

    按键 功能
    y(yy) 复制(复制一行)
    p 粘贴
    ” + y 复制到系统剪切板

    insert

    按键 功能
    C-v 粘贴

    按键 功能
    q{char} 录制宏,并存在a中
    q 结束录制宏
    :normal @{char} 批量恢复录制
    @{char} 恢复录制

    示例:

    []中间为示例操作流程

    • q{char}

    [

    • I{char}当前行前加入char (例子)
    • A{char}当前行后加入char(例子)

    ]

    • q 结束录制
    • 恢复录制@a
    • 行选需要操作的文本
    • :normal @a
  • 相关阅读:
    hdu 1116 Play on Words
    hdu 1856 More is better
    跟随鼠标跑
    asp.net实现数据流文件下载
    在ASP.NET程序中集成更好的下载体验
    request.ContentType的可取值
    multipart formdata boundary 说明
    ASP.NET中实现多文件上传(普通)
    读取XML文件中的某个节点的某个属性
    获取请求的Headers部分
  • 原文地址:https://www.cnblogs.com/huanhao/p/learnvim.html
Copyright © 2011-2022 走看看