# 复制粘贴

    p                   粘贴到光标后
    P                   粘贴到光标前
    v                   开始标记
    y                   复制标记内容
    V                   开始按行标记
    CTRL-V              开始列标记
    y$                  复制当前位置到本行结束的内容
    yy                  复制当前行
    Y                   复制当前行，同 yy
    yiw                 复制当前单词
    3yy                 复制光标下三行内容
    v0                  选中当前位置到行首
    v$                  选中当前位置到行末
    viw                 选中当前单词
    vib                 选中小括号内的东西
    vi)                 选中小括号内的东西
    vi]                 选中中括号内的东西
    viB                 选中大括号内的东西
    vi}                 选中大括号内的东西
    vis                 选中句子中的东西
    vab                 选中小括号内的东西（包含小括号本身）
    va)                 选中小括号内的东西（包含小括号本身）
    va]                 选中中括号内的东西（包含中括号本身）
    vaB                 选中大括号内的东西（包含大括号本身）
    va}                 选中大括号内的东西（包含大括号本身）
    gv                  重新选择上一次选中的文字
    :set paste          允许粘贴模式（避免粘贴时自动缩进影响格式）
    :set nopaste        禁止粘贴模式
    "?yy                复制当前行到寄存器 ? ，问号代表 0-9 的寄存器名称
    "?d3j               删除光标下三行内容，并放到寄存器 ? ，问号代表 0-9 的寄存器名称
    "?p                 将寄存器 ? 的内容粘贴到光标后
    "?P                 将寄存器 ? 的内容粘贴到光标前
    :registers          显示所有寄存器内容
    :[range]y           复制范围，比如 :20,30y 是复制20到30行，:10y 是复制第十行
    :[range]d           删除范围，比如 :20,30d 是删除20到30行，:10d 是删除第十行
    ddp                 交换两行内容：先删除当前行复制到寄存器，并粘贴
    "_[command]         使用[command]删除内容，并且不进行复制（不会污染寄存器）
    "*[command]         使用[command]复制内容到系统剪贴板（需要vim版本有clipboard支持）