Мне нужно преобразовать сценарии Haml в их эквивалентные сценарии HTML.Поскольку я делаю это вне и без запуска основного проекта rails, скрипты Ruby, присутствующие в файлах Haml, генерируют исключения (что очевидно).Теперь я не буду возражать, если в выходном HTML присутствует скрипт Ruby (в этом случае он будет выглядеть как erb, для меня это нормально).Меня интересуют только некоторые html-теги.
Похоже, что если я могу переопределить метод Haml::Engine#render(scope = Object.new, locals = {}, &block)
, это может помочь.Но не до конца.
Есть идеи?
Обновление
Преобразование только блоков -
foo и =
foo в Erb <% foo %>
и <%= foo %>
(соответственно) не будут работать полностью, потому что там будет интерполяция, например:
%div{:class => "#{cycle("cssClass1", "cssClass2")} anotherCssClass"}
Допустимый вывод для моего случая может быть: <div class=<%= "#{cycle("cssClass1", "cssClass2")} anotherCssClass" %> ></div>
Кроме этих интерполяций этот хорошо работает для -
и =
.