hlt-site_builder 0.1.0 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6d75c9cb4df829bd523da400e20e1ccf2e9341a
4
- data.tar.gz: f470c39f48820a5c1266c490de6d34f7d2b27c62
3
+ metadata.gz: 2fe112e84ca2c45e4a5bb131c53fb7e87ca437c0
4
+ data.tar.gz: 8b3ad7fe721d40c5ff4ec115c7385f072745ee87
5
5
  SHA512:
6
- metadata.gz: 70fb7b0fea17b2268cc4624bbefa848285541c583c5f68f2ee3f3e2b3fbc2a2eaf8959d2a48ef993b4821d1483da42c528b76b6f405159c61e94c1c0f2d4def8
7
- data.tar.gz: 161394e6c119bcf53f7d35a3b9bed7bfb2c8c0a5403d55d3d656af8ddc41f940a52898fd0ea15be7b262e1d35f2ab48bae3a7f14f61c03a73b065d0da877e44d
6
+ metadata.gz: 79d1f60fd73e0dd9299b00997a68e6ababc0e511d831b41d9f1c798afdbd1dea8dc40a44135bf7f1802abdba7edd121064a45d4b6666fc764a5464469ec3cfc2
7
+ data.tar.gz: 1e696a9831528a4d349bd1b4f3f382e9eeb7fe1d63e1ac673f9c3f363da0d09e803bd4c5c37c9a4c55f6aa3134cf5ad9f38de44a74d56f3d9b75123c7135e6b5
checksums.yaml.gz.sig CHANGED
@@ -1 +1,3 @@
1
- ��=j�eX��e �~��9��<٭+�����|' �ѷE�J́cw���z�Zs �����EV7�e3Ah�<5�����DG���X0m��&D�>��o��wE��41W?nܾ� �Z���N)\Q3~��� ���_��c����1ʪq6��u��G{����<��uV���󴠄eG�nh���)j���.2^��ތC��ĩ��և��'I[�M��$���eI'� QV'mT�1�7�~dk���q��
1
+ �
2
+ qe��n�< ����oF\x�?0�P!��)�E�e� �
3
+ ��f9��[l�a}�Y�Ϩ��ѾԦ�"��K�7�12 "�d2�>�ٌ7��5�c��bY��F��Id��r���xx�j�ŜG��py�8�?����`�Ԉ�@����qq1���d��b�^�P?C;�������qsO�?��\�G�Z5�-�
data.tar.gz.sig CHANGED
Binary file
@@ -5,6 +5,7 @@
5
5
  require 'dynarex'
6
6
  require 'hlt'
7
7
  require 'fileutils'
8
+ require 'html-to-css'
8
9
 
9
10
 
10
11
  class String
@@ -19,12 +20,34 @@ end
19
20
  class HltSiteBuilder
20
21
 
21
22
  def initialize(file, options={})
23
+
22
24
  @opt = {style: true}.merge options
23
25
  @dynarex = Dynarex.new
24
26
  @dynarex.parse File.read file
27
+
28
+ if @dynarex.summary['container_id'] then
29
+ @opt.merge!(container_id: @dynarex.summary['container_id'])
30
+ end
31
+
32
+ end
33
+
34
+ def docs_each()
35
+
36
+ pages = @pages.to_a
37
+ pages[0][0] = 'index'
38
+
39
+ pages.keys.each do |pg_name|
40
+
41
+ filename = format_filename(pg_name)
42
+ doc = Rexle.new(File.read filename)
43
+ yield(filename, doc)
44
+ end
45
+
25
46
  end
26
47
 
27
- def generate()
48
+ def generate(options={})
49
+
50
+ opt = {css: false}.merge options
28
51
 
29
52
  keys = @dynarex.records.keys
30
53
  @template = keys.shift
@@ -34,20 +57,40 @@ class HltSiteBuilder
34
57
  r.merge({label.strip.to_sym => val})
35
58
  end
36
59
 
60
+ style = @opt[:style]
61
+
62
+ if opt[:css] == true then
63
+
64
+
65
+ @opt[:style] = true
66
+ generate_pages @pages.keys
67
+ @htc = HtmlToCss.new
68
+
69
+ File.write 'css/layout.css', @htc.to_layout
70
+ File.write 'css/style.css', @htc.to_style
71
+ @opt[:style] = style
72
+
73
+ end
74
+
37
75
  generate_pages @pages.keys
76
+ puts 'files generated'
38
77
  end
39
78
 
40
- def write()
79
+ def to_layout() @htc.to_layout end
80
+ def to_style() @htc.to_style end
81
+
82
+ def pages_each()
41
83
 
42
84
  pages = @pages.to_a
43
85
  pages[0][0] = 'index'
44
- pages.each do |pg_name, content|
86
+ pages.keys.each do |pg_name|
45
87
  filename = format_filename(pg_name)
46
88
  content = File.read filename
47
89
  yield(filename, content)
48
90
  end
49
91
  end
50
92
 
93
+
51
94
  private
52
95
 
53
96
  def format_filename(name)
@@ -82,11 +125,12 @@ class HltSiteBuilder
82
125
  doc.root.xpath('//.[@style]').each {|e| e.attributes.delete :style}
83
126
  end
84
127
 
85
- puts 'saving_ ' + filename
128
+ #puts 'saving ' + filename
86
129
  File.write filename, doc.content
87
130
  end
88
131
 
89
132
  FileUtils.mv f(a[0]), 'index.html'
133
+
90
134
  end
91
135
 
92
136
  end
@@ -94,10 +138,10 @@ end
94
138
  if __FILE__ == $0 then
95
139
 
96
140
  hsb = HltSiteBuilder.new('pages.txt', style: false, container_id: 'main')
97
- hsb.generate
141
+ hsb.generate css: true
98
142
  =begin
99
- hsb.write do |filename, buffer|
143
+ hsb.pages_each do |filename, buffer|
100
144
  File.write filename, buffer.sub(/Sitemap<\/a>\s+<\/li>/m,'\0|')
101
145
  end
102
146
  =end
103
- end
147
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hlt-site_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  mkWEixIobTEV/FcfiNCEpKNfCA5llUve7iRh1zARAkDT0EYTHgRtftY87yBNEDPN
32
32
  GFcWHnpHdfRUPw==
33
33
  -----END CERTIFICATE-----
34
- date: 2013-11-18 00:00:00.000000000 Z
34
+ date: 2013-11-19 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: hlt
@@ -61,6 +61,20 @@ dependencies:
61
61
  - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
+ - !ruby/object:Gem::Dependency
65
+ name: html-to-css
66
+ requirement: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
64
78
  description:
65
79
  email: james@r0bertson.co.uk
66
80
  executables: []
metadata.gz.sig CHANGED
Binary file