博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vim常见操作
阅读量:4121 次
发布时间:2019-05-25

本文共 1032 字,大约阅读时间需要 3 分钟。

vim的一些常见有用操作,记录在此,便于遗忘的时候查看,后续发现新的好用操作,也会不断补充

1 替换

:{作用范围}s/{目标}/{替换}/{替换标志}

%s/foo/bar/g

会在全局范围(%)查找foo并替换为bar,所有出现都会被替换(g

:s/foo/bar/g

当前行查找foo并替换为bar

:5,12s/foo/bar/g

在5-12行内替换

:'<,'>s/foo/bar/g

选区,在Visual模式下选择区域后输入:,Vim即可自动补全为 :'<,'>。

:.,+2s/foo/bar/g

当前行.与接下来两行+2

替换标志g表示global,全局

替换标志i表示大小写不敏感,替换标志I表示大小写敏感

:%s/foo/bar/i

等效于查找模式中的\c(不敏感)和\C(敏感)

:%s/foo\c/bar

替换标志c表示需要确认

:%s/foo/bar/gc

2 缩进

v进入visual模式,进行文本选择

V进入visual line模式,进行行选择

ctrl+v进入visual block模式,进行块选择

先选中,在索引:选择文本/行/块之后,使用shift+>进行缩进

直接使用行号进行索引::5,10<  表示第五行到第十行向左缩进一个tab

3 在vim中如何使用外部命令

You can also just type (without visual mode):

:<range>!commond

4 对齐

自动对齐代码可以试下此命令:gg=G

:{range}left [margin]

{range}指需要对哪些行进行操作;

[margin]指最终该行首字符据屏幕左边缘的距离,若不指定,则默认紧靠屏幕左边缘。

如 1,3 left 5

:{range}center [width]

 [width] 是一个可选项,用来确定要居中的行的宽度。如果没有指定 [width],则默认使用 'textwidth' 的值。(如果'textwidth' 是 0,则默认为 80)

:{range}right [width]

[width] 是一个可选项,用来确定要右对齐的行的宽度。如果没有指定 [width],则默认使用 'textwidth' 的值。(如果'textwidth' 是 0,则默认为 80)

%!column -t

使用外部命令column -t命令来实现对齐功能(默认使用空格分割每行中的各个部分,并且使用左对齐)

 

转载地址:http://ngspi.baihongyu.com/

你可能感兴趣的文章
树莓派Zero W初始化配置
查看>>
一种取得BSTR内容字节数的写法
查看>>
Win32环境下两种用于C++的线程同步类(上)
查看>>
Win32环境下两种用于C++的线程同步类(下)
查看>>
“对口答辩”随想
查看>>
初探google toolbar上关键词标记的实现方式
查看>>
用内联汇编调虚函数 理解VTABLE原理
查看>>
感谢周杰伦
查看>>
今年的“武林外传”会是谁呢?
查看>>
我为什么喜欢用WIN2000而非WINXP
查看>>
设想一种防U盘病毒的方法,不知道是否管用
查看>>
我的QQ终于能传文件了
查看>>
应用程序上屏蔽FLASH控件的右键菜单并获得左键消息
查看>>
基于动态代码生成技术的动态对象工厂
查看>>
对《基于动态代码生成技术的动态对象工厂》一文的补充
查看>>
越帮越忙的珊瑚虫快捷键
查看>>
为什么需要override关键字
查看>>
结合短路法和逗号表达式,代替if和三目运算符
查看>>
一些匿名语言元素
查看>>
深入C++的new
查看>>