Domanda

I stava cercando per compiti rake che mi avrebbe aiutato a rintracciare errori di sintassi, e mi sono imbattuto in haml --check come una possibile soluzione per i file Haml doppio controllo. Purtroppo, quando ho passato questo esempio rotto, Haml dice la sintassi è OK.

ho frainteso lo scopo di haml --check o è questa funzionalità non pienamente attuato?

suppongo dovrei menzionare che sto utilizzando Haml / Sass 3.0.25 (Classy Cassidy), rotaie 3.0.3, rubino 1.9.2p0 e 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)}

L'ultimo carattere (parentesi graffa) dovrebbe innescare un errore di sintassi, lo fa di certo quando il modello viene eseguito come parte di una richiesta:

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

Soluzione

Forse perché -c, --check Just check syntax, don't evaluate.

Indovinate:. Controlla solo la sintassi Haml e non valuta rubino in linea

- modifica

Questo probabilmente ha bisogno di alcuni di più test, ma ho preso a lavorare su semplici file Haml:)

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

In teoria:

Haml stampa il fonte Rubino precompilata (e messaggi di errore alla fine), che cercano di ottenere solo la parte rubino e verificare la sintassi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top