我正在尝试使用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脚本宿主),那么它可以工作......但需要永远!如果我用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执行时起作用。 ..但它不会只构建一次,它会继续构建,直到你杀死它才会结束。
答案 0 :(得分:1)
我开始了一个记事本++插件项目。 你可以在这里找到它: https://github.com/hansrwindhoff/nppPluginTypescript.git
在保存时编译 并在nodejs中运行js
如果有人想要聪明,那就太棒了!
有一个语法着色xml文件: https://gist.github.com/wate/5077019 这个要点与我无关。
答案 1 :(得分:0)
我没有答案,但我可以就攻击计划给你一些想法。
可能整个消息正在输出但是一些特殊字符或序列使得Notepad ++停止处理它。将输出重定向到文件以查看其中发生的情况。 hex editor插件可能有所帮助。有了这些知识,您可以通过awk或sed之类的工具来管理命令输出,以重写有问题的位,以便Notepad ++喜欢它。
答案 2 :(得分:0)
我之前在Codeplex开始了一项功能请求。问题似乎是nodejs刷新其缓冲区的方式。请参阅github和codeplex上的讨论:
http://typescript.codeplex.com/workitem/115
https://github.com/joyent/node/issues/4640#issuecomment-12542632
您可能想要对请求进行投票,因此优先级会提高。