vim常见操作

Posted sole_cc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vim常见操作相关的知识,希望对你有一定的参考价值。

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

:rangeleft [margin]

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

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

如 1,3 left 5

:rangecenter [width]

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

:rangeright [width]

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

%!column -t

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

 

以上是关于vim常见操作的主要内容,如果未能解决你的问题,请参考以下文章

2字符串常见函数操作

Linux常见命令vi,vim命令

sh VIM常见操作

Linux实战常见基础操作之vim编辑文件内容

linux进阶之路vim命令常见操作(附vim键盘图,建议收藏)

linux进阶之路vim命令常见操作(附vim键盘图,建议收藏)