如何在Visual Studio中执行自定义文件特定命令/任务?

7
我希望能够为VisualStudio解决方案定义自定义命令/任务/宏。然后,我想执行在“解决方案资源管理器”中选择的文件所需的命令。
有几种可能性可以执行我需要的命令:
a) 在“解决方案资源管理器”中右键单击文件,然后从上下文菜单中选择命令(我的最爱)
b) 选择“解决方案资源管理器”中的文件。然后在工具栏上单击按钮。然后,该命令将以某种方式从“解决方案资源管理器”检索所选文件。
c) 在“解决方案资源管理器”中选择文件。然后从“任务运行器资源管理器”启动任务。执行的任务将以某种方式从“解决方案资源管理器”检索所选文件。
我尝试使用VisualStudio扩展程序VsCommandBuddy。但是,它不支持特定于文件的命令,请参见。

https://github.com/PaulHuizer/VsCommandBuddy/issues/21

我也尝试使用可以从“任务运行器资源管理器”启动的 GruntGulp 任务。但是,我不知道如何传递/访问当前在“解决方案资源管理器”中选择的文件

https://blogs.msdn.microsoft.com/webdev/2016/01/06/task-runners-in-visual-studio-2015/

=> 有没有一款VisualStudio扩展程序可以轻松定义文件的自定义命令?

=> 如何在脚本文件(例如Gulp,Grunt,Webpack)中传递/访问在SolutionExplorer中选择的文件?

=> 您推荐的其他舒适工作流程是什么?

编写自己的VisualStudio扩展程序是可能的。但我想其他人已经知道了解决方案。

2个回答

6

1. 创建外部工具命令:

  • 工具 => 外部工具 => 添加
  • 将 cmd.exe 用作 Command
  • 在“Arguments”中使用 /c 作为第一个条目,然后指定您想要执行的命令行命令,例如 grunt
  • 使用可用变量,例如 $(SolutionDir)$(ItemPath)(=文件路径)等,以自定义您的外部命令

enter image description here

2. 将外部命令添加为解决方案资源管理器上下文菜单的条目

  • 工具 => 自定义 => 命令

  • 选择上下文菜单:项目和解决方案上下文菜单 | 项

  • 添加命令... => 工具 => 外部命令 1

enter image description here

运行命令

使用解决方案资源管理器中项目的新上下文菜单条目

停止命令

为了取消/停止外部命令,您还可以使用解决方案资源管理器的上下文菜单。如果命令的原始名称为“Test with Karma”,则只要命令在运行,标题就会改为“(Stop) Test with Karma”。 =>选择该条目以停止命令。

导出设置

不幸的是,这些设置无法与解决方案一起存储。但是,可以导出这些设置。然后,同事可以导入它们:

  • 工具 => 导入和导出设置... => 下一步

  • 常规设置 => 外部工具列表 和

  • 常规设置 => 菜单和命令栏自定义


1

它是否允许将命令与解决方案一起保存?我希望将解决方案放在版本控制下。如果同事能够打开解决方案并且无需进行额外的设置导入即可使用命令,那就太好了。 - Stefan
1
@Stefan 不可以自动添加命令到Visual Commander,但是可以在打开解决方案时自动读取文件。 - Sergey Vlasov

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