将现有的html.erb转换为Haml
我有一个rails项目,视图只包含HTML.ERB文件,我的客户希望将ERB转换为HAML。 我有太多的意见文件。 它需要花费大量的时间来逐个文件地转换文件。 所以,任何简单的方法,我可以将HTML转换为哈姆? 我在我的项目下安装了haml插件。
你去: http : //html2haml.heroku.com/
你可以在命令行中使用html2haml
html2haml your_erb_file new_haml_file
如果您想一次性转换所有文件,请参阅以下文章: http : //shifteleven.com/articles/2008/06/08/converting-erb-to-haml-snippet
select的答案更加用户友好的select。
David Leung在github上提供了这个安装两个rake任务的gem 。
使用erb2haml,你可以很容易地将整个项目从erb转换为rake haml:convert_erbs
或者rake haml:replace_erbs
。
在haml-rails git页面上 ,它提供了cli命令来将项目中的所有erb转换为haml。
添加gem "haml-rails"
到你的Gemfile
运行: rake haml:erb2haml
很简单
在你的Gemfile
添加
gem "erb2haml", :group => :development
然后运行bundle install
将*.erb
转换为*.haml
保留原始文件:
rake haml:convert_erbs
将*.erb
转换为*.haml
replace原始文件:
rake haml:replace_erbs
它会search项目中的所有erb
文件并转换为haml
。
简写:使用在线转换器
编辑:html2haml做广告的工作,但是你必须使用从haml github repoistory的当前主分支获得的版本。
包含在rubygems目前可用的haml gem中的html2haml版本并不好。 这是你将得到的版本,如果你现在要做的gem install haml
。 使用随gem提供的版本将导致无效haml,因为它无法正确处理ruby。
html2haml现在在html2haml gem中,所以你可以使用:
$ gem install html2haml $ html2haml path/to/yourfile.html path/to/yourfile.haml
这里比较晚,但是当search类似的解决scheme时,这个post仍然在谷歌飞得很高。
安装html2haml
gem,popup到你的app / views目录下,试试这个:
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 {} \;
此解决scheme中的缺陷是,它不会保留旧的.erb文件的修订历史logging到新的.haml文件。 但有时这些视图文件的修订历史不是什么大不了的,这个解决scheme对我来说非常好。
另外,在删除旧的.erb文件之前,一定要注意html2haml行中的任何错误。
- 由于这个Ask Ubuntupost的重命名行信用