编译保存CoffeeScript?

有没有办法轻松编译保存CoffeeScript? 我正在使用TextMate或Sublime Text 2。

Coffeescript有一个“手表”function。 你可以设置一个半永久性的过程:

coffee –wc -o media/js/ src/coffee/*.coffee 

对于每个扩展名为“.coffee”的文件,每次保存时都会将相应的编译后的“.js”文件放入目标文件夹中。

也就是说,我使用makefile和fabfile,因为我的HTML是HAML,我的CSS是LessCSS,而我的开发目录不是我的testingpath,所以我需要足够聪明的东西来“构build和部署”。

如果您的机器支持inotify,则可以使用inotifywait来查看整个工作path,并根据需要调用Make。 但是在那个时候,你已经陷入了一个核心风格。

你也可以不用命令行来完成这个任务:

  1. 向Sublime Text添加构build过程 。
  2. 确保在“ Tools菜单中select了“ Save All on BuildSave All on Build
  3. 保存时使用⌘B而不使用⌘S。

所以不是在保存时编译,而是在编译时保存。

Sublime最直接的解决scheme是安装称为Better Coffeescript的Sublime包(首选项 – >包控制 – >安装包…),然后确保其configuration包含"compileOnSave": true (首选项 – >软件包设置 – >更好的咖啡文件…)。 然后重新启动Sublime。

对于崇高,其他任何东西都不够或者太多的额外的组件。 升级到Sublime 3之后就来到了这里,它就像Sublime 3的魅力(就像Sublime 2那样,我刚开始忘了它)。

那么coffee --watch有两个主要缺陷:

  • 在命令发出后创build的新文件没有被监视
  • 需要手动启动,所以可能会有一个机会,你忘了这样做,这听起来并不比忘记编译之前你git commit它更辉煌

我想出的解决scheme是一个相当简单的Bash脚本,需要coffee --watch进一步coffee --watch几步,这将允许您的工作目录树自从系统logincoffee --watch监视,并自动在每个文件保存/更改编译成JavaScript或新build文件:

http://blog.gantrithor.com/post/11609373640/carefree-coffeescript-auto-compiler

有可能是更优雅的方式来做到这一点,但是这个实现很好=)

如果你还想捆绑,build设者提供观看和捆绑: https : //github.com/balupton/buildr.npm

(Java | Coffee)脚本和(CSS | Less)(Builder | Bundler | Packer | Minifier | Merger | Checker)

 gem install stasis stasis -d 

我发现最好的解决scheme与所有其他静态编译工具,如StaticMatic,Middleman等相比

非常灵活和可configuration,不依赖于任何预设的文件夹结构。 只需添加controller.rb并编写一些Ruby。 很多助手在编译之前/之后做些聪明的事情。

https://github.com/winton/stasis

我喜欢codekit :)简单而有效的方式来编译coffeescript,sass,less,haml等等,还有很多细节。 http://incident57.com/codekit/