Ruby Sass Kommandozeilen- Interface
⚠️ Vorsicht!
Ruby Sass hat das Lebensende erreicht und wird nun vollständig nicht mehr gepflegt. Bitte steigen Sie so bald wie möglich auf Dart Sass oder LibSass um.
VerwendungPermalien für Verwendung
Die Ruby Sass-Executable kann in zwei Modi aufgerufen werden.
Ein-zu-eins-ModusEin-zu-eins-Modus Permalink
sass [input.scss] [output.css]
Der Ein-zu-eins-Modus kompiliert eine einzelne Eingabedatei (input.scss) an einen einzelnen Ausgabeort (output.css). Wenn kein Ausgabeort angegeben wird, wird das kompilierte CSS im Terminal ausgegeben. Wenn weder Eingabe noch Ausgabe angegeben werden, wird das CSS von der Standardeingabe gelesen und im Terminal ausgegeben.
Die Eingabedatei wird als SCSS geparst, wenn ihre Erweiterung .scss ist, oder als die eingezogene Syntax, wenn ihre Erweiterung .sass ist. Wenn sie keine dieser beiden Erweiterungen hat oder aus der Standardeingabe kommt, wird sie standardmäßig als eingezogene Syntax geparst. Dies kann mit dem --scss Flag gesteuert werden.
Viele-zu-viele-ModusViele-zu-viele-Modus Permalink
sass [<input.css>:<output.css>] [<input/>:<output/>] [input.css] [input/]...
Der Viele-zu-viele-Modus kompiliert eine oder mehrere Eingabedateien in eine oder mehrere Ausgabedateien. Die Eingaben werden durch Doppelpunkte von den Ausgaben getrennt. Er kann auch alle Sass-Dateien in einem Verzeichnis in CSS-Dateien mit denselben Namen in einem anderen Verzeichnis kompilieren. Der Viele-zu-viele-Modus wird aktiviert, wenn ein Argument einen Doppelpunkt enthält oder wenn das --update Flag oder das --watch Flag übergeben wird.
Wenn eine Eingabedatei ohne entsprechende Ausgabedatei übergeben wird, wird sie in eine CSS-Datei kompiliert, die denselben Namen wie die Eingabedatei hat, aber mit der Erweiterung .css. Wenn ein Eingabeverzeichnis ohne entsprechendes Ausgabeverzeichnis übergeben wird, werden alle Sass-Dateien darin in CSS-Dateien im selben Verzeichnis kompiliert.
$ sass style.scss:style.css
write style.css
write style.css.map
$ sass light.scss:light.css dark.scss:dark.css
write light.css
write light.css.map
write dark.css
write dark.css.map
$ sass themes:public/css
write public/css/light.css
write public/css/light.css.map
write public/css/dark.css
write public/css/dark.css.map
Beim Kompilieren ganzer Verzeichnisse ignoriert Sass Teildateien, deren Namen mit _ beginnen. Sie können Teildateien verwenden, um Ihre Stylesheets zu trennen, ohne unnötige Ausgabedateien zu erzeugen.
Der Viele-zu-viele-Modus kompiliert nur Stylesheets, deren Abhängigkeiten neuer modifiziert wurden als die entsprechende CSS-Datei generiert wurde. Er gibt auch Statusmeldungen aus, wenn Stylesheets aktualisiert werden.
OptionenOptionen Permalink
AllgemeinAllgemein Permalink
--load-pathPermalien für –load-path
Diese Option (abgekürzt -I) fügt einen zusätzlichen Ladepfad hinzu, den Sass nach Stylesheets durchsuchen kann. Sie kann mehrmals übergeben werden, um mehrere Ladepfade anzugeben. Frühere Ladepfade haben Vorrang vor späteren Lade pfaden.
$ sass --load-path=node_modules/bootstrap/dist/css style.scss style.css
Ladepfade werden auch aus der Umgebungsvariable SASS_PATH geladen, falls diese gesetzt ist. Diese Variable sollte eine Liste von Pfaden sein, die durch ; (unter Windows) oder : (auf anderen Betriebssystemen) getrennt sind. Ladepfade in SASS_PATH haben Vorrang vor Lade pfaden, die auf der Kommandozeile übergeben werden.
$ SASS_PATH=node_modules/bootstrap/dist/css sass style.scss style.css
--require–require Permalink
Diese Option (abgekürzt -r) lädt ein Ruby Gem, bevor Sass ausgeführt wird. Sie kann verwendet werden, um in Ruby definierte Funktionen in Ihre Sass- Umgebung zu laden.
$ sass --require=rails-sass-images style.scss style.css
--compass–compass Permalink
Dieses Flag lädt das Compass Framework und macht seine Mixins und Funktionen für die Verwendung in Sass verfügbar.
$ sass --compass style.scss style.css
--style–style Permalink
Diese Option (abgekürzt -t) steuert den Ausgabestil des resultierenden CSS. Ruby Sass unterstützt vier Ausgabestile
nested(Standard) rückt CSS-Regeln ein, um die Verschachtelung der Sass- Quelldateien abzugleichen.expandedschreibt jeden Selektor und jede Deklaration auf eine eigene Zeile.compactsetzt jede CSS-Regel auf eine einzelne Zeile.compressedentfernt so viele zusätzliche Zeichen wie möglich und schreibt das gesamte Stylesheet auf eine einzige Zeile.
$ sass --style=nested
h1 {
font-size: 40px; }
h1 code {
font-face: Roboto Mono; }
$ sass --style=expanded style.scss
h1 {
font-size: 40px;
}
h1 code {
font-face: Roboto Mono;
}
$ sass --style=compact style.scss
h1 { font-size: 40px; }
h1 code { font-face: Roboto Mono; }
$ sass --style=compressed style.scss
h1{font-size:40px}h1 code{font-face:Roboto Mono}
--help–help Permalink
Dieses Flag (abgekürzt -h und -?) gibt eine Zusammenfassung dieser Dokumentation aus.
$ sass --help
Usage: sass [options] [INPUT] [OUTPUT]
Description:
Converts SCSS or Sass files to CSS.
...
--version–version Permalink
Dieses Flag gibt die aktuelle Version von Sass aus.
$ sass --version
Sass 3.7.4
Beobachten und AktualisierenBeobachten und Aktualisieren Permalink
Diese Optionen wirken sich auf den Viele-zu-viele-Modus aus.
--watch–watch Permalink
Aktiviert den Viele-zu-viele-Modus und veranlasst Sass, offen zu bleiben und Stylesheets weiterhin zu kompilieren, wann immer sie oder ihre Abhängigkeiten sich ändern.
$ sass --watch themes:public/css
write public/css/light.css
write public/css/light.css.map
# Then when you edit themes/dark.scss...
write public/css/dark.css
write public/css/dark.css.map
--poll–poll Permalink
Dieses Flag, das nur zusammen mit --watch übergeben werden kann, weist Sass an, Änderungen an den Quelldateien regelmäßig manuell zu überprüfen, anstatt sich darauf zu verlassen, dass das Betriebssystem benachrichtigt, wenn etwas geändert wird. Dies kann notwendig sein, wenn Sie Sass auf einem Remote-Laufwerk bearbeiten, auf dem das Benachrichtigungssystem des Betriebssystems nicht funktioniert.
$ sass --watch --poll themes:public/css
write public/css/light.css
write public/css/light.css.map
# Then when you edit themes/dark.scss...
write public/css/dark.css
write public/css/dark.css.map
--update–update Permalink
Dieses Flag aktiviert den Viele-zu-viele-Modus, auch wenn keines der Argumente durch Doppelpunkte getrennte Paare sind.
$ sass --update style.scss
write style.css
write style.css.map
--force–force Permalink
Dieses Flag (abgekürzt -f) kann nur im Viele-zu-viele-Modus übergeben werden. Es bewirkt, dass Sass-Dateien immer in CSS-Dateien kompiliert werden, anstatt nur dann kompiliert zu werden, wenn die Quelldateien aktueller sind als die Ausgabe.
Das Flag --force kann nicht zusammen mit dem Flag --watch übergeben werden.
$ sass --force style.scss:style.css
write style.css
write style.css.map
--stop-on-error–stop-on-error Permalink
Dieses Flag kann nur im Viele-zu-viele-Modus übergeben werden. Es weist Sass an, die Kompilierung sofort zu stoppen, wenn ein Fehler erkannt wird, anstatt zu versuchen, andere Sass-Dateien zu kompilieren, die möglicherweise keine Fehler enthalten.
$ sass --stop-on-error themes:public/css
Error: Invalid CSS after "h1 {font-size: ": expected expression (e.g. 1px, bold), was "}"
on line 1 of test.scss
Use --trace for backtrace.
Ein- und AusgabeEin- und Ausgabe Permalink
Diese Optionen steuern, wie Sass seine Eingabedateien lädt und wie es Ausgabedateien erzeugt.
--scss–scss Permalink
Dieses Flag weist Sass an, die Standardeingabe als SCSS zu parsen.
$ echo "h1 {font-size: 40px}" | sass --scss
h1 {
font-size: 40px;
}
--sourcemap–sourcemap Permalink
Diese Option steuert, wie Sass Quellkarten generiert. Quellkarten sind Dateien, die Browsern oder anderen Tools, die CSS verarbeiten, mitteilen, wie dieses CSS den Sass-Dateien, aus denen es generiert wurde, entspricht. Sie ermöglichen es, Ihre Sass-Dateien im Browser anzuzeigen und sogar zu bearbeiten. Siehe Anleitungen zur Verwendung von Quellkarten in Chrome und Firefox. Es hat vier mögliche Werte
auto(Standard) verwendet relative URLs, um von der Quellkarte zu den Sass-Stylesheets zu verlinken, wo immer dies möglich ist, und ansonsten absolutefile:URLs.fileverwendet immer absolutefile:URLs, um von der Quellkarte zu den Sass- Stylesheets zu verlinken.inlinefügt den Text der Sass-Stylesheets direkt in die Quellkarte ein.nonegeneriert überhaupt keine Quellkarten .
# Generates a URL like "../sass/style.scss".
$ sass --sourcemap=auto sass/style.scss css/style.css
# Generates a URL like "file:///home/style-wiz/sassy-app/sass/style.scss".
$ sass --sourcemap=file sass/style.scss css/style.css
# Includes the full text of sass/style.scss in the source map.
$ sass --sourcemap=inline sass/style.scss css/style.css
# Doesn't generate a source map.
$ sass --sourcemap=none sass/style.scss css/style.css
--stdin–stdin Permalink
Dieses Flag (abgekürzt -s) weist Sass an, seine Eingabedatei von der Standardeingabe zu lesen. Wenn es übergeben wird, darf keine Eingabedatei übergeben werden.
$ echo -e 'h1\n font-size: 40px' | sass --stdin
h1 {
font-size: 40px;
}
Das Flag --stdin kann nicht mit dem Viele-zu-viele-Modus verwendet werden.
--default-encoding–default-encoding Permalink
Diese Option (abgekürzt -E) steuert die Standard-Zeichenkodierung, die Sass zum Laden von Quelldateien verwendet, die keine Zeichenkodierung explizit angeben. Standardmäßig wird die Standardkodierung des Betriebssystems verwendet.
$ sass --default-encoding=Shift-JIS style.scss style.css
--unix-newlines–unix-newlines Permalink
Dieses Flag weist Sass an, Ausgabedateien zu generieren, deren Zeilen durch das U+000A LINE FEED-Zeichen getrennt sind, im Gegensatz zum Standard des Betriebssystems (unter Windows sind dies U+000D CARRIAGE RETURN gefolgt von U+000A LINE FEED). Es ist auf Systemen, die standardmäßig Unix-ähnliche Zeilenenden verwenden, immer aktiv.
$ sass --unix-newlines style.scss style.css
--debug-info–debug-info Permalink
Dieses Flag (abgekürzt -g) veranlasst Sass, Dummy-@media-Abfragen auszugeben, die angeben, wo jede Stilregel im Quell- Stylesheet definiert wurde.
⚠️ Vorsicht!
Dieses Flag existiert nur aus Gründen der Abwärtskompatibilität. Quellkarten sind nun der empfohlene Weg, um CSS zurückzuverfolgen zum Sass, das es generiert hat.
$ sass --debug-info style.scss
@media -sass-debug-info{filename{font-family:file\:\/\/\/home\/style-wiz\/sassy-app\/style\.scss}line{font-family:\000031}}
h1 {
font-size: 40px; }
--line-comments–line-comments Permalink
Dieses Flag (auch verfügbar als --line-numbers, abgekürzt -l) veranlasst Sass, Kommentare für jede Stilregel auszugeben, die angeben, wo jede Stilregel im Quell- Stylesheet definiert wurde.
$ sass --line-numbers style.scss
/* line 1, style.scss */
h1 {
font-size: 40px; }
Weitere OptionenWeitere Optionen Permalink
--interactive–interactive Permalink
Dieses Flag (abgekürzt -i) weist Sass an, im interaktiven Modus ausgeführt zu werden, in dem Sie SassScript-Ausdrücke schreiben und deren Ergebnisse sehen können. Der interaktive Modus unterstützt auch Variablen.
$ sass --interactive
>> 1px + 1in
97px
>> $map: ("width": 100px, "height": 70px)
("width": 100px, "height": 70px)
>> map-get($map, "width")
100px
--check–check Permalink
Dieses Flag (abgekürzt -c) weist Sass an, die Syntax seiner Eingabedatei zu überprüfen, ohne diese Datei auszuführen. Wenn die Syntax gültig ist, wird mit dem Status 0 beendet. Es kann nicht im Viele-zu-viele-Modus verwendet werden.
$ sass --check style.scss
--precision–precision Permalink
Diese Option teilt Sass mit, wie viele Nachkommastellen an Präzision beim Ausgeben von Dezimalzahlen verwendet werden sollen.
$ echo -e 'h1\n font-size: (100px / 3)' | sass --precision=20
h1 {
font-size: 33.333333333333336px; }
--cache-location–cache-location Permalink
Diese Option teilt Sass mit, wo der Cache für geparste Dateien gespeichert werden soll, damit es bei zukünftigen Aufrufen schneller ausgeführt werden kann. Der Standardwert ist .sass-cache.
$ sass --cache-location=/tmp/sass-cache style.scss style.css
--no-cache–no-cache Permalink
Dieses Flag (abgekürzt -C) weist Sass an, keine geparsten Dateien überhaupt zu cachen.
$ sass --no-cache style.scss style.css
--trace–trace Permalink
Dieses Flag weist Sass an, den vollständigen Ruby-Stacktrace auszugeben, wenn ein Fehler auftritt. Es wird vom Sass-Team zur Fehlerbehebung bei Fehlern verwendet.
Traceback (most recent call last):
25: from /usr/share/gems/sass/bin/sass:13:in `<main>'
24: from /usr/share/gems/sass/lib/sass/exec/base.rb:18:in `parse!'
23: from /usr/share/gems/sass/lib/sass/exec/base.rb:50:in `parse'
22: from /usr/share/gems/sass/lib/sass/exec/sass_scss.rb:63:in `process_result'
21: from /usr/share/gems/sass/lib/sass/exec/sass_scss.rb:396:in `run'
20: from /usr/share/gems/sass/lib/sass/engine.rb:290:in `render'
19: from /usr/share/gems/sass/lib/sass/engine.rb:414:in `_to_tree'
18: from /usr/share/gems/sass/lib/sass/scss/parser.rb:41:in `parse'
17: from /usr/share/gems/sass/lib/sass/scss/parser.rb:137:in `stylesheet'
16: from /usr/share/gems/sass/lib/sass/scss/parser.rb:697:in `block_contents'
15: from /usr/share/gems/sass/lib/sass/scss/parser.rb:707:in `block_child'
14: from /usr/share/gems/sass/lib/sass/scss/parser.rb:681:in `ruleset'
13: from /usr/share/gems/sass/lib/sass/scss/parser.rb:689:in `block'
12: from /usr/share/gems/sass/lib/sass/scss/parser.rb:697:in `block_contents'
11: from /usr/share/gems/sass/lib/sass/scss/parser.rb:708:in `block_child'
10: from /usr/share/gems/sass/lib/sass/scss/parser.rb:743:in `declaration_or_ruleset'
9: from /usr/share/gems/sass/lib/sass/scss/parser.rb:820:in `try_declaration'
8: from /usr/share/gems/sass/lib/sass/scss/parser.rb:1281:in `rethrow'
7: from /usr/share/gems/sass/lib/sass/scss/parser.rb:807:in `block in try_declaration'
6: from /usr/share/gems/sass/lib/sass/scss/parser.rb:999:in `value!'
5: from /usr/share/gems/sass/lib/sass/scss/parser.rb:1161:in `sass_script'
4: from /usr/share/gems/sass/lib/sass/script/parser.rb:68:in `parse'
3: from /usr/share/gems/sass/lib/sass/script/parser.rb:855:in `assert_expr'
2: from /usr/share/gems/sass/lib/sass/script/lexer.rb:240:in `expected!'
1: from /usr/share/gems/sass/lib/sass/scss/parser.rb:1305:in `expected'
test.scss:1: Invalid CSS after "h1 {font-size: ": expected expression (e.g. 1px, bold), was "}" (Sass::SyntaxError)
--quiet–quiet Permalink
Dieses Flag (abgekürzt -q) weist Sass an, beim Kompilieren keine Warnungen auszugeben. Standardmäßig gibt Sass Warnungen aus, wenn veraltete Funktionen verwendet werden oder wenn die Regel @warn angetroffen wird. Es unterdrückt auch die Regel @debug.
$ sass --quiet style.scss style.css