Convertir html.erb existant en Haml

J’ai un projet de rails, les vues ne contiennent que des fichiers HTML.ERB, mon client veut convertir ERB en HAML. J’ai trop de fichier de vues. Il faut énormément de temps pour convertir fichier par fichier. Alors que tout simplement je peux convertir le HTML en haml? J’ai installé le plugin haml sous mon projet.

Vous pouvez utiliser depuis la ligne de commande html2haml

html2haml your_erb_file new_haml_file 

Si vous souhaitez convertir tous vos fichiers en une seule fois, consultez cet article: http://shifteleven.com/articles/2008/06/08/converting-erb-to-haml-snippet

http://www.htmltohaml.com

Une alternative plus conviviale à la réponse sélectionnée.

David Leung fournit cette gem sur github qui installe deux tâches de rake.

Avec erb2haml, vous pouvez facilement convertir un projet entier de erb en haml avec rake haml:convert_erbs ou rake haml:replace_erbs .

Sur la page haml-rails git , la commande cli permet de convertir tous les fichiers erb en fichiers haml directement dans votre projet.

append gem "haml-rails" à votre Gemfile

exécuter: rake haml:erb2haml

très simple

dans votre add Gemfile

 gem "erb2haml", :group => :development 

puis exécutez l’ bundle install

pour convertir *.erb en *.haml conservant les fichiers originaux:

 rake haml:convert_erbs 

pour convertir *.erb en *.haml remplaçant les fichiers originaux:

 rake haml:replace_erbs 

il va rechercher tous les fichiers erb dans le projet et convertir en haml .

Pour sténographie: utilisez le convertisseur en ligne

http://www.htmltohaml.com

EDIT: html2haml fonctionne comme annoncé, cependant vous devez utiliser la version obtenue à partir de la twig principale actuelle du repoistory haml github.

La version de html2haml incluse avec le gem haml actuellement disponible sur rubygems n’est pas bonne. Ceci est la version que vous obtiendrez si vous deviez faire gem install haml dès maintenant. L’utilisation de la version fournie avec la gem entraînera un haml invalide, car il ne peut pas traiter correctement ruby.

html2haml est maintenant dans le joyau html2haml, vous pouvez donc utiliser:

 $ gem install html2haml $ html2haml path/to/yourfile.html path/to/yourfile.haml 

Beaucoup de retard sur le jeu ici, mais ce message vole toujours haut dans le Google lors de la recherche de solutions similaires.

Installez le gem html2haml , html2haml votre répertoire app / views et essayez ceci:

 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 {} \; 

Le défaut de cette solution est qu’elle ne conserve pas l’historique des révisions de vos anciens fichiers .erb sur vos nouveaux fichiers .haml. Mais parfois, l’historique des révisions de ces fichiers d’affichage n’est pas très important, cette solution m’a plutôt bien servi.

Veillez également à surveiller les éventuelles erreurs sur la ligne html2haml avant de supprimer les anciens fichiers .erb.

  • Crédit en raison de ce post Ask Ubuntu pour la ligne de renommage