web-dev-qa-db-fra.com

Sass ou Compass sans rubis?

Y at-il un moyen d'utiliser Sass ou Compass ou quelque chose comme ça sans Ruby?

J'ai cherché sur Google et sur ce site et je ne trouve rien. Toute aide serait la bienvenue. Merci

98
Troy Cosentino

Sass a été écrit à l'origine pour Ruby, mais ils ont maintenant créé libSass qui est un C/C++ _ port du moteur Sass, ce qui facilite l’intégration du moteur dans un IDE ou une autre langue. À ce stade, vous pouvez utiliser le moteur Sass en Ruby, Node .js , Python , PHP , Java , . NET et autres. Pour plus d’informations, visitez libSass . De plus, votre IDE pourrait avoir un plugin qui prendrait en charge Sass, sans avoir besoin de Ruby en utilisant libSass.

La réponse originale ci-dessous peut s’appliquer ou non à votre situation (selon que votre langue a ou non pris en charge le support de libSass). J'ai décidé de le laisser tel quel pour des raisons d'archivage.


Sass (nécessite Ruby)

Sass est écrit en Ruby, vous aurez donc besoin de Ruby également installé. Tiré du site de sass)

Compass (nécessite Ruby, car il est basé sur SASS)

Compass est un framework de création CSS open-source qui utilise le langage de feuille de style Sass pour rendre l’écriture de feuilles de style puissante et facile. extrait du site de Compass

Less (écrit en js, nécessite node.js ou less.js inclus dans la page)

LESS étend CSS avec un comportement dynamique tel que variables, mixins, opérations et fonctions. LESS fonctionne aussi bien du côté client (Chrome, Safari, Firefox) que du côté serveur, avec Node.js et Rhino. Tiré du site de Less

Ce sont les principaux processeurs que je connaisse. Vous pouvez écrire votre propre analyseur/port pour toute autre langue de votre choix.

En d'autres termes, non, vous ne pouvez pas utiliser sass/compass sans avoir Ruby car le programme lui-même (sass & compass) IS écrit en Ruby. Donc vous J'en aurai certainement besoin pour l'exécuter.

51
tftd

C'est vrai que la question n'est pas assez claire, mais je vais essayer de résoudre certains problèmes. There are autres pré-processeurs CSS qui ne reposent pas sur Ruby (deux me viennent à l’esprit en ce moment) sont Less , que j'ai utilisé et aimé, mais pas aussi puissant que Sass, et Stylus , que je n'ai pas utilisé, tous deux basés sur JavaScript), mais que vous posez spécifiquement sur Sass + Compass, et comme je cherche toujours la même réponse, je vais en parler.

@JamundFerguson a déclaré:

Est-il possible de compiler Sass sans Ruby? Dépend.

Il y a

Sass est un langage de prétraitement. Il y a un compilateur intégré Ruby pour lui et tout le monde peut écrire un compilateur dans n'importe quel langage. Il y a une implémentation C d'un compilateur Sass appelé libsass qui peut être utilisée sur n'importe quel langage qui permet d'importer des librairies C. C'est la librairie utilisée par node-sass , qui est un compilateur intégré dans Node.js , que je n'ai pas encore essayé et don Je ne sais pas comment cela pourrait fonctionner et s’il est prêt pour la production. C’est peut-être une question de temps pour le portage de Compass (vous finirez peut-être par le faire?) et nous pouvons donc avoir un compilateur qui ne dépend pas de la Ruby gem (actuellement, il existe un module node-compass ) qui fait s'appuie sur le Ruby = gem).

Autres langues

Jusqu'à présent, j'ai mentionné la possibilité d'un compilateur Node.js, qui, comme vous le savez peut-être, est un environnement JavaScript, qui est la langue du Web et la langue de mon choix. Mais vous n'avez pas précisé la langue dans laquelle vous souhaitez écrire le compilateur. Je pense qu'il peut y avoir des compilateurs construits dans de nombreux langages, par exemple, @EricMeyer a mentionné un compilateur Python . Peut-être qu'il utilise pyScss ? Cela semble avoir un support intégré pour Compass. Mais alors vous avez besoin d’un environnement Python. Le problème est donc: vous aurez besoin de l’environnement pour un compilateur sauf si vous exécutez des fichiers binaires natifs compilés. (Less a less.js qui peut être inclus sur la page pour exécuter côté client et éviter l'étape de compilation, mais ce n'est pas fait pour l'utiliser en production.)

Applications natives

Cela fait un an que je travaille avec CodeKit , qui fonctionne très bien, compile les langages Sass/Compass, Less, Stylus et modèles comme Haml, Slim, Jade, etc. Reconstruit vos actifs lorsqu'ils changent automatiquement et vous voyez le changé sur votre navigateur immédiatement. La seule chose qui ne me plaisait pas, c'est que lorsque je passais à un autre ordinateur, que j'installais CodeKit, que je vérifiais le projet et que je tentais de l'utiliser, je devais reconfigurer les paramètres du projet, ce dont je devais me souvenir afin de pouvoir obtenir une version. comme celui que j'ai fait dans l'autre ordinateur. De plus, j'ai commencé à travailler avec une équipe et ils devaient également configurer le projet avec les mêmes paramètres (parfois, ne pas avoir la même configuration de projet entraînant de très incohérences) et les membres de l'équipe utilisant Ubuntu ne pouvaient pas l'utiliser. C'est pourquoi j'ai commencé à réfléchir à la création d'un outil en ligne de commande pour la construction de projets. J'ai découvert Grunt immédiatement et je suis tombé amoureux de celui-ci. Comme @Dave l’a mentionné, il y a Scout et aussi il y a LiveReload , mais ne les a pas utilisés.

Conclusion

La conclusion est que je n'ai pas de conclusion solide. Je cherche toujours la même réponse, mais j'espère que cette réponse jette un peu de lumière sur l'état de la compilation de Sass/Compass en dehors de l'environnement Ruby.

En fait, il existe une bibliothèque qui lie Node.js à libsass, la version C de Sass: https://npmjs.org/package/node-sass

Il vous permet de compiler nativement des fichiers .scss en CSS à une vitesse incroyable sans Ruby installé.

Pour installer, lancez simplement:

npm install node-sass

Et il y a aussi une extension Grunt si nécessaire: https://github.com/sindresorhus/grunt-sass (c'est ce que je cherchais dans cette question)

En savoir plus sur: https://github.com/andrew/node-sass

25
gkond

Juste une petite mise à jour à ce sujet, vous pouvez utiliser les fichiers SCSS/SASS et générer les fichiers corrects à la volée sans installer Ruby) à l’aide d’un programme appelé Scout.

Scout a son propre environnement Ruby) et est codé dans Java, assurez-vous donc que Java est à jour avant using. Linky here.

Cordialement :)

11
Dave

Vous pouvez réellement analyser sass sans Ruby, vous pouvez utiliser node-sass. détails ici: https://github.com/andrew/node-sass

3
Dean Peterson

Adobe Brackets (gratuit, open source) peut compiler LESS, SASS et Stylus lorsque les fichiers sont modifiés et mettre à jour les styles au cours de aperçu en direct, il vous suffit d’installer les extensions requises à partir du gestionnaire d’extensions. Obtenez supports et profitez-en!

Edit: Comme d'autres questions le suggèrent node-sass est également une bonne option si vous avez déjà installé nodejs.

2
Bangash

Si c'est pour .NET, il y a maintenant n wrapper pour libsass . Disponible à partir de Nuget .

2
Amir Abiri