nolate 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Makefile +7 -0
- data/VERSION +1 -0
- data/lib/nolate.rb +12 -3
- data/nolate.gemspec +2 -21
- data/pkg/build_gemspec.rb +28 -0
- data/pkg/gemspec_template.rb +20 -0
- data/pkg/nolate-0.0.2.gem +0 -0
- data/test.rb +2 -0
- data/views/testview6.nlt +4 -0
- data/views/testview7.nlt +6 -0
- metadata +12 -5
data/Makefile
ADDED
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.0.2
|
data/lib/nolate.rb
CHANGED
@@ -77,11 +77,20 @@ end
|
|
77
77
|
def nlt_compile(template)
|
78
78
|
s = "__=[]; "
|
79
79
|
nlt_parse(template).each do |action, param, newlines|
|
80
|
+
if action == :evalo or action == :eval
|
81
|
+
if param[(-1..-1)] != "\n" and param.index("#")
|
82
|
+
lines = param.split("\n")
|
83
|
+
if lines[-1] =~ /^ *#/
|
84
|
+
lines[-1] = ""
|
85
|
+
param = lines.join("\n")
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
80
89
|
case action
|
81
|
-
when :evalo then s << "__
|
90
|
+
when :evalo then s << "@__ = (#{param}); __<< @__.to_s; @__; "
|
82
91
|
when :eval then s << "#{param}; "
|
83
|
-
when :sub then s << "__<< __sub[#{param.to_sym.inspect}]; "
|
84
|
-
when :verb then s << "__<<#{param}; "
|
92
|
+
when :sub then s << "__<< __sub[#{param.to_sym.inspect}]; @__; "
|
93
|
+
when :verb then s << "__<<#{param}; @__; "
|
85
94
|
end
|
86
95
|
s << "\n"*newlines
|
87
96
|
end
|
data/nolate.gemspec
CHANGED
@@ -5,11 +5,10 @@ Gem::Specification.new do |s|
|
|
5
5
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
6
6
|
|
7
7
|
s.name = %q{nolate}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.2"
|
9
9
|
s.summary = %q{Ruby Template System}
|
10
10
|
s.description = %q{Pure Ruby template engine optimized for speed}
|
11
11
|
s.authors = ["Salvatore Sanfilippo","Michel Martens","Bruno Michel","Emmanuel Oga"]
|
12
|
-
s.autorequire = %q{nolate}
|
13
12
|
s.date = %q{2011-04-05}
|
14
13
|
s.email = %q{antirez@gmail.com}
|
15
14
|
s.extra_rdoc_files = ["LICENSE"]
|
@@ -17,23 +16,5 @@ Gem::Specification.new do |s|
|
|
17
16
|
s.require_paths = ["lib"]
|
18
17
|
s.rubygems_version = %q{1.5.0}
|
19
18
|
|
20
|
-
s.files =
|
21
|
-
LICENSE
|
22
|
-
README
|
23
|
-
bench.rb
|
24
|
-
example.rb
|
25
|
-
nolate.gemspec
|
26
|
-
test.rb
|
27
|
-
lib/nolate.rb
|
28
|
-
views/bigtemplate.nlt
|
29
|
-
views/example.nlt
|
30
|
-
views/layout.nlt
|
31
|
-
views/layout2.nlt
|
32
|
-
views/layout3.nlt
|
33
|
-
views/testview.nlt
|
34
|
-
views/testview2.nlt
|
35
|
-
views/testview3.nlt
|
36
|
-
views/testview4.nlt
|
37
|
-
views/testview5.nlt
|
38
|
-
}
|
19
|
+
s.files = ["LICENSE", "Makefile", "README", "VERSION", "bench.rb", "example.rb", "lib/nolate.rb", "nolate.gemspec", "pkg/build_gemspec.rb", "pkg/gemspec_template.rb", "pkg/nolate-0.0.2.gem", "test.rb", "views/bigtemplate.nlt", "views/example.nlt", "views/layout.nlt", "views/layout2.nlt", "views/layout3.nlt", "views/testview.nlt", "views/testview2.nlt", "views/testview3.nlt", "views/testview4.nlt", "views/testview5.nlt", "views/testview6.nlt", "views/testview7.nlt"]
|
39
20
|
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class GemIt
|
2
|
+
def initialize
|
3
|
+
@template = File.read("pkg/gemspec_template.rb")
|
4
|
+
end
|
5
|
+
def list_files(path,parent=nil)
|
6
|
+
files = []
|
7
|
+
dir = Dir.open(path)
|
8
|
+
dir.to_a.each{|f|
|
9
|
+
next if f[0..0] == "."
|
10
|
+
if File.directory? f
|
11
|
+
files += list_files("#{path}/#{f}","#{f}")
|
12
|
+
else
|
13
|
+
files << (parent ? "#{parent}/#{f}" : f)
|
14
|
+
end
|
15
|
+
}
|
16
|
+
files
|
17
|
+
end
|
18
|
+
def gemspec
|
19
|
+
files = GemIt.new.list_files(".").sort
|
20
|
+
version = File.read("VERSION").chomp
|
21
|
+
gemspec = @template
|
22
|
+
gemspec.sub!("%version%",version.inspect)
|
23
|
+
gemspec.sub!("%files%",files.inspect)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
gemspec = GemIt.new.gemspec
|
28
|
+
f = File.open("nolate.gemspec","w").write(gemspec)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.specification_version = 2 if s.respond_to? :specification_version=
|
5
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
6
|
+
|
7
|
+
s.name = %q{nolate}
|
8
|
+
s.version = %version%
|
9
|
+
s.summary = %q{Ruby Template System}
|
10
|
+
s.description = %q{Pure Ruby template engine optimized for speed}
|
11
|
+
s.authors = ["Salvatore Sanfilippo","Michel Martens","Bruno Michel","Emmanuel Oga"]
|
12
|
+
s.date = %q{2011-04-05}
|
13
|
+
s.email = %q{antirez@gmail.com}
|
14
|
+
s.extra_rdoc_files = ["LICENSE"]
|
15
|
+
s.homepage = %q{http://github.com/antirez/nolaote}
|
16
|
+
s.require_paths = ["lib"]
|
17
|
+
s.rubygems_version = %q{1.5.0}
|
18
|
+
|
19
|
+
s.files = %files%
|
20
|
+
end
|
Binary file
|
data/test.rb
CHANGED
@@ -26,6 +26,8 @@ class NolateTest < Test::Unit::TestCase
|
|
26
26
|
assert_equal("3",nolate("<%x=2%><%=x+1%>"))
|
27
27
|
assert_equal("Hello",MyExampleClass.new.method_one)
|
28
28
|
assert_equal("World\n",MyExampleClass.new.method_two)
|
29
|
+
assert_equal("\n1\n\n4\n\n9\n\n[1, 4, 9]\n",nlt(:testview6))
|
30
|
+
assert_equal("zap\n\n4\nciao\n",nlt(:testview7))
|
29
31
|
end
|
30
32
|
|
31
33
|
def test_iter
|
data/views/testview6.nlt
ADDED
data/views/testview7.nlt
ADDED
metadata
CHANGED
@@ -1,20 +1,20 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nolate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 27
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 2
|
10
|
+
version: 0.0.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Salvatore Sanfilippo
|
14
14
|
- Michel Martens
|
15
15
|
- Bruno Michel
|
16
16
|
- Emmanuel Oga
|
17
|
-
autorequire:
|
17
|
+
autorequire:
|
18
18
|
bindir: bin
|
19
19
|
cert_chain: []
|
20
20
|
|
@@ -31,12 +31,17 @@ extra_rdoc_files:
|
|
31
31
|
- LICENSE
|
32
32
|
files:
|
33
33
|
- LICENSE
|
34
|
+
- Makefile
|
34
35
|
- README
|
36
|
+
- VERSION
|
35
37
|
- bench.rb
|
36
38
|
- example.rb
|
39
|
+
- lib/nolate.rb
|
37
40
|
- nolate.gemspec
|
41
|
+
- pkg/build_gemspec.rb
|
42
|
+
- pkg/gemspec_template.rb
|
43
|
+
- pkg/nolate-0.0.2.gem
|
38
44
|
- test.rb
|
39
|
-
- lib/nolate.rb
|
40
45
|
- views/bigtemplate.nlt
|
41
46
|
- views/example.nlt
|
42
47
|
- views/layout.nlt
|
@@ -47,6 +52,8 @@ files:
|
|
47
52
|
- views/testview3.nlt
|
48
53
|
- views/testview4.nlt
|
49
54
|
- views/testview5.nlt
|
55
|
+
- views/testview6.nlt
|
56
|
+
- views/testview7.nlt
|
50
57
|
homepage: http://github.com/antirez/nolaote
|
51
58
|
licenses: []
|
52
59
|
|