Ope*_*way 32 vim code-formatting
我对VIM很新.我得到了一些源代码,这是一团糟.乍一看,我想至少得到一个清晰,有条理的代码视图,所以我喜欢正确格式化,我的意思是缩进取决于函数的深度等等.
我想知道是否可以用VIM完成,否则你可以推荐哪些其他命令行工具.
谢谢
m00*_*000 60
虽然vim是一把真正的瑞士刀,但我仍然更喜欢使用外部工具来完成某些工作.与使用内置等效方法相比,这种方法有时更直观,更容易记忆.
在缩进的情况下,我通过astyle过滤整个文件缓冲区.astyle参数在几分钟内更容易掌握,特别是如果你不是vim guru的话.此外,astyle在微调输出方面提供了更大的灵活性.
首先安装astyle:# apt-get install astyle
然后在vim里面:(
:%!astyle简单的情况 - astyle默认模式是C/C++)
或
:%!astyle --mode=c --style=ansi -s2(ansi C++风格,每个缩进级别使用两个空格)
或
:1,40!astyle --mode=c --style=ansi(ansi C++风格,仅过滤1-40行)
cod*_*ict 28
你可以做到以下几点:
gg=G
Run Code Online (Sandbox Code Playgroud)
Yon*_* Wu 13
我现在强烈推荐clang-format.一旦安装了clang格式,它允许将clang格式简单地集成到Vim中:
http://clang.llvm.org/docs/ClangFormat.html#vim-integration
它是唯一真正理解您的C++代码的代码美化器,它非常智能地将代码美化为更像人而不是机器.例如:
void TestFunction(int argument1, int argument2,
int argument3);
void TestFunctionVeryLongName(int argument1,
int argument2,
int argument3);
void TestFunctionWithRidiculouslyLongName(
int argument1, int argument2, int argument3);
Run Code Online (Sandbox Code Playgroud)
Vim 肯定会这样做,尽管结果可能并不完美:
您可以通过以下方式了解有关 equal 命令的更多信息::help =
有一个 vim 插件,可以在 vim 中对代码进行格式化。它称为 vim-autoformat,您可以在此处下载:
https://github.com/vim-autoformat/vim-autoformat
它将外部代码格式化程序集成到 vim 中。例如,如果要格式化C、C++、C#或Java代码,则需要安装程序astyle,vim会自动将其设置为格式化程序。
| 归档时间: |
|
| 查看次数: |
27326 次 |
| 最近记录: |