Je tente d'analyser, et non d'évaluer, les rails de fichiers ERB de manière Hpricot/Nokogiri. Les fichiers que j'essaie d'analyser contiennent des fragments HTML mélangés avec du contenu dynamique généré à l'aide de ERB (rails standards view files). Je cherche une bibliothèque qui analysera non seulement le contenu environnant, mais aussi le traitement de Hpricot ou Nokogiri. les symboles ERB, <%, <% = etc, comme s'ils étaient des balises html/xml.Bibliothèque pour analyser les fichiers ERB
Idéalement, je récupérerais une structure de type DOM où les symboles <%, <% = etc. seraient inclus comme leurs propres types de nœuds. Je sais qu'il est possible de pirater quelque chose ensemble en utilisant des expressions régulières, mais je cherchais quelque chose d'un peu plus fiable car je développe un outil que je dois utiliser sur une base de code de vue très large où le contenu html et le contenu erb est important.
Par exemple, des contenus tels que:
blah blah blah <div>My Great Text <%= my_dynamic_expression %></div>
renverrait une structure arborescente comme:
root - text_node (blah blah blah) - element (div) - text_node (My Great Text) - erb_node (<%=)
Avez-vous eu des problèmes avec la Lexer.rb/Erblex.rb généré par rlex étant incomplet? J'ai essayé à la fois dans OS X et Ubuntu, mais le lexer RB généré se termine soudainement au milieu d'un grand bloc 'case' /' when'. J'ai essayé juste "rlex grammar" et "rlex --output LexerClassName grammar", où "grammar" correspond à un fichier nommé "grammar.rl". J'ai Ruby 1.8.7. –
Salut Sarah, j'ai effectivement eu ce problème. J'ai soumis une correction de bogue au propriétaire du rlex. Je peux vous envoyer le fichier patch si vous êtes intéressé mais c'est un bug que vous devez réparer ir rlex. –
Pourriez-vous publier le patch en quelque sorte? – user43685