Скомпилировать CoffeeScript при сохранении? - PullRequest
45 голосов
/ 09 июня 2011

Есть ли способ легко скомпилировать CoffeeScript при сохранении? Я использую TextMate или Sublime Text 2.

Ответы [ 7 ]

66 голосов
/ 09 июня 2011

Coffeescript имеет функцию «смотреть».Вы можете настроить как полупостоянный процесс:

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

И для каждого файла с расширением ".coffee" соответствующий скомпилированный файл ".js" будет каждый раз помещаться в целевой каталог.Вы сохраняете.

Тем не менее, я использую make-файл и fabfile, потому что мой HTML - это HAML, мой CSS - это LessCSS, а моя директория разработки - это не мой тестовый путь, поэтому мне нужно что-то достаточно умное для "сборки".и развернуть. "

Если ваша машина поддерживает inotify, вы можете использовать inotifywait, чтобы просмотреть весь рабочий путь, и при необходимости вызвать Make.Но в этот момент вы увлечены острой фигурой.

19 голосов
/ 26 августа 2011

Вы также можете выполнить это без командной строки:

  1. Добавить процесс сборки в Sublime Text .
  2. Убедитесь, что в меню Tools выбран Save All on Build.
  3. Используйте savingB вместо ⌘S при сохранении.

Таким образом, вместо компиляции при сохранении вы экономите при компиляции.

3 голосов
/ 28 апреля 2014

Самое простое решение с Sublime - это установить пакет Sublime под названием Better Coffeescript (настройки -> управление пакетами -> установить пакет ...), а затем убедиться, что его конфигурация включает "compileOnSave": true (настройки --> Настройки пакета -> Лучше Coffeescript ...).Затем перезапустите Sublime.

Для Sublime чего-либо еще недостаточно или слишком много дополнительных компонентов.Просто пришел сюда после обновления до Sublime 3, и он работает как шарм для Sublime 3 (как это было для Sublime 2, я просто забыл об этом сначала).

2 голосов
/ 19 октября 2011

Ну coffee --watch имеет 2 основных недостатка:

  • Новые файлы, созданные после ввода команды, не просматриваются
  • Требуется ручное инициирование, так что может быть шанс, что вы забудете это сделать, что звучит не более блестяще, чем забыть собрать перед вами git commit it

Решение, которое я придумал, - это довольно простой Bash-скрипт, который делает coffee --watch на несколько шагов дальше, что позволит просматривать ваше рабочее дерево каталогов с момента входа в систему и автоматически компилироваться в JavaScript для каждого файла save / менять или создание нового файла:

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

Может быть более элегантный способ сделать это, но эта реализация прекрасно работает =)

1 голос
/ 30 марта 2012
gem install stasis
stasis -d

Лучшее решение, которое я нашел, по сравнению со всеми другими инструментами статической компиляции, такими как StaticMatic, Middleman и т. Д.

Очень гибкое и настраиваемое и не зависит от какой-либо предустановленной структуры папок.Просто добавьте controller.rb и напишите немного Ruby.Много помощников для выполнения умных вещей до / после компиляции.

https://github.com/winton/stasis

1 голос
/ 20 сентября 2011

Если вы также хотите связать, buildr также предлагает просмотр и связывание: https://github.com/balupton/buildr.npm

Скрипт (Java | Coffee) и (CSS | Less) (Builder | Bundler | Packer | Minifier | Merger | Checker)

0 голосов
/ 19 апреля 2013

Мне нравится codekit :) Простой и эффективный способ компилировать coffeescript, sass, less, haml и другие, с множеством тонкостей.http://incident57.com/codekit/

...