Frage

Ich war auf der Suche nach Rake Aufgaben, die mir Fehler aufzuspüren Syntax würde helfen, und ich kam in haml --check als eine mögliche Lösung für doppelte Überprüfung haml Dateien. Leider, wenn ich es auf dieses gebrochene Beispiel bestanden, haml sagt die Syntax in Ordnung ist.

falsch verstanden habe ich den Zweck der haml --check oder ist diese Funktion nicht vollständig umgesetzt?

ich nehme ich schon erwähnt, sollte ich Haml / Sass 3.0.25 (Classy Cassidy) bin mit Schienen 3.0.3, Rubin 1.9.2p0 und Mac 10.6.6.

$ haml --check /tmp/edit.html.haml
Syntax OK

#/tmp/edit.html.haml
- content_for :head do
  = include_javascripts :aspects

#aspect_edit_pane
  #facebox_header
    %h4
      = @aspect
      .description
        = t('contacts', :count =>@aspect_contacts.count)}

Das letzte Zeichen (geschweifte Klammer) sollte einen Syntaxfehler auslösen, ist es sicherlich nicht, wenn die Vorlage im Rahmen einer Anfrage ausgeführt wird:

ActionView::Template::Error (compile error 
    /usr/local/app/diaspora/app/views/aspects/edit.html.haml:13: 
    syntax error, unexpected '}', expecting ')'
War es hilfreich?

Lösung

Vielleicht, weil -c, --check Just check syntax, don't evaluate.

Vermutung:. Es prüft nur die haml Syntax und nicht ausgewertet Inline Rubin

- bearbeiten

Dies ist wahrscheinlich braucht einige mehr testen, aber ich habe es funktioniert auf einfache haml Dateien:)

haml --debug newsletter.html.haml 2> /dev/null | sed '$d' | ruby -c

In der Theorie:

Haml druckt die vorkompilierte Ruby-Quelle (und Fehlermeldungen am Ende), versuchen wir nur den Rubin Teil zu erhalten und die Syntax überprüfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top