Eclipse / CDT 在新行上自动缩进仅对结构不正确?
Eclipse / CDT auto-indent on new line only incorrect for structs?
使用 STM32CubeIDE 内置的新 Eclipse 和 CDT 版本。我调整了内置的格式化程序选项,并使用 clang-format 作为我的主要美化器。我在 Window
>> Preferences
菜单中看到的所有地方我都缩进了 2 spaces-only。
下一行缩进对除缩进似乎加倍的结构以外的所有内容都适用。
它似乎没有两次缩进 2 个单位,因为在结构块内按 Tab 键会使我移动 4 spaces。 CTRL + SHIFT + F 的 Clang-Format 确实修复了不正确的格式,但我宁愿一个合适的解决方案。
要么是错误,要么这是 "4 space 缩进的另一个设置,但仅在结构块内"?
查看示例:
typedef struct
{
//New lines created inside the block start here, indented at 4 and not 2
//I get here if I press tab from the start column
//This is where it should intent to, manually pressed spaced twice
} some_new_t;
void foo()
{
//Correct
}
if (something)
{
//Correct
}
while(1)
{
//Correct
}
#ifdef TEST
//Doesn't indent, that's fine
#endif
编辑:也适用于工会
想通了。这不是 2 个空格 vs 4 个空格的问题,而是当你只想要一个时双缩进。
出于某种原因,CDT 对 C++ 的引用比 C 多得多,而且 Java 并且这被标记为具有误导性。
在 Window
、Preferences
、C/C++
、Code Style
、Formatter
>> Edit
>> Indentation
> > Indent
有两个选项可以勾选
'public', 'protected', 'private' within class body
和
Declarations relative to 'public' 'private'
对于 C 结构和联合,您只能选中其中一个以按您选择的宽度缩进。无论出于何种 non-C 原因,每个都算作包含一个缩进宽度。
使用 STM32CubeIDE 内置的新 Eclipse 和 CDT 版本。我调整了内置的格式化程序选项,并使用 clang-format 作为我的主要美化器。我在 Window
>> Preferences
菜单中看到的所有地方我都缩进了 2 spaces-only。
下一行缩进对除缩进似乎加倍的结构以外的所有内容都适用。
它似乎没有两次缩进 2 个单位,因为在结构块内按 Tab 键会使我移动 4 spaces。 CTRL + SHIFT + F 的 Clang-Format 确实修复了不正确的格式,但我宁愿一个合适的解决方案。
要么是错误,要么这是 "4 space 缩进的另一个设置,但仅在结构块内"?
查看示例:
typedef struct
{
//New lines created inside the block start here, indented at 4 and not 2
//I get here if I press tab from the start column
//This is where it should intent to, manually pressed spaced twice
} some_new_t;
void foo()
{
//Correct
}
if (something)
{
//Correct
}
while(1)
{
//Correct
}
#ifdef TEST
//Doesn't indent, that's fine
#endif
编辑:也适用于工会
想通了。这不是 2 个空格 vs 4 个空格的问题,而是当你只想要一个时双缩进。
出于某种原因,CDT 对 C++ 的引用比 C 多得多,而且 Java 并且这被标记为具有误导性。
在 Window
、Preferences
、C/C++
、Code Style
、Formatter
>> Edit
>> Indentation
> > Indent
有两个选项可以勾选
'public', 'protected', 'private' within class body
和
Declarations relative to 'public' 'private'
对于 C 结构和联合,您只能选中其中一个以按您选择的宽度缩进。无论出于何种 non-C 原因,每个都算作包含一个缩进宽度。