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

时间:2017-07-26 08:18:55

标签: visual-studio gulp gruntjs task add-custom-command

我希望能够为VisualStudio解决方案定义自定义命令/任务/宏。然后我想为Solution Explorer中选择的文件执行该命令。

有几种方法可以执行对我来说没问题的命令:

a)右键单击Solution Explorer中的文件,然后从上下文菜单中选择命令(我最喜欢的)

b)在Solution Explorer中选择一个文件。然后单击工具栏上的按钮。然后该命令将以某种方式从Solution Explorer检索所选文件。

c)在Solution Explorer中选择一个文件。然后从Task Runner Explorer开始执行任务。执行的任务将以某种方式从“解决方案资源管理器”

中检索所选文件

我尝试使用VisualStudio扩展程序VsCommandBuddy。但是,它不支持特定于文件的命令,请参阅

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

我还尝试使用可以从Grunt启动的GulpTask Runner Explorer任务。但是,我不知道如何在Solution Explorer中传递/访问当前选中的文件

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

=>是否有一个VisualStudio扩展,可以轻松地为文件定义自定义命令?

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

=>你会推荐其他任何舒适的工作流程吗?

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

2 个答案:

答案 0 :(得分:2)

创建外部工具命令:

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

enter image description here

将外部命令添加为解决方案资源管理器

的上下文菜单的条目
  • 工具=>自定义=>命令

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

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

enter image description here

运行命令

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

停止命令

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

导出设置

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

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

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

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

答案 1 :(得分:1)

您可以使用我的Visual Commander扩展名来定义自定义命令/宏。有关如何在解决方案资源管理器中获取当前选定的文件,请参阅In a VS 2015 extension, how can I get the selected object in the Solution Explorer?