vim命令行模式命令

命令行模式

命令列表,一般格式:[range] action [register/range]

命令功能
:[range]delete/yank [x]删除/拷贝指定范围的行到寄存器x
:[line]pub [x]在指定行后粘贴寄存器x的内容
:[range]copy/t/co [line]拷贝指定范围的行到行line后
:[range]move/m [line]移动指定范围的行到line后
:[range]join连接指定范围的行
:[range]normal {cmd}对指定范围的行执行normal命令,在执行命令之前vim会把光标移到行首
:[range]substitute对指定范围的匹配的行执行替换命令
:[range]global对指定范围的匹配的行执行ex命令

地址及范围符号

符号功能
0,1,$, .0行,1行,最后1行,当前行
‘m ‘< ‘> %包含位置标记m的行, 高亮度起始行,高亮度结束行,整个文件

命令行与插入模式通用的命令

ctrl-w ctrl-u ctrl-v ctrl-k ctrl-r{register}等参考插入模式的功能

其他命令

命令功能
ctrl-o跳转到上次的地方
<ctrl-r><ctrl-w>将光标所在的单词插入到命令行
<ctrl-r><ctrl-a>将光标所在的字符串插入到命令行
q/打开查找命令历史的命令行窗口
q:打开ex命令历史的命令行窗口
ctrl-f从命令行模式切换到命令行窗口
!{cmd}运行外部命令
tab 、ctrl+n、 right方向键正向遍历补全列表
@:重复上次的ex命令
@@运行过一次@:后,用此命令重复上次的ex命令
ctrl-d可以先输入部分ex命令,然后通过此命令输入列出补全列表

定义补全行为

set wildmode=longest,list
帮助:h wildmode

在vi和shell间切换

命令功能
:!{cmd}在shell中执行cmd
:shell启动一个shell,exit后回到vi
ctrl-z挂起vim所属进程
jobs查看当前的作业列表
fg唤醒挂起的作业, man bash 看job control了解更多

把缓冲区当作标准输入输出

命令功能
:read !{cmd}在shell中执行cmd,并把标准输出插入到光标下行
:[range]write !{cmd}在shell中执行cmd,并把[range]的内容作为其标准输入
:[range]!{filter}使用外部程序对指定范围的行进行过滤
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值