vim 操作快捷键

vim操做笔记

阅读《vim使用技巧》记录笔记

  • vim -u NONE -N
    -u NONE 标志让 Vim 在启动时不加载你的vimrc,这样,你的定制项就不会生
    效,插件也会被禁用。当用不加载vimrc 文件的方式启动时,Vim 会切换到vi 兼
    容模式,这将导致很多有用的功能被禁用,而-N 标志则会使能‘nocompatible’ 选
    项,防止进入vi 兼容模式

  • >G 命令会增加从当前行到文档末尾处的缩进层级

  • .微型宏,重复上次修,一键移动,一键执行

  • 复合等效命令
    Cc$
    scl
    I^i
    S^c
    A$a
    oA CR
    Oko
  • f/F{char查找, ;重复查找操作,,反向查找

  • t/T{char}查找, ;重复查找操作,,反向查找,方标位于所要查找字符前一个

  • & 重复上次的:substitute 命令

  • * 命令,此命令可以查找当前光标下的单词,一是光标会跳到 下一个 匹配项上,二是所有出现这个词的地方都会被高亮显示出来。

  • daw删除整个单词

  • C-aC-x 命令分别对数字执行加和减操作。在不带次数执行时,它们会逐个加减,但如果带一个次数前缀,那么就可以用它们加减任意整数。例如,如果我们把光标移到字符5 上,执行10<C-a>就会把它变成15。但是如果光标不在数字上会发生什么?文档里说, C-a 命令会“把当前光标之上或之后的数值加上 [count]”(因此,如果光标不在数字上,那么C-a 命令将在当前行正向查找一个数字,如果找到了,它就径直跳到那里。我们可以利用这一点简化操作。

  • Vim 的语法只有一条额外规则,即当一个操作符命令被连续调用两次时,它会 作用于当前行。所以dd 删除当前行,而>> 缩进当前行。gU 命令是一种特殊情况,我们既可以用gUgU ,也可以用简化版的gUU 来使它作用于当前行

  • 命令用途
    c修改
    d删除
    y复制到寄存器
    g~反转大小写
    gu转为小写
    gU转为大写
    >增加缩进
    <减小缩进
    =自动缩进
  • 命令用途
    C-h删除前一个字符
    C-w删除前一个单词
    C-u删除到行首
  • 命令用途
    ESC切换到普通模式
    C-[切换到普通模式
    C-o切换到插入-普通模式
  • 插入模式下, C-r+register,粘贴寄存器内容C-r + C-p + register按原意插入文本,不包含任何格式

  • C-r + = 表达式寄存器,可用于计算

  • C-v{123} 以十进制字符编码插入字符

  • R 普通模式进入替换模式,按照字符替换, gR按照字符实际占用的宽度替换, r + 字母替换一个字母

  • 命令用途
    v激活面向字符的可视模式
    V激活面向行的可视模式
    C-v激活面向列块的可视模式
    gv重选上次高亮区
  • C-v时,不能用ia进入到插入模式,需要使用IA

  • o 在可视模式下,切换活动端

  • 命令用途
    :[range]delete[x]删除指定范围内的行[到寄存器x中]
    :[range]yank[x]复制指定范围内的行[到寄存器x中]
    :[line]put[x]在指定行后粘贴寄存器x中的内容
    :[range]copy(:t)[address]指定范围内的行拷贝到{address}指定行之下
    :[range]move(:m)[address]指定范围内的行移动到{address}指定行之下
    :[range]join连接指定范围内的行
    :[range]normal{commands}对指定范围内的每一行执行普通模式命令{commangs}
    :[range]substitute/{pattern}/{string}/[flags]把指定范围内出现{pattern}的地方替换为{string}
    :[range]global/{pattern}/[cmd]对指定范围内匹配{pattern}的所有行,执行Ex命令{cmd}
  • [range]范围格式,start, end.代表当前行,$代表最后一行,%代表所有行

  • 命令用途
    1文件第一行
    $文件最后一行
    0虚拟行,位于文件第一行上方
    .光标当前行
    'm标记m所在行
    '<高亮区起始位置
    '>高亮区结束为止
    %所有行,等价于1,$
  • . 命令不会重复由 Vim 命令行中做出的修改。作为替代,我们可以用@:来重复上次的 Ex 命令

  • 在执行指定的普通模式命令之前,Vim 会先把光标移到该行的起始处。因此在执行时,用不着担心光标的位置。:normal命令则让我们可以把具有强大表现力的 Vim 普通模式命令与具有大范围影响力的 Ex 命令结合在一起

  • Ex命令行,C-d输出补全列表,tab列表中选取,shift+tab反向选取,先按C-d,设置set wildmode=longest,list后,tab则按照bash shell方式工作

  • C-r + C-w命令行插入光标下单词,C-r + C-a命令行插入光标下字符串

  • set history=200设置Ex命令行历史记录条数

  • 命令用途
    q/打开查找命令历史的命令行窗口
    q:打开ex命令历史的命令行窗口
    C-f从命令行模式切换到命令行窗口
  • 配置文件中添加cnoremap <C-p> <Up>,cnoremap <C-n> <Down>可实现在命令历史中进行上下切换

  • :shell启动shell交互会话,:exit退出,如果执行单句指令直接!{cmd}即可

  • \c\C控制查找时是否强制严格按照大小写查找

  • \v\V控制查找是按照正则表达式,还是按照纯文本查找

  • 分屏 <C-w> + s 水平 ,<C-w> + v垂直分割

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值