숭고한 텍스트 : 빌드 명령의 경로를 인쇄하지 마십시오


19

Sublime Text 3에 JavaScript 파일에 대한 다음 빌드 스크립트가 있습니다.

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

문제는 노드가 오류를 반환 할 때 어떤 이유로 Sublime이 줄 바꿈하지 않는 경로를 뿜어 내고 출력을 오염시키는 것입니다.

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\12.1\modelsim_ase\win32aloem;c:\altera\12.1sp1\modelsim_ase\win32aloem;c:\altera\12.1sp1\modelsim_ae\win32aloem]

Sublime에게 경로를 출력 하지 않도록 어떻게 요청할 수 있습니까?


나는 이것이 표준 오류 / 디버깅 출력의 일부라고 생각합니다. 그래도 옵션을 통해 비활성화하거나 플래그를 빌드하는 방법을
모르겠습니다

경로 출력을 비활성화하는 대신 빌드 출력 창에서 자동 줄 바꿈을 비활성화 할 수 있습니다. 빌드 창이 활성화되어 있는지 확인한 다음 View -> Word Wrap비활성화하십시오. 완벽한 솔루션은 아니지만 Sublime Text의 내부를 수정하는 것보다 훨씬 간단합니다.
anishpatel

답변:


12

약간의 해킹이지만 다음이 나를 위해 일했습니다. 경로 출력을 담당하는 코드를 포함하여 일부 기본 패키지의 코드를 무시할 수 있습니다.

  1. C : \ Program Files \ Sublime Text 3 \ Packages로 이동하십시오.
  2. Default.sublime-package (실제로 zip 파일)를 추출하고 exec.py 파일을 가져옵니다 (추출 된 폴더를 디렉토리에 두지 마십시오)
  3. C : \ Users \ USERNAME \ AppData \ Roaming \ Sublime Text 3 \ Packages 아래에 Default 디렉토리를 만들고 exec.py를 여기에 넣으십시오.
  4. exec.py를 열고 245 줄에서 다음 줄을 주석 처리하십시오 (줄의 시작 부분에 #을 배치하십시오).

    self.append_string (proc, self.debug_text)

  5. 숭고한 텍스트 다시 시작

이것은 나를 위해 일을했다 :)
Stephn_R

6

PackageResourceViewer 패키지 설치

PackageResourceViewer 열기 : CommandPalette를 사용하여 리소스 열기 [Ctrl + Shift + P]

그런 다음 Default-> exec.py를 선택한 다음 Sublime Input-> input.py를 선택하십시오 [Sublime Input의 경우]

365 행에서 다음 행을 주석 처리 (줄의 시작 부분에 # 배치) [ST3 B3126] (sublime Input의 경우 383)

self.append_string(proc, self.debug_text)

이것은 경로를 숨길뿐만 아니라 dir과 cmd도 숨 깁니다.

경로 만 숨기려면 다음 블록을 주석 처리하십시오.

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

최신 정보

빌드 파일에서 cmd, fineded statement, dir, path "quiet": true를 제거하려면

출처


좋은! 이것을 토글하는 설정이 있었으면 좋겠습니다. 같은"error_info": ["cmd", "dir", "path"]
놀란 Conaway

@NolanConaway 있습니다
SmartManoj

당신이 그것을 가리킬 수 있습니까? 설명서에서 아무것도 찾을 수 없습니다.
Nolan Conaway

@ NolanConaway 조용한 열쇠
SmartManoj

@ SmartManoj 아, 예, 그 옵션에 대해 알고 있습니다. 그러나 이는 경과 시간 등이 인쇄되지 않도록합니다. 정말 경로를 제거하고 싶습니다!
Nolan Conaway
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.