Я экспериментирую с TypeScript и использую Notepad++ для создания TypeScript и NppExec для компиляции моих скриптов. Похоже, это должно работать, но есть одна очень странная проблема: NppExec показывает мне вывод только до :
перед текстом первого предупреждения/сообщения об ошибке. Например, предположим, что вывод компиляции должен быть таким:
C:/temp/tstest/test.ts(26,14): Supplied parameters do not match any signature of call target
C:/temp/tstest/test.ts(33,9): Supplied parameters do not match any signature of call target
Что я увижу в окне консоли NppExec:
node C:\temp\tstest\node_modules\typescript\bin\tsc.js C:\temp\tstest\test.ts
Process started >>>
C:/temp/tstest/test.ts(26,14): <<< Process finished. (Exit code 1)
================ READY ================
Обратите внимание, что вывод был прекращен после первого ):
.
Очень интересно, что если я изменю движок JavaScript с Node на cscript (Windows Script Host), то он заработает... но навсегда! Вот что я увижу, если выполню ту же команду с помощью cscript:
cscript C:\temp\tstest\node_modules\typescript\bin\tsc.js C:\temp\tstest\test.ts
Process started >>>
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
C:/temp/tstest/test.ts(26,14): Supplied parameters do not match any signature of call target
C:/temp/tstest/test.ts(33,9): Supplied parameters do not match any signature of call target
<<< Process finished. (Exit code 1)
================ READY ================
Любые предложения о том, куда пойти с этим? Я бы предпочел использовать Node, так как он намного быстрее...
Вот видео, демонстрирующее все это: http://screencast.com/t/xxgodAU8
Редактировать: оказывается, если вы передадите переключатель -w
(переключатель "отслеживать файлы и перестраивать при изменении") в tsc.js, он будет работать при выполнении Node... но это не так. build только один раз, он продолжает сборку, и процесс не завершится, пока вы его не убьете.