runeblog 0.1.95 → 0.1.96

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: c34d3256b5ce72fd7a4186b283291940b673e03ca276ce0425baf4d25760f564
4
- data.tar.gz: 9e375ccfa30089a4fa04f774c822a36dbf68b5e966cd208c6354b3e4a0fd8b9d
3
+ metadata.gz: 43e0f35e5c032653d07acda3b5cfcaf0ff06cb8fe53d77f32969e37447200c41
4
+ data.tar.gz: dd558ffa5a91dd1ef68cd4935517844cdf3c9deba18ff349d92b2f36e1fd790a
5
5
  SHA512:
6
- metadata.gz: b50e6e90f95618fdcdfb5a717a9f845a00717f85204dc65dd76b60e4d98e2e05d3fb86517dca4c28f2cbcf8729e803deaf9c3c7309b4e0d4085ea823ec732311
7
- data.tar.gz: 3b99520e51344079fcafd06b50ae0d6e5ffaf25d756dd9c8341f9ed367ad0b24692c27ffada0f2af874308e5de9a68d04fd9ec6b868a6d72f118d6f9b2a4b1b6
6
+ metadata.gz: 19161f1b4000f4ede35cb7c8393c1f8fcee3d0f190a61abe231ef098adedcaf99fc15ce7ccd2a7f983db924b05f110e279cf8c79417b61ee40bbdf9201c297b0
7
+ data.tar.gz: d06e92c711e868357b8c67f8da49dcddd7d2d983bd457675ac7c61c070fb5e1cfae2244d592327af6c1660b9fcaff05993cc80c90343af6c5d4476f493b5b0f4
data/lib/helpers-blog.rb CHANGED
@@ -12,9 +12,16 @@ module RuneBlog::Helpers
12
12
  system("cp -r #{src} #{dst}")
13
13
  end
14
14
 
15
+ def stale?(src, dst)
16
+ return true unless File.exist?(dst)
17
+ return true if File.mtime(src) > File.mtime(dst)
18
+ return false
19
+ end
20
+
15
21
  def livetext(src, dst)
16
22
  src << ".lt3" unless src.end_with?(".lt3")
17
23
  dst << ".html" unless dst.end_with?(".html")
24
+ return unless stale?(src, dst)
18
25
  system("livetext #{src} >#{dst}")
19
26
  end
20
27
 
@@ -65,7 +72,7 @@ module RuneBlog::Helpers
65
72
  vals
66
73
  end
67
74
 
68
- def put_config(root:, view:"test_view", editor: "/bin/vim")
75
+ def put_config(root:, view:"test_view", editor: "/usr/local/bin/vim")
69
76
  Dir.mkdir(root) unless Dir.exist?(root)
70
77
  Dir.chdir(root) do
71
78
  File.open("config", "w") do |cfg|
data/lib/liveblog.rb CHANGED
@@ -451,7 +451,7 @@ def all_teasers
451
451
  end
452
452
  text << "</body></html>"
453
453
  File.write("recent.html", text)
454
- _out %[<iframe style="width: 100vw;height: 100vh;position: relative;" src='recent.html' width=100% frameborder="0" allowfullscreen></iframe>]
454
+ _out %[<iframe id="main" style="width: 100vw;height: 100vh;position: relative;" src='recent.html' width=100% frameborder="0" allowfullscreen></iframe>]
455
455
  end
456
456
 
457
457
  def _post_lookup(postid) # side-effect
@@ -578,6 +578,7 @@ end
578
578
 
579
579
  def navbar
580
580
  title = _var(:blog)
581
+
581
582
  open = <<-HTML
582
583
  <nav class="navbar navbar-expand-lg navbar-light bg-light">
583
584
  <a class="navbar-brand" href="index.html">#{title}</a>
@@ -590,7 +591,6 @@ def navbar
590
591
  aria-label="Toggle navigation">
591
592
  <span class="navbar-toggler-icon"></span>
592
593
  </button>
593
-
594
594
  <div class="collapse navbar-collapse pull-right"
595
595
  id="navbarSupportedContent">
596
596
  <ul class="navbar-nav mr-auto">
@@ -605,11 +605,14 @@ def navbar
605
605
  _out open
606
606
  _body do |line|
607
607
  href, cdata = line.chomp.strip.split(" ", 2)
608
+ # <!-- href="javascript:void(0);" onClick="urlChange('www.mypdf.com/test.pdf')" -->
608
609
  if first
609
610
  first = false
610
611
  _out %[<li class="nav-item active"> <a class="nav-link" href="#{href}">#{cdata}<span class="sr-only">(current)</span></a> </li>]
611
612
  else
612
- _out %[<li class="nav-item"> <a class="nav-link" href="#{href}">#{cdata}</a> </li>]
613
+ href = "navbar/#{href}"
614
+ href_click = %[href="javascript:void(0)" onclick="javascript:open_main('#{href}')"]
615
+ _out %[<li class="nav-item"> <a class="nav-link" #{href_click}>#{cdata}</a> </li>]
613
616
  end
614
617
  end
615
618
  _out close
data/lib/repl.rb CHANGED
@@ -1,15 +1,16 @@
1
- # require 'runeblog'
1
+ require 'runeblog'
2
2
  require 'global'
3
3
  require 'ostruct'
4
4
  require 'helpers-repl' # FIXME structure
5
5
 
6
6
  make_exception(:PublishError, "Error during publishing")
7
- # make_exception(:EditorProblem, "Could not edit $1")
7
+ make_exception(:EditorProblem, "Could not edit $1")
8
8
 
9
9
  module RuneBlog::REPL
10
10
 
11
11
  def edit_file(file)
12
12
  result = system("#{@blog.editor} #{file}")
13
+ STDERR.puts "editor = #{@blog.editor} FILE = #{file}"
13
14
  raise EditorProblem(file) unless result
14
15
  sleep 0.1
15
16
  STDSCR.clear
data/lib/runeblog.rb CHANGED
@@ -177,7 +177,8 @@ class RuneBlog
177
177
  x = RuneBlog::Default
178
178
  copy!("#{Themes}", "themes")
179
179
  create_dirs(:assets, :posts)
180
- create_dirs(:staging, "remote/permalink")
180
+ create_dirs(:staging, "remote/permalink", "remote/navbar")
181
+ livetext "themes/standard/etc/blog.css.lt3", "themes/standard/etc/blog.css" # simplify this
181
182
  copy!("themes/standard/*", "staging/")
182
183
  copy!("themes/standard/etc", "remote/")
183
184
  copy!("themes/standard/assets", "remote/")
@@ -185,8 +186,6 @@ class RuneBlog
185
186
  pub = "user: xxx\nserver: xxx\ndocroot: xxx\npath: xxx\nproto: xxx\n"
186
187
  dump(pub, "publish")
187
188
 
188
- # Add to global.lt3 here? FIXME
189
-
190
189
  view = RuneBlog::View.new(arg)
191
190
  self.view = view
192
191
  vdir = self.view.dir
@@ -212,14 +211,6 @@ class RuneBlog
212
211
  files.reject! {|f| File.mtime(f) < File.mtime("#{vdir}/last_published") }
213
212
  end
214
213
 
215
- def files_by_id(id) # FIXME get rid of this later
216
- raise ArgumentError unless id.is_a?(Integer)
217
- files = Find.find(self.view.dir).to_a
218
- tag = prefix(id)
219
- result = files.grep(/#{tag}-/)
220
- result
221
- end
222
-
223
214
  def post_lookup(postid) # side-effect?
224
215
  # .. = templates, ../.. = views/thisview
225
216
  slug = title = date = teaser_text = nil
@@ -278,11 +269,10 @@ class RuneBlog
278
269
  text << "</body></html>"
279
270
  File.write(file, text) # FIXME ???
280
271
  iframe_text = <<-HTML
281
- <iframe style="width: 100vw;height: 100vh;position: relative;"
272
+ <iframe name="main" style="width: 100vw;height: 100vh;position: relative;"
282
273
  src='recent.html' width=100% frameborder="0" allowfullscreen>
283
274
  </iframe>
284
275
  HTML
285
- # _out iframe_text # FIXME ??
286
276
  end
287
277
 
288
278
  def create_new_post(title, testing = false, teaser: nil, body: nil, other_views: [])
@@ -409,6 +399,7 @@ class RuneBlog
409
399
  livetext "post/permalink.lt3", "../remote/permalink/#{html}"
410
400
  collect_recent_posts("recent.html")
411
401
  copy("recent.html", "../remote")
402
+ copy!("navbar/*html", "../remote/navbar/")
412
403
  livetext "blog/generate", "../remote/index"
413
404
  end
414
405
  end
@@ -424,7 +415,7 @@ class RuneBlog
424
415
  check_meta(meta, "index_entry1")
425
416
  raise ArgumentError unless view.is_a?(String) || view.is_a?(RuneBlog::View)
426
417
  check_meta(meta, "index_entry2")
427
- self.make_slug(meta) # RuneBlog#index_entry
418
+ self.make_slug(meta)
428
419
  check_meta(meta, "index_entry3")
429
420
  # FIXME clean up and generalize
430
421
  ref = "#{view}/#{meta.slug}/index.html"
@@ -489,12 +480,6 @@ class RuneBlog
489
480
  system("rm -rf #@root/drafts/#{tag}-*")
490
481
  end
491
482
 
492
- def post_exists?(num)
493
- raise ArgumentError unless num.is_a?(Integer)
494
- list = files_by_id(num) # FIXME search under view dirs
495
- list.empty? ? nil : list
496
- end
497
-
498
483
  def make_slug(meta)
499
484
  raise ArgumentError unless meta.title.is_a?(String)
500
485
  label = '%04d' % meta.num # FIXME can do better
@@ -2,7 +2,7 @@
2
2
  if ! (Object.constants.include?(:RuneBlog) && RuneBlog.constants.include?(:Path))
3
3
 
4
4
  class RuneBlog
5
- VERSION = "0.1.95"
5
+ VERSION = "0.1.96"
6
6
 
7
7
  path = Gem.find_files("runeblog").grep(/runeblog-/).first
8
8
  Path = File.dirname(path)
@@ -1,5 +1,6 @@
1
1
  <head>
2
2
  .include etc/externals.lt3
3
+ .include etc/misc.js
3
4
 
4
5
  . fix/remove later
5
6
  .head
@@ -1,16 +1,5 @@
1
1
  .nopara
2
-
3
- .variables
4
- post_title_color #010101
5
- post_title_size 28px
6
-
7
- post_text_color #0101a1
8
- post_text_size 22px
9
-
10
- post_date_color #9a9a9a
11
- post_date_size 15px
12
- .end
13
-
2
+ .include themes/standard/global.lt3
14
3
 
15
4
  \.post-title a {
16
5
  color: $post_title_color;
@@ -0,0 +1,6 @@
1
+ <script>
2
+ function open_main(url) {
3
+ var site = url+'?toolbar=0&amp;navpanes=0&amp;scrollbar=0';
4
+ document.getElementById('main').src = site;
5
+ }
6
+ </script>
@@ -7,6 +7,15 @@ charset utf-8
7
7
  site rubyhacker.com
8
8
  url localhost:4000//
9
9
  locale en_US
10
+
11
+ post_title_color #010101
12
+ post_title_size 28px
13
+
14
+ post_text_color #0101a1
15
+ post_text_size 22px
16
+
17
+ post_date_color #9a9a9a
18
+ post_date_size 15px
10
19
  .end
11
20
 
12
21
  . Maybe move publish info here?
@@ -1,4 +1,6 @@
1
- <section class="post">
1
+ <div class="content container-fluid mt-4">
2
+ <div class="row">
2
3
  <h1>About me</h1>
3
4
  Blah blah blah...
4
- </section>
5
+ </div>
6
+ </div>
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.1.95
4
+ version: 0.1.96
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-09-15 00:00:00.000000000 Z
11
+ date: 2019-09-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: livetext
@@ -82,10 +82,10 @@ files:
82
82
  - themes/standard/blog/head.lt3
83
83
  - themes/standard/blog/index.lt3
84
84
  - themes/standard/blog/post_entry.lt3
85
- - themes/standard/etc/blog.css
86
85
  - themes/standard/etc/blog.css.lt3
87
86
  - themes/standard/etc/externals.lt3
88
87
  - themes/standard/etc/favicon.ico
88
+ - themes/standard/etc/misc.js
89
89
  - themes/standard/global.lt3
90
90
  - themes/standard/navbar/about.html
91
91
  - themes/standard/navbar/navbar.lt3
@@ -1,34 +0,0 @@
1
- # include variables before this file?
2
-
3
- .post-title a {
4
- color: #010101;
5
- font-size: 28px;
6
- float: right;
7
- display: inline-block;
8
- text-align: top;
9
- text-decoration: none;
10
- }
11
-
12
- .post-title a:hover {
13
- text-decoration: none;
14
- }
15
-
16
- .post-title-text a {
17
- color: #0101a1;
18
- font-size: 22px;
19
- # float: right;
20
- display: block;
21
- text-decoration: none;
22
- }
23
-
24
- .post-title-text a:hover {
25
- text-decoration: none;
26
- }
27
-
28
- .post-date {
29
- color: #9a9a9a;
30
- font-size: 15px;
31
- display: block;
32
- float: left;
33
- text-align: top;
34
- }