当我对源使用各种选项进行缩进时,它会执行我想要的操作,但也会使* s在指针类型中的位置困惑:
-int send_pkt(tpkt_t* pkt, void* opt_data);
-void dump(tpkt_t* bp);
+int send_pkt(tpkt_t * pkt, void *opt_data);
+void dump(tpkt * bp);
我知道我在类型旁边*的放置不是变量是非常规的,但是我怎样才能缩进以让它们保持不动呢?还是有另一种工具可以满足我的需求?我已经浏览了手册页,信息页,并访问了Google建议的六个页面,但我找不到执行此操作的选项。
我尝试了Artistic Style(又称AStyle),但似乎无法弄清楚如何使它缩进4的倍数,但每8个制表符都是缩进的。那是:
if ( ... ) {
<4spaces>if ( ... ) {
<tab>...some code here...
<4spaces>}
}
最佳答案
取消 shell
Uncrustify提供了几种有关如何缩进文件的选项。
从配置文件:
indent_with_tabs
缩进代码时如何使用制表符
0 =仅空格
1 =缩进制表符,与空格对齐
2 =缩进并与制表符对齐
您可以找到它here。
BCPP
在网站上:“bcpp使C/C++源程序缩进,用空格或反斜杠替换制表符。与缩进不同,它(在设计上)并不试图包装长语句。”
找到它here。
UniversalIndentGUI
这是一个支持多个美化器/格式化程序的工具。它可能会导致您找到更多选择。
找到它here。
艺术风格
您可以改用Artistic Style aka AStyle(即使它没有执行您需要做的事情,我也会把它留在这里,以防其他人发现它有用)。
关于pretty-print - 寻找比GNU Indent更灵活的工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/101818/