Primeiro, o arquivo de configuração do sistema de compilação C é o seguinte:
{
"shell":true,
"cmd": "cmd /c g++ -fexec-charset=GBK ${file} -o ${file_path}/${file_base_name} && start cmd /c \"${file_path}/${file_base_name} && pause\"",
"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c",
"variants":
[
{
"name": "Run",
"cmd": "cmd /c && start cmd /c \"${file_path}/${file_base_name} && pause\""
}
]
}
A instrução chave que determina a janela final de saída é cmd é:
"cmd": "cmd / c g ++ -fexec-charset = GBK $ {file} -o $ {file_path} / $ {file_base_name} && start cmd / c \" $ {file_path} / $ {file_base_name} && pause \ " ",
Esta frase contém os dois processos de compilação do arquivo e execução do arquivo binário gerado.
Supondo que o arquivo a ser compilado seja test.c e o caminho seja D: \ code \ test.c, o efeito do comando acima é o mesmo que o seguinte comando digitado manualmente na janela cmd:
g ++ -fexec-charset = GBK D: \ código \ teste.c -o D: \ código \ teste && D: \ código \ teste && pausa
Explicação:
1) -fexec-charset = GBK: para impedir a saída de caracteres chineses da janela cmd
2) iniciar cmd / c: reiniciar uma janela do cmd
Segundo, o arquivo de configuração do sistema de compilação Python é o seguinte:
{
"encoding":"cp936",
"shell":true,
"cmd": "start cmd /k python -u ${file}",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}