2010-07-22 66 views
1

我正在使用ERB進行一些數學語言的元編程。如果我可以擴展ERB功能來處理%=標籤,它可以讓我顯着簡化我的源代碼。我只是想與<%= %>類比得到這條線的輸出。我試圖挖掘/usr/lib/ruby/1.9.1/erb.rb文件,但很快就迷路了。可能你可以幫助解決這個問題嗎?如何擴展Ruby ERB以處理%=標籤?

+0

也許你可以澄清?使用<%= %>有什麼不對? – 2010-07-22 21:33:21

+0

三個不必要的字符,除非在TextMate主題/語言設置中對其進行陰影處理,否則代碼讀取會變得非常困難。 '%'標籤中也不需要''''''''''''''''''''可以使用'<% %>'。正如我所看到的那樣,Ruby的方式是最大化代碼美感,'%='非常適合這個概念。 :) – Andrei 2010-07-22 21:40:24

+0

你看過HAML ...嗎?我不確定'修理'再培訓局是否真的是這裏的方式。 – 2010-07-29 14:06:57

回答

1

好吧,似乎我自己管理它。如果您在http://pastie.org/1056824(或http://gist.github.com/487297)的代碼保存爲extended_erb.rb然後調用它在你的腳本...

require 'extended_erb' 
puts ERB.new(File.read('mytemplate.erb'), 0, '%').result 

或命令行運行ERB ...

erb -r extended_erb mytemplate.erb 

然後將以下模板...

<%= 1 %> 
%= 2 

會產生輸出所需

1 
2