例如,为了呈现:
while (head == tail) { head++; a[head] = 0 }转到
while (head == tail)
{
head++;
a[head] = 0
}发布于 2011-05-06 08:55:04
(首先,在最后一个}之前需要一个分号,这样才能使它成为有效的C;分号应该被认为是C中的终止语句,而不是分隔语句。除非添加分号,否则智能自动缩进可能无法正常工作。)
Vim的=命令(:help =)可以通过自动缩进程序运行代码,尽管它需要一些配置。基本思想是将equalprg选项(:help 'equalprg')设置为应用您想要的缩进的程序,然后在命令模式下使用=来运行它。=的工作方式类似于其他基于Vim运动的命令,如d和y;例如,==缩进当前行,=ap缩进段落,或者使用可视范围:ggVG=缩进整个文件。
现在,默认情况下,equalprg设置为空字符串,它只执行构建在Vim中的基本每行缩进。要做你想做的事情,最好的工作工具是indent:
缩进
indent为各种缩进样式提供了大量选项;默认情况下,它使用GNU编码样式,但您可能希望定制它以适应项目的首选项。详情请参见人缩进。要在equalprg值中包含空格,需要用反斜杠引用它们,因此,例如,如果您想使用K&R缩进样式,则使用:set equalprg=indent\ -kr。
您还可以让'=‘命令根据文件类型选择适当的缩进,方法是在vim中使用:filetype indent on类型的:help filetype来获取更多信息。
当您键入时,:set autoindent会告诉vim缩进。将这些命令(减去前面的':')中的任何一个添加到~/..vimrc文件中都将使它们永久化。
发布于 2013-03-23 09:34:55
这个vim插件使用外部格式化程序来格式化vim中的代码。因此,它比维姆的压痕机械更强大。
https://askubuntu.com/questions/40567
复制相似问题