删除文本
参数 | 快捷键 | 说明 |
---|---|---|
N | x | 删除光标之下及之后的 N 个字符 |
N | <Del> | 删除光标之下及之后的 N 个字符 |
N | X | 删除光标之前的 N 个字符 |
N | d {motion} | 删除动作 {motion} 覆盖的文本 |
{visual} d | 删除高亮的文本 | |
N | dd | 删除 N 行 |
N | D | 删除至行尾 (及 N-1 后续行) |
N | J | 连接 N-1 行 (删除 <EOL> ) |
{visual} J | 连接高亮的行 | |
N | gJ | 同 “J”,但不插入空格 |
{visual}gJ | 同 “{visual}J”,但不插入空格 | |
: [range] d [x] | 删除范围 [range] 覆盖的行 [存入寄存器 x] |
复制与移动文本
参数 | 快捷键 | 说明 |
---|---|---|
” {char} | 在接下来的删除、抽出或放置命令中使用寄存器 {char} | |
:reg | 显示 所有寄存器的内容 | |
:reg {arg} | 显示寄存器 {arg} 的内容 | |
N | y {motion} | 将动作 {motion} 覆盖的文本抽出至一个寄存器 |
{visual} y | 将高亮的文本抽出至一个寄存器 | |
N | yy | 抽出 N 行至寄存器 |
N | Y | 抽出 N 行至寄存器 |
N | p | 将一个寄存器的内容放置在光标位置后 (N 次) |
N | P | 将一个寄存器的内容放置在光标位置前 (N 次) |
N | ]p | 同 p, 但调整当前行的缩进 |
N | [p | 同 P, 但调整当前行的缩进 |
N | gp | 同 p, 但将光标留在新文本之后 |
N | gP | 同 P, 但将光标留在新文本之后 |
改变文本
参数 | 快捷键 | 说明 |
---|---|---|
N | r{char} | 以 {char} 替换 N 个字符 |
N | gr{char} | 替换 N 个字符并不影响布局 |
N | R | 进入替换模式 (重复键入的文本 N 次) |
N | gR | 进入虚拟替换模式:同替换模式,但不影响布局 |
{visual}r{char} | 在可视列块模式下:以 {char} 替换选中文本的每个字符(修改=删除文本并进入插入模式) | |
N | c{motion} | 修改动作 {motion} 覆盖的文本 |
{visual}c | 修改高亮的文本 | |
N | cc | 修改 N 行 |
N | S | 修改 N 行 |
N | C | 修改至行尾 (及 N-1 后续行) |
N | s | 修改 N 个字符 |
{visual}c | 在可视列块模式下:用键入的文本修改选中文本的每一行 | |
{visual}C | 在可视列块模式下:用键入的文本修改选中各行直至行末 | |
N | ~ | 翻转 N 个字符的大小写并前进光标 |
{visual} ~ | 翻转高亮文本的大小写 | |
{visual} u | 改高亮的文本为小写 | |
{visual} U | 改高亮的文本为大写 | |
g~ {motion} | 将动作 {motion} 覆盖的文本翻转大小写 | |
gu {motion} | 将动作 {motion} 覆盖的文本改为小写 | |
gU {motion} | 将动作 {motion} 覆盖的文本改为大写 | |
{visual} g? | 对高亮的文本做 rot13 编码 | |
g? {motion} | 对动作 {motion} 覆盖的文本做 rot13 编码 | |
N | CTRL-A | 将光标之上或之后的数值增加 N |
N | CTRL-X | 将光标之上或之后的数值减少 N |
N | <{motion} | 将动作 {motion} 覆盖的所有行向左移动一个移位宽度 |
N | << | 将 N 行向左移动一个移位宽度 |
N | >{motion} | 将动作 {motion} 覆盖的所有行向右移动一个移位宽度 |
N | >> | 将 N 行向右移动一个移位宽度 |
N | gq {motion} | 将动作 {motion} 覆盖的所有行进行排版到 ’textwidth’ 宽 |
:[range] ce[nter] [width] | 将范围 [range] 包括的行居中对齐 | |
:[range] le[ft] [indent] | 将范围 [range] 中的行靠左对齐 (使用 [indent] ) | |
:[range] ri[ght] [width] | 将范围 [range] 中的行靠右对齐 |
复杂改动
参数 | 快捷键 | 说明 |
---|---|---|
N | ! {motion}{command} <CR> | 将动作覆盖的行用命令 {command} 过滤 |
N | !! {command} <CR> | 将 N 行用命令 {command} 过滤 |
{visual}! {command} <CR> | 将高亮的行用命令 {command} 过滤 | |
:[range] ! {command} <CR> | 将范围 [range] 包括的行用命令 {command} 过滤 | |
N | ={motion} | 将动作覆盖的行用 ‘equalprg’ 过滤 |
N | == | 将 N 行用 ‘equalprg’ 过滤 |
{visual}= | 将高亮的行用 ‘equalprg’ 过滤 | |
:[range] s[ubstitute]/{pattern}/{string}/[g][c] | 以 {string} 替代范围 [range] 包括的行中的 {pattern};与 [g] 共用,替代所有的出现的 {pattern};与 [c] 共用,确认每一次替代 | |
:[range] s[ubstitute] [g] [c] | 以新的范围和选项重复上一 次的 “:s” 命令 | |
& | 不带选项在当前行上重复上一次的 “:s” 命令 | |
:[range] ret[ab][!] [tabstop] | 置 ‘tabstop’ 为新值并依据此值调整空白字符 |