【发布时间】:2009-01-15 10:24:53
【问题描述】:
我们的一些项目需要默认的 Visual Studio 选项卡选项(宽度 4;保留选项卡);有些人要求宽度为 3;使用空格。不要问。
除了全局设置这些之外,我是否可以在每个解决方案或每个项目甚至(emacs 样式)每个文件上设置它?
Visual Studio 2005 和 2008。
【问题讨论】:
-
圣战标签+1。
标签: visual-studio tabs
我们的一些项目需要默认的 Visual Studio 选项卡选项(宽度 4;保留选项卡);有些人要求宽度为 3;使用空格。不要问。
除了全局设置这些之外,我是否可以在每个解决方案或每个项目甚至(emacs 样式)每个文件上设置它?
Visual Studio 2005 和 2008。
【问题讨论】:
标签: visual-studio tabs
我知道的最方便的解决方案是创建一组 Visual Studio 宏来切换到您想要的设置。
转到Tools > Macros > Macros IDE。在那里,在左侧的树中,右键单击 MyMacros 并选择 Add > Add Module。为模块命名,例如 TabSize。在此模块中,创建潜艇以更改您想要的设置。例如:
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module TabSize
Sub Tab3()
SetTabAndIndentation(3)
End Sub
Sub Tab4()
SetTabAndIndentation(4)
End Sub
Function SetTabAndIndentation(ByVal value As Integer)
DTE.Properties("TextEditor", "AllLanguages").Item("TabSize").Value = value
DTE.Properties("TextEditor", "AllLanguages").Item("IndentSize").Value = value
End Function
End Module
我所知道的字符串参数没有有用的文档。如果您需要设置其他选项,例如“保留标签”,最简单的方法是手动进行这些更改(Tools > Options)。然后,使用Tools > Import and Export Settings,将这些设置保存为 vssettings 文件。这将创建一个 XML 文件,其结构与方法调用所需的结构相同。
最后,您可以通过Tools > Customize 将这些宏链接到命令按钮或键盘快捷键。为每个宏提供键盘快捷键可以让您在设置之间快速切换。
【讨论】:
我有一个类似的问题:我的新项目需要设置保留标签,而我的其他项目是使用插入空格选项开发的。
由于这是一个严格的 Visual Studio 设置,我没想到会找到任何可以支持此功能的每个项目的信息(如果有人为此目的使用特定的加载项)。
所以我最终得到了类似 eclipse 的设置:有两个 Visual Studio 快捷方式,每个快捷方式都有不同的设置。
根据 MSDN,可以使用/ResetSettings 开关在启动时更改 Visual Studio 设置。您现在需要的是两个具有这种格式的快捷方式:
devenv.exe /ResetSettings "d:\your-settings.vssettings"
启动时间大约长 5-10 秒(因为它会在每次启动时应用更改设置),但它比每次手动操作更方便且不那么麻烦。
HTH
【讨论】:
您还可以使用这些属性来完成 Daniel 的示例:
DTE.Properties("TextEditor", "AllLanguages").Item("InsertTabs").Value
DTE.Properties("TextEditor", "AllLanguages").Item("IndentStyle").Value
【讨论】:
我知道我玩游戏有点晚了:
自 Visual Studio 2017 起,IDE 中支持每个目录的 .editorconfig 文件。
【讨论】: