Vim快捷键

快捷键功能
0行首
$行尾
ctrl + #查找光标上一个
ctrl + n查找光标下一个
>>缩进
==自动缩进

移动

[number]+f+[char] 光标移动到右边第number个字符char的位置 (t 左边)

gg文件首
G文件末

替换

c + i + [opt] : 删除由opt包裹的内容

c + a + [opt] : 删除由opt包裹的内容 ,包括当前的包裹行

wword 词
ssentence 句
pparagraph 段
ttag(HTML/XML) 标签
[或]由[]包裹的部分
(或)由()包裹的部分
<或>由<>包裹的部分
{或}由{} 包裹的部分
"由""包裹的部分
'由''包裹的部分
`由``包裹的部分

命令行模式

:3,5d删除第3行到第五行的内容
:. ,5d删除当前行到第5行的内容

我们发现在选中一个选区后,按下: ,在左下角会出现 <,> 的字样,根据前面的列表知道 他们代表的是被选中的高亮选区。

移动

{range} +m +{address}

例如 :3,5m1 将3,5的内容移动到第1行下面。

除了使用. 来作为相对行号以外,命令模式中还有其他常用符号,这里列举一些供大家参考:

  • .: 当前行

  • $: 文件末尾

  • 0: 虚拟行,位于文件第一行的上方

  • 1: 文件第一行

  • 'm: 包含标记m的行

  • <: 高亮选区的起始行

  • >: 高亮选区的结尾行

  • %: 整个文件,相当于 :1,$

介绍了这些操作符之后,如果我们需要删除整个文件,那么有这么几种方法

  • 方法1:普通模式下,使用 0 跳转到第一行, 然后使用dG 第一行到最后一行的内容

  • 方法2: 命令模式下,使用 :1,$d 删除第一行到最后一行的内容

  • 方法3: 命令模式下,使用 :%d 删除所有

命令行模式下使用普通模式的命令

它使用的方式为:range + normal + operator ,它支持范围操作,表示我们将要针对某个范围来执行普通模式的操作

针对这个例子,首先要构造一个可以使用.命令的操作,即我们在首行使用A; 在行尾添加分号,接着配合命令模式的范围,加上2,$normal. 表示我们将要从第二行到尾行来执行. 命令

运行shell 命令

在vim的命令模式中,% 代表的是当前文件名,在运行某些可以传入文件名作为参数的命令时,可以使用它,例如我要执行当前的Python代码时可以使用 :!python %

使用 write 和read 命令重定向vim缓冲区内容

在vim配合shell命令使用的时候有时候shell会产生大量是输入或者需要一定的输出,那么就可以使用 write 和 read 来配合shell使用。

  • read:vim从shell产生的输出中读取内容写入缓冲区

  • write: vim将缓冲区的内容写入到shell中,作为shell的输入

例如某个文件中有大量的Python代码,但是我只想执行部分,那么可以配合write使用,例如3,5write !python 执行文件中3-5行的Python代码,或者配合可视模式,执行选中的代码

再比如,我现在需要获取当前目录下有多少个文件和目录,并且按照文件名顺序排列,就可以使用 :read !ls|sort

利用标签,快速跳转

vim中提供了标签的方式进行跳转,事先可以在对应位置设置标签,后面通过标签访问该标签所在位置

可以使用m{a-z} 来在任意位置设置标记,而后使用`{a-z}来回到对应标记位置。该命令可以回到之前设置标签时光标所在行和列。

快速选中光标所在单词进行搜索

这里主要为了介绍 *这个命令,当光标处于目标单词的时候,按下 * 将直接进行搜索。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值