从我想要做的节点应用程序中:
var typeScript = require('typescript');
typeScript.compile('...')
Run Code Online (Sandbox Code Playgroud)
我正在寻求将编译器实现到构建系统但无法访问公共API(typescript.compile等),这是不可能的.
这是我想要做的更完整的示例,不过下面是针对LiveScript而不是TypeScript,在为Brunch.io构建系统编写的插件中使用的:
LiveScript = require 'LiveScript'
sysPath = require 'path'
module.exports = class LiveScriptCompiler
brunchPlugin: yes
type: 'javascript'
extension: 'ls'
constructor: (@config) ->
null
compile: (data, path, callback) ->
try
result = LiveScript.compile data, bare: yes
catch err
error = err
finally
callback error, result
include: [
(sysPath.join __dirname, '..', 'vendor', 'prelude-browser-0.6.0.js')
]
Run Code Online (Sandbox Code Playgroud)
好奇,如果有人找到了解决方法吗?
更新
我最终实现了我自己的解决方案,解决了上面和其他地方列出的各种问题.有关更多信息和用法,请参阅https://github.com/damassi/TypeScript-Watcher.
因此,微软为ST2提供语法高亮,但其他方面并不多.
构建一个可以复制许多IDE功能的插件有多难.我想如果他们可以在JS(在操场上)复制它,它不应该 - 作为ST2插件很难.我只是不确定从哪里开始......我知道如何构建ST2插件......但我对编译器,解析器等一无所知......