summaryrefslogtreecommitdiff
path: root/rake_helpers/ca.rb
blob: ccb5a4c7103143ebdb9358e6adf3d3e4ce067579 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!c:/ruby/bin/rubyw
# Hy-Ca 0.2 by murphy

module Hy
	def self.ca str
		str.gsub! %r-^(\s*)(?://)(.*)?-, '\1/*\2*/'
		str.gsub! %r-\s*/\*.*?\*/\n?-m, ''
		str.gsub!(/<<(.*?)>>/m) do
			begin
				eval $1
				''
			rescue Exception => boom
				"<<\n#{boom}\n>>"
			end
		end
		
		str.gsub!(/\$([\w_]+)/m) do
			begin
				eval $1
			rescue
				''
			end
		end

		str
	end
end

begin
	if file = ENV['PATH_TRANSLATED']
		puts "Content-Type: text/css"
		puts
		ca = File.read file
	else
		ca = ARGF.read
	end
	print Hy.ca(ca)
rescue => boom
	p boom
end if __FILE__ == $0