henshin 0.4.1 → 0.4.2
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/bin/henshin +14 -7
- data/henshin.gemspec +1 -1
- data/lib/henshin/site.rb +2 -16
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.4.
|
1
|
+
0.4.2
|
data/bin/henshin
CHANGED
@@ -64,7 +64,14 @@ else
|
|
64
64
|
|
65
65
|
if ARGV[0]
|
66
66
|
override['root'] = ARGV[0].split(':')[0]
|
67
|
-
|
67
|
+
if ARGV[0].split(':')[1]
|
68
|
+
override['target'] = ARGV[0].split(':')[1]
|
69
|
+
else
|
70
|
+
override['target'] = File.join(override['root'], Henshin::Defaults['target'])
|
71
|
+
end
|
72
|
+
else
|
73
|
+
override['root'] = Henshin::Defaults['root']
|
74
|
+
override['target'] = Henshin::Defaults['target']
|
68
75
|
end
|
69
76
|
|
70
77
|
|
@@ -85,7 +92,7 @@ else
|
|
85
92
|
|
86
93
|
threads << Thread.new {
|
87
94
|
@h = Mongrel::HttpServer.new(build[:address], build[:port])
|
88
|
-
@h.register
|
95
|
+
@h.register("/", Mongrel::DirHandler.new(override['target']))
|
89
96
|
puts "Server launched at http://#{build[:address]}:#{build[:port]}"
|
90
97
|
trap("INT") {
|
91
98
|
@h.stop
|
@@ -99,7 +106,7 @@ else
|
|
99
106
|
threads << Thread.new {
|
100
107
|
server = WEBrick::HTTPServer.new(
|
101
108
|
:Port => build[:port],
|
102
|
-
:DocumentRoot =>
|
109
|
+
:DocumentRoot => override['target'],
|
103
110
|
:MimeTypes => WEBrick::HTTPUtils::DefaultMimeTypes
|
104
111
|
)
|
105
112
|
trap("INT") { server.shutdown }
|
@@ -116,14 +123,14 @@ else
|
|
116
123
|
puts "", "Auto-build initiated..."
|
117
124
|
|
118
125
|
# build the glob pattern
|
119
|
-
gl = Dir[ File.join(
|
126
|
+
gl = Dir[ File.join(override['root'], '*')].select { |x| File.directory?(x) }
|
120
127
|
['/_site', '/plugins'].each do |r|
|
121
|
-
gl = gl.select {|i| !i.include?( File.join(
|
128
|
+
gl = gl.select {|i| !i.include?( File.join(override['root'], r) )}
|
122
129
|
end
|
123
|
-
gl.collect! {|x| "#{x}/**/*"[
|
130
|
+
gl.collect! {|x| "#{x}/**/*"[override['root'].size+1..-1]}
|
124
131
|
gl += ['*']
|
125
132
|
|
126
|
-
dw = DirectoryWatcher.new(
|
133
|
+
dw = DirectoryWatcher.new(override['root'], :glob => gl)
|
127
134
|
dw.interval = 1
|
128
135
|
dw.add_observer do |*args|
|
129
136
|
if args.size > 1
|
data/henshin.gemspec
CHANGED
data/lib/henshin/site.rb
CHANGED
@@ -14,22 +14,8 @@ module Henshin
|
|
14
14
|
# @return [String] a path which should be prepended to all urls
|
15
15
|
attr_accessor :base
|
16
16
|
|
17
|
-
|
18
|
-
attr_accessor :
|
19
|
-
|
20
|
-
# @return [Hash{String => String}]
|
21
|
-
attr_accessor :layouts
|
22
|
-
|
23
|
-
# @return [Tags]
|
24
|
-
attr_accessor :tags
|
25
|
-
|
26
|
-
# @return [Categories]
|
27
|
-
attr_accessor :categories
|
28
|
-
|
29
|
-
# @return [Archive]
|
30
|
-
attr_accessor :archive
|
31
|
-
|
32
|
-
# @return [Hash{String => Plugin}]
|
17
|
+
attr_accessor :gens, :posts, :statics, :layouts
|
18
|
+
attr_accessor :tags, :categories, :archive
|
33
19
|
attr_accessor :plugins
|
34
20
|
|
35
21
|
# A new instance of site
|
metadata
CHANGED