I’m playing around with merb so I’m using merb-gen to create some basic scaffolding; however, I’m not using ERB, the default rendering engine, I want to use haml
Haml comes with a script, html2haml, which can take HTML with ERB and convert it nicely to haml. Seeing as I would have to run that command more than once, I have a little command snippet that I like to use to aid with the conversion.
$ find . -name '*erb' | \
xargs ruby -e 'ARGV.each { |i| puts "html2haml -r #{i} #{i.sub(/erb$/,"haml")}"}'
That will print out what the html2haml commands would be, it does *not* run the command. I do that step such that I can review what will be converted. If I like what’s going to be done, then I just run that command and pipe it into bash…like so
$ find . -name '*erb' | \
xargs ruby -e 'ARGV.each { |i| puts "html2haml -r #{i} #{i.sub(/erb$/,"haml")}"}' | \
bash
If you like it, it probably wouldn’t hurt storing that as a shell script somewhere :)
September 26th, 2008 at 3:55 pm #Emmanuel Oga
Nice trick, I like it :)
Greets
January 22nd, 2010 at 1:05 pm #Satyajit
Very useful script, I would only want a way to remove the .erb files after conversion.
I did a seperate rm `find . -name ‘*erb’` Is there a way to combine them other than say using &&
July 8th, 2010 at 1:37 am #Sachin singh
i m new to rails and haml please give me step by step tutorial how yo use this script to convert erb template to haml one and all in one step on windows xp.
Please help me!