awestruct 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,6 +19,7 @@ def parse(args)
19
19
  :init=>false,
20
20
  :framework=>'compass',
21
21
  :scaffold=>true,
22
+ :base_url=>nil,
22
23
  } )
23
24
 
24
25
  opts = OptionParser.new do |opts|
@@ -38,6 +39,15 @@ def parse(args)
38
39
  opts.on( '-s', '--server', 'Serve generated site' ) do |s|
39
40
  options.server = s
40
41
  end
42
+ opts.on( '-u', '--url URL', 'Set site.base_url' ) do |url|
43
+ options.base_url = url
44
+ end
45
+ opts.on( '-d', '--dev', 'Run in development mode (--auto, --server and --url http://localhost:4242)' ) do |url|
46
+ options.base_url = 'http://localhost:4242'
47
+ options.server = true
48
+ options.auto = true
49
+ options.port = 4242
50
+ end
41
51
  opts.on( '-a', '--auto', 'Auto-generate when changes are noticed' ) do |a|
42
52
  options.auto = a
43
53
  end
@@ -79,13 +89,13 @@ end
79
89
  threads = []
80
90
 
81
91
  if ( options.generate )
82
- cmd = Awestruct::Commands::Generate.new( Dir.pwd, options.force )
92
+ cmd = Awestruct::Commands::Generate.new( Dir.pwd, options.base_url, options.force )
83
93
  cmd.run
84
94
  end
85
95
 
86
96
  if ( options.auto )
87
97
  threads << Thread.new {
88
- generate_cmd = Awestruct::Commands::Generate.new( Dir.pwd )
98
+ generate_cmd = Awestruct::Commands::Generate.new( Dir.pwd, options.base_url )
89
99
  while ( true )
90
100
  generate_cmd.run
91
101
  sleep(1)
@@ -4,15 +4,16 @@ module Awestruct
4
4
  module Commands
5
5
  class Generate
6
6
 
7
- def initialize(dir=Dir.pwd, force=false)
7
+ def initialize(dir=Dir.pwd, base_url=nil, force=false)
8
8
  @dir = dir
9
+ @base_url = base_url
9
10
  @force = force
10
11
  @engine = Awestruct::Engine.new( @dir )
11
12
  end
12
13
 
13
14
  def run()
14
15
  begin
15
- @engine.generate( @force )
16
+ @engine.generate( @base_url, @force )
16
17
  rescue =>e
17
18
  puts e
18
19
  puts e.backtrace
@@ -19,10 +19,6 @@ require 'awestruct/extensions/indexifier'
19
19
 
20
20
  module Awestruct
21
21
 
22
- IGNORE_NAMES = [
23
- 'hekyll',
24
- ]
25
-
26
22
  class Engine
27
23
 
28
24
  attr_reader :config
@@ -33,10 +29,14 @@ module Awestruct
33
29
  @dir = dir
34
30
  @config = config
35
31
  @site = Site.new( @dir )
32
+ @site.tmp_dir = File.join( dir, '_tmp' )
33
+ FileUtils.mkdir_p( @site.tmp_dir )
34
+ FileUtils.mkdir_p( @site.output_dir )
36
35
  @max_yaml_mtime = nil
37
36
  end
38
37
 
39
- def generate(force=false)
38
+ def generate(base_url=nil, force=false)
39
+ @base_url = base_url
40
40
  load_layouts
41
41
  load_yamls
42
42
  load_pages
@@ -151,6 +151,7 @@ module Awestruct
151
151
  data.each do |k,v|
152
152
  site.send( "#{k}=", v )
153
153
  end
154
+ ( site.base_url = @base_url ) if ( @base_url )
154
155
  else
155
156
  site.send( "#{name}=", massage_yaml( data ) )
156
157
  end
metadata CHANGED
@@ -3,13 +3,13 @@ name: awestruct
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
- - 0
7
- - 0
8
- - 1
9
- version: 0.0.1
6
+ - 0
7
+ - 0
8
+ - 2
9
+ version: 0.0.2
10
10
  platform: ruby
11
11
  authors:
12
- - Bob McWhirter
12
+ - Bob McWhirter
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
@@ -17,100 +17,100 @@ cert_chain: []
17
17
  date: 2010-02-26 00:00:00 -05:00
18
18
  default_executable:
19
19
  dependencies:
20
- - !ruby/object:Gem::Dependency
21
- name: hpricot
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- segments:
28
- - 0
29
- version: "0"
30
- type: :runtime
31
- version_requirements: *id001
32
- - !ruby/object:Gem::Dependency
33
- name: haml
34
- prerelease: false
35
- requirement: &id002 !ruby/object:Gem::Requirement
36
- requirements:
37
- - - ">="
38
- - !ruby/object:Gem::Version
39
- segments:
40
- - 0
41
- version: "0"
42
- type: :runtime
43
- version_requirements: *id002
44
- - !ruby/object:Gem::Dependency
45
- name: maruku
46
- prerelease: false
47
- requirement: &id003 !ruby/object:Gem::Requirement
48
- requirements:
49
- - - ">="
50
- - !ruby/object:Gem::Version
51
- segments:
52
- - 0
53
- version: "0"
54
- type: :runtime
55
- version_requirements: *id003
56
- - !ruby/object:Gem::Dependency
57
- name: compass
58
- prerelease: false
59
- requirement: &id004 !ruby/object:Gem::Requirement
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- segments:
64
- - 0
65
- version: "0"
66
- type: :runtime
67
- version_requirements: *id004
68
- - !ruby/object:Gem::Dependency
69
- name: mongrel
70
- prerelease: false
71
- requirement: &id005 !ruby/object:Gem::Requirement
72
- requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- segments:
76
- - 0
77
- version: "0"
78
- type: :runtime
79
- version_requirements: *id005
20
+ - !ruby/object:Gem::Dependency
21
+ name: hpricot
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ type: :runtime
31
+ version_requirements: *id001
32
+ - !ruby/object:Gem::Dependency
33
+ name: haml
34
+ prerelease: false
35
+ requirement: &id002 !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ segments:
40
+ - 0
41
+ version: "0"
42
+ type: :runtime
43
+ version_requirements: *id002
44
+ - !ruby/object:Gem::Dependency
45
+ name: maruku
46
+ prerelease: false
47
+ requirement: &id003 !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ segments:
52
+ - 0
53
+ version: "0"
54
+ type: :runtime
55
+ version_requirements: *id003
56
+ - !ruby/object:Gem::Dependency
57
+ name: compass
58
+ prerelease: false
59
+ requirement: &id004 !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ segments:
64
+ - 0
65
+ version: "0"
66
+ type: :runtime
67
+ version_requirements: *id004
68
+ - !ruby/object:Gem::Dependency
69
+ name: mongrel
70
+ prerelease: false
71
+ requirement: &id005 !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ segments:
76
+ - 0
77
+ version: "0"
78
+ type: :runtime
79
+ version_requirements: *id005
80
80
  description:
81
81
  email: bob@mcwhirter.org
82
82
  executables:
83
- - awestruct
83
+ - awestruct
84
84
  extensions: []
85
85
 
86
86
  extra_rdoc_files: []
87
87
 
88
88
  files:
89
- - lib/awestruct.rb
90
- - lib/awestruct/config.rb
91
- - lib/awestruct/engine.rb
92
- - lib/awestruct/front_matter_file.rb
93
- - lib/awestruct/haml_file.rb
94
- - lib/awestruct/haml_helpers.rb
95
- - lib/awestruct/hamlable.rb
96
- - lib/awestruct/maruku_file.rb
97
- - lib/awestruct/marukuable.rb
98
- - lib/awestruct/renderable.rb
99
- - lib/awestruct/renderable_file.rb
100
- - lib/awestruct/sass_file.rb
101
- - lib/awestruct/sassable.rb
102
- - lib/awestruct/site.rb
103
- - lib/awestruct/verbatim_file.rb
104
- - lib/awestruct/commands/base_pipeline.rb
105
- - lib/awestruct/commands/generate.rb
106
- - lib/awestruct/commands/init.rb
107
- - lib/awestruct/commands/manifest.rb
108
- - lib/awestruct/commands/server.rb
109
- - lib/awestruct/extensions/indexifier.rb
110
- - lib/awestruct/extensions/pipeline.rb
111
- - lib/awestruct/extensions/posts.rb
112
- - lib/awestruct/commands/base_index.html.haml
113
- - lib/awestruct/commands/base_layout.html.haml
89
+ - lib/awestruct/commands/base_pipeline.rb
90
+ - lib/awestruct/commands/generate.rb
91
+ - lib/awestruct/commands/init.rb
92
+ - lib/awestruct/commands/manifest.rb
93
+ - lib/awestruct/commands/server.rb
94
+ - lib/awestruct/config.rb
95
+ - lib/awestruct/engine.rb
96
+ - lib/awestruct/extensions/indexifier.rb
97
+ - lib/awestruct/extensions/pipeline.rb
98
+ - lib/awestruct/extensions/posts.rb
99
+ - lib/awestruct/front_matter_file.rb
100
+ - lib/awestruct/haml_file.rb
101
+ - lib/awestruct/haml_helpers.rb
102
+ - lib/awestruct/hamlable.rb
103
+ - lib/awestruct/maruku_file.rb
104
+ - lib/awestruct/marukuable.rb
105
+ - lib/awestruct/renderable.rb
106
+ - lib/awestruct/renderable_file.rb
107
+ - lib/awestruct/sass_file.rb
108
+ - lib/awestruct/sassable.rb
109
+ - lib/awestruct/site.rb
110
+ - lib/awestruct/verbatim_file.rb
111
+ - lib/awestruct.rb
112
+ - lib/awestruct/commands/base_index.html.haml
113
+ - lib/awestruct/commands/base_layout.html.haml
114
114
  has_rdoc: true
115
115
  homepage:
116
116
  licenses: []
@@ -119,21 +119,21 @@ post_install_message:
119
119
  rdoc_options: []
120
120
 
121
121
  require_paths:
122
- - lib
122
+ - lib
123
123
  required_ruby_version: !ruby/object:Gem::Requirement
124
124
  requirements:
125
- - - ">="
126
- - !ruby/object:Gem::Version
127
- segments:
128
- - 0
129
- version: "0"
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ segments:
128
+ - 0
129
+ version: "0"
130
130
  required_rubygems_version: !ruby/object:Gem::Requirement
131
131
  requirements:
132
- - - ">="
133
- - !ruby/object:Gem::Version
134
- segments:
135
- - 0
136
- version: "0"
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ segments:
135
+ - 0
136
+ version: "0"
137
137
  requirements: []
138
138
 
139
139
  rubyforge_project: