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

标签 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

我也尝试使用 GruntGulp可以从 Task 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 扩展。但我想其他人已经知道了解决方案。

最佳答案

1.创建外部工具命令:

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

  • enter image description here
    2. 添加外部命令作为解决方案资源管理器上下文菜单的条目
  • 工具=>自定义=>命令
  • 选择上下文菜单:项目和解决方案上下文菜单 |元素
  • 添加命令...=>工具=>外部命令 1

  • enter image description here
    运行命令
    对解决方案资源管理器中的项目使用新的上下文菜单条目
    停止命令
    为了取消/停止外部命令,您还可以使用解决方案资源管理器的上下文菜单。如果命令的原始名称是“Test with Karma”,则只要命令正在运行,标题就会修改为“(Stop) Test with Karma”。 =>选择该条目以停止命令。
    导出设置
    不幸的是,这些设置无法与解决方案 (?) 一起存储。但是,可以导出这些设置。然后同事可以导入它们:
  • 工具=> 导入和导出设置...=>下一步
  • 常规设置=> 外部工具列表和
  • 常规设置 => 菜单和命令栏自定义
  • 关于visual-studio - 如何在 Visual Studio 中执行自定义文件特定命令/任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45321194/

    相关文章:

    c# - 为什么 WPF 窗口在 MainWindow 关闭后不自动处理和收集?

    c# - 为什么 .ToString() 方法会破坏我的代码?

    angularjs - GulpUglifyError : unable to minify JavaScript Caused by: SyntaxError: Unexpected token name «k», 预期 punc «;»

    php - 使用 Composer、NPM 或 Bower 包含库

    javascript - 使用 RequireJS 和 Grunt 获取空白页面

    javascript - 在 Grunt 中同时使用 Compass 和 Autoprefixer

    c# - 异常断言和在 VS 中调试 C# 项目

    c# - 如何注册我的 visual studio 扩展来运行事件?

    gulp - 全局和本地安装后找不到本地 gulp

    node.js - Grunt 无法启动 : ">> ReferenceError: grunt is not defined"