在Visual Studio 2012中为“折叠所有”项目附加键盘快捷方式

22
如题所述,我想知道是否可以将快捷键与Visual Studio 2012中的“解决方案资源管理器”中折叠所有项目的功能绑定在一起?
在之前的版本(如2010)中,我可以创建一个宏来实现这个功能,但是在Visual Studio 2012中,不再支持宏。
虽然我可以右键单击“解决方案资源管理器”中的项目并选择“全部折叠”,但我更愿意通过键入“Ctrl + Shift + C”来完成相同的工作。

你真的在上下文菜单中看到它了吗?如果是这样,你应该能够进入“工具”-->“自定义”-->“命令”-->“上下文菜单”,然后分配一个键盘快捷键。我看到了一个“全部折叠”的图标,但我没有在上下文菜单中看到它,所以我无法分配一个快捷键。 - Johnny Oshika
嗨@Samuel,这个问题有解决吗?我还在寻找解决方案。 - Johnny Oshika
每次微软发布新版本的Visual Studio时,都会删除一些不错的功能。没有宏,很难弄清楚我们现在该如何实现这个功能。 - Samuel
感谢@Samuel。我也在VS 2010中使用宏。VS 2010还有一些扩展程序也提供了这种功能,但我没有看到VS 2012的相关内容。 - Johnny Oshika
我找到了一个链接,你可以使用resharper来附加快捷键:http://yassershaikh.com/how-to-collapse-all-items-in-solution-explorer-in-visual-studio-with-resharper/ 问题是焦点必须在解决方案资源管理器中的某个项目上。 - Samuel
5个回答

11

就目前而言,这是我能想到的最好的方法。

备选方案1

  1. Ctrl+¨将焦点放在解决方案资源管理器上面的搜索框中。
  2. Shift+Tab将焦点移动到工具栏上。
  3. 使用左箭头将焦点向左移动,直到您点击全部折叠按钮(四次。视情况而定)。

备选方案2

  1. Ctrl+Alt+l(或任何您个人的快捷方式)以聚焦解决方案资源管理器。
  2. Shift+Alt以聚焦解决方案资源管理器工具栏。这将把焦点放在工具栏上的主页按钮上。
  3. 使用右箭头将焦点向右移动,直到您点击全部折叠按钮(三次)。
  4. Enter

备选方案3

  1. Ctrl+Alt+l(或任何您个人的快捷方式)以聚焦解决方案资源管理器。
  2. 按住左箭头直到达到顶级节点(解决方案节点)。
  3. 上箭头将焦点放在解决方案资源管理器上面的搜索框中。
  4. Shift+Tab将焦点移动到工具栏上。
  5. 使用左箭头将焦点向左移动,直到您点击全部折叠按钮(两次。视情况而定)。

6
啊啊啊,Visual Studio 2014 的键盘快捷键序列是什么?按下 Ctrl+Shift+. 三次,转动电脑,等待10秒钟,在桌面上踢一下你的头!看来我们只是使用过多键盘快捷键的怪胎。 :) - Samuel
备选方案2在VS 2013中仍然有效。Shift+Tab在VS 2013中无法按预期工作。 - Johnny Oshika

9

如下截图所示,有一个名为“折叠全部”的选项以及其快捷键。

enter image description here

现在这个快捷键对你来说将不再起作用!
当然,除非您使用“工具>选项>键盘”设置它。命令名称是“CollapseInSolutionExplorerAction”。使用此命令名称搜索并分配您选择的快捷键。

enter image description here

That's it,您现在可以使用您的快捷键了!

源代码


4
这是ReSharper的“折叠全部”命令。楼主询问的是Visual Studio 2012按钮。 - Mark Seemann
2
新的命令是“CollapseInSolutionExplorer”,但与以前版本的Visual Studio在使用宏时相比,它并不像预期的那样工作。该命令仅在选择了解决方案资源管理器中所需的节点时才起作用。换句话说,如果您将焦点放在代码编辑器中,该命令将无法工作。虽然这比没有好,但在所有情况下都需要对鼠标进行操作。 - Samuel
2
我尝试使用“ctrl+alt+L”将焦点放在解决方案资源管理器上,然后使用左箭头多次将焦点设置在解决方案资源管理器的根节点上,然后使用快捷键。你说要确保所有节点都已折叠。我不知道VS 2014中将删除哪些功能?:( - Samuel
2
更正。命令是ProjectAndSolutionContextMenus.Project.CollapseProjects。 - Bryan Matthews
在VS 2013中,我发现了ProjectAndSolutionContextMenus.Project.PowerCommands.CollapseProjects(请注意,我已经从NuGet安装了Microsoft的Productivity Power Tools扩展程序,因此可能是来自该扩展程序)。 - jwatts1980
显示剩余2条评论

1
Visual Studio 2012 / ReSharper 8.0.1:
该命令为“ProjectAndSolutionContextMenus.Project.ReSharper_CollapseInSolutionExplorer”。

1
我建议您尝试使用Visual Studio的CodeMaid扩展程序。它提供了一个名为“递归折叠所有项目”的命令,可以自定义快捷键(默认情况下为Ctrl+M,-)。它还具有其他一些不错的功能,例如在.cpp和其.h文件之间切换,合并行等。

不同于 ReSharper,CodeMaid 是完全免费的。 - lxgreen

0

我在网上搜索了一种方法,以便在首次安装VS2012时执行此操作...

我刚刚找到了解决方案,所以我分享一下 :)

您可以通过将您的Visual Studio版本添加到现有扩展中来实现此目的...

  • 下载 VS 10 的扩展
  • 将扩展名从 vsix 改为 zip
  • 解压缩并打开文件 extension.vsixmanifest
  • 找到这个 xml 部分:SupportedProducts 添加以下内容:

    <VisualStudio Version="11.0">
    <Edition>Ultimate</Edition>
    <Edition>Premium</Edition>
    <Edition>Pro</Edition>
    </VisualStudio>
    

你也可以尝试为Visual Studio 2013安装版本12...

  • 将其压缩成zip文件,然后将扩展名改为vsix。

  • 现在你可以安装它了。

  • 安装完成后,转到“工具”->“自定义”,然后单击键盘按钮。

  • 搜索“CrossProjectMultiProject.CollapseProjects”,并分配你喜欢的快捷键。

祝你编程愉快。 如果这对你有帮助,请点赞。

附言:抱歉我的英语不好,我是法国人;-)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接