如何使用 Cmder 命令行参数创建启动脚本(即 .bat)的 AutoHotKey?

How to create AutoHotKey which starts script (i.e .bat) using Cmder command line arguments?

我正在尝试创建一个启动脚本(即 .bat)的自动热键:

#!g::
  Run "Path\To\script\script.bat" debug
  Return

AutoHotKey 工作正常。但是,我希望使用 Cmder 而不是默认的 windows cmd.

打开 .bat

我尝试通过转到 设置 -> 集成 -> 默认项 并检查 将 Cmder 设置为默认 cmd "Force ConEmu as default terminal for console applications",但这在我的特定情况下没有任何改变,脚本仍在 windows cmd 中 运行。

假设 Cmder 可以接受一个命令行参数,让它显式:

Run "Path\To\exe\Cmder.exe Path\To\script\script.bat" debug

否则,运行Cmder然后用AHK文件打开脚本。

编辑:基于OP的解决方案,可以尝试:

Run "Path\To\exe\Cmder.exe /Task ""Path\To\script\script.bat debug"""

Run "Path\To\exe\Cmder.exe /Start ""Path\To\script"" /Task ""script.bat debug"""

确切的语法以及是否以及在何处用引号将事物括起来是待定的,但试试看。

最后我使用下面的脚本让它工作:

; Win+Alt+y - Start script
#!y::
Run "d:\cmder\Cmder.exe" "d:\somePath\FolderContainingTheBat\"
sleep 1000
send script.bat debug{enter}

Return

编辑

另一种解决方案不涉及 AutoHotKey,仅适用于默认 windows cmd。我做了以下事情:

  1. 创建包含以下内容的 .bat 文件

    script.bat debug
    
  2. 为新建的bat文件创建快捷方式,并为其分配一个"keyboard shortcut":右键单击创建的快捷方式->属性->"Shortcut"选项卡->快捷键

我让它与这个一起工作

Run, C:\path\Cmder\vendor\conemu-maximus5\ConEmu64.exe C:\path\to\script.exe