【问题标题】:Clang-format setting that not touches nested structs不涉及嵌套结构的 Clang 格式设置
【发布时间】: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


猜你喜欢
  • 2022-01-24
  • 2021-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多