cmder: VSCode tasks don't run properly on Cmder
I’ve followed the instructions here and I’m able to run Cmder as VSCode integrated terminal. Everything seems to be working fine, except for VSCode > Run Task which ouputs a lot of stuff but doesn’t run the task.
Example: VSCode > Terminal > Run Task > npm start
Integrated terminals shows:
Executing task: npm start
DEBUG(init.bat): Env Var - CMDER_ROOT=D:\Portables\cmder
DEBUG(init.bat): Env Var - debug-output=1
DEBUG(init.bat): Looking for Git install root...
DEBUG(:read_version): Env Var - git_executable=D:\Portables\cmder\vendor\git-for-windows\cmd\git.exe
DEBUG(:read_version): D:\Portables\cmder\vendor\git-for-windows\cmd\git.exe does not exist.
DEBUG(:validate_version): Found Git Version for VENDORED: ...
DEBUG(:read_version): Env Var - git_executable=C:\Program Files\Git\cmd\git.exe
DEBUG(:read_version): Env Var - GIT_VERSION_USER=2.18.0.windows.1
DEBUG(:validate_version): Found Git Version for USER: ...
DEBUG(:enhance_path): Env Var - find_query=C:\\Program\ Files\\Git\\cmd
DEBUG(:enhance_path): Env Var 1 - found=0
DEBUG(:enhance_path): Env Var 2 - found=1
DEBUG(:enhance_path): Env Var - find_query=C:\\Program\ Files\\Git\\mingw64
DEBUG(:enhance_path): Env Var 1 - found=0
DEBUG(:enhance_path): Env Var 2 - found=0
DEBUG(:enhance_path): BEFORE Env Var - PATH=C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin
DEBUG(:enhance_path): Appending 'C:\Program Files\Git\mingw64'
DEBUG(:enhance_path): AFTER Env Var - PATH=C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft
VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64
DEBUG(:enhance_path): Env Var - find_query=C:\\Program\ Files\\Git\\usr\\bin
DEBUG(:enhance_path): Env Var 1 - found=0
DEBUG(:enhance_path): Env Var 2 - found=0
DEBUG(:enhance_path): BEFORE Env Var - PATH=C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64
DEBUG(:enhance_path): Appending 'C:\Program Files\Git\usr\bin'
DEBUG(:enhance_path): AFTER Env Var - PATH=C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft
VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64;C:\Program Files\Git\usr\bin
DEBUG(init.bat): Env Var - GIT_INSTALL_ROOT=C:\Program Files\Git
DEBUG(init.bat): Found Git in: 'C:\Program Files\Git'
DEBUG(:enhance_path_recursive): Env Var - add_path=D:\Portables\cmder\bin
DEBUG(:enhance_path_recursive): Env Var - position=
DEBUG(:enhance_path_recursive): Env Var - max_depth=1
DEBUG(:enhance_path_recursive): Adding parent directory - 'D:\Portables\cmder\bin'
DEBUG(:enhance_path): Env Var - find_query=D:\\Portables\\cmder\\bin
DEBUG(:enhance_path): Env Var 1 - found=0
DEBUG(:enhance_path): Env Var 2 - found=0
DEBUG(:enhance_path): BEFORE Env Var - PATH=C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64;C:\Program Files\Git\usr\bin
DEBUG(:enhance_path): Prepending 'D:\Portables\cmder\bin'
DEBUG(:enhance_path): AFTER Env Var - PATH=D:\Portables\cmder\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64;C:\Program Files\Git\usr\bin
DEBUG(:enhance_path): Env Var - find_query=D:\\Portables\\cmder
DEBUG(:enhance_path): Env Var 1 - found=0
DEBUG(:enhance_path): Env Var 2 - found=0
DEBUG(:enhance_path): BEFORE Env Var - PATH=D:\Portables\cmder\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64;C:\Program Files\Git\usr\bin
DEBUG(:enhance_path): Appending 'D:\Portables\cmder'
DEBUG(:enhance_path): AFTER Env Var - PATH=D:\Portables\cmder\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Yarn\bin\;C:\Users\epari\AppData\Roaming\nvm;C:\Program Files\nodejs;C:\Users\epari\AppData\Local\Microsoft\WindowsApps;C:\Users\epari\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\epari\AppData\Local\hyper\app-2.0.0\resources\bin;C:\Users\epari\AppData\Local\now-cli;D:\Path;C:\Users\epari\.dotnet\tools;C:\Program Files\dotnet;C:\Users\epari\AppData\Roaming\npm;C:\Users\epari\AppData\Local\Yarn\bin;C:\Program Files\Git\mingw64;C:\Program Files\Git\usr\bin;D:\Portables\cmder
DEBUG(init.bat): Env Var - HOME=C:\Users\epari
Not sure if a bug in VSCode, cmder or in the integration between the two.
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Reactions: 5
- Comments: 25 (9 by maintainers)
https://github.com/cmderdev/cmder/pull/2113
What works for me is just specifying
cmd.exe
intasks.json
(I don’t want to be polluting project-wide tasks with stuff specific to me) and passing the tasks as shell commands (as opposed to using thetype
property for things like gulp and npm). So at the top I have just that:… and instead of using the
type
property for things likenpm
andgulp
, I pass them on directly to the shell, i.e. instead ofI have
This even works to start tasks at project open. What doesn’t always work is interrupting the task with
Ctrl+C
(thus I have to kill the whole terminal instance), but it might be a different, unrelated bug.@ajaymittur28 , i created
vscode_init
script specially for fixing vscode tasks!Yes. I just re-tested in 1.33.1, and it works fine. This is my whole
tasks.json
file I used to use Cmder specifically as the task shell, since using it without spews plenty of garbage:Again, specifying it in the
tasks.json
file overrides just the task shell environment. Shouldn’t affect regular integrated terminal use, or the specified “terminal.integrated.shellArgs.windows” in the regularsettings.json
file.There is a hacky way to get tasks to work. As by default using the Cmder shell with tasks will fail. However, in the associated tasks.json file, we can override the VSCode shell and default behaviour for tasks, and have Cmder initialized a bit more manually:
This, when placed in the
tasks.json
file will override the shell specifically to run said tasks, without the need to modify the regular VSCodesettings.json
.I meet the same problem. When I run the build task, it will run perfect.
but when I run the “run task”, the terminal shows:

my tasks.json:
and my VSCode integrated settings are the same as @eparizzi . I had set the
%CMDER_ROOT%
.@eparizzi what you are seeing is cmder debug output normally enabled using the
init.bat /d
command. What command is being run in vscode config?already have a solution #2113
@StableCoder This works if I disable the “terminal.integrated.shellArgs.windows” setting, which defeats the whole purpose - if I want to open a new terminal without a task, it opens a bare cmd. I wouldn’t mind bare cmd for tasks themselves.