当我从另一个文件复制代码时,格式是混乱的,就像这样:
fun()
{
for(...)
{
for(...)
{
if(...)
{
}
}
}
}
如何在vim中自动格式化这段代码?
当我从另一个文件复制代码时,格式是混乱的,就像这样:
fun()
{
for(...)
{
for(...)
{
if(...)
{
}
}
}
}
如何在vim中自动格式化这段代码?
当前回答
我想补充的是,为了防止它在第一时间被搞砸,你可以在粘贴之前键入:set paste。粘贴完成后,你可以输入:set nopaste来进行js-beautify和缩进等操作。
其他回答
如上所述,我喜欢缩进,但大多数情况下,我只想格式化我正在处理的文件的一小部分。由于indent可以从stdin中获取代码,它真的很简单:
选择要用V或类似的格式格式化的代码块。 通过输入:!indent格式化。
style也接受stdin,所以你可以在这里使用相同的技巧。
我发现clang格式工作得很好。
在clang文档中有一些示例键绑定
我更喜欢在vim中使用equalprg绑定。这允许您使用G=gg或other = indent选项调用clang-format。
只需在你的。vimrc文件中放入以下内容:
autocmd FileType c,cpp setlocal equalprg=clang-format
试试下面的按键:
gg=G
解释:gg到文件的顶部,=是修复缩进的命令,G告诉它执行到文件末尾的操作。
也许你可以试试下面的方法 $缩进-kr -i8 *.c
希望对你有用!
我想补充的是,为了防止它在第一时间被搞砸,你可以在粘贴之前键入:set paste。粘贴完成后,你可以输入:set nopaste来进行js-beautify和缩进等操作。