我想在vim中打开的每个.c和.h文件上运行缩进。我已经看过设置equalprg,但是当我打开缓冲区时,我宁愿让它为我完成,所以我尝试了:
autocmd BufReadPost *.[ch] '[,']!indent
如果文件没有语法错误,这可以正常工作,但是如果我错过了一个右大括号,则会将缩进的错误消息发送到文件中。我之前没有做任何插件。我最好写一个ftplugin吗?我不介意错误的无声失败,但在这种情况下文件应保持原始状态。任何提示都非常赞赏。
答案 0 :(得分:1)
如果你想使用GNU缩进。这听起来像你想要的东西:
autocmd BufReadPost *.[ch] silent !indent "%"
set autoread
(也未经测试): - )
答案 1 :(得分:0)
如何(未经测试):
autocmd BufReadPost *.[ch] gg=G