Visual Studio:选项卡和空格缩进之间的任何一次单击切换?

时间:2010-11-28 20:30:44

标签: visual-studio coding-style indentation

我是几个不同团队的成员,(当然;)一些团队更喜欢标签而不是空格,反之亦然。

是否有更多用户友好的解决方案,然后通过menu->工具...加载用户个人资料...这是10次点击?

我查看了devenv.exe命令行参数,如果有任何用于加载特定用户配置文件以使用两个单独的* .lnk启动器的Visual Studio,但没有这样的参数。

然后我尝试录制宏,但VS只能记录Tools.ImportandExportSettings命令,并且无法记录以下向导的所有步骤。

感谢您的建议, 彼得

2 个答案:

答案 0 :(得分:5)

James Alexander在blog entry中有一个宏可以快速切换Visual Studio中的制表符和空格。然后只需添加一个映射到宏的工具栏命令,即可获得一键解决方案。

Public Sub ToggleTabs()
  If DTE.ActiveDocument.Language = "CSharp" Then
      Dim currentSetting As Boolean = DTE.Properties("TextEditor", "CSharp").Item("InsertTabs").Value
      DTE.Properties("TextEditor", "CSharp").Item("InsertTabs").Value = Not currentSetting
  End If

  If DTE.ActiveDocument.Language = "SQL" Then
      Dim currentSQLSetting As Boolean = DTE.Properties("TextEditor", "SQL").Item("InsertTabs").Value
      DTE.Properties("TextEditor", "SQL").Item("InsertTabs").Value = Not currentSQLSetting
  End If

  If DTE.ActiveDocument.Language = "HTML" Then
      Dim currentHTMLSetting As Boolean = DTE.Properties("TextEditor", "HTML").Item("InsertTabs").Value
      DTE.Properties("TextEditor", "HTML").Item("InsertTabs").Value = Not currentHTMLSetting
  End If

  If DTE.ActiveDocument.Language = "JScript" Then
      Dim currentJScriptSetting As Boolean = DTE.Properties("TextEditor", "JScript").Item("InsertTabs").Value
      DTE.Properties("TextEditor", "JScript").Item("InsertTabs").Value = Not currentJScriptSetting
  End If

End Sub

答案 1 :(得分:3)

使用Productivity Power Tools扩展程序中的InsTabsOffInsTabsOn命令。