zenweb 3.6.0 → 3.7.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: cc755e676f07eae47d4e65f3a785fbf5ccb7176b
4
- data.tar.gz: e5e47a35122be41500fe61d135210f75556778f4
3
+ metadata.gz: 59aedc4e1523d263698c9a92cbb41cb8c8d51a80
4
+ data.tar.gz: a5e72a0d35e81b61e006b5f69071108b49272ba8
5
5
  SHA512:
6
- metadata.gz: 46fa0dc8ba97b3dc62e5e427f78599df368c844a5b7ff0964b85c97ecaa7b7f7559e190351d915eb95aeb8ad621aded52a6372f4f5ed1d8dd73e23b67a0c99fd
7
- data.tar.gz: f24ab230786bd0f2c86b8152487a242d860a22f1f87a2f04bd86b98797f5ee1dc116d5df2db59d224317a5616eb861e6d206cb86370801977291a7805161063e
6
+ metadata.gz: 5adb565fd00389d8c03d263182a5466906d54f736bb0987ed0456dba7f450c075b238f430a9e20eac7188d2c78a08c2d18bfef8de86fe50c6d7191994e9e6701
7
+ data.tar.gz: 7274de264e64b2600932a24d9070d821ed22accd30b03d2e64509eb742ca811826c7b7da088e44f4e4f3fd6ac2f5327052858f7527a7a1b0689c0706cd647733
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/History.txt CHANGED
@@ -1,3 +1,21 @@
1
+ === 3.7.0 / 2014-12-12
2
+
3
+ * 8 minor enhancements:
4
+
5
+ * Added Page#series_page.
6
+ * Added Page#tag_pages.
7
+ * Added SeriesPage::all and made instances register themselves automatically.
8
+ * Added Site#html_page_map(&mapfn) to return a list of pages from mapfn.
9
+ * Added Site#link_list(&mapfn) to return a list of html links from mapfn.
10
+ * Added TagDetail::all and made instances register themselves automatically.
11
+ * Removed SeriesPage::generate in farvor of plain new/initialize.
12
+ * Removed TagDetail::generate in favor of plain new/initialize.
13
+
14
+ * 2 bug fixes:
15
+
16
+ * Fixed unfortunate typo.
17
+ * Replaced tag_list with tag_pages. Design bug made while coding stupid.
18
+
1
19
  === 3.6.0 / 2014-12-09
2
20
 
3
21
  * 12 minor enhancements:
data/lib/zenweb.rb CHANGED
@@ -6,7 +6,7 @@ require "time"
6
6
 
7
7
  module Zenweb
8
8
  # duh
9
- VERSION = "3.6.0"
9
+ VERSION = "3.7.0"
10
10
  end
11
11
 
12
12
  require "zenweb/site"
data/lib/zenweb/page.rb CHANGED
@@ -403,10 +403,13 @@ module Zenweb
403
403
  @url_path ||= File.join(".site", self.url)
404
404
  end
405
405
 
406
- def tag_list
407
- self.tags.map { |tag|
408
- "<a href=\"/blog/tags/#{tag.downcase.gsub(/\W/, '')}.html\">#{tag}</a>"
409
- }.join ", "
406
+ def tag_pages
407
+ (self.config[:tags] || []).map { |t| Zenweb::TagDetail.all[t] }.compact
408
+ end
409
+
410
+ def series_page
411
+ series = self.config[:series]
412
+ Zenweb::SeriesPage.all[series] if series
410
413
  end
411
414
 
412
415
  ##
@@ -538,17 +541,17 @@ module Zenweb
538
541
  class TagDetail < TagIndex
539
542
  attr_accessor :tag
540
543
 
544
+ def self.all
545
+ @@all ||= {}
546
+ end
547
+
541
548
  def self.generate_all site, dir, pages
542
549
  tags_for(pages).sort.each do |tag, pgs|
543
550
  path = tag.downcase.gsub(/\W+/, '')
544
- generate site, "#{dir}/#{path}.html.md.erb", pgs, tag
551
+ self.all[tag] = self.new site, "#{dir}/#{path}.html.md.erb", pgs, tag
545
552
  end
546
553
  end
547
554
 
548
- def self.generate site, path, pages, tag
549
- self.new site, path, pages, tag
550
- end
551
-
552
555
  def initialize site, path, pages, tag
553
556
  super site, path, pages
554
557
  self.tag = tag
@@ -562,6 +565,10 @@ module Zenweb
562
565
  class SeriesPage < GeneratedIndex
563
566
  attr_accessor :series
564
567
 
568
+ def self.all
569
+ @@all ||= {}
570
+ end
571
+
565
572
  def self.series_for pages
566
573
  collate_by pages, :series
567
574
  end
@@ -570,15 +577,12 @@ module Zenweb
570
577
  series_for(pages).sort.each do |series, pgs|
571
578
  next unless series
572
579
  path = series.downcase.gsub(/\W/, '-')
573
- generate site, "#{dir}/#{path}.html.md.erb", pgs, series
580
+ path = "#{dir}/#{path}.html.md.erb"
581
+ self.all[series] = self.new(site, path, pgs, series)
574
582
  end
575
583
  end
576
584
 
577
- def self.generate site, path, pages, series
578
- self.new site, path, pages, series
579
- end
580
-
581
- def initialize sate, path, pages, series
585
+ def initialize site, path, pages, series
582
586
  super site, path, pages
583
587
  self.series = series
584
588
  end
data/lib/zenweb/site.rb CHANGED
@@ -96,6 +96,14 @@ module Zenweb
96
96
  task(:site).invoke
97
97
  end
98
98
 
99
+ ##
100
+ # Return a list of all pages my applying +map+ to all html_pages
101
+ # and cleaning up the results.
102
+
103
+ def html_page_map &map
104
+ html_pages.map(&map).flatten.uniq.compact
105
+ end
106
+
99
107
  ##
100
108
  # Returns a list of all known html pages.
101
109
 
@@ -114,6 +122,14 @@ module Zenweb
114
122
  @layouts[name]
115
123
  end
116
124
 
125
+ ##
126
+ # Return a list of HTML links after applying +map+ to all html
127
+ # pages and cleaning the results.
128
+
129
+ def link_list &map
130
+ html_page_map(&map).map(&:link_html)
131
+ end
132
+
117
133
  ##
118
134
  # Proxy object for the config. Returns a config item at +msg+.
119
135
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zenweb
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 3.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Davis
@@ -29,7 +29,7 @@ cert_chain:
29
29
  xJcC6UN6NHMOVMyAXsr2HR0gRRx4ofN1LoP2KhXzSr8UMvQYlwPmE0N5GQv1b5AO
30
30
  VpzF30vNaJK6ZT7xlIsIlwmH
31
31
  -----END CERTIFICATE-----
32
- date: 2014-12-10 00:00:00.000000000 Z
32
+ date: 2014-12-13 00:00:00.000000000 Z
33
33
  dependencies:
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: rake
@@ -113,14 +113,14 @@ dependencies:
113
113
  requirements:
114
114
  - - ~>
115
115
  - !ruby/object:Gem::Version
116
- version: '5.4'
116
+ version: '5.5'
117
117
  type: :development
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - ~>
122
122
  - !ruby/object:Gem::Version
123
- version: '5.4'
123
+ version: '5.5'
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: rdoc
126
126
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- ��,�*�C��J��߈���3(+S��`�z
2
- F�M(�G:C���4�k�wl7���͑����i��ʘu�,B@w�"�7-���ȩH��=�l;��T��f2�����?1�أx_+�9�Ų#�@4��+TOC�)G�� �h�Cdi]��˞s�4�y���gB�gu}K�����l�Y;k^��!�!�"�u�&s#����R�C���\�G�����
1
+ ��L:�:">��R,�z} t����������c�q߆�$���5^Ώ�F�H��Aꂯ��A�#+���-�� y�2�� ���z`���K��-{]P����\���YvL3^����uU3��r������pp~��it�#�ֳ��gZ�=�9�%C;4����������ϝ��} t\[JQ�{���Gk�m�S���:{���� �>#Ԗ*�q���΅Ft 4���Tg�������A��A�
2
+