zenweb 3.0.0.b5 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,3 +1,26 @@
1
+ === 3.0.0 / 2012-11-03
2
+
3
+ * 1 major enhancement:
4
+
5
+ * Added ability to run extend_<filetype> so plugins can directly extend pages based on type.
6
+
7
+ * 10 minor enhancements:
8
+
9
+ * #sitemap no longer takes a pages arg. It does too much already.
10
+ * 1.8: Added Enumerable#chunk
11
+ * Added Array#deep_each.
12
+ * Added Page#date_str ... prolly needs more love.
13
+ * Markdown helper now extends Page instances with MarkdownHelpers.
14
+ * Moved all markdown methods into MarkdownHelpers. No more infection of Page.
15
+ * Page#analytics now calls both and is smart about it.
16
+ * Refactored analytics and split into google_analytics and gauges_analytics.
17
+ * Removed example analytics include now that it is pushed up to the lib.
18
+ * Rewrote markdown #sitemap so that it is non-recursive and works across non-markdown pages.
19
+
20
+ * 1 bug fix:
21
+
22
+ * Force html entities to be symbolic. WTF kramdown? Different output on 1.8 and 1.9??
23
+
1
24
  === 3.0.0.b5 / 2012-08-21
2
25
 
3
26
  * 1 minor enhancement:
data/Manifest.txt CHANGED
@@ -6,7 +6,6 @@ Rakefile
6
6
  example-site/.isolate.rb
7
7
  example-site/Rakefile
8
8
  example-site/_config.yml
9
- example-site/_includes/analytics.html.erb
10
9
  example-site/_includes/header.html.erb
11
10
  example-site/_includes/page_list_item.html
12
11
  example-site/_includes/post_list_item.html
@@ -24,7 +24,7 @@
24
24
  </head>
25
25
 
26
26
  <body>
27
- {{ include "analytics.html.erb", page }}
27
+ {{ google_analytics }}
28
28
 
29
29
  <div id="header">
30
30
  <h1><a href="/">{{ page.header }}</a></h1>
@@ -9,6 +9,42 @@ def File.each_parent dir, file
9
9
  end
10
10
  end
11
11
 
12
+ module Enumerable
13
+ def chunk
14
+ bin, result, prev = [], [], Object.new
15
+
16
+ each do |o|
17
+ curr = yield o
18
+
19
+ if prev != curr then
20
+ bin = []
21
+ result << [curr, bin]
22
+ prev = curr
23
+ end
24
+
25
+ bin << o
26
+ end
27
+
28
+ result
29
+ end unless [].respond_to? :chunk
30
+ end
31
+
32
+ class Array # :nodoc:
33
+ def deep_each(depth = 0, &b) # :nodoc:
34
+ return self.to_enum(:deep_each) unless b
35
+
36
+ each do |x|
37
+ case x
38
+ when Array then
39
+ x.deep_each(depth + 1, &b)
40
+ else
41
+ # yield (depth-1)/2, x
42
+ yield depth, x
43
+ end
44
+ end
45
+ end
46
+ end
47
+
12
48
  class File # :nodoc:
13
49
  RUBY19 = "<3".respond_to? :encoding # :nodoc:
14
50
 
data/lib/zenweb/page.rb CHANGED
@@ -52,6 +52,11 @@ module Zenweb
52
52
  # TODO: make sure that creating page /a.html strips leading / from path
53
53
  @site, @path = site, path
54
54
  @config = config if config
55
+
56
+ self.filetypes.each do |type|
57
+ send "extend_#{type}" if self.respond_to? "extend_#{type}"
58
+ end
59
+
55
60
  @subpages = []
56
61
  end
57
62
 
@@ -66,7 +71,7 @@ module Zenweb
66
71
  # All pages below this page, recursively.
67
72
 
68
73
  def all_subpages
69
- subpages.map { |p| [p, p.all_subpages] }.flatten
74
+ subpages.map { |p| [p, p.all_subpages] }
70
75
  end
71
76
 
72
77
  ##
@@ -146,6 +151,11 @@ module Zenweb
146
151
  Time.local(*date.split(/-/).map(&:to_i)) if date
147
152
  end
148
153
 
154
+ def date_str
155
+ fmt ||= self.config["date_fmt"] || "%Y-%m" # REFACTOR: yuck
156
+ self.date.strftime fmt
157
+ end
158
+
149
159
  ##
150
160
  # Returns true if this page has a date (via config or within the path).
151
161
 
@@ -408,7 +418,7 @@ module Zenweb
408
418
  self.layout.wire
409
419
  end
410
420
 
411
- file url_path => all_subpages.map(&:url_path) if url =~ /index.html/
421
+ file url_path => all_subpages.flatten.map(&:url_path) if url =~ /index.html/
412
422
 
413
423
  unless url_dir =~ %r%/_% then
414
424
  directory url_dir
@@ -17,4 +17,51 @@ class Zenweb::Page
17
17
  </script>
18
18
  EOM
19
19
  end
20
+
21
+ def google_analytics
22
+ if site.config["google_ua"] then
23
+ <<-"EOM".gsub(/^ {8}/, '')
24
+ <script type="text/javascript">
25
+ var _gaq = _gaq || [];
26
+ _gaq.push(['_setAccount', '#{site.google_ua}']);
27
+ _gaq.push(['_trackPageview']);
28
+
29
+ (function() {
30
+ var ga = document.createElement('script');
31
+ ga.type = 'text/javascript';
32
+ ga.async = true;
33
+ ga.src = ('https:' == document.location.protocol ?
34
+ 'https://ssl' : 'http://www') +
35
+ '.google-analytics.com/ga.js';
36
+ (document.getElementsByTagName('head')[0] ||
37
+ document.getElementsByTagName('body')[0]).appendChild(ga);
38
+ })();
39
+ </script>
40
+ EOM
41
+ end
42
+ end
43
+
44
+ def gauges_analytics
45
+ if site.config["gauges_id"] then
46
+ <<-"EOM".gsub(/^ {8}/, '')
47
+ <script type="text/javascript">
48
+ var _gauges = _gauges || [];
49
+ (function() {
50
+ var t = document.createElement('script');
51
+ t.type = 'text/javascript';
52
+ t.async = true;
53
+ t.id = 'gauges-tracker';
54
+ t.setAttribute('data-site-id', '#{site.gauges_id}');
55
+ t.src = '//secure.gaug.es/track.js';
56
+ var s = document.getElementsByTagName('script')[0];
57
+ s.parentNode.insertBefore(t, s);
58
+ })();
59
+ </script>
60
+ EOM
61
+ end
62
+ end
63
+
64
+ def analytics
65
+ [google_analytics, gauges_analytics].compact.join "\n\n"
66
+ end
20
67
  end # google
@@ -2,11 +2,12 @@ class Zenweb::Page
2
2
  KRAMDOWN_CONFIG = { # :nodoc:
3
3
  :toc_levels => '2..4',
4
4
 
5
+ :entity_output => :symbolic,
6
+
5
7
  :coderay_wrap => :div,
6
8
  :coderay_line_numbers => :table,
7
9
  :coderay_tab_width => 4,
8
10
  :coderay_css => :class,
9
- # TODO: turn off smart quotes
10
11
  }
11
12
 
12
13
  ##
@@ -16,6 +17,10 @@ class Zenweb::Page
16
17
  markdown(content || self.body) # HACK
17
18
  end
18
19
 
20
+ def extend_md
21
+ extend Zenweb::Page::MarkdownHelpers
22
+ end
23
+
19
24
  ##
20
25
  # Render markdown content.
21
26
  #
@@ -29,93 +34,90 @@ class Zenweb::Page
29
34
  gsub(/^``` *(\w+)/) { "{:lang=\"#$1\"}\n~~~" }.
30
35
  gsub(/^```/, '~~~')
31
36
 
32
- Kramdown::Document.new(content, KRAMDOWN_CONFIG).to_html
37
+ Kramdown::Document.new(content, KRAMDOWN_CONFIG.dup).to_html
33
38
  end
34
39
 
35
- ############################################################
36
- # Helper Methods:
40
+ module MarkdownHelpers
41
+ ##
42
+ # Returns a markdown formatted sitemap for the given pages or the
43
+ # current page's subpages. This intelligently composes a sitemap
44
+ # whether the pages are ordered (dated) or not or a combination of
45
+ # the two.
37
46
 
38
- ##
39
- # Returns a markdown formatted sitemap for the given pages or the
40
- # current page's subpages. This intelligently composes a sitemap
41
- # whether the pages are ordered (dated) or not or a combination of
42
- # the two.
43
-
44
- def sitemap pages = nil, indent = 0
45
- pages ||= self.subpages
46
- dated, regular = pages.partition(&:dated?)
47
-
48
- bonus = 0
49
- prev = nil
50
- regular = regular
51
- subpages =
52
- regular.sort_by { |p| p.url } +
53
- dated.sort_by { |p| [-p.date.to_i, p.url] }
54
-
55
- subpages.map { |page|
56
- x = []
57
-
58
- if page.dated? then
59
- bonus = 1
60
- fmt ||= page.config["date_fmt"] || "%Y-%m" # REFACTOR: yuck
61
- curr = page.date.strftime fmt
62
- if prev != curr then
63
- x << "#{" " * (indent)}* #{curr}:"
64
- prev = curr
65
- end
66
- end
67
-
68
- x << "#{" " * (indent+bonus)}* [#{page.title}](#{page.clean_url})"
69
- x += [page.sitemap(nil, indent+bonus+1)] unless page.subpages.empty?
70
- x
71
- }.flatten.join "\n"
72
- end
47
+ def sitemap
48
+ self.all_subpages.deep_each.chunk { |n, p| n }.map { |depth, a|
49
+ level = (depth-1)/2
50
+ dated, normal = a.map(&:last).partition(&:dated?)
73
51
 
74
- ##
75
- # Convenience function to return a markdown TOC.
52
+ normal = normal.sort_by(&:url).map { |p| page_sitemap_url p, level }
76
53
 
77
- def toc
78
- "* \n{:toc}\n"
79
- end
54
+ dated = dated_map(dated) { |month, ps2|
55
+ date_sorted_map(ps2) { |p|
56
+ page_sitemap_url p, level + 1
57
+ }.unshift "#{" " * level}* #{month}:"
58
+ }
80
59
 
81
- ##
82
- # Return a kramdown block-tag to add attributes to the following (or
83
- # preceding... kramdown is a bit crazy) block. Attributes can either
84
- # be a simple name or a hash of key/value pairs.
60
+ normal + dated
61
+ }.join "\n"
62
+ end
85
63
 
86
- def attr h_or_name
87
- h_or_name = h_or_name.map { |k,v| "#{k}=\"#{v}\"" }.join " " if
88
- Hash === h_or_name
64
+ def page_sitemap_url page, depth # :nodoc:
65
+ "#{" " * (depth)}* [#{page.title}](#{page.clean_url})"
66
+ end
89
67
 
90
- "{:#{h_or_name}}"
91
- end
68
+ def date_sorted_map a, &b # :nodoc:
69
+ a.sort_by { |p| [-p.date.to_i, p.url] }.map(&b)
70
+ end
92
71
 
93
- ##
94
- # Return a kramdown block-tag for a CSS class.
72
+ def dated_map a, &b # :nodoc:
73
+ a.group_by(&:date_str).sort.reverse.map(&b)
74
+ end
95
75
 
96
- def css_class name
97
- attr ".#{name}"
98
- end
76
+ ##
77
+ # Convenience function to return a markdown TOC.
99
78
 
100
- ##
101
- # Return a kramdown block-tag for a CSS ID.
79
+ def toc
80
+ "* \n{:toc}\n"
81
+ end
102
82
 
103
- def css_id name
104
- attr "##{name}"
105
- end
83
+ ##
84
+ # Return a kramdown block-tag to add attributes to the following (or
85
+ # preceding... kramdown is a bit crazy) block. Attributes can either
86
+ # be a simple name or a hash of key/value pairs.
106
87
 
107
- ##
108
- # Return a markdown-formatted link for a given url and title.
88
+ def attr h_or_name
89
+ h_or_name = h_or_name.map { |k,v| "#{k}=\"#{v}\"" }.join " " if
90
+ Hash === h_or_name
109
91
 
110
- def link(url, title) # :nodoc:
111
- "[#{title}](#{url})"
112
- end
92
+ "{:#{h_or_name}}"
93
+ end
113
94
 
114
- ##
115
- # Return a markdown-formatted image for a given url and an optional alt.
95
+ ##
96
+ # Return a kramdown block-tag for a CSS class.
97
+
98
+ def css_class name
99
+ attr ".#{name}"
100
+ end
101
+
102
+ ##
103
+ # Return a kramdown block-tag for a CSS ID.
116
104
 
117
- def image url, alt=url
118
- "![#{alt}](#{url})"
105
+ def css_id name
106
+ attr "##{name}"
107
+ end
108
+
109
+ ##
110
+ # Return a markdown-formatted link for a given url and title.
111
+
112
+ def link(url, title) # :nodoc:
113
+ "[#{title}](#{url})"
114
+ end
115
+
116
+ ##
117
+ # Return a markdown-formatted image for a given url and an optional alt.
118
+
119
+ def image url, alt=url
120
+ "![#{alt}](#{url})"
121
+ end
119
122
  end
120
123
  end # markdown
121
-
data/lib/zenweb/site.rb CHANGED
@@ -208,7 +208,7 @@ module Zenweb
208
208
  @pages.values.each do |p|
209
209
  unless p.subpages.empty? then
210
210
  sorted = p.subpages.sort_by(&:clean_url)
211
- sorted = sorted.reverse if p.subpages.first.dated_path?
211
+ sorted = sorted.reverse if sorted.first.dated_path?
212
212
  p.subpages.replace sorted
213
213
  end
214
214
  end
data/lib/zenweb.rb CHANGED
@@ -6,7 +6,7 @@ require "time"
6
6
 
7
7
  module Zenweb
8
8
  # duh
9
- VERSION = "3.0.0.b5"
9
+ VERSION = "3.0.0"
10
10
  end
11
11
 
12
12
  require "zenweb/site"
@@ -4,6 +4,38 @@ require "rubygems"
4
4
  require "minitest/autorun"
5
5
  require "zenweb/extensions"
6
6
 
7
+ class TestArray < MiniTest::Unit::TestCase
8
+ def test_deep_each
9
+ act = []
10
+ [1, 2, [3, [4], 5], 6].deep_each do |n, o|
11
+ act << [o, n]
12
+ end
13
+
14
+ exp = [[1, 0], [2, 0], [3, 1], [4, 2], [5, 1], [6, 0]]
15
+ assert_equal exp, act
16
+ end
17
+
18
+ def test_deep_each_enum
19
+ act = [1, 2, [3, [4], 5], 6].deep_each.map { |n, o|
20
+ [o, n]
21
+ }
22
+
23
+ exp = [[1, 0], [2, 0], [3, 1], [4, 2], [5, 1], [6, 0]]
24
+ assert_equal exp, act
25
+ end
26
+
27
+ def test_chunk
28
+ act = [3,1,4,1,5,9,2,6,5,3,5].chunk {|n| n.even? }.to_a
29
+ exp = [[false, [3, 1]],
30
+ [true, [4]],
31
+ [false, [1, 5, 9]],
32
+ [true, [2, 6]],
33
+ [false, [5, 3, 5]]]
34
+
35
+ assert_equal exp, act
36
+ end
37
+ end
38
+
7
39
  class TestFile < MiniTest::Unit::TestCase
8
40
  def test_class_each_parent
9
41
  a = []
@@ -158,9 +158,8 @@ class TestZenwebPage < MiniTest::Unit::TestCase
158
158
  def test_include
159
159
  # test via a layout page so we can test indirect access of page vars
160
160
  layout = Zenweb::Page.new(site, "_layouts/site.erb")
161
- fragment = layout.include("analytics.html.erb", page)
162
- assert_match(/UA-\d+/, site.config["google_ua"])
163
- assert_match site.config["google_ua"], fragment
161
+ fragment = layout.include("header.html.erb", page)
162
+ assert_match(/Example Page 1/, fragment)
164
163
  end
165
164
 
166
165
  def test_include_page_var
@@ -51,9 +51,8 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
51
51
  end
52
52
 
53
53
  def test_render_md_content
54
- skip "not yet"
55
54
  act = page.render_md page, "woot"
56
- exp = "<p>Not really much here to see.</p>\n"
55
+ exp = "<p>woot</p>\n"
57
56
 
58
57
  assert_equal exp, act
59
58
  end
@@ -66,16 +65,16 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
66
65
  end
67
66
 
68
67
  def test_sitemap
69
- build_fake_site %w[a/index.html
70
- a/b/index.html
68
+ build_fake_site %w[a/index.html.md
69
+ a/b/index.html.md
71
70
  a/b/2012-01-02-p1.html
72
71
  a/b/2012-02-03-p2.html
73
72
  a/b/2012-03-04-p3.html]
74
73
 
75
- page = site.pages["a/index.html"]
74
+ page = site.pages["a/index.html.md"]
76
75
  act = page.sitemap
77
76
  exp = <<-END.cleanup
78
- * [Title for a/b/index.html](/a/b/)
77
+ * [Title for a/b/index.html.md](/a/b/)
79
78
  * 2012-03:
80
79
  * [Title for a/b/2012-03-04-p3.html](/a/b/2012/03/04/p3.html)
81
80
  * 2012-02:
@@ -88,16 +87,16 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
88
87
  end
89
88
 
90
89
  def test_sitemap_multidir
91
- build_fake_site %w[a/index.html
92
- a/b/index.html
90
+ build_fake_site %w[a/index.html.md
91
+ a/b/index.html.md
93
92
  a/b/p1.html
94
93
  a/b/p2.html
95
94
  a/b/p3.html]
96
95
 
97
- page = site.pages["a/index.html"]
96
+ page = site.pages["a/index.html.md"]
98
97
  act = page.sitemap
99
98
  exp = <<-END.cleanup
100
- * [Title for a/b/index.html](/a/b/)
99
+ * [Title for a/b/index.html.md](/a/b/)
101
100
  * [Title for a/b/p1.html](/a/b/p1.html)
102
101
  * [Title for a/b/p2.html](/a/b/p2.html)
103
102
  * [Title for a/b/p3.html](/a/b/p3.html)
@@ -108,12 +107,12 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
108
107
 
109
108
  def test_sitemap_subdir
110
109
  build_fake_site %w[a/index.html
111
- a/b/index.html
110
+ a/b/index.html.md
112
111
  a/b/p1.html
113
112
  a/b/p2.html
114
113
  a/b/p3.html]
115
114
 
116
- page = site.pages["a/b/index.html"]
115
+ page = site.pages["a/b/index.html.md"]
117
116
  act = page.sitemap
118
117
  exp = <<-END.cleanup
119
118
  * [Title for a/b/p1.html](/a/b/p1.html)
@@ -125,8 +124,8 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
125
124
  end
126
125
 
127
126
  def test_sitemap_subdir_mixed
128
- build_fake_site %w[index.html
129
- a/index.html
127
+ build_fake_site %w[index.html.md
128
+ a/index.html.md
130
129
  a/a.html
131
130
  a/b.html
132
131
  a/c.html
@@ -136,25 +135,25 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
136
135
  a/2012-02-02-p1.html
137
136
  a/2012-02-03-p2.html
138
137
  a/2012-02-04-p3.html
139
- c/index.html
138
+ c/index.html.md
140
139
  c/a.html
141
140
  c/b.html
142
141
  c/c.html
143
- c/d/index.html
142
+ c/d/index.html.md
144
143
  c/d/e.html
145
144
  c/d/f.html
146
145
  c/d/g.html
147
- d/index.html
146
+ d/index.html.md
148
147
  d/2012-01-02-p1.html
149
148
  d/2012-01-03-p2.html
150
149
  d/2012-01-04-p3.html
151
150
  some_random_page.html
152
151
  ]
153
152
 
154
- page = site.pages["index.html"]
153
+ page = site.pages["index.html.md"]
155
154
  act = page.sitemap
156
155
  exp = <<-END.cleanup
157
- * [Title for a/index.html](/a/)
156
+ * [Title for a/index.html.md](/a/)
158
157
  * [Title for a/a.html](/a/a.html)
159
158
  * [Title for a/b.html](/a/b.html)
160
159
  * [Title for a/c.html](/a/c.html)
@@ -166,15 +165,15 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
166
165
  * [Title for a/2012-01-04-p3.html](/a/2012/01/04/p3.html)
167
166
  * [Title for a/2012-01-03-p2.html](/a/2012/01/03/p2.html)
168
167
  * [Title for a/2012-01-02-p1.html](/a/2012/01/02/p1.html)
169
- * [Title for c/index.html](/c/)
168
+ * [Title for c/index.html.md](/c/)
170
169
  * [Title for c/a.html](/c/a.html)
171
170
  * [Title for c/b.html](/c/b.html)
172
171
  * [Title for c/c.html](/c/c.html)
173
- * [Title for c/d/index.html](/c/d/)
172
+ * [Title for c/d/index.html.md](/c/d/)
174
173
  * [Title for c/d/e.html](/c/d/e.html)
175
174
  * [Title for c/d/f.html](/c/d/f.html)
176
175
  * [Title for c/d/g.html](/c/d/g.html)
177
- * [Title for d/index.html](/d/)
176
+ * [Title for d/index.html.md](/d/)
178
177
  * 2012-01:
179
178
  * [Title for d/2012-01-04-p3.html](/d/2012/01/04/p3.html)
180
179
  * [Title for d/2012-01-03-p2.html](/d/2012/01/03/p2.html)
@@ -186,7 +185,7 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
186
185
  end
187
186
 
188
187
  def test_sitemap_subdir_bloggish
189
- build_fake_site %w[index.html
188
+ build_fake_site %w[index.html.md
190
189
  2012-01-02-p1.html
191
190
  2012-01-03-p2.html
192
191
  2012-01-04-p3.html
@@ -197,7 +196,7 @@ class TestZenwebPageMarkdown < MiniTest::Unit::TestCase
197
196
  some_random_page.html
198
197
  ]
199
198
 
200
- page = site.pages["index.html"]
199
+ page = site.pages["index.html.md"]
201
200
  act = page.sitemap
202
201
  exp = <<-END.cleanup
203
202
  * [Title for sitemap.html](/sitemap.html)
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,15 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zenweb
3
3
  version: !ruby/object:Gem::Version
4
- hash: -1329660202
5
- prerelease: 6
4
+ hash: 7
5
+ prerelease:
6
6
  segments:
7
7
  - 3
8
8
  - 0
9
9
  - 0
10
- - b
11
- - 5
12
- version: 3.0.0.b5
10
+ version: 3.0.0
13
11
  platform: ruby
14
12
  authors:
15
13
  - Ryan Davis
@@ -38,7 +36,7 @@ cert_chain:
38
36
  FBHgymkyj/AOSqKRIpXPhjC6
39
37
  -----END CERTIFICATE-----
40
38
 
41
- date: 2012-08-22 00:00:00 Z
39
+ date: 2012-11-03 00:00:00 Z
42
40
  dependencies:
43
41
  - !ruby/object:Gem::Dependency
44
42
  name: rake
@@ -123,11 +121,11 @@ dependencies:
123
121
  requirements:
124
122
  - - ~>
125
123
  - !ruby/object:Gem::Version
126
- hash: 1
124
+ hash: 25
127
125
  segments:
128
- - 3
129
- - 3
130
- version: "3.3"
126
+ - 4
127
+ - 1
128
+ version: "4.1"
131
129
  type: :development
132
130
  version_requirements: *id006
133
131
  - !ruby/object:Gem::Dependency
@@ -153,11 +151,11 @@ dependencies:
153
151
  requirements:
154
152
  - - ~>
155
153
  - !ruby/object:Gem::Version
156
- hash: 7
154
+ hash: 5
157
155
  segments:
158
156
  - 3
159
- - 0
160
- version: "3.0"
157
+ - 1
158
+ version: "3.1"
161
159
  type: :development
162
160
  version_requirements: *id008
163
161
  description: |-
@@ -193,7 +191,6 @@ files:
193
191
  - example-site/.isolate.rb
194
192
  - example-site/Rakefile
195
193
  - example-site/_config.yml
196
- - example-site/_includes/analytics.html.erb
197
194
  - example-site/_includes/header.html.erb
198
195
  - example-site/_includes/page_list_item.html
199
196
  - example-site/_includes/post_list_item.html
@@ -264,14 +261,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
264
261
  required_rubygems_version: !ruby/object:Gem::Requirement
265
262
  none: false
266
263
  requirements:
267
- - - ">"
264
+ - - ">="
268
265
  - !ruby/object:Gem::Version
269
- hash: 25
266
+ hash: 3
270
267
  segments:
271
- - 1
272
- - 3
273
- - 1
274
- version: 1.3.1
268
+ - 0
269
+ version: "0"
275
270
  requirements: []
276
271
 
277
272
  rubyforge_project: zenweb
metadata.gz.sig CHANGED
Binary file
@@ -1,11 +0,0 @@
1
- <script type="text/javascript">
2
- var _gaq = _gaq || [];
3
- _gaq.push(['_setAccount', '{{ site.google_ua }}']);
4
- _gaq.push(['_trackPageview']);
5
-
6
- (function() {
7
- var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
8
- ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
9
- (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
10
- })();
11
- </script>