为什么我一直在Visual Studio 2010 C#代码窗口中获取混合标签和空格?

Pro*_*ofK 87 visual-studio-2010 visual-studio

我刚刚在Web应用程序中处理了一个C#文件(Global.asax.cs)过去一小时左右,我已经看到提示"tabify"或者其他四次.每次我选择列表并保存文件,但稍后在某些看似随机的点上,我会再次收到提示.

我正在使用ReSharper,但是当我在家中编码时,也不会发生这种情况,也使用ReSharper.只在工作.

Jus*_*eno 146

您使用的是Productivity Power Tools VS 2010扩展吗?如果是这样,请转到Tools- > Options- >并选择Productivity Power Tools.在这里你可以关闭选项Fix Mixed Tabs.这将关闭此警告.

适用于Visual Studio 2010的Power Tools

适用于Visual Studio 2012的电动工具

适用于Visual Studio 2013的电动工具

适用于Visual Studio 2015的电动工具

  • 标签的生产力已得到很好的讨论,并且标签的优点不仅仅是数据大小.选项卡具有可配置的宽度,适用于在同一项目中具有不同缩进首选项的人员.如果每个人都配置他们的VS使用不同数量的空格而不是标签代码就会变得一团糟,但是如果每个人都使用标签并将标签宽度配置为他们的视觉偏好,那么代码保持干净,每个人都得到他们的蛋糕并吃掉它.再次,使用空间的优势是什么? (34认同)
  • 我宁愿保持警告并取消混合标签和空格. (20认同)
  • 很难看出这是多么富有成效.使用工具+选项,文本编辑器关闭选项卡.它们在上个世纪用于节省字节. (7认同)
  • @Hans,使用标签的效率在这里根本不相关. (6认同)
  • 当然,这是一个像这样的问题.啧. (6认同)
  • @ProfK会随机点再次提示您也可能是在其他人检查此文件的更改后(如果您正在使用源代码管理)?也许你和其他人在VS中定义了不同的制表符空格. (2认同)
  • @JohnNeuhaus Tabs不是用于对齐,而是用于缩进_only_(也是唯一合理的选项).但是为了对齐,总是使用空格.标签不应出现在信件的右侧. (2认同)

Fri*_*isk 59

混合标签和空格可能来自您的visual studio文本编辑器设置.您可以决定是否希望visual studio在此处插入空格或制表符:

工具/选项/ - >文本编辑器/所有语言/选项卡,选择"保留选项卡"选项.

  • 对于提出的问题以及@ProfK想要实现的结果,这确实是正确的答案. (6认同)

小智 11

选择"Untabify"选项,因为VS默认为空格,而不是制表符.如果您在下次添加一行时选择"Tabify",VS将使用空格,您将一遍又一遍地看到提示.


Tir*_*rim 9

Resharper使用单独的选项卡/空间设置到visual studio.在Resharper选项中,选中"常规格式化程序样式 - >如何在选项卡用于缩进时对齐".resharper格式化代码(例如重构等)时使用此设置,默认为"用户空间".

此外,在" 编辑 - >高级 "菜单中,有一个"查看空白"选项(Ctrl + E,S)可能很有用!