zine 0.11.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a7c20f64ec01c120b0b98333261a3d0212355d0e6b28ce5e1290b97752f2d8e
4
- data.tar.gz: ed80eb465ddaa486667e79d250382d315e2fe809f8242e713fc4e743d54ed437
3
+ metadata.gz: fd799d0d16019f2d33ecaf9b60bb5a9c13d8d3b8b82b03f4ff7d8781d5fbcfde
4
+ data.tar.gz: bc32bc64300c4b8327c6426335533970656ab9a33e06fe5e3976ac51c8b14bc6
5
5
  SHA512:
6
- metadata.gz: 37085f8a9cd02c6386410a6a5e225a10135d6f3c4e0cf4826ca4fa3caaac95bdaa6eb52150df6f66e8a3249049bc94c5035d8f92bf6482e3d4c3b7cb5ad90378
7
- data.tar.gz: 3e849db212b7eeb76cd0d340510322688c71b8424ec8ebe9fa272519ec9d863e24b54732c6f8318161895354b3ad582bf67164106a391e1bf82567c1ffca32d7
6
+ metadata.gz: 91d373f480d5282ddaf6a08d08bb69528cf62e7d5cb7532aa4cfb98e5f40cc5ef7f4a9723c41ce2d9961f7650524ac2d4f69cc2da84b3237ebf5c9e11b43fc91
7
+ data.tar.gz: 1325ebca737a5f0bc73641e745bf3466d78a5f2f5f14914c0e8c41953c441ae47c4cf55a7e4527c30079512c45808d6ad63204486c1b52c3ccfc9b14a3e33063
@@ -125,3 +125,33 @@
125
125
  # 0.11.0, November 7, 2018
126
126
 
127
127
  - fixed a bug where String#split would break apart markdown files on tables as well as at the metadata/markdown boundary
128
+
129
+ # 0.12.0 - never pushed, used up until 25 April 2019
130
+
131
+ - added (then removed) Mastodon from the list of contacts, changed the styling a few times, neglected to publish
132
+
133
+ # 0.13.0 - lucky 13 -
134
+
135
+ - added some of the style changes that survived from v12, eg moved social media to the footer
136
+ - added a (permissive as they come) robots.txt file
137
+ - dependency updates, kramdown split into kramdown & kramdown-parser-gfm which seems to be slower :-(
138
+ - bumped the required version of Ruby to 2.3 (for bundler, kramdown, etc)
139
+ - dropped the highline gem (it was only used to get the one input, originally there was going to be more)
140
+ - minor readme updates
141
+ - placeholder site, mostly in case there's ever an app: https://zine.dev
142
+
143
+ TO DO
144
+ - add canonical links to page headers, means the build order needs to change...
145
+ - generate sitemap.xml
146
+ - add an AWS S3 uploader
147
+ - add AWS CloudFront invalidation
148
+ - fix the SFTP error from 0.7/0.8, also likely applies to S3
149
+ - make sure the server's killed on errors (eg if no credentials) so can run it again later without a port conflict
150
+ - tests, lots of tests
151
+
152
+ MAY DO
153
+ - concurrent-ruby gem
154
+ - migration scripts from eg Jekyll?
155
+ - Apple News
156
+ - much refactoring
157
+ - an app
data/README.md CHANGED
@@ -1,20 +1,19 @@
1
1
  # zine
2
- Yet another blog aware static site generator.
3
2
 
4
- ## Warning: pre-release code
3
+ [![Gem Version](https://badge.fury.io/rb/zine.svg)](https://badge.fury.io/rb/zine)
5
4
 
6
- These are the very early days of zine, expect breaking changes.
5
+ Yet another blog aware static site generator.
7
6
 
8
7
  ## Why yet another static blog engine?
9
8
 
10
- Despite the [proliferation in these things][engine_list] (450!) I still find it more comfortable to use my own tools.
9
+ Despite the [proliferation in these things][engine_list] (!) I still find it more comfortable to use my own tools.
11
10
 
12
11
  Distinguishing features include:
13
12
 
14
13
  - ERB templates
15
14
  - Sass stylesheets
16
15
  - fast incremental builds
17
- - SFTP file uploads
16
+ - GitHub & SFTP file uploads
18
17
 
19
18
  Presented here in the hope it's of use to someone else too.
20
19
 
@@ -76,14 +75,9 @@ Commands:
76
75
 
77
76
  ### Up next
78
77
 
79
- This is only a first cut at this gem, the stuff I considered a (barely) minimum viable product. Up next are:
78
+ Many versions on this is only an early cut of this gem, the stuff I considered a (barely) minimum viable product. More to come...
80
79
 
81
- - migration scripts from eg Jekyll? Maybe.
82
- - Apple News
83
- - much refactoring
84
- - docs
85
- - tests, lots of tests
86
- - and a few other things
80
+ A brief TODO list at the end of the change log.
87
81
 
88
82
  ## Contributing
89
83
 
@@ -92,7 +86,7 @@ Yes please. Bug reports and pull requests are welcome on GitHub at https://githu
92
86
  ## Tests
93
87
 
94
88
  ```shell
95
- bundle exec rspec spec # or your alias for that
89
+ rake
96
90
  ```
97
91
 
98
92
  ## License
@@ -70,7 +70,7 @@ module Zine
70
70
  end
71
71
 
72
72
  # currently used to say yes on a script's behalf - in #notice
73
- class MockHighlineYes
73
+ class MockYes
74
74
  def ask(_question)
75
75
  'Y'
76
76
  end
@@ -106,7 +106,7 @@ module Zine
106
106
  @options['upload'],
107
107
  guard.delete_array,
108
108
  guard.upload_array
109
- uploader.upload_decision MockHighlineYes
109
+ uploader.upload_decision MockYes
110
110
  end
111
111
 
112
112
  def write_markdown(default_name, src_dir, file)
@@ -2,6 +2,7 @@ require 'erb'
2
2
  require 'date'
3
3
  require 'htmlcompressor'
4
4
  require 'kramdown'
5
+ require 'kramdown-parser-gfm'
5
6
  require 'pathname'
6
7
  require 'rainbow'
7
8
  require 'yaml'
@@ -39,7 +40,8 @@ module Zine
39
40
  site_URL: site['site_URL'],
40
41
  tags: slugify_tags(front_matter['tags']),
41
42
  title: html_escape(front_matter['title']),
42
- twitter_name: site['twitter_name'] }
43
+ twitter_name: site['twitter_name'],
44
+ uri: '' } # uri only generated for posts, and not until after markdown, TO DO
43
45
  end
44
46
 
45
47
  def public_binding
@@ -104,7 +106,6 @@ module Zine
104
106
  input: 'GFM',
105
107
  auto_ids: false,
106
108
  smart_quotes: %w[apos apos quot quot],
107
- syntax_highlighter: 'rouge'
108
109
  ).to_html
109
110
  @raw_text = nil
110
111
  end
@@ -0,0 +1,9 @@
1
+ module Zine
2
+ # Returns an answer from the CLI
3
+ class Query
4
+ def call(question)
5
+ puts question
6
+ $stdin.gets.chomp
7
+ end
8
+ end
9
+ end
@@ -1,4 +1,4 @@
1
- require 'highline'
1
+ require 'zine/query'
2
2
  require 'rainbow'
3
3
  require 'rack'
4
4
  require 'thin'
@@ -67,7 +67,7 @@ module Zine
67
67
  (@delete_array.empty? && @upload_array.empty?)
68
68
  uploader = Zine::Upload.new rel_path_build, upload_options,
69
69
  @delete_array, @upload_array
70
- uploader.upload_decision HighLine
70
+ uploader.upload_decision Query
71
71
  end
72
72
  end
73
73
  end
@@ -0,0 +1,2 @@
1
+ User-agent: *
2
+ Disallow:
@@ -1 +1 @@
1
- *{margin:0;padding:0}html,body{height:100%}body{background-color:#fff;font-family:GillSansRegular,"Gill Sans MT","Gill Sans","Century Gothic",Calibri,"Trebuchet MS",sans-serif;line-height:1.618;color:#333;text-align:center;font-weight:300}#skiptocontent{height:1px;width:1px;position:absolute;overflow:hidden;top:-10px}h1,h2,h3,h4,h5,h6{color:#333;letter-spacing:0.1em}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:#414f7c;text-decoration:none}h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover{color:#212721}h1{font-weight:300;font-size:2.618em;margin:1.809em 0 0.809em}h2{font-weight:300;font-size:1.618em;margin:1.809em 0 0.809em}h3,h4,h5,h6{font-weight:400;font-size:1em;margin:1.809em 0 0.809em}p,li{margin:1em 0}ul{margin:0}a{color:#414f7c}a:hover{color:#212721}section{margin-bottom:1.618em}section>section{margin-bottom:3.236em}strong{font-weight:400}body>header{width:43em;text-align:center;margin:0 auto 0}body>header a{text-decoration:none;margin-left:0.5em;margin-right:0.5em}body>header,body>main,body>footer{display:block}body>header a{color:#414f7c}body>header a:hover{color:#212721}body>header a.extra{color:#414f7c;margin-left:1em}body>header a.extra:hover{color:#212721}body>header nav ul li{display:inline;list-style:none}.button{width:30px;height:30px;display:inline-block;background-size:100%;text-indent:-999em;text-align:left;margin:20px}.twitter{background:url("https://mikekreuzer.com/assets/webicon-twitter-m.png");background-image:url("https://mikekreuzer.com/assets/webicon-twitter.svg"),none}.rss{background:url("https://mikekreuzer.com/assets/webicon-rss-m.png");background-image:url("https://mikekreuzer.com/assets/webicon-rss.svg"),none}main{text-align:left;width:43em;margin:3em auto 2em}main li{margin-left:2.618em}.meta{color:#667}footer{width:43em;color:#667;border-top:4px solid #ddd;margin:3em auto 2em;overflow:hidden}footer .column{float:left;width:33%;text-align:left}footer .column ul{list-style:none}footer .column a,.tags a{color:#414f7c;text-decoration:none}footer .column a:hover,.tags a:hover{color:#212721;text-decoration:underline}.tags ul li{list-style:none;display:inline;font-variant:small-caps;font-size:1.2em}.archive a{text-decoration:none}ul.archive,ul.archive ul{margin-left:0}ul.archive li,ul.archive ul li{list-style:none;margin-left:0}.post pre{border:1px solid #ddd;background-color:#fff;padding:0 .4em}p.date{color:#667}pre{background-color:#eee;padding:1em;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}code{font-family:Consolas,Menlo,Monaco,"Lucida Console","Courier New",monospace,serif;font-size:0.8em}blockquote{margin:2em 2em 2em 1em;padding:0 .75em 0 1.25em;border-left:2px solid #ddd;border-right:0px solid #ddd}@media all and (max-width: 736px){body>header,main,footer{width:86%;margin:0 auto 0;padding:12px 24px 12px}p{margin-bottom:2em}.button{width:50px;height:50px;margin:20px}footer .column{width:100%}}
1
+ *{margin:0;padding:0}html,body{height:100%}body{background-color:#fff;font-family:GillSansRegular,"Gill Sans MT","Gill Sans","Century Gothic",Calibri,"Trebuchet MS",sans-serif;line-height:1.618;color:#333;text-align:center;font-weight:300}#skiptocontent{height:1px;width:1px;position:absolute;overflow:hidden;top:-10px}h1,h2,h3,h4,h5,h6{color:#333;letter-spacing:0.1em}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:#414f7c;text-decoration:none}h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover{color:#212721}h1{font-weight:300;font-size:2.618em;margin:1.809em 0 0.809em}h2{font-weight:300;font-size:1.618em;margin:1.809em 0 0.809em}h3,h4,h5,h6{font-weight:400;font-size:1em;margin:1.809em 0 0.809em}p,li{margin:1em 0}ul{margin:0}a{color:#414f7c}a:hover{color:#212721}section{margin-bottom:1.618em}section>section{margin-bottom:3.236em}strong{font-weight:400}body>header{width:43em;text-align:center;margin:0 auto 0}body>header a{text-decoration:none;margin-left:0.5em;margin-right:0.5em}body>header,body>main,body>footer{display:block}body>header a{color:#414f7c}body>header a:hover{color:#212721}body>header a.extra{color:#414f7c;margin-left:1em}body>header a.extra:hover{color:#212721}body>header nav ul li{display:inline;list-style:none}.contact-list span{margin-left:40px}.button{width:30px;height:30px;display:inline-block;background-size:100%;text-align:left}.twitter{background:url("/assets/webicon-twitter-m.png");background-image:url("/assets/webicon-twitter.svg"),none}.rss{background:url("/assets/webicon-rss-m.png");background-image:url("/assets/webicon-rss.svg"),none}main{text-align:left;width:43em;margin:3em auto 2em}main li{margin-left:2.618em}.meta{color:#667}footer{width:43em;color:#667;border-top:4px solid #ddd;margin:3em auto 2em;overflow:hidden}footer .column{float:left;padding:1px;text-align:left;width:32%}footer .column ul{list-style:none}footer .column a,.tags a{color:#414f7c;text-decoration:none}footer .column a:hover,.tags a:hover{color:#212721;text-decoration:underline}.tags ul li{list-style:none;display:inline;font-variant:small-caps;font-size:1.2em}.archive a{text-decoration:none}ul.archive,ul.archive ul{margin-left:0}ul.archive li,ul.archive ul li{list-style:none;margin-left:0}.post pre{border:1px solid #ddd;background-color:#fff;padding:0 .4em}p.date{color:#667}pre{background-color:#eee;padding:1em;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}code{font-family:Consolas,Menlo,Monaco,"Lucida Console","Courier New",monospace,serif;font-size:0.8em}table{border-collapse:collapse;margin:0 auto}th,td{border:solid #ddd 1px;padding:0.5em 1.5em}blockquote{margin:2em 2em 2em 1em;padding:0 .75em 0 1.25em;border-left:2px solid #ddd;border-right:0px solid #ddd}.chart-png{margin:2em 0 2em;width:90%}.logo-png{float:left;margin-bottom:18px;margin-right:24px}@media all and (max-width: 736px){body>header,main,footer{width:86%;margin:0 auto 0;padding:12px 24px 12px}p{margin-bottom:2em}footer .column{width:100%}}
@@ -19,8 +19,6 @@ $desktopWidth: 43em;
19
19
  $lightWeight: 300;
20
20
  $heavyWeight: 400;
21
21
 
22
- $siteBaseURL: 'https:\/\/mikekreuzer.com';
23
-
24
22
  $regularFont: GillSansRegular, 'Gill Sans MT', 'Gill Sans', 'Century Gothic', Calibri, 'Trebuchet MS', sans-serif;
25
23
  $monoFont: Consolas, Menlo, Monaco, 'Lucida Console', 'Courier New', monospace, serif;
26
24
 
@@ -61,21 +59,21 @@ h1,h2,h3,h4,h5,h6 {
61
59
  }
62
60
 
63
61
  h1 {
64
- font-weight: $lightWeight;
65
- font-size: 2.618em;
66
- margin: 1.809em 0 0.809em;
62
+ font-weight: $lightWeight;
63
+ font-size: 2.618em;
64
+ margin: 1.809em 0 0.809em;
67
65
  }
68
66
 
69
67
  h2 {
70
- font-weight: $lightWeight;
71
- font-size: 1.618em;
72
- margin: 1.809em 0 0.809em;
68
+ font-weight: $lightWeight;
69
+ font-size: 1.618em;
70
+ margin: 1.809em 0 0.809em;
73
71
  }
74
72
 
75
73
  h3, h4, h5, h6 {
76
- font-weight: $heavyWeight;
77
- font-size: 1em;
78
- margin: 1.809em 0 0.809em;
74
+ font-weight: $heavyWeight;
75
+ font-size: 1em;
76
+ margin: 1.809em 0 0.809em;
79
77
  }
80
78
 
81
79
  p, li {
@@ -141,24 +139,26 @@ body > header nav ul li {
141
139
  list-style: none;
142
140
  }
143
141
 
142
+ .contact-list span {
143
+ margin-left: 40px;
144
+ }
145
+
144
146
  .button {
145
- width: 30px;
146
- height: 30px;
147
- display: inline-block;
148
- background-size: 100%;
149
- text-indent: -999em;
150
- text-align: left;
151
- margin: 20px;
147
+ width: 30px;
148
+ height: 30px;
149
+ display: inline-block;
150
+ background-size: 100%;
151
+ text-align: left;
152
152
  }
153
153
 
154
154
  .twitter {
155
- background: url($siteBaseURL + '/assets/webicon-twitter-m.png');
156
- background-image: url($siteBaseURL + '/assets/webicon-twitter.svg'), none;
155
+ background: url('/assets/webicon-twitter-m.png');
156
+ background-image: url('/assets/webicon-twitter.svg'), none;
157
157
  }
158
158
 
159
159
  .rss {
160
- background: url($siteBaseURL + '/assets/webicon-rss-m.png');
161
- background-image: url($siteBaseURL + '/assets/webicon-rss.svg'), none;
160
+ background: url('/assets/webicon-rss-m.png');
161
+ background-image: url('/assets/webicon-rss.svg'), none;
162
162
  }
163
163
 
164
164
  main {
@@ -185,8 +185,9 @@ footer {
185
185
 
186
186
  footer .column {
187
187
  float: left;
188
- width: 33%;
188
+ padding: 1px;
189
189
  text-align: left;
190
+ width: 32%;
190
191
  }
191
192
 
192
193
  footer .column ul { list-style: none; }
@@ -194,18 +195,18 @@ footer .column a, .tags a { color:$linkColour; text-decoration: none; }
194
195
  footer .column a:hover, .tags a:hover { color:$hoverColour; text-decoration: underline; }
195
196
 
196
197
  .tags ul li {
197
- list-style: none;
198
- display: inline;
199
- font-variant: small-caps;
200
- font-size:1.2em;
198
+ list-style: none;
199
+ display: inline;
200
+ font-variant: small-caps;
201
+ font-size:1.2em;
201
202
  }
202
203
 
203
204
  .archive a {
204
- text-decoration: none;
205
+ text-decoration: none;
205
206
  }
206
207
 
207
208
  ul.archive, ul.archive ul {
208
- margin-left: 0;
209
+ margin-left: 0;
209
210
  }
210
211
 
211
212
  ul.archive li, ul.archive ul li {
@@ -234,7 +235,7 @@ footer .rss img {
234
235
 
235
236
 
236
237
  p.date {
237
- color: $mediumGrey;
238
+ color: $mediumGrey;
238
239
  }
239
240
 
240
241
  /*.post ul, .post ol {
@@ -242,14 +243,14 @@ p.date {
242
243
  }*/
243
244
 
244
245
  pre {
245
- background-color: $codeBackgroundColour;
246
- padding: 1em;
247
- white-space: pre-wrap;
248
- /* why necessary */
249
- white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
250
- white-space: -pre-wrap; /* Opera 4-6 */
251
- white-space: -o-pre-wrap; /* Opera 7 */
252
- word-wrap: break-word;
246
+ background-color: $codeBackgroundColour;
247
+ padding: 1em;
248
+ white-space: pre-wrap;
249
+ /* why necessary */
250
+ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
251
+ white-space: -pre-wrap; /* Opera 4-6 */
252
+ white-space: -o-pre-wrap; /* Opera 7 */
253
+ word-wrap: break-word;
253
254
  }
254
255
 
255
256
  code {
@@ -268,6 +269,16 @@ code {
268
269
  background-color: $codeBackgroundColour;
269
270
  }*/
270
271
 
272
+ table {
273
+ border-collapse: collapse;
274
+ margin: 0 auto;
275
+ }
276
+
277
+ th, td {
278
+ border: solid $lightGrey 1px;
279
+ padding: 0.5em 1.5em;
280
+ }
281
+
271
282
  /* quotes */
272
283
  blockquote {
273
284
  margin: 2em 2em 2em 1em;
@@ -276,6 +287,17 @@ blockquote {
276
287
  border-right: 0px solid $borderColour;
277
288
  }
278
289
 
290
+ .chart-png {
291
+ margin: 2em 0 2em;
292
+ width:90%;
293
+ }
294
+
295
+ .logo-png {
296
+ float:left;
297
+ margin-bottom:18px;
298
+ margin-right: 24px;
299
+ }
300
+
279
301
  @media all and (max-width: 736px) {
280
302
  /* was max-device-width: 1242px */
281
303
  body > header, main, footer {
@@ -286,11 +308,11 @@ blockquote {
286
308
  p {
287
309
  margin-bottom:2em;
288
310
  }
289
- .button {
311
+ /*.button {
290
312
  width: 50px;
291
313
  height: 50px;
292
314
  margin: 20px;
293
- }
315
+ }*/
294
316
  footer .column {
295
317
  width: 100%;
296
318
  }
@@ -1,23 +1,26 @@
1
1
  <footer>
2
- <div class="column">
3
- <h3>Contact me</h3>
4
- <p>Twitter:&nbsp;<a href="https://twitter.com/<%= page[:twitter_name] %>">@<%= page[:twitter_name] %></a></p>
5
- </div>
6
- <div class="column">
7
- <h3>Me elsewhere</h3>
8
- <ul>
9
- <% for @link in page[:links_array] %>
10
- <li><a href="<%= @link['uri'] %>"><%= @link['name'] %></a></li>
11
- <% end %>
2
+ <div class="column">
3
+ <h3>Contact me</h3>
4
+ <ul class="contact-list">
5
+ <li><a href="https://twitter.com/<%= page[:twitter_name] %>" class="button twitter"><span>Twitter</span></a></li>
6
+ <li><a href="<%= page[:site_URL] %>/rss.xml" rel="home" type="application/rss+xml" class="button rss"><span>Subscribe</span></a></li>
12
7
  </ul>
13
- </div>
14
- <div class="column">
15
- <h3>The fine print</h3>
16
- <ul>
17
- <li>Built with <a href="https://github.com/mikekreuzer/zine">Zine</a></li>
18
- <li>&copy; 2017<span> <%= page[:site_author] %></span></li>
19
- </ul>
20
- </div>
8
+ </div>
9
+ <div class="column">
10
+ <h3>Me elsewhere</h3>
11
+ <ul>
12
+ <% for @link in page[:links_array] %>
13
+ <li><a href="<%= @link['uri'] %>"><%= @link['name'] %></a></li>
14
+ <% end %>
15
+ </ul>
16
+ </div>
17
+ <div class="column">
18
+ <h3>The fine print</h3>
19
+ <ul>
20
+ <li>Built with <a href="https://github.com/mikekreuzer/zine">Zine</a></li>
21
+ <li>&copy; 2019<span> <%= page[:site_author] %></span></li>
22
+ </ul>
23
+ </div>
21
24
  </footer>
22
- </body>
25
+ </body>
23
26
  </html>
@@ -6,8 +6,9 @@
6
6
  <meta name="description" content="<%= page[:site_description] %>">
7
7
  <title><%= page[:site_name] %> | <%= page[:title] %></title>
8
8
  <link rel="home" href="<%= page[:site_URL] %>/rss.xml" type="application/rss+xml" title="<%= page[:site_name] %>">
9
- <link rel="stylesheet" href="<%= page[:site_URL] %>/screen.css">
10
- <link rel="apple-touch-icon" href="<%= page[:site_URL] %>/apple-touch-icon.png">
9
+ <link rel="stylesheet" href="/screen.css">
10
+ <link rel="apple-touch-icon" href="/apple-touch-icon.png">
11
+ <!--<link rel="canonical" href="<%= page[:uri] %>" />-->
11
12
  </head>
12
13
  <body>
13
14
  <div id="skiptocontent">
@@ -19,9 +20,10 @@
19
20
  <nav>
20
21
  <ul>
21
22
  <li><a href="<%= page[:site_URL] %>">Home</a></li>
22
- <li><a href="<%= page[:site_URL] %>/articles.html">Articles</a></li>
23
- <li><a href="<%= page[:site_URL] %>/about.html">About</a></li>
24
- </ul><a href="https://twitter.com/<%= page[:twitter_name] %>" class="button twitter">Argue with me on Twitter</a><a href="<%= page[:site_URL] %>/rss.xml" rel="home" type="application/rss+xml" class="button rss">RSS Feed</a>
23
+ <li><a href="/articles.html">Articles</a></li>
24
+ <li><a href="/tags/index.html">Tags</a></li>
25
+ <li><a href="/about.html">About</a></li>
26
+ </ul>
25
27
  </nav>
26
28
  </header>
27
29
  <a name="maincontent"></a>
@@ -1,4 +1,3 @@
1
- require 'highline'
2
1
  require 'rainbow'
3
2
  require 'set'
4
3
  require 'zine'
@@ -24,7 +23,7 @@ module Zine
24
23
  def upload_decision(query_class)
25
24
  return if @no_upload
26
25
  cli = query_class.new
27
- answer = cli.ask('Upload files? (Y/n)') { |q| q.default = 'Y' }
26
+ answer = cli.call 'Upload files? (Y/n)'
28
27
  return if answer != 'Y'
29
28
  puts Rainbow('Connecting...').green
30
29
  upload
@@ -1,4 +1,4 @@
1
1
  module Zine
2
2
  # The version
3
- VERSION = '0.11.0'.freeze
3
+ VERSION = '0.13.0'.freeze
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Kreuzer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-07 00:00:00.000000000 Z
11
+ date: 2019-05-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,20 +16,20 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.16'
19
+ version: '2.0'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 1.16.4
22
+ version: 2.0.1
23
23
  type: :development
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '1.16'
29
+ version: '2.0'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 1.16.4
32
+ version: 2.0.1
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: curb
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -53,7 +53,7 @@ dependencies:
53
53
  version: '12.3'
54
54
  - - ">="
55
55
  - !ruby/object:Gem::Version
56
- version: 12.3.1
56
+ version: 12.3.2
57
57
  type: :development
58
58
  prerelease: false
59
59
  version_requirements: !ruby/object:Gem::Requirement
@@ -63,7 +63,7 @@ dependencies:
63
63
  version: '12.3'
64
64
  - - ">="
65
65
  - !ruby/object:Gem::Version
66
- version: 12.3.1
66
+ version: 12.3.2
67
67
  - !ruby/object:Gem::Dependency
68
68
  name: rspec
69
69
  requirement: !ruby/object:Gem::Requirement
@@ -93,47 +93,53 @@ dependencies:
93
93
  - !ruby/object:Gem::Version
94
94
  version: 0.16.1
95
95
  - !ruby/object:Gem::Dependency
96
- name: highline
96
+ name: htmlcompressor
97
97
  requirement: !ruby/object:Gem::Requirement
98
98
  requirements:
99
99
  - - "~>"
100
100
  - !ruby/object:Gem::Version
101
- version: '2.0'
101
+ version: 0.4.0
102
102
  type: :runtime
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
105
105
  requirements:
106
106
  - - "~>"
107
107
  - !ruby/object:Gem::Version
108
- version: '2.0'
108
+ version: 0.4.0
109
109
  - !ruby/object:Gem::Dependency
110
- name: htmlcompressor
110
+ name: kramdown
111
111
  requirement: !ruby/object:Gem::Requirement
112
112
  requirements:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
- version: 0.4.0
115
+ version: '2.1'
116
116
  type: :runtime
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: 0.4.0
122
+ version: '2.1'
123
123
  - !ruby/object:Gem::Dependency
124
- name: kramdown
124
+ name: kramdown-parser-gfm
125
125
  requirement: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - "~>"
128
128
  - !ruby/object:Gem::Version
129
- version: '1.17'
129
+ version: '1.0'
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: 1.0.1
130
133
  type: :runtime
131
134
  prerelease: false
132
135
  version_requirements: !ruby/object:Gem::Requirement
133
136
  requirements:
134
137
  - - "~>"
135
138
  - !ruby/object:Gem::Version
136
- version: '1.17'
139
+ version: '1.0'
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ version: 1.0.1
137
143
  - !ruby/object:Gem::Dependency
138
144
  name: listen
139
145
  requirement: !ruby/object:Gem::Requirement
@@ -252,7 +258,7 @@ dependencies:
252
258
  version: 0.19.4
253
259
  description: |-
254
260
  Yet another blog aware static site generator.
255
- These are the very early days of zine, expect breaking changes.
261
+ There are many like it, but this one is mine.
256
262
  email:
257
263
  - mike@mikekreuzer.com
258
264
  executables:
@@ -272,6 +278,7 @@ files:
272
278
  - lib/zine/page.rb
273
279
  - lib/zine/post.rb
274
280
  - lib/zine/posts_and_headlines.rb
281
+ - lib/zine/query.rb
275
282
  - lib/zine/server.rb
276
283
  - lib/zine/skeleton/source/about.md
277
284
  - lib/zine/skeleton/source/assets/webicon-rss-m.png
@@ -279,6 +286,7 @@ files:
279
286
  - lib/zine/skeleton/source/assets/webicon-twitter-m.png
280
287
  - lib/zine/skeleton/source/assets/webicon-twitter.svg
281
288
  - lib/zine/skeleton/source/posts/2017-01-25-my-new-blog.md
289
+ - lib/zine/skeleton/source/robots.txt
282
290
  - lib/zine/skeleton/source/screen.css
283
291
  - lib/zine/skeleton/source/styles/screen.scss
284
292
  - lib/zine/skeleton/source/templates/articles.erb
@@ -300,7 +308,7 @@ files:
300
308
  - lib/zine/uploader_sftp.rb
301
309
  - lib/zine/version.rb
302
310
  - lib/zine/watcher.rb
303
- homepage: https://github.com/mikekreuzer/zine
311
+ homepage: https://zine.dev
304
312
  licenses:
305
313
  - MIT
306
314
  metadata: {}
@@ -312,15 +320,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
312
320
  requirements:
313
321
  - - ">="
314
322
  - !ruby/object:Gem::Version
315
- version: 2.2.2
323
+ version: '2.3'
316
324
  required_rubygems_version: !ruby/object:Gem::Requirement
317
325
  requirements:
318
326
  - - ">="
319
327
  - !ruby/object:Gem::Version
320
328
  version: '0'
321
329
  requirements: []
322
- rubyforge_project:
323
- rubygems_version: 2.7.6
330
+ rubygems_version: 3.0.3
324
331
  signing_key:
325
332
  specification_version: 4
326
333
  summary: Yet another blog aware static site generator.