将现有的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

http://www.htmltohaml.com

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转换为*.hamlreplace原始文件:

 rake haml:replace_erbs 

它会search项目中的所有erb文件并转换为haml

简写:使用在线转换器

http://www.htmltohaml.com

编辑: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的重命名行信用