原文地址:Vim实战指南(七):编程偏好配置
在Vim实战指南(六):环境偏好配置中,我们介绍了如何设置环境偏好配置。针对程序编写,vi还有专门的编程偏好配置,如缩进、ctags等。
自动缩进
编程自然要打开自动缩进,可以让你在换行的时候拥有和上一行相同的缩进:
:set autoindent
你可以将这条命令保存在你的.exrc文件中。
手动缩进
在编辑模式下,你可以通过Ctrl+T手动增加本行缩进,Ctrl+D手动减少本行缩进。
在命令行模式下,你可以通过>>手动增加本行缩进,<<手动减少本行缩进。
感觉缩进有点大?因为默认的缩进是8个字符,你可以通过下面的配置选择你偏好缩进字符数:
:set shiftwidth=4
这将使你的默认缩进变为4个字符,你同样可以将这条命令保存到你的.exrc文件中。
事实上,vi非常智能,当shiftwidth=8时,vi实际上插入的是tab(因为默认的tab就是8个字符),而当shiftwidth不为8时,vi实际上插入的是空格符。
同样,你也可以将tab设置为4个字符:
:set tabstop=4
不过推荐使用空格而不是tab,为什么呢?试试写写python代码。
括号对的跳转技巧
在编程中,你经常会希望找到括号对,(),{},[],<>等。在命令行模式下,你可以通过使用%键来快速在括号对之间切换。
这里智能的vi也有一个小技巧,事实上你不需要将光标切好移动到括号上,只要在当前行光标位置之前有括号,那么vi将自动跳转过去。
你也可以打开高亮匹配括号对:
:set showmatch
这样当你输入右括号时,光标会暂时跳转到左括号处闪烁。
ctags
编写C/C++时,在多个文件中跟踪变量和函数是不是特别麻烦?Unix提供了ctags工具来帮助跳转。
首先需要建立tags文件,在Unix命令行中输入:
$ ctags -R *
将为当前目录下所有文件创造tags,-R是递归的意思。
建立好tags文件后,你可以在vi中输入变量名来查找tag,如:
:tag csprojectedu
将查找包含变量名为csprojectedu的文件。
你也可以在编辑模式下,在函数或变量上面按下Ctrl+],光标将自动跳转到他们的定义处。
Summary
本文介绍了vi中的编程偏好配置,通过自定义你的编程偏好,能让你节省大量的开发时间!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。