Sass ou Compass sans rubis?


102

Existe-t-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 appréciée. Je vous remercie



3
Est-ce une vraie question? Je veux dire que ce que tu veux dire n'est pas clair. Existe-t-il d'autres pré-processeurs CSS qui ne reposent pas sur Ruby? Oui. Existe-t-il un moyen de compiler Sass sans Ruby? Dépend. Nous avons besoin de plus d'informations.
Jamund Ferguson

Mais vous ne spécifiez pas dans quelle langue vous préféreriez que l'analyseur soit écrit.
Alejandro García Iglesias

1
Existe-t-il un moyen de télécharger une version pré-compilée?
William

Réponses:


53

Sass a été initialement écrit pour Ruby, mais maintenant ils ont créé libSass qui est un C/C++portage du moteur Sass, ce qui facilite l'intégration du moteur dans un IDE ou un autre langage. À ce stade, vous pouvez utiliser le moteur Sass dans 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 le libSass.

La réponse originale ci-dessous peut s'appliquer ou non à votre situation (cela dépend du fait que votre langue a implémenté ou non 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. Tiré du site de Compass

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

LESS étend le CSS avec un comportement dynamique tel que des variables, des mixins, des opérations et des fonctions. LESS s'exécute à la fois côté client (Chrome, Safari, Firefox) et côté serveur, avec Node.js et Rhino. Tiré du site de Less

Ce sont les principaux processeurs que je connais. 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) EST écrit en Ruby. Vous en aurez donc certainement besoin pour l'exécuter.


C'est techniquement précis mais pas vraiment au point car divers plugins peuvent s'en occuper pour vous. Par exemple, dans Visual Studio, il existe le plugin Mindscape Workbench qui possède un environnement Ruby autonome dont vous n'aurez pas à vous soucier. Il n'inclura cependant pas de boussole pour vous, ce qui est un peu décevant.
George Mauer

@TroyCosentino or Stylus
Alejandro García Iglesias

Non, je n'ai pas essayé de trouver des compilateurs similaires dans d'autres langues. Vous devriez être capable d'écrire une compilation à partir de zéro dans à peu près n'importe quel langage correct, mais cela vous prendra probablement beaucoup de temps. Vous devrez d'abord être capable d'analyser le css (et détecter toute erreur dans la syntaxe css) et ensuite vous devrez "compiler" (ce qui est principalement un reformatage - c'est-à-dire que le code css est une ligne) le css. Après cela, vous voudrez probablement ajouter plusieurs css avec héritage. Si vous sentez que vous avez le temps, vous pouvez essayer de le faire et partager le résultat avec nous :)
tftd

1
LESS est également possible de manière native dans .NET à l'aide du package dotLESS NuGet.
David Boike

27

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

@JamundFerguson a déclaré:

Existe-t-il un moyen de compiler Sass sans Ruby? Dépend.

Il y a

Sass est un langage de prétraitement. Il existe un compilateur intégré à Ruby pour cela et n'importe qui peut écrire un compilateur dans n'importe quel langage. Il existe une implémentation en C d'un compilateur Sass appelé libsass qui peut être utilisé sur n'importe quel langage permettant d'importer des bibliothèques C. C'est la bibliothèque utilisée par node-sass , qui est un compilateur intégré à Node.js , que je n'ai pas encore essayé et je ne sais pas comment cela pourrait fonctionner et s'il est prêt pour une utilisation en production. Il peut être une question de temps pour Compass à être porté (vous finissez peut - être jusqu'à le faire?) Et nous pouvons avoir un compilateur qui ne dépend de la gemme Ruby (actuellement, il y a un nœud boussole module qui ne repose sur la gemme Ruby).

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, étant le langage du Web et mon langage de choix. Mais vous n'avez pas spécifié 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. Donc, la chose est: vous aurez besoin d' un environnement pour un compilateur à moins que vous n'exécutiez des binaires compilés nativement. (Less a less.js qui peut être inclus sur la page pour exécuter côté client et éviter l'étape de compilation, mais il n'est pas destiné à l'utiliser en production.)

Applications natives

J'ai travaillé pendant un an avec CodeKit, qui fonctionne très bien, compile Sass / Compass, Less, Stylus et les langages de modèle comme Haml, Slim, Jade, etc. Reconstruit vos actifs lorsqu'ils changent automatiquement et que vous voyez immédiatement le changement sur votre navigateur. La seule chose que je n'aimais pas, c'est que lors du passage à un autre ordinateur, de l'installation de CodeKit, de la vérification du projet et de son utilisation, je devais reconfigurer les paramètres du projet, dont je devais me souvenir pour pouvoir accéder à une version comme celui que j'ai créé sur l'autre ordinateur. J'ai également commencé à travailler avec une équipe, et ils ont également dû configurer le projet avec les mêmes paramètres (parfois, le fait de ne pas avoir la même configuration de projet entraînait de vilaines incohérences) et les membres de l'équipe utilisant Ubuntu ne pouvaient pas l'utiliser. Cette'immédiatement, et en est tombé amoureux. Comme @Dave l'a mentionné, il y a Scout et LiveReload , mais je ne les ai 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.


1
Pour l'état de libsass: solitr.com/blog/2014/01/state-of-libsass , dont dépendent node-sass et les autres bibliothèques sass.
Ehtesh Choudhury

27

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

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

Pour installer, exécutez 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)

Pour en savoir plus: https://github.com/andrew/node-sass


1
grunt-sass était ce que je cherchais.
9ilsdx 9rvj 0lo

11

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

Scout a son propre environnement Ruby autonome et est codé en java alors assurez-vous que java est à jour avant de l'utiliser. Linky ici.

Cordialement :)


8
Je préfère ruby ​​plutôt que java;)
basarat

En fait, au moment où j'écris ce Scout utilise Adobe Air. Peut-être qu'une ancienne version utilisait Java?
iconoclaste

3
toujours rubis mieux que l'air :)
x0x



2

Adobe Brackets (gratuit, open source) peut compiler LESS, SASS et Stylus lorsque les fichiers sont modifiés, et mettre à jour les styles pendant l'aperçu en direct, il vous suffit d'installer les extensions requises à partir du gestionnaire d'extensions. Obtenez des 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.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.