我在Visual Studio 2010中进行WinForms和Web开发.Web开发人员使用四个空格的选项卡大小,WinForms开发人员使用两个选项卡大小。
由于我在两者之间前后切换,我想知道是否有一种快速的方法可以做到这一点,而不必每次都能浏览选项?
答案 0 :(得分:2)
没有专用的快捷方式,但让我们做一个!
只需点击Alt+F11
即可打开宏编辑器并将以下代码添加到新模块中:
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics
Public Module Tabspaces
Sub TwoTabSpaces()
Dim tabs As Properties
tabs = DTE.Properties("TextEditor", "AllLanguages")
tabs.Item("TabSize").Value = 2
tabs.Item("IndentSize").Value = 2
End Sub
Sub FourTabSpaces()
Dim tabs As Properties
tabs = DTE.Properties("TextEditor", "AllLanguages")
tabs.Item("TabSize").Value = 4
tabs.Item("IndentSize").Value = 4
End Sub
End Module
然后保存您的宏并从工具菜单中打开选项窗口,然后选择环境 - >键盘:
在这里,您可以搜索包含“宏”的命令,然后您会看到列出的TwoTabSpaces()
和FourTabSpaces()
。
您现在可以为这些宏指定键盘快捷键。在上图中,我分别选择了Alt+T, Alt+2
和Alt+T, Alt+4
(t = Tabs,2 =两个空格等)。
当然,您可以根据需要自定义它们。
答案 1 :(得分:1)
我以为我会分享我的个人宏,根据语言进行切换。您可以设置Widor answer中建议的键盘快捷键。
Public Sub ToggleSpaces()
If DTE.ActiveDocument.Language = "Basic" Then
Dim textEditorSettings = DTE.Properties("TextEditor", "Basic")
Dim currentSize = CShort(textEditorSettings.Item("TabSize").Value)
'If at 2, use 4... else switch to 2
Dim newSpaces As Short = If(currentSize = 2, 4, 2)
textEditorSettings.Item("TabSize").Value = newSpaces
textEditorSettings.Item("IndentSize").Value = newSpaces
End If
End Sub
我的宏从James Alexander的宏改编为“Toggle Between Leading Tabs or Spaces Per Project”,在以下StackOverflow question中找到。