clang-format 數組初始化,多行模式

clang-format 在格式化多行數組的初始化時不夠理想。例如

int array[] = 
{
    0,
    1,
    2
};

會被格式化為:

int array[] = {
    0,
    1,
    2};

 

如果在最後一個元素後面添加一個逗號「,”,即:

int array[] = 
{
    0,
    1,
    2,
};

則格式化後,末尾部分保持不變,但左大括號還是會移動到上一行末尾:

int array[] = {
    0,
    1,
    2,
};

 

另外,clang-format 對多維數組和結構體數組中的逗號、末尾右大括號的自動對齊還沒有可用的選項,如:

int array[] = 
{
    {0, 1, 2}, // blabla
    {1,  3,      5}, //blablabla
    {2, 5,                        8},             //bla bla bla
};

 

不過讓人高興的是,clang-format 還在非常活躍的開發中,幾乎每天都有commit,希望未來能完善這些。