如何在Windows系统中使用Sublime Text在外部控制台中运行程序?

hal*_*ngs 11 c++ windows console mingw sublimetext

我设法为C++配置Sublime Text 2,我现在可以编译我的代码(使用MinGW编译器).

不幸的是,Sublime Text控制台不支持C++的任何类型的输入.

我想在外部控制台(例如Window的终端)中打开我编译的程序.我尝试使用"call"或"c​​md"但无法使其正常工作.(它仍然在控制台中打开文件)

这是我的构建配置:

{
"cmd": ["C:\\MinGW\\bin\\mingw32-g++.exe", "-Wall", "-time", "$file", "-o", "$file_base_name"],
"cmd": ["call", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"working_dir": "${project_path:${folder}}",
"selector": "source.c",
"shell": true,
"encoding": "latin1"
}
Run Code Online (Sandbox Code Playgroud)

Fac*_*doJ 14

试试这个:

{
    "cmd": ["C:\\Dev-Cpp\\bin\\mingw32-g++.exe", "-static", "-Wall", "-time", "$file", "-o", "$file_base_name.exe", "&&", "start", "$file_base_name"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "working_dir": "${project_path:${folder}}",
    "selector": "source.c",
    "shell": true,
    "encoding": "latin1"
}
Run Code Online (Sandbox Code Playgroud)

诀窍是使用"start"命令执行生成的文件,该命令强制文件在新的cmd窗口中打开,并将所有内容放在第一个cmd定义中(使用&&以执行这两个命令),因为如果您定义了多个cmd数组,则会覆盖它们.


Ric*_*chS 8

@FacundoJ:在Mac上,您可以使用终端在外部运行应用程序.在C++.sublime-build中,更改cmd,以便它不是仅运行已编译的输出,而是在Terminal中启动它.

改变自:

"cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && '${file_path}/${file_base_name}'"]
Run Code Online (Sandbox Code Playgroud)

至:

"cmd": ["bash", "-c", "g++ '${file}' -o '${file_path}/${file_base_name}' && open -a Terminal.app '${file_path}/${file_base_name}'"]
Run Code Online (Sandbox Code Playgroud)