0

要提前通知,Astyle 不能为我做这件事。我希望我的代码正确对齐。如果我必须手动输入空格,那会让我发疯。修改后可以看到,代码漂亮多了。

我想知道最好的方法是什么?有人可以帮助我吗?

这是原始代码:

unsigned __int64 contentsStmSize = 0;
unsigned __int64 imageSize = 0;
unsigned __int64 fontSize = 0;
unsigned __int64 bookMarkSize = 0;
unsigned __int64 xObjectFormsSize = 0;
unsigned __int64 structureInfoSize = 0;
unsigned __int64 acroFormsSize = 0;
unsigned __int64 linkAnnotsSize = 0;
unsigned __int64 namedDestnationsSize = 0;
unsigned __int64 docOverheadSize = 0;
unsigned __int64 clrSpaceSize = 0;
unsigned __int64 patternInfoSize = 0;
unsigned __int64 shadingPatternInfoSize = 0;
unsigned __int64 extGraphicsStatesSize = 0;
unsigned __int64 crossRefTableSize              = 0;

这就是我想要的:

unsigned __int64 contentsStmSize                = 0;
unsigned __int64 imageSize                      = 0;
unsigned __int64 fontSize                       = 0;
unsigned __int64 bookMarkSize                   = 0;
unsigned __int64 xObjectFormsSize               = 0;
unsigned __int64 structureInfoSize              = 0;
unsigned __int64 acroFormsSize                  = 0;
unsigned __int64 linkAnnotsSize                 = 0;
unsigned __int64 namedDestnationsSize           = 0;
unsigned __int64 docOverheadSize                = 0;
unsigned __int64 clrSpaceSize                   = 0;
unsigned __int64 patternInfoSize                = 0;
unsigned __int64 shadingPatternInfoSize         = 0;
unsigned __int64 extGraphicsStatesSize          = 0;
unsigned __int64 crossRefTableSize              = 0;
4

3 回答 3

2

我也喜欢这种风格。我用标签对齐我的代码以更好地查看值。我也使用的一个帮助是使用 ALT + 鼠标选择一些代码行,使用选项卡按钮可以同时重新对齐一组行。

希望能帮助到你。

于 2013-07-10T07:38:56.497 回答
1

在 emacs 中,您可以选择行,然后键入

ctrl-alt-shift-5
\(.*?\) *= 0;
\,(format "%-50s = 0;" \1)

意思是

  • \(.*?\)抓住一切(不贪心留下空间)
  • *= 0;一系列空格,后跟=一个空格和0;
  • \,替换为 elisp 表达式的值
  • (format "%-50s = 0;" \1)将组 1 格式化为大小为 50 的左对齐字符串,后跟结束部分" = 0;"

但是请注意,这种缩进风格对于保持更新有点烦人(例如,当您添加一个名称比其他变量长的新变量时),这就是在许多代码风格约定中不鼓励使用它的原因。

于 2013-07-10T07:48:03.810 回答
1

在 vi 中并不太难。搜索 '=' ( /=enter),插入制表符 ( itabesc)。然后敲.几下以对齐一条线,然后n去下一个点。

1G/=
i^I^[.....n.....n...n...n... etc.
于 2013-07-10T07:43:45.797 回答