45 votes

Compiler CoffeeScript lors de la sauvegarde ?

Existe-t-il un moyen de compiler facilement CoffeeScript lors de la sauvegarde ? J'utilise TextMate ou Sublime Text 2.

66voto

Elf Sternberg Points 9764

Coffeescript a une fonction de "surveillance". Vous pourriez la mettre en place, comme un processus semi-permanent :

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

Et pour chaque fichier portant l'extension ".coffee", le fichier compilé ".js" correspondant sera placé dans le répertoire cible à chaque sauvegarde.

Cela dit, j'utilise un makefile et un fabfile, car mon HTML est HAML, mon CSS est LessCSS, et mon répertoire de développement n'est pas mon chemin de test, donc j'avais besoin de quelque chose d'assez intelligent pour "construire et déployer".

Si votre machine supporte inotify, vous pouvez utiliser inotifywait pour surveiller l'ensemble de votre parcours de travail et appeler Make si nécessaire. Mais à ce stade, vous êtes dans le domaine du geekisme pur et dur.

19voto

Jed Schmidt Points 2055

Vous pouvez également effectuer cette opération sans passer par la ligne de commande :

  1. Ajouter un processus de construction à Sublime Text .
  2. Assurez-vous que Save All on Build est sélectionné dans le Tools menu.
  3. Utilisez ⌘B au lieu de ⌘S lors de la sauvegarde.

Donc au lieu de compiler en sauvegardant, vous sauvegardez en compilant.

3voto

matt Points 946

La solution la plus simple avec Sublime, est d'installer le paquet Sublime appelé Better Coffeescript (préférences --> contrôle des paquets --> installer le paquet...), puis de s'assurer que sa configuration inclut "compileOnSave": true (préférences --> paramètres du paquet --> Meilleur Coffeescript...). Puis redémarrez Sublime.

Pour Sublime, tout le reste n'est pas suffisant ou comporte trop de composants supplémentaires. Je suis venu ici après avoir fait la mise à jour vers Sublime 3, et cela fonctionne comme un charme pour Sublime 3 (comme pour Sublime 2, j'avais juste oublié au début).

2voto

gsklee Points 151

Bien coffee --watch a deux défauts majeurs :

  • Les nouveaux fichiers créés après l'émission de la commande ne sont pas surveillés.
  • Requiert une initiation manuelle, il peut donc y avoir une chance que vous oubliiez de le faire, ce qui ne semble pas plus brillant que d'oublier de compiler avant d'avoir git commit il

La solution que j'ai trouvée est un script Bash assez simple qui prend coffee --watch quelques étapes supplémentaires qui permettront à l'arbre de votre répertoire de travail d'être surveillé depuis la connexion du système, et d'être automatiquement compilé en JavaScript à chaque sauvegarde/changement de fichier. ou la création d'un nouveau fichier :

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

Il y a peut-être une façon plus élégante de le faire, mais cette implémentation fonctionne très bien =)

1voto

balupton Points 17805

Si vous souhaitez également faire du bundling, buildr propose également l'observation et le bundling : https://github.com/balupton/buildr.npm

Le (Java|Coffee)script et (CSS|Less) (Builder|Bundler|Packer|Minifier|Merger|Checker)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X