Ich baue ein Skript in Ruby, wo ich mit Compass eine einzige SCSS-Datei kompilieren möchte. Ich versuche, dies so einfach wie möglich zu machen, und möchte vermeiden, eine config.rb-Datei zu verwenden. Ich möchte nur ein paar Einstellungen über direktes Ruby festlegen und Compass anweisen, eine einzelne SCSS-Datei in eine CSS-Datei zu kompilieren.
Ich weiß, dass dies möglich sein muss, aber ich habe keine vernünftige Dokumentation darüber finden können. Jede Hilfe wäre willkommen.
Sie haben Recht, es gibt keine umfassende Dokumentation darüber, wie Sie Compass von Ruby verwenden. Das ist bedauerlich, aber lasst uns nicht durch kleine Details wie Dokumentation davon abhalten!
Als ich das gleiche machen wollte, stocherte ich einfach in der Compass Quelle und konnte dieses kleine Ruby-Skript zusammenstellen. Auf den ersten Blick scheint es der Trick zu sein:
%Vor% Aber anscheinend hat Compass eine Reihe von Standardkonfigurationsoptionen, die nicht automatisch einbezogen werden, wenn der Compilerkonstruktor direkt aufgerufen wird (von dem die SASS load_path
eins ist). Dies kann zu Fehlern führen, wenn Sie versuchen, Kompassfunktionen und Mixins zu importieren, beispielsweise:
error: Zu importierende Datei nicht gefunden oder nicht lesbar: compass / css3
So rufen Sie den Compiler auf, ohne diese Standardwerte zu überschreiben:
%Vor% Ab Compass Version 1.0.0 wurde Compass.compiler
jedoch zugunsten von Compass.sass_compiler
abgelehnt, was zu ...
Mit @philipp zum Suchen nach wie Sie die neue API verwenden , können wir dieses Snippet erneut aktualisieren, um mit Compass.sass_compiler
:
Rufen Sie einfach die Kompiliermethode über die Befehlszeile auf. Sie können dort jede Option angeben. Um alle Optionen anzuzeigen, führen Sie compass help compile
.
Unten ist ein Beispiel. Es wird die kompilierte CSS-Datei im selben Verzeichnis wie die test.scss-Datei ausgeben.
%Vor%Sie können so viele Optionen angeben und interpolieren, wie Sie möchten. Überprüfen Sie dies auch für die Ausführung von Befehlen in Ruby:
Tags und Links ruby sass compass-sass