18

在工作中,我们有使用4 个空格进行代码缩进的约定。我习惯使用tabsfor 缩进,但想遵循约定。

注意:我不打算在这里开始讨论空格与制表符。

我调整了我的 Visual Studio 设置以用 4 个空格替换选项卡,但在调整使用空格时遇到了一些问题。

例如:

  • 如何轻松取消缩进代码?使用tab字符,我只需要使用backspace一次,使用空格我需要使用backspace 4 次。

  • 如何确保始终有正确数量的空格(不是三个或五个)?

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

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

理想情况下,我希望这些用于缩进的 4 个空格对制表符同样有效。

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

欢迎任何提示!

4

2 回答 2

13

Visual Studio 没有实现智能取消缩进真是太可惜了。即使在最简单的免费类似记事本的编辑器中,您也可以找到此功能。

Backspace幸运的是,为了使用and简化自动取消缩进Delete,有一个很棒的插件,由jedmao (Jed Hunsaker) 开发的 TabSanity。

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

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

强烈建议将两者都用于“制表符作为空格”的文本狂人。

快乐编码!

于 2015-04-26T22:38:35.633 回答
11

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

此外,点击Tab将输入正确数量的空格以在下一个 4 空格边界对齐。

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

所以,如果你有这个:

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

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

于 2013-05-28T21:39:02.313 回答