我正在开发一个在源代码中使用水平对齐的开源项目。代码是用C ++编写的,我使用的是Visual Studio 2013.Visual Studio尝试在间距方面很聪明,但最终会破坏我的手动对齐。
典型的代码如下所示:
bool → → → GetFieldWithType → → ( int idx, cc8* name, int type );
bool → → → GetFieldWithType → → ( int idx, int key, int type );
static cc8* → GetLuaTypeName → → ( int type );
void* → → → GetPtrUserData → → ( int idx );
现在,如果我像这样添加另一行,只要我输入左括号(在两个选项卡之后),Visual Studio就会删除我刚刚输入的两个选项卡并用一个空格替换它们。我试着耐心点击Ctrl + Z来撤消自动格式化。但是一旦我输入分号,它就会再次杀死标签。
我在工具>中找到了一个选项选项>文本编辑器> C / C ++>格式化>间距>函数括号的间距,用于切换是否在参数列表的左括号之前插入空格。如果我取消激活此选项,VS仍然坚持在左括号之前删除选项卡,它只是不添加空格。 如何摆脱这种行为?
要明确:我很自然地使用VS 插入空格(根据我配置的内容)。我不想完全停用自动格式化。我只是不希望它删除我手动输入的间距。
答案 0 :(得分:4)
转到Tools > Options > Text Editor > C/C++
。
在Tabs
下,您可以更改"插入空格"到"保持标签"。如果你根本不想要压缩你的缩进,你也可以在这里关闭缩进。
在Formatting > Spacing
下,您可以取消选中(几乎)所有"删除空间..."选项。
希望有所帮助!