2013-05-28 15 views
11

在工作中,我们有关于使用4个空格代码缩进的约定。我习惯于使用tabs进行缩进,但希望遵循约定。使空间像Visual Studio中的选项卡一样工作的技巧

注意:我不打算在这里开始关于空格和标签的讨论。

我调整了我的Visual Studio设置以用4个空格替换标签,但我有一些问题调整为使用空格。

例如:

  • 我怎么能轻易取消缩进代码?与tab chararaters,我只有 需要使用退格一次,用空格我需要使用退格 4倍。

  • 我怎样才能确保始终有正确数量的空间 (不是三个或五个)?

  • 如何通过代码尽可能快地浏览我的代码? (箭头向左或向右跳转 到带有制表符的下一个缩进,但只移动一个带空格的位置)

  • 如何在比较文件时忽略空白更改?

Idealy,我希望这些4位的缩进能够同样的工作到制表符。

我主要使用c#和基于XML的文件工作。

欢迎任何提示!

+3

使用Shift-Tab在行首的Unindent代码。使用“重新格式化文档”来校正缩进,或者在关闭时使VS重新格式化一个块,或者使用一个插件在编辑器中显示缩进指南,以便在事物不与它们对齐时更容易识别。 – millimoose

+0

我也建议在选项对话框中查看有多少这是可配置或不可以,可能是我提到的一些必须启用。 – millimoose

+1

'Ctrl' +'向左箭头键'/'向右箭头键'将带您到下一个非空白字符。这比只是左/右箭头快! – Default

回答

9

要取消缩进,突出显示该行并点击Shift + Tab。或者只是定位到该行的开头并点击Shift + Tab

此外,击中选项卡将输入正确数量的空间以在下一个4空间边界对齐。

要确保缩进是正确的,您可以突出显示代码区域,然后选择编辑 - >高级 - >格式选择,或者您可以转到块的末尾,删除最后的大括号,然后将其添加回。 IDE将重新格式化您的代码。

所以,如果你有这样的:

void foo() 
{ 
    f(); 
    int q = 32; 
    for (; q > 0; --q) 
    { 
    // really messed up indentation 
    } 
    } 

然后删除并重新添加这最后'}'将重新格式化整个方法。

+0

+1。还有'格式文档',其功能同样好(与格式选择位于同一位置)。但请注意,如果有任何逻辑问题,例如缺少'{'或'}'IDE格式化将不起作用。 – Default

8

这样的耻辱,Visual Studio没有实现智能unindent。你甚至可以在最简单的免费记事本编辑器中找到这个功能。

幸运的是,为了简化自动取消缩进与Backspace键删除,有一个真棒插件,通过TabSanity jedmao(杰德胡萨克)。

此包导致Visual Studio文本编辑器将标签作为空间视为,就好像它们实际上是标签一样。也就是说,退格键 和删除键,箭头键导航和鼠标光标文本选择 (即将推出)将不允许脱字符号落在 形成选项卡的空间内。

请注意,它需要依赖另一个很酷的插件,EditorConfig

这两个强烈建议“制表符 - 空格”文本狂人。

快乐编码!

相关问题