У меня есть проект rails, представления состоят только из файлов HTML.ERB, мой клиент хочет конвертировать ERB в HAML. У меня слишком много файлов представлений. Это занимает огромное количество времени для преобразования файла по файлу. Так что любой простой способ я могу преобразовать HTML в haml? Я установил плагин haml в свой проект.
Конвертировать существующий html.erb в Haml
Ответ 1
Вот и вы: http://html2haml.heroku.com/
РЕДАКТИРОВАТЬ: Переехал на https://html2haml.herokuapp.com/
Ответ 2
Вы можете использовать из командной строки html2haml
html2haml your_erb_file new_haml_file
Если вы хотите конвертировать все ваши файлы за один раз, посмотрите на эту статью: http://shifteleven.com/articles/2008/06/08/converting-erb-to-haml-snippet
Ответ 3
Более удобная альтернатива выбранному ответу.
Ответ 4
Дэвид Льюнг предоставляет этот драгоценный камень в github, который устанавливает две задачи рейка.
С помощью erb2haml вы можете легко преобразовать весь проект из erb в haml с помощью rake haml:convert_erbs
или rake haml:replace_erbs
.
Ответ 5
На странице haml-rails git она предоставляет команду cli для преобразования всех erb в haml прямо в ваш проект.
добавить gem "haml-rails"
в свой Gemfile
run: rake haml:erb2haml
Ответ 6
очень просто
в Gemfile
добавить
gem "erb2haml", :group => :development
затем запустите bundle install
для преобразования *.erb
в *.haml
сохранения исходных файлов:
rake haml:convert_erbs
для преобразования *.erb
в *.haml
для замены исходных файлов выполните:
rake haml:replace_erbs
он будет искать все файлы erb
в проекте и преобразовать в haml
.
Для сокращения: используйте он-лайн конвертер
Ответ 7
EDIT: html2haml работает как рекламируемый, однако вы должны использовать версию, полученную из текущей ведущей ветки haml github repoistory.
Версия html2haml, входящая в состав haml gem, доступная в настоящее время из rubygems, не является хорошей. Это версия, которую вы получите, если вам нужно сделать gem install haml
прямо сейчас. Использование версии, поставляемой с камнем, приведет к недействительной haml, так как она не сможет обработать рубин должным образом.
Ответ 8
html2haml теперь находится в html2haml gem, поэтому вы можете использовать:
$ gem install html2haml
$ html2haml path/to/yourfile.html path/to/yourfile.haml
Ответ 9
Поздно в игре, но этот пост все еще летает высоко в Google при поиске похожих решений.
Установите драгоценный камень html2haml
, поместите его в свой каталог приложений/представлений и попробуйте:
find ./ -name '*.erb' -exec html2haml -e {} {}.haml \;
find ./ -name "*.erb.haml" -exec sh -c 'mv "$1" "${1%.erb.haml}.haml"' _ {} \;
find ./ -name '*.erb' -exec rm {} \;
Недостатком этого решения является то, что он не сохраняет историю изменений из старых файлов .erb в ваши новые файлы .haml. Но временами, когда история пересмотра этих файлов просмотра не имеет большого значения, это решение мне очень понравилось.
Кроме того, перед удалением старых файлов .erb обязательно следите за любыми ошибками в строке html2haml.