Sublime text: Não imprime o caminho do comando de compilação

19

Eu tenho o seguinte script de construção para meus arquivos JavaScript no Sublime Text 3.

{
  "shell_cmd": "node --harmony --use-strict --harmony_generators $file"
}

O problema é que, quando o nó retorna um erro, por algum motivo, o Sublime lança o caminho, que não quebra a linha, e polui a saída.

C:\Users\JFD\Desktop\playground.js:2
console.log(b); // ReferenceError: a is not defined
        ^
ReferenceError: b is not defined
    at Object.<anonymous> (C:\Users\JFD\Desktop\playground.js:2:13)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:349:32)
    at Function.Module._load (module.js:305:12)
    at Function.Module.runMain (module.js:490:10)
    at startup (node.js:119:16)
    at node.js:827:3
[Finished in 0.1s with exit code 8]
[shell_cmd: node --harmony --use-strict --harmony_generators C:\Users\JFD\Desktop\playground.js]
[dir: C:\Users\JFD\Desktop]
[path: C:\Program Files (x86)\Microchip\xc8\v1.11\bin;C:\Program Files (x86)\CMake 2.8\bin;C:\MinGW\bin;C:\yagarto4.6.0\bin;C:\Python26\;C:\Python26\Scripts;C:\Program Files (x86)\Altium Designer S09 Viewer\System;C:\PROGRA~2\MpAM;C:\windows\system32;C:\Program Files\nodejs\;C:\Cadence\SPB_16.6\tools\bin;C:\Cadence\SPB_16.6\tools\libutil\bin;C:\Cadence\SPB_16.6\tools\fet\bin;C:\Cadence\SPB_16.6\tools\specctra\bin;C:\Cadence\SPB_16.6\tools\pcb\bin;C:\Cadence\SPB_16.6\openaccess\bin\win32\opt;C:\Cadence\SPB_16.6\tools\capture;C:\Users\JFD\AppData\Roaming\npm\;c:\altera.1\modelsim_ase\win32aloem;c:\altera.1sp1\modelsim_ase\win32aloem;c:\altera.1sp1\modelsim_ae\win32aloem]

Como posso pedir ao Sublime para não mostrar o caminho?

    
por Randomblue 09.07.2013 / 17:22

2 respostas

12

Um pouco de um hack, mas o seguinte funcionou para mim. Acontece que você pode substituir o código em alguns dos pacotes padrão, incluindo o código responsável pela saída do caminho:

  1. Ir para C: \ Arquivos de programas \ Sublime Text 3 \ Packages
  2. Extraia o pacote Default.sublime (na verdade, é um arquivo zip) e obtenha o arquivo exec.py (não deixe a pasta extraída pendurada no diretório)
  3. Crie o diretório Padrão em C: \ Usuários \ USERNAME \ AppData \ Roaming \ Sublime Texto 3 \ Pacotes e coloque exec.py nele
  4. Abra exec.py e comente (coloque # no começo da linha) a seguinte linha, na linha 245 para mim

    self.append_string (proc, self.debug_text)

  5. Reiniciar texto sublime
por 05.10.2013 / 20:18
6

Instale o pacote PackageResourceViewer

Abra o PackageResourceViewer: Abra o recurso usando o CommandPalette [Ctrl + Shift + P]

Em seguida, selecione Padrão - > exec.py Em seguida, selecione Entrada Sublime - > input.py [Para Entrada Sublime]

Comente (coloque # no começo da linha) a seguinte linha, na linha 365 [ST3 B3126] (383 para entrada Sublime) para mim

self.append_string(proc, self.debug_text)

Isso não é apenas esconder o caminho, mas o dir e o cmd também.

Para ocultar apenas o caminho, comente o seguinte bloco

if "PATH" in merged_env:
  self.debug_text += "[path: " + str(merged_env["PATH"]) + "]"
else:
  self.debug_text += "[path: " + str(os.environ["PATH"]) + "]"

Atualizar

Para remover cmd, instrução acabada, dir, caminho "quiet": true no arquivo de compilação

Fonte

    
por 25.05.2017 / 17:12