vim_快捷键操作_改动

6 篇文章 0 订阅
3 篇文章 0 订阅

删除文本

参数快捷键说明
Nx删除光标之下及之后的 N 个字符
N<Del>删除光标之下及之后的 N 个字符
NX删除光标之前的 N 个字符
Nd {motion}删除动作 {motion} 覆盖的文本
{visual} d删除高亮的文本
Ndd删除 N 行
ND删除至行尾 (及 N-1 后续行)
NJ连接 N-1 行 (删除 <EOL>)
{visual} J连接高亮的行
NgJ同 “J”,但不插入空格
{visual}gJ同 “{visual}J”,但不插入空格
: [range] d [x]删除范围 [range] 覆盖的行 [存入寄存器 x]

复制与移动文本

参数快捷键说明
” {char}在接下来的删除、抽出或放置命令中使用寄存器 {char}
:reg显示 所有寄存器的内容
:reg {arg}显示寄存器 {arg} 的内容
Ny {motion}将动作 {motion} 覆盖的文本抽出至一个寄存器
{visual} y将高亮的文本抽出至一个寄存器
Nyy抽出 N 行至寄存器
NY抽出 N 行至寄存器
Np将一个寄存器的内容放置在光标位置后 (N 次)
NP将一个寄存器的内容放置在光标位置前 (N 次)
N]p同 p, 但调整当前行的缩进
N[p同 P, 但调整当前行的缩进
Ngp同 p, 但将光标留在新文本之后
NgP同 P, 但将光标留在新文本之后

改变文本

参数快捷键说明
Nr{char}以 {char} 替换 N 个字符
Ngr{char}替换 N 个字符并不影响布局
NR进入替换模式 (重复键入的文本 N 次)
NgR进入虚拟替换模式:同替换模式,但不影响布局
{visual}r{char}在可视列块模式下:以 {char} 替换选中文本的每个字符(修改=删除文本并进入插入模式)
Nc{motion}修改动作 {motion} 覆盖的文本
{visual}c修改高亮的文本
Ncc修改 N 行
NS修改 N 行
NC修改至行尾 (及 N-1 后续行)
Ns修改 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 编码
NCTRL-A将光标之上或之后的数值增加 N
NCTRL-X将光标之上或之后的数值减少 N
N<{motion}将动作 {motion} 覆盖的所有行向左移动一个移位宽度
N<<将 N 行向左移动一个移位宽度
N>{motion}将动作 {motion} 覆盖的所有行向右移动一个移位宽度
N>>将 N 行向右移动一个移位宽度
Ngq {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’ 为新值并依据此值调整空白字符
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值