【发布时间】:2022-06-11 17:51:34
【问题描述】:
我正在使用 VisualStudioCode 和 C++ 扩展。在 C 语言文件中,我有一些嵌套结构,例如
struct NewMenu appMenu[] =
{
{ NM_TITLE, "Project", 0 , 0, 0, 0 },
{ NM_ITEM, "Open..", "O", 0, 0, (APTR)MID_ProjectOpenAnim },
{ NM_ITEM, "Save", 0 , 0, 0, (APTR)MID_ProjectSave },
{ NM_ITEM, "Save as..", "S", 0, 0, (APTR)MID_ProjectSaveAs },
{ NM_ITEM, "Export", 0, 0, 0, 0 },
{ NM_SUB, "IFF ILBM Sheet", 0, 0, 0, (APTR)MID_ProjectExportToIlbm },
{ NM_SUB, "AMOS ABK", 0, 0, 0, (APTR)MID_ProjectExportToAbk },
{ NM_ITEM, NM_BARLABEL, 0 , 0, 0, 0, },
{ NM_ITEM, "About", 0 , 0, 0, (APTR)MID_ProjectAbout },
{ NM_ITEM, NM_BARLABEL, 0 , 0, 0, 0, },
{ NM_ITEM, "Quit", "Q", 0, 0, (APTR)MID_ProjectQuit },
{ NM_TITLE, "Anim sheet", 0 , 0, 0, 0, },
{ NM_ITEM, "Append..", 0 , 0, 0, (APTR)MID_SheetAppend },
{ NM_ITEM, "Fit to raster (horiz.)", 0 , 0, 0, (APTR)MID_SheetFitToRaster },
{ NM_TITLE, "Tools", 0 , 0, 0, 0, },
{ NM_ITEM, "Print frame mask (planar)", "P", 0, 0, (APTR)MID_ToolsPrintFrameMask },
{ NM_ITEM, "Print frame mask (interl.)", "I", 0, 0, (APTR)MID_ToolsPrintInterleavedFrameMask },
{ NM_ITEM, "Print mask of whole picture", "M", 0, 0, (APTR)MID_ToolsPrintFullMask },
{ NM_END, 0, 0 , 0, 0, 0, },
};
在文件上运行 clang-format 后,这个结构看起来像
struct NewMenu appMenu[] = {
{NM_TITLE, "Project", 0, 0, 0, 0},
{NM_ITEM, "Open..", "O", 0, 0, (APTR)MID_ProjectOpenAnim},
{NM_ITEM, "Save", 0, 0, 0, (APTR)MID_ProjectSave},
{NM_ITEM, "Save as..", "S", 0, 0, (APTR)MID_ProjectSaveAs},
{NM_ITEM, "Export", 0, 0, 0, 0},
{NM_SUB, "IFF ILBM Sheet", 0, 0, 0, (APTR)MID_ProjectExportToIlbm},
{NM_SUB, "AMOS ABK", 0, 0, 0, (APTR)MID_ProjectExportToAbk},
{
NM_ITEM,
NM_BARLABEL,
0,
0,
0,
0,
},
{NM_ITEM, "About", 0, 0, 0, (APTR)MID_ProjectAbout},
{
NM_ITEM,
NM_BARLABEL,
0,
0,
0,
0,
},
...
}
如何更改 .clang 格式文件以保持嵌套结构不受影响?
编辑:我无法将我的 .clang 格式文件放在这里,因为这会导致问题主要由 Stackoverflow 不允许的代码组成。 p>
【问题讨论】:
-
stackoverflow.com/questions/24974919/… 回答你的问题了吗?
-
您在文档中的研究揭示了什么?
-
@KamilCuk 部分是的。但我希望 .clang-format 文件中有一个我可能在文档中忽略的设置。不需要接触源代码的一种。但是,这仍然是一个很好的解决方案。谢谢!
标签: c++ c formatting clang-format