runeblog 0.2.83 → 0.2.88

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
  SHA256:
3
- metadata.gz: bc20c73da7ee238b37adbc948c5e883f1e5f0b9b8c7f7add232c31dfbc2e3bd3
4
- data.tar.gz: 294b35d978b4ff2859f1073d460a3f61947284b659a041037f43f319cb38c4c8
3
+ metadata.gz: 971964911d35242af990fce1bf3ac1e3227dd15726753f1224364781dd8d14ee
4
+ data.tar.gz: 1168fac5a9db55738abfcd02d2a05b6da4e35a7aca6739b982ad9f45ff1aa143
5
5
  SHA512:
6
- metadata.gz: 2b8b9925f49e63203942d6c325960c7774c0ad96671e065e279b880cee8d80ff60c215488e9e403c3657ec9b4e2d89efc8f4e5052d0bffe9ff887dcd67556bd3
7
- data.tar.gz: 5b44950c664496a2032010c1e50da51a6091cf1d689ed1f49536ecb54c1586f4046de94bc9a5d1ae12fca675c3ba0969208f6c42cc93cd0dc0750c5687bdc205
6
+ metadata.gz: 8d4d68cdfc991e83c6c1d4ed351b410803a276ccf296da6780f671851d9ec05b667adbb3ca23558e2a7e0cf896715391d07bc11e8c47fe2de3486e8f223513af
7
+ data.tar.gz: b60f9c6f1cd642499992d72a7727276c0e0daa2b0de3c987e98a607570e62c01c926310761c7db2a715e4c22c8820ac0d3362c822d851a7329e71ff622b2efd7
data/bin/blog CHANGED
@@ -12,9 +12,7 @@ include RuneBlog::REPL
12
12
  def yesno(question, noskip=false)
13
13
  puts fx("\n #{question}", :bold)
14
14
  puts unless noskip
15
- r, c = STDSCR.rc
16
- num, str = STDSCR.menu(r: r, c: c+6, items: ["yes", "no"])
17
- num == 0
15
+ STDSCR.yesno
18
16
  end
19
17
 
20
18
  def pick_editor
@@ -24,33 +22,57 @@ def pick_editor
24
22
  file = `which #{name}`.chomp
25
23
  end
26
24
 
25
+ def get_universal
26
+ univ = "#{@blog.root}/data/universal.lt3"
27
+ if yesno("Faster initial setup? (no: edit universal.lt3)")
28
+ author = ask("Author name: ")
29
+ site = ask("Site/domain: ")
30
+ # Now stash it...
31
+ str = File.read(univ)
32
+ str = str.gsub(/AUTHOR/, author)
33
+ str = str.gsub(/SITE_DOMAIN/, site)
34
+ else
35
+ vim_params = '-c ":set hlsearch" -c ":hi Search ctermfg=2 ctermbg=6" +/"\(AUTHOR.*\|SITE.*\)"'
36
+ edit_file(univ, vim: vim_params)
37
+ end
38
+ end
39
+
40
+ def get_global
41
+ if yesno("Faster view setup? (no: edit global.lt3)")
42
+ view_name = ask("\nFilename: ")
43
+ @blog.create_view(view_name) # call change_view??
44
+ title = ask("View title: ")
45
+ subtitle = ask("Subtitle : ")
46
+ gname = "#{@blog.root}/views/#{view_name}/themes/standard/global.lt3"
47
+ text = File.read(gname)
48
+ text = text.gsub(/VIEW_NAME/, view_name)
49
+ text = text.gsub(/VIEW_TITLE/, title)
50
+ text = text.gsub(/VIEW_SUBTITLE/, subtitle)
51
+ File.write(gname, text)
52
+ else
53
+ view_name = ask("\nFilename: ")
54
+ @blog.create_view(view_name) # call change_view??
55
+ vim_params = '-c ":set hlsearch" -c ":hi Search ctermfg=2 ctermbg=6" +/"\(VIEW_.*\|SITE.*\)"'
56
+ edit_file(@blog.view.dir/"themes/standard/global.lt3", vim: vim_params)
57
+ end
58
+ end
59
+
27
60
  def get_started
28
61
  if yesno("Do you want to qo a quick setup?")
29
- puts "\n First choose your editor."
62
+ puts " First choose your editor."
30
63
  @blog.editor = pick_editor
31
64
  File.write("#{@blog.root}/data/EDITOR", @blog.editor)
32
65
 
33
- if yesno("Edit settings now?")
34
- fname = "#{@blog.root}/data/universal.lt3"
35
- vim_params = '-c ":set hlsearch" -c ":hi Search ctermfg=2 ctermbg=6" +/"\(AUTHOR.*\|SITE.*\)"'
36
- edit_file(fname, vim: vim_params)
37
- end
66
+ get_universal
38
67
  # Now create a custom global.lt3
39
68
  @blog._generate_global
40
- sleep 1
41
- noview = true
42
69
  puts fx("\n Quick setup complete!", :bold)
43
70
  if yesno("Create your first view now?")
44
- cmd_new_view(nil)
45
- noview = false
46
- sleep 1
71
+ get_global
47
72
  puts "\n View #{@blog.view} created!\n "
48
73
  end
49
- system("cp #@root/data/global.lt3 #@root/views/#{@blog.view}/themes/standard/")
50
74
  end
51
75
 
52
- sleep 0.5
53
-
54
76
  puts
55
77
  print fx(" For help", :bold)
56
78
  puts " type h or help."
@@ -0,0 +1 @@
1
+ meh
@@ -0,0 +1,19 @@
1
+ .nopara
2
+ <svg width="98%" height="120"
3
+ viewBox="0 0 98% 100">
4
+ <defs>
5
+ <linearGradient id="grad1" x1="100%" y1="100%" x2="0%" y2="100%">
6
+ <stop offset="0%" style="stop-color:rgb(198,198,228);stop-opacity:1" />
7
+ <stop offset="100%" style="stop-color:rgb(30,30,50);stop-opacity:1" />
8
+ </linearGradient>
9
+ </defs>
10
+ <style>
11
+ .small { font: 18px sans-serif; fill: #98baff }
12
+ .heavy { font: bold 52px sans-serif; fill: #76a9ff }
13
+ </style>
14
+
15
+ <rect x="20" y="20" rx="15" ry="15" width="98%" height="100" fill="url(#grad1)"/>
16
+
17
+ <text x="45" y="70" class=heavy>$blog</text>
18
+ <text x="45" y="98" class=small>$blog.desc</text>
19
+ </svg>
@@ -1,6 +1,4 @@
1
1
  .banner
2
- height 100
3
- bgcolor 101035
4
2
  text top.html
5
3
  break
6
4
  navbar
@@ -91,7 +91,7 @@ end
91
91
  def banner
92
92
  count = 0
93
93
  span = 1
94
- @bg = "white" # outside loop
94
+ bg = "white" # outside loop
95
95
  wide = nil
96
96
  high = 250
97
97
  str2 = ""
@@ -103,12 +103,9 @@ def banner
103
103
  tag, *data = line.split
104
104
  data ||= []
105
105
  case tag
106
- when "width"
107
- wide = data[0]
108
- when "height"
109
- high = data[0]
110
- when "bgcolor"
111
- @bg = data[0] || "white"
106
+ when "width"; wide = data[0]
107
+ when "height"; high = data[0]
108
+ when "bgcolor"; bg = data[0] || "white"
112
109
  when "image"
113
110
  image = data[0] || "banner.jpg"
114
111
  image = "banner"/image
@@ -122,31 +119,39 @@ def banner
122
119
  when "text"
123
120
  data[0] ||= "top.html"
124
121
  file = "banner"/data[0]
122
+ if ! File.exist?(file)
123
+ src = file.sub(/html$/, "lt3")
124
+ if File.exist?(src)
125
+ preprocess src: src, dst: file, vars: Livetext::Vars
126
+ else
127
+ raise "Neither #{file} nor #{src} found"
128
+ end
129
+ end
125
130
  str2 << "<td colspan=#{span}>" + File.read(file) + "</td>" + "\n"
126
131
  when "navbar"
127
132
  dir = @blog.root/:views/@blog.view/"themes/standard/banner/" + "\n"
128
133
  _make_navbar # horiz is default
129
134
  file = "banner/navbar.html"
130
135
  navbar = File.read(file)
131
- # str2 << "<td colspan=#{span}><div style='text-align: center'>#{stuff}</div></td>" + "\n"
132
136
  when "vnavbar"
133
137
  dir = @blog.root/:views/@blog.view/"themes/standard/banner/"
134
138
  _make_navbar(:vert)
135
139
  file = "banner/vnavbar.html"
136
140
  navbar = File.read(file)
137
- # str2 << "<td colspan=#{span}>" + File.read(file) + "</td>" + "\n"
138
141
  when "break"
139
- span = count - 1
142
+ # span = count - 1
140
143
  str2 << " </tr>\n <tr>" + "\n"
141
144
  else
142
145
  str2 << " '#{tag}' isn't known" + "\n"
143
146
  end
144
147
  end
145
- _out "<table width=100% height=#{high} bgcolor=##{@bg}>"
146
- _out " <tr>"
147
- _out str2
148
- _out " </tr>"
149
- _out "</table>"
148
+ _out <<~HTML
149
+ <table width=100% bgcolor=#{bg}>
150
+ <tr>
151
+ #{str2}
152
+ </tr>
153
+ </table>
154
+ HTML
150
155
  _out navbar if navbar
151
156
  rescue => err
152
157
  STDERR.puts "err = #{err}"
@@ -154,32 +159,10 @@ rescue => err
154
159
  gets
155
160
  end
156
161
 
157
- def _parse_colon_args(args, hash) # really belongs in livetext
158
- h2 = hash.dup
159
- e = args.each
160
- loop do
161
- arg = e.next.chop.to_sym
162
- raise "_parse_args: #{arg} is unknown" unless hash.keys.include?(arg)
163
- h2[arg] = e.next
164
- end
165
- h2 = h2.reject {|k,v| v.nil? }
166
- h2.each_pair {|k, v| raise "#{k} has no value" if v.empty? }
167
- h2
168
- end
169
-
170
- def _get_arg(name, args) # really belongs in livetext
171
- raise "(#{name}) Expected an array" unless args.is_a? Array
172
- raise "(#{name}) Expected an arg" if args.empty?
173
- raise "(#{name}) Too many args: #{args.inspect}" if args.size > 1
174
- val = args[0]
175
- raise "Expected an argument '#{name}'" if val.nil?
176
- val
177
- end
178
-
179
162
  def _svg_title(*args)
180
- width = 330
181
- height = 100
182
- bgcolor = "blue"
163
+ width = "95%"
164
+ height = 90
165
+ bgcolor = "black"
183
166
  style = nil
184
167
  size = ""
185
168
  font = "sans-serif"
@@ -194,103 +177,43 @@ def _svg_title(*args)
194
177
  align2 = "center"
195
178
 
196
179
  e = args.each
197
- hash = {}
180
+ hash = {} # TODO get rid of hash??
181
+
182
+ valid = %w[width height bgcolor style size font color xy
183
+ align style2 size2 font2 color2 xy2 align2]
184
+ os = OpenStruct.new
198
185
  loop do
199
186
  arg = e.next
200
187
  arg = arg.chop
201
- case arg # can give runtime error if arg missing
202
- when "width"; width = e.next
203
- when "height"; height = e.next
204
- when "bgcolor"; bgcolor = e.next
205
- when "style"; style = e.next
206
- when "size"; size = e.next
207
- when "font"; font = e.next
208
- when "color"; color = e.next
209
- when "xy"; xy = e.next
210
- when "align"; align = e.next
211
- when "style2"; style2 = e.next
212
- when "size2"; size2 = e.next
213
- when "font2"; font2 = e.next
214
- when "color2"; color2 = e.next
215
- when "xy2"; xy2 = e.next
216
- when "align2"; align2 = e.next
217
- end
188
+ raise "Don't know '#{arg}'" unless valid.include?(arg)
189
+ os.send(arg+"=", e.next)
218
190
  end
219
191
  x, y = xy.split(",")
220
192
  x2, y2 = xy2.split(",")
221
- hash["x"] = x
222
- hash["y"] = y
223
- hash["x2"] = x2
224
- hash["y2"] = y2
225
- hash["width"] = width
226
- hash["height"] = height
227
- hash["bgcolor"] = bgcolor
228
- hash["style"] = style
229
- hash["size"] = size
230
- hash["font"] = font
231
- hash["color"] = color
232
- hash["xy"] = xy
233
- hash["align"] = align
234
- hash["style2"] = style2
235
- hash["size2"] = size2
236
- hash["font2"] = font2
237
- hash["color2"] = color2
238
- hash["align2"] = align2
193
+ names = %w[x y x2 y2] + valid
194
+ names.each {|name| hash[name] = os.send(name) }
239
195
  result = <<~HTML
240
196
  <svg width="#{width}" height="#{height}"
241
197
  viewBox="0 0 #{width} #{height}">
198
+ <defs>
199
+ <linearGradient id="grad1" x1="100%" y1="100%" x2="0%" y2="100%">
200
+ <stop offset="0%" style="stop-color:rgb(198,198,228);stop-opacity:1" />
201
+ <stop offset="100%" style="stop-color:rgb(30,30,50);stop-opacity:1" />
202
+ </linearGradient>
203
+ </defs>
242
204
  <style>
243
205
  .title { font: #{style} #{size} #{font}; fill: #{color} }
244
206
  .subtitle { font: #{style2} #{size2} #{font2}; fill: #{color2} }
245
207
  </style>
246
- <rect x="10" y="10" rx="10" ry="10" width="#{width-20}" height="#{height-20}" fill="#{bgcolor}"/>
208
+ <rect x="10" y="10" rx="10" ry="10" width="#{width}" height="#{height}" fill="url(#grad1)"/>
247
209
  <text text-anchor="#{align}" x="#{x}" y="#{y}" class="title">#{Livetext::Vars[:blog]} </text>
248
210
  <text text-anchor="#{align2}" x="#{x2}" y="#{y2}" class="subtitle">#{Livetext::Vars["blog.desc"]} </text>
249
- </svg>
211
+ </svg>
212
+ <!-- ^ how does syntax highlighting get messed up? </svg> -->
250
213
  HTML
251
214
  [result, hash]
252
215
  end
253
216
 
254
- def svg_title_SOON
255
- tstyle = tsize = tfont = tcolor = txy = talign = nil
256
- t2style = t2size = t2font = t2color = t2xy = t2align = nil
257
- wide, high, hue = 450, 150, "white"
258
- _body do |line|
259
- count += 1
260
- tag, *data = line.split
261
- data ||= []
262
- title_params = {style: nil, size: "", font: "sans-serif", color: "white",
263
- xy: "5,5", align: "left"}
264
- case tag
265
- when "title";
266
- hash = _parse_colon_args(data, title_params)
267
- tstyle, tsize, tfont, tcolor, txy, talign =
268
- hash.values_at(:tstyle, :tsize, :tfont, :tcolor, :txy, :talign)
269
- tx, ty = txy.split(",")
270
- when "title2";
271
- hash = _parse_colon_args(data, title_params)
272
- t2style, t2size, t2font, t2color, t2xy, t2align =
273
- hash.values_at(:t2style, :t2size, :t2font, :t2color, :t2xy, :t2align)
274
- t2x, t2y = t2xy.split(",")
275
- when "width"; wide = _get_arg(:width, data)
276
- when "height"; high = _get_arg(:height, data)
277
- when "bgcolor"; hue = _get_arg(:bgcolor, data)
278
- end
279
- end
280
- <<~HTML
281
- <svg width="#{wide}" height="#{high}"
282
- viewBox="0 0 #{wide} #{high}">
283
- <style>
284
- .title { font: #{tstyle} #{tsize} #{tfont}; fill: #{tcolor} }
285
- .subtitle { font: #{t2style} #{t2size} #{t2font}; fill: #{t2color} }
286
- </style>
287
- <rect x="0" y="0" rx="10" ry="10" width="#{wide}" height="#{height}" fill="#{bgcolor}"/>
288
- <text text-anchor="#{talign}" x="#{tx}" y="#{tx}" class="title">$blog </text>
289
- <text text-anchor="#{t2align}" x="#{t2x}" y="#{t2y}" class="subtitle">$blog.desc </text>
290
- </svg>
291
- HTML
292
- end
293
-
294
217
  def quote
295
218
  _passthru "<blockquote>"
296
219
  _passthru _body.join(" ")
@@ -753,7 +676,6 @@ def _make_navbar(orient = :horiz)
753
676
  list1, list2 = '<l class="navbar-nav mr-auto">', "</ul>"
754
677
  end
755
678
 
756
- # <!-- FIXME weird bug here!!! -->
757
679
  start = <<-HTML
758
680
  <table><tr><td>
759
681
  <nav class="navbar #{extra} navbar-light bg-light">
@@ -22,7 +22,7 @@ end
22
22
 
23
23
  def preprocess(cwd: Dir.pwd, src:,
24
24
  dst: (strip = true; File.basename(src).sub(/.lt3$/,"")),
25
- deps: [], copy: nil, debug: false, force: false)
25
+ deps: [], copy: nil, debug: false, force: false, vars: nil)
26
26
  src += LEXT unless src.end_with?(LEXT)
27
27
  dst += ".html" unless (dst.end_with?(".html") || strip)
28
28
  sp = " "*12
@@ -38,7 +38,7 @@ def preprocess(cwd: Dir.pwd, src:,
38
38
  stale = stale?(src, dst, deps, force)
39
39
  if stale
40
40
  live = Livetext.new
41
- out = live.xform_file(src)
41
+ out = live.xform_file(src, vars: vars)
42
42
  File.write(dst, out)
43
43
  system!("cp #{dst} #{copy}") if copy
44
44
  end
@@ -39,27 +39,22 @@ module RuneBlog::REPL
39
39
  end
40
40
 
41
41
  def cmd_config(arg, testing = false)
42
- list = ["global.lt3 Global configuration",
43
- "blog/generate.lt3 Generator for view (usu not edited)",
44
- ".... head.lt3 HEAD info for view",
45
- ".... banner.lt3 banner description",
46
- ".... index.lt3 User-edited detail for view",
47
- ".... post_entry.lt3 Generator for post entry in recent-posts",
48
- "etc/blog.css.lt3 Global CSS",
49
- "... externals.lt3 External JS/CSS (Bootstrap, etc.)",
50
- "post/generate.lt3 Generator for a post",
51
- ".... head.lt3 HEAD info for post",
52
- ".... index.lt3 Content for post",
53
- ".... permalink.lt3 Generator for permalink"]
54
-
55
- name = ["global.lt3", "blog/generate.lt3", "blog/head.lt3", "blog/banner.lt3",
56
- "blog/index.lt3", "blog/post_entry.lt3", "etc/blog.css.lt3",
57
- "blog/externals.lt3", "post/generate.lt3", "post/head.lt3",
58
- "post/index.lt3", "post/permalink.lt3"]
42
+ hash = {"global.lt3 Global configuration" => "global.lt3",
43
+ "blog/generate.lt3 Generator for view (usu not edited)" => "blog/generate.lt3",
44
+ ".... head.lt3 HEAD info for view" => "blog/head.lt3",
45
+ ".... banner.lt3 banner description" => "blog/banner.lt3",
46
+ ".... index.lt3 User-edited detail for view" => "blog/index.lt3",
47
+ ".... post_entry.lt3 Generator for post entry in recent-posts" => "blog/post_entry.lt3",
48
+ "etc/blog.css.lt3 Global CSS" => "etc/blog.css.lt3",
49
+ "... externals.lt3 External JS/CSS (Bootstrap, etc.)" => "/etc/externals.lt3",
50
+ "post/generate.lt3 Generator for a post" => "post/generate.lt3",
51
+ ".... head.lt3 HEAD info for post" => "post/head.lt3",
52
+ ".... index.lt3 Content for post" => "post/index.lt3",
53
+ ".... permalink.lt3 Generator for permalink" => "post/permalink.lt3",
54
+ }
59
55
 
60
56
  dir = @blog.view.dir/"themes/standard/"
61
- num, str = STDSCR.menu(title: "Edit file:", items: list)
62
- target = name[num]
57
+ num, target = STDSCR.menu(title: "Edit file:", items: hash)
63
58
  edit_file(dir/target)
64
59
  end
65
60
 
@@ -253,6 +248,7 @@ module RuneBlog::REPL
253
248
  viewnames = @blog.views.map {|x| x.name }
254
249
  n = viewnames.find_index(@blog.view.name)
255
250
  name = @blog.view.name
251
+ # TODO: Add view description
256
252
  k, name = STDSCR.menu(title: "Views", items: viewnames, curr: n) unless testing
257
253
  return if name.nil?
258
254
  @blog.view = name
@@ -276,6 +272,9 @@ module RuneBlog::REPL
276
272
  puts
277
273
  end
278
274
  @blog.create_view(arg)
275
+ text = File.read("#{@blog.root}/data/global.lt3")
276
+ File.write("#{@blog.root}/views/#{@blog.view}/themes/standard/global.lt3",
277
+ text.gsub(/VIEW_NAME/, @blog.view.to_s))
279
278
  vim_params = '-c ":set hlsearch" -c ":hi Search ctermfg=2 ctermbg=6" +/"\(VIEW_.*\|SITE.*\)"'
280
279
  edit_file(@blog.view.dir/"themes/standard/global.lt3", vim: vim_params)
281
280
  @blog.change_view(arg)
@@ -376,15 +376,26 @@ class RuneBlog
376
376
  <body>
377
377
  HTML
378
378
  posts = _sorted_posts
379
- wanted = [8, posts.size].min # estimate how many we want?
380
- enum = posts.each
381
- entries = []
382
- wanted.times do
383
- postid = File.basename(enum.next)
384
- postid = postid.to_i
385
- entry = index_entry(postid)
386
- entries << entry
387
- text << entry
379
+ if posts.size > 0
380
+ wanted = [8, posts.size].min # estimate how many we want?
381
+ enum = posts.each
382
+ entries = []
383
+ wanted.times do
384
+ postid = File.basename(enum.next)
385
+ postid = postid.to_i
386
+ entry = index_entry(postid)
387
+ entries << entry
388
+ text << entry
389
+ end
390
+ else
391
+ text << <<-HTML
392
+ <svg width="95%" height="75%" viewBox="0 0 95% 95%">
393
+ <style> .huge { font: italic 90px sans-serif; fill: white } </style>
394
+ <rect x="0" y="0" rx="50" ry="50" width="95%" height="95%" fill="lightblue"/>
395
+ <text x="120" y="250" class=huge>No posts</text>
396
+ <text x="120" y="350" class=huge>here yet</text>
397
+ </svg>
398
+ HTML
388
399
  end
389
400
  text << "</body></html>"
390
401
  File.write(@vdir/:remote/file, text)
@@ -2,7 +2,7 @@
2
2
  if ! (Object.constants.include?(:RuneBlog) && RuneBlog.constants.include?(:Path))
3
3
 
4
4
  class RuneBlog
5
- VERSION = "0.2.83"
5
+ VERSION = "0.2.88"
6
6
 
7
7
  path = Gem.find_files("runeblog").grep(/runeblog-/).first
8
8
  Path = File.dirname(path)
@@ -20,8 +20,8 @@ spec = Gem::Specification.new do |s|
20
20
  s.authors = ["Hal Fulton"]
21
21
  s.email = 'rubyhacker@gmail.com'
22
22
  s.executables << "blog"
23
- s.add_runtime_dependency 'livetext', '~> 0.8', '>= 0.8.96'
24
- s.add_runtime_dependency 'rubytext', '~> 0.1', '>= 0.1.18'
23
+ s.add_runtime_dependency 'livetext', '~> 0.8', '>= 0.8.98'
24
+ s.add_runtime_dependency 'rubytext', '~> 0.1', '>= 0.1.19'
25
25
 
26
26
  s.add_development_dependency 'minitest', '~> 5.10', '>= 5.10.0'
27
27
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runeblog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.83
4
+ version: 0.2.88
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hal Fulton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-15 00:00:00.000000000 Z
11
+ date: 2019-12-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: livetext
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '0.8'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 0.8.96
22
+ version: 0.8.98
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '0.8'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 0.8.96
32
+ version: 0.8.98
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: rubytext
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -39,7 +39,7 @@ dependencies:
39
39
  version: '0.1'
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 0.1.18
42
+ version: 0.1.19
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
@@ -49,7 +49,7 @@ dependencies:
49
49
  version: '0.1'
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 0.1.18
52
+ version: 0.1.19
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: minitest
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -89,9 +89,9 @@ files:
89
89
  - data/universal.lt3
90
90
  - empty_view/assets/austin-pano.jpg
91
91
  - empty_view/assets/sky2.jpg
92
+ - empty_view/posts/GIT_IS_DUMB
92
93
  - empty_view/remote/assets/GIT_IS_DUMB
93
94
  - empty_view/remote/banner/austin-pano.jpg
94
- - empty_view/remote/banner/top.html
95
95
  - empty_view/remote/etc/GIT_IS_DUMB
96
96
  - empty_view/remote/permalink/GIT_IS_DUMB
97
97
  - empty_view/remote/widgets/ad/GIT_IS_DUMB
@@ -104,7 +104,7 @@ files:
104
104
  - empty_view/themes/standard/banner/contact.lt3
105
105
  - empty_view/themes/standard/banner/faq.lt3
106
106
  - empty_view/themes/standard/banner/list.data
107
- - empty_view/themes/standard/banner/top.html
107
+ - empty_view/themes/standard/banner/top.lt3
108
108
  - empty_view/themes/standard/blog/banner.lt3
109
109
  - empty_view/themes/standard/blog/generate.lt3
110
110
  - empty_view/themes/standard/blog/head.lt3
@@ -1,4 +0,0 @@
1
- <div style="text-align: center; color: white; background: #101035">
2
- <h1>Around Austin</h1><br>
3
- The view from downtown...
4
- </div>
@@ -1,18 +0,0 @@
1
- <svg width="95%" height="55"
2
- viewBox="0 0 95% 55">
3
- <defs>
4
- <linearGradient id="grad1" x1="100%" y1="100%" x2="0%" y2="100%">
5
- <stop offset="0%" style="stop-color:rgb(198,198,228);stop-opacity:1" />
6
- <stop offset="100%" style="stop-color:rgb(30,30,50);stop-opacity:1" />
7
- </linearGradient>
8
- </defs>
9
- <style>
10
- .small { font: 13px sans-serif; fill: #98baff }
11
- .heavy { font: bold 35px sans-serif; fill: #76a9ff }
12
- </style>
13
-
14
- <rect x="0" y="0" rx="3" ry="3" width="95%" height="55" fill="url(#grad1)"/>
15
-
16
- <text x="5" y="33" class=heavy>$blog</text>
17
- <text x="5" y="48" class=small>$blog.desc</text>
18
- </svg>