vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)
2024-10-19 05:25:37
vim有许多命令,网上搜有一堆贴子、文章列举出各种功能的命令。
对于“=”、“d”、“y”,我在无意中发现了它们所具有的相同的一些用法,先举以下三个例子:
=nG
dnG
ynG
其中,n为行号。注意行号后面接的是大写字母“G”。而“nG”恰好是光标移动到第n行的命令。
对于“=”,“=nG”的意思就是从当前行到第n行之间进行格式化。常用的一个命令“gg=G”实际上是先执行了“gg”使光标跳转到第一行,然后才是执行了“=G”。如果不写行号,就是到最后一行,于是“gg=G”就可以使当前文件的所有内容格式化了。格式化的tab长度是在.vimrc中设置的。
同样地,对于“dnG”,是对当前行到第n行进行剪切,“ynG”是对当前行到第n行进行复制。
另外,n可以小于当前行数,如当前行如果是70行,执行“y35G”,就是把从70行到第35行的内容进行复制,其实就相当于复制35行到70行的东西。
有了这个,在以下场合非常方便:
假设要复制从25行到78行的内容,这时候可以直接使用“25Gy78G”,而不用去计算一共有多少行,然后执行ndd了。
对于“d”和“y”,还可以这样:
“d^”、“d$”,从光标位置剪切到行首/行尾,“dw”,剪切光标当前位置到单词的第一个字母,等等。
总之,就是把“=”、“d”、“y”与光标移动的操作结合起来使用,从而产生想要的效果。
最新文章
- UICollectionViewCell 网格显示数据
- VBScript使用CDO.Message发送邮件
- Mongodb在Linux下安装及配置
- Yosemite 快速搭建 自带Apache+PHP5.6+MySQL 开发环境
- [转]java动态代理(JDK和cglib)
- protobuf-net
- 新鲜出炉的30个精美的 jQuery &; CSS3 效果【附演示和教程】
- Junit单元测试-环境配置
- Repeater数据绑定
- Latex 编译错误: ! pdfTeX error (ext4): \pdfendlink ended up in different nesting level than \pd fstartlink. 解决方法
- hibernate分页实现
- 如用使用高版本framework,比如支持iOS5及以上的工程中使用Social.framework
- 利用row_number over 函数删除重复记录
- C#读取文件高效方法实现
- 【足迹C++primer】48、函数引用操作符
- Android之RecyclerView入门
- 《高性能javascript》学习总结
- 大白话说Java泛型(二):深入理解通配符
- OpenGL Shader Key Points (1)
- 关于根据模板生成pdf文档,差入图片和加密