runeblog 0.3.34 → 0.3.35

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. checksums.yaml +4 -4
  2. data/data/global.lt3 +3 -3
  3. data/empty_view/global.lt3 +20 -0
  4. data/empty_view/themes/standard/banner/top.lt3 +1 -1
  5. data/empty_view/themes/standard/blog/generate.lt3 +1 -1
  6. data/empty_view/themes/standard/etc/blog.css.lt3 +1 -1
  7. data/empty_view/themes/standard/post/generate.lt3 +1 -1
  8. data/empty_view/themes/standard/post/permalink.lt3 +1 -1
  9. data/lib/exceptions.rb +2 -0
  10. data/lib/helpers-blog.rb +3 -3
  11. data/lib/liveblog.rb +24 -24
  12. data/lib/lowlevel.rb +35 -0
  13. data/lib/menus.rb +2 -2
  14. data/lib/processing.rb +3 -17
  15. data/lib/publish.rb +3 -6
  16. data/lib/repl.rb +3 -5
  17. data/lib/runeblog.rb +94 -21
  18. data/lib/runeblog_version.rb +6 -2
  19. data/lib/view.rb +9 -3
  20. data/runeblog.gemspec +4 -2
  21. data/test/.blogs/data/EDITOR +1 -0
  22. data/test/.blogs/data/ROOT +1 -0
  23. data/test/.blogs/data/VERSION +2 -0
  24. data/test/.blogs/data/VIEW +1 -0
  25. data/test/.blogs/data/features.txt +18 -0
  26. data/test/.blogs/data/global.lt3 +20 -0
  27. data/test/.blogs/data/sequence +1 -0
  28. data/test/.blogs/data/universal.lt3 +20 -0
  29. data/test/.blogs/views/around_austin/assets/austin-pano.jpg +0 -0
  30. data/test/.blogs/views/around_austin/assets/back-icon.png +0 -0
  31. data/test/.blogs/views/around_austin/assets/reddit-logo.png +0 -0
  32. data/test/.blogs/views/around_austin/assets/sky2.jpg +0 -0
  33. data/test/.blogs/views/around_austin/config/exper/2svg.lt3 +38 -0
  34. data/test/.blogs/views/around_austin/config/exper/gen_svg.rb +60 -0
  35. data/test/.blogs/views/around_austin/config/exper/meta.html +10 -0
  36. data/test/.blogs/views/around_austin/config/exper/s2.html +25 -0
  37. data/test/.blogs/views/around_austin/config/exper/varmint.rb +50 -0
  38. data/test/.blogs/views/around_austin/config/facebook/credentials.txt +7 -0
  39. data/test/.blogs/views/around_austin/config/facebook/facebook.rb +42 -0
  40. data/test/.blogs/views/around_austin/config/facebook/fb.html +10 -0
  41. data/test/.blogs/views/around_austin/config/facebook/fb.js.lt3 +15 -0
  42. data/test/.blogs/views/around_austin/config/reddit/credentials.txt +6 -0
  43. data/test/.blogs/views/around_austin/config/reddit/notes.txt +4 -0
  44. data/test/.blogs/views/around_austin/config/reddit/reddit_post_url.py +34 -0
  45. data/test/.blogs/views/around_austin/config/reddit/redpost.rb +38 -0
  46. data/test/.blogs/views/around_austin/config/twitter/credentials.txt +3 -0
  47. data/test/.blogs/views/around_austin/config/twitter/tw.html +12 -0
  48. data/test/.blogs/views/around_austin/config/twitter/tw.js +5 -0
  49. data/test/.blogs/views/around_austin/config/twitter/twitter.rb +35 -0
  50. data/test/.blogs/views/around_austin/data/GIT_IS_DUMB +0 -0
  51. data/test/.blogs/views/around_austin/global.lt3 +20 -0
  52. data/test/.blogs/views/around_austin/last_published +1 -0
  53. data/test/.blogs/views/around_austin/posts/GIT_IS_DUMB +1 -0
  54. data/test/.blogs/views/around_austin/remote/assets/GIT_IS_DUMB +1 -0
  55. data/test/.blogs/views/around_austin/remote/banner/navbar/GIT_IS_DUMB +0 -0
  56. data/test/.blogs/views/around_austin/remote/etc/GIT_IS_DUMB +1 -0
  57. data/test/.blogs/views/around_austin/remote/permalink/GIT_IS_DUMB +1 -0
  58. data/test/.blogs/views/around_austin/remote/widgets/ad/GIT_IS_DUMB +2 -0
  59. data/test/.blogs/views/around_austin/remote/widgets/links/GIT_IS_DUMB +2 -0
  60. data/test/.blogs/views/around_austin/remote/widgets/news/GIT_IS_DUMB +2 -0
  61. data/test/.blogs/views/around_austin/remote/widgets/pages/GIT_IS_DUMB +2 -0
  62. data/test/.blogs/views/around_austin/remote/widgets/pinned/GIT_IS_DUMB +2 -0
  63. data/test/.blogs/views/around_austin/settings/features.txt +18 -0
  64. data/test/.blogs/views/around_austin/settings/publish.txt +5 -0
  65. data/test/.blogs/views/around_austin/settings/recent.txt +11 -0
  66. data/test/.blogs/views/around_austin/settings/view.txt +4 -0
  67. data/test/.blogs/views/around_austin/themes/standard/README +59 -0
  68. data/test/.blogs/views/around_austin/themes/standard/banner/banner.lt3 +5 -0
  69. data/test/.blogs/views/around_austin/themes/standard/banner/navbar/about.lt3 +18 -0
  70. data/test/.blogs/views/around_austin/themes/standard/banner/navbar/contact.lt3 +18 -0
  71. data/test/.blogs/views/around_austin/themes/standard/banner/navbar/faq.lt3 +1 -0
  72. data/test/.blogs/views/around_austin/themes/standard/banner/navbar/list.data +3 -0
  73. data/test/.blogs/views/around_austin/themes/standard/banner/top.lt3 +20 -0
  74. data/test/.blogs/views/around_austin/themes/standard/blog/generate.lt3 +21 -0
  75. data/test/.blogs/views/around_austin/themes/standard/blog/head.lt3 +16 -0
  76. data/test/.blogs/views/around_austin/themes/standard/blog/index.lt3 +16 -0
  77. data/test/.blogs/views/around_austin/themes/standard/blog/post_entry.lt3 +21 -0
  78. data/test/.blogs/views/around_austin/themes/standard/etc/blog.css.lt3 +62 -0
  79. data/test/.blogs/views/around_austin/themes/standard/etc/externals.lt3 +24 -0
  80. data/test/.blogs/views/around_austin/themes/standard/etc/favicon.ico +0 -0
  81. data/test/.blogs/views/around_austin/themes/standard/etc/github.css +209 -0
  82. data/test/.blogs/views/around_austin/themes/standard/etc/misc.js +20 -0
  83. data/test/.blogs/views/around_austin/themes/standard/global.lt3 +20 -0
  84. data/test/.blogs/views/around_austin/themes/standard/post/generate.lt3 +39 -0
  85. data/test/.blogs/views/around_austin/themes/standard/post/head.lt3 +7 -0
  86. data/test/.blogs/views/around_austin/themes/standard/post/index.lt3 +24 -0
  87. data/test/.blogs/views/around_austin/themes/standard/post/permalink.lt3 +31 -0
  88. data/test/.blogs/views/around_austin/widgets/README +4 -0
  89. data/test/.blogs/views/around_austin/widgets/bydates/README +2 -0
  90. data/test/.blogs/views/around_austin/widgets/bydates/bydates.rb +18 -0
  91. data/test/.blogs/views/around_austin/widgets/bydates/card.css +1 -0
  92. data/test/.blogs/views/around_austin/widgets/bydates/custom.rb +1 -0
  93. data/test/.blogs/views/around_austin/widgets/bydates/main.css +2 -0
  94. data/test/.blogs/views/around_austin/widgets/links/README +2 -0
  95. data/test/.blogs/views/around_austin/widgets/links/card.css +1 -0
  96. data/test/.blogs/views/around_austin/widgets/links/custom.rb +1 -0
  97. data/test/.blogs/views/around_austin/widgets/links/links.rb +90 -0
  98. data/test/.blogs/views/around_austin/widgets/links/list.data +3 -0
  99. data/test/.blogs/views/around_austin/widgets/links/main.css +2 -0
  100. data/test/.blogs/views/around_austin/widgets/news/README +2 -0
  101. data/test/.blogs/views/around_austin/widgets/news/card.css +1 -0
  102. data/test/.blogs/views/around_austin/widgets/news/custom.rb +1 -0
  103. data/test/.blogs/views/around_austin/widgets/news/list.data +4 -0
  104. data/test/.blogs/views/around_austin/widgets/news/main.css +2 -0
  105. data/test/.blogs/views/around_austin/widgets/news/news.rb +88 -0
  106. data/test/.blogs/views/around_austin/widgets/pages/README +2 -0
  107. data/test/.blogs/views/around_austin/widgets/pages/card.css +1 -0
  108. data/test/.blogs/views/around_austin/widgets/pages/custom.rb +1 -0
  109. data/test/.blogs/views/around_austin/widgets/pages/disclaim.lt3 +10 -0
  110. data/test/.blogs/views/around_austin/widgets/pages/faq.lt3 +41 -0
  111. data/test/.blogs/views/around_austin/widgets/pages/like-dislike.lt3 +11 -0
  112. data/test/.blogs/views/around_austin/widgets/pages/list.data +4 -0
  113. data/test/.blogs/views/around_austin/widgets/pages/local.rb +0 -0
  114. data/test/.blogs/views/around_austin/widgets/pages/main.css +2 -0
  115. data/test/.blogs/views/around_austin/widgets/pages/other-stuff.lt3 +10 -0
  116. data/test/.blogs/views/around_austin/widgets/pages/pages.rb +130 -0
  117. data/test/.blogs/views/around_austin/widgets/pinned/README +2 -0
  118. data/test/.blogs/views/around_austin/widgets/pinned/card.css +1 -0
  119. data/test/.blogs/views/around_austin/widgets/pinned/custom.rb +1 -0
  120. data/test/.blogs/views/around_austin/widgets/pinned/main.css +2 -0
  121. data/test/.blogs/views/around_austin/widgets/pinned/pinned.rb +111 -0
  122. data/test/.blogs/views/around_austin/widgets/search/README +2 -0
  123. data/test/.blogs/views/around_austin/widgets/search/card.css +1 -0
  124. data/test/.blogs/views/around_austin/widgets/search/custom.rb +1 -0
  125. data/test/.blogs/views/around_austin/widgets/search/main.css +2 -0
  126. data/test/.blogs/views/around_austin/widgets/search/search.rb +18 -0
  127. data/test/.blogs/views/around_austin/widgets/sitemap/README +2 -0
  128. data/test/.blogs/views/around_austin/widgets/sitemap/card.css +1 -0
  129. data/test/.blogs/views/around_austin/widgets/sitemap/custom.rb +1 -0
  130. data/test/.blogs/views/around_austin/widgets/sitemap/main.css +2 -0
  131. data/test/.blogs/views/around_austin/widgets/sitemap/sitemap.rb +18 -0
  132. data/test/.blogs/views/around_austin/widgets/tag-cloud/OLD-example.lt3 +12 -0
  133. data/test/.blogs/views/around_austin/widgets/tag-cloud/README +2 -0
  134. data/test/.blogs/views/around_austin/widgets/tag-cloud/card.css +1 -0
  135. data/test/.blogs/views/around_austin/widgets/tag-cloud/custom.rb +1 -0
  136. data/test/.blogs/views/around_austin/widgets/tag-cloud/main.css +2 -0
  137. data/test/.blogs/views/around_austin/widgets/tag-cloud/tag-cloud.lt3 +3 -0
  138. data/test/.blogs/views/around_austin/widgets/tag-cloud/tag-cloud.rb +18 -0
  139. data/test/.blogs/widgets/README +4 -0
  140. data/test/.blogs/widgets/bydates/README +2 -0
  141. data/test/.blogs/widgets/bydates/bydates.rb +18 -0
  142. data/test/.blogs/widgets/bydates/card.css +1 -0
  143. data/test/.blogs/widgets/bydates/custom.rb +1 -0
  144. data/test/.blogs/widgets/bydates/main.css +2 -0
  145. data/test/.blogs/widgets/links/README +2 -0
  146. data/test/.blogs/widgets/links/card.css +1 -0
  147. data/test/.blogs/widgets/links/custom.rb +1 -0
  148. data/test/.blogs/widgets/links/links.rb +90 -0
  149. data/test/.blogs/widgets/links/list.data +3 -0
  150. data/test/.blogs/widgets/links/main.css +2 -0
  151. data/test/.blogs/widgets/news/README +2 -0
  152. data/test/.blogs/widgets/news/card.css +1 -0
  153. data/test/.blogs/widgets/news/custom.rb +1 -0
  154. data/test/.blogs/widgets/news/list.data +4 -0
  155. data/test/.blogs/widgets/news/main.css +2 -0
  156. data/test/.blogs/widgets/news/news.rb +88 -0
  157. data/test/.blogs/widgets/pages/README +2 -0
  158. data/test/.blogs/widgets/pages/card.css +1 -0
  159. data/test/.blogs/widgets/pages/custom.rb +1 -0
  160. data/test/.blogs/widgets/pages/disclaim.lt3 +10 -0
  161. data/test/.blogs/widgets/pages/faq.lt3 +41 -0
  162. data/test/.blogs/widgets/pages/like-dislike.lt3 +11 -0
  163. data/test/.blogs/widgets/pages/list.data +4 -0
  164. data/test/.blogs/widgets/pages/local.rb +0 -0
  165. data/test/.blogs/widgets/pages/main.css +2 -0
  166. data/test/.blogs/widgets/pages/other-stuff.lt3 +10 -0
  167. data/test/.blogs/widgets/pages/pages.rb +130 -0
  168. data/test/.blogs/widgets/pinned/README +2 -0
  169. data/test/.blogs/widgets/pinned/card.css +1 -0
  170. data/test/.blogs/widgets/pinned/custom.rb +1 -0
  171. data/test/.blogs/widgets/pinned/main.css +2 -0
  172. data/test/.blogs/widgets/pinned/pinned.rb +111 -0
  173. data/test/.blogs/widgets/search/README +2 -0
  174. data/test/.blogs/widgets/search/card.css +1 -0
  175. data/test/.blogs/widgets/search/custom.rb +1 -0
  176. data/test/.blogs/widgets/search/main.css +2 -0
  177. data/test/.blogs/widgets/search/search.rb +18 -0
  178. data/test/.blogs/widgets/sitemap/README +2 -0
  179. data/test/.blogs/widgets/sitemap/card.css +1 -0
  180. data/test/.blogs/widgets/sitemap/custom.rb +1 -0
  181. data/test/.blogs/widgets/sitemap/main.css +2 -0
  182. data/test/.blogs/widgets/sitemap/sitemap.rb +18 -0
  183. data/test/.blogs/widgets/tag-cloud/OLD-example.lt3 +12 -0
  184. data/test/.blogs/widgets/tag-cloud/README +2 -0
  185. data/test/.blogs/widgets/tag-cloud/card.css +1 -0
  186. data/test/.blogs/widgets/tag-cloud/custom.rb +1 -0
  187. data/test/.blogs/widgets/tag-cloud/main.css +2 -0
  188. data/test/.blogs/widgets/tag-cloud/tag-cloud.lt3 +3 -0
  189. data/test/.blogs/widgets/tag-cloud/tag-cloud.rb +18 -0
  190. data/test/austin.rb +8 -3
  191. metadata +176 -6
@@ -0,0 +1,59 @@
1
+ New structure:
2
+
3
+ themes/standard The first "default theme" - more later
4
+ ├── README This file
5
+ ├── assets Assets (images/videos/etc) for entire view
6
+ ├── banner Top banner for the view
7
+ ├── blog All files/info for view
8
+ │   ├── generate.lt3 Generate index.html from wrapper (rarely edited)
9
+ │   ├── head.lt3 Header info for index.html
10
+ │   ├── index.lt3 "Guts" of view (user-edited, wrapped by generate.lt3)
11
+ │   └── post_entry.lt3
12
+ ├── etc
13
+ │   ├── blog.css
14
+ │   ├── externals.lt3
15
+ │   ├── global.lt3
16
+ │   └── favicon.ico
17
+ ├── navbar
18
+ │   ├── about.html
19
+ │   └── navbar.lt3
20
+ ├── pages
21
+ ├── post
22
+ │   ├── generate.lt3
23
+ │   ├── head.lt3
24
+ │   ├── index.lt3
25
+ │   └── permalink.lt3
26
+ └── sidebar
27
+    ├── ad.lt3
28
+    ├── calendar.lt3
29
+    ├── news.lt3
30
+    └── tag-cloud.lt3
31
+
32
+
33
+ Old structure:
34
+
35
+ templates The first "default theme" - more later
36
+ ├── README This file
37
+ ├── about.html An "about" file (will move)
38
+ ├── assets Assets for entire view (blog)
39
+ │   ├── application.css "Global" CSS
40
+ │   ├── favicon.ico Favicon
41
+ │   └── ... Other files later, images, etc.
42
+ ├── blog ** The whole template for this view (blog)
43
+ │   ├── _postentry.lt3 Used repeatedly in list of blog posts
44
+ │   ├── generate.lt3 The "main wrapper" that actually generates everything
45
+ │   ├── index.lt3 The main "user editable" portion of the template
46
+ │   ├── navbar.lt3 The navigation bar
47
+ │   └── sidebar The sidebar (which may include different things)
48
+ │   ├── ad.lt3 Code to generate an advertisement
49
+ │   ├── calendar.lt3 Code for a calendar
50
+ │   ├── news.lt3 Recent news
51
+ │   └── tag-cloud.lt3 Tag cloud (generated automatically of course)
52
+ ├── global.lt3 Some global settings (MOVED TO etc)
53
+ ├── head.lt3 A standard <head> section
54
+ ├── meta.lt3 Standard meta tags
55
+ └── post
56
+    ├── head.lt3 Specific to post (adds to higher-level head)
57
+    ├── generate.lt3 The "main wrapper" that actually generates the post
58
+    └── index.lt3 The main "user editable" portion of the post template
59
+
@@ -0,0 +1,5 @@
1
+ .banner
2
+ text top.html
3
+ break
4
+ navbar
5
+ .end
@@ -0,0 +1,18 @@
1
+ . --------------------------------------------------
2
+ . This is a sample file typical of page referenced
3
+ . directly from the navigation bar.
4
+ . It is like a special case of a page in the "pages"
5
+ . widget.
6
+ . --------------------------------------------------
7
+
8
+ .set this.title="About me"
9
+ . make this better later
10
+ <html><body>
11
+ <div class="content container-fluid mt-4">
12
+ <div class="row">
13
+ <h1>$this.title</h1>
14
+ . content starts here...
15
+ Blah blah blah...
16
+ </div>
17
+ </div>
18
+ </body></html>
@@ -0,0 +1,18 @@
1
+ . --------------------------------------------------
2
+ . This is a sample file typical of page referenced
3
+ . directly from the navigation bar.
4
+ . It is like a special case of a page in the "pages"
5
+ . widget.
6
+ . --------------------------------------------------
7
+
8
+ .set this.title="Contact"
9
+ . make this better later
10
+ <html><body>
11
+ <div class="content container-fluid mt-4">
12
+ <div class="row">
13
+ <h1>$this.title</h1>
14
+ . content starts here...
15
+ How to contact me by email, smoke signals, ICBM, seance, ...
16
+ </div>
17
+ </div>
18
+ </body></html>
@@ -0,0 +1 @@
1
+ .include ../../../../widgets/pages/faq.lt3
@@ -0,0 +1,3 @@
1
+ about About
2
+ contact Contact
3
+ faq FAQ
@@ -0,0 +1,20 @@
1
+ .include $ViewDir/global.lt3
2
+
3
+ <svg width="98%" height="120"
4
+ viewBox="0 0 98% 100">
5
+ <defs>
6
+ <linearGradient id="grad1" x1="100%" y1="100%" x2="0%" y2="100%">
7
+ <stop offset="0%" style="stop-color:rgb(198,198,228);stop-opacity:1" />
8
+ <stop offset="100%" style="stop-color:rgb(30,30,50);stop-opacity:1" />
9
+ </linearGradient>
10
+ </defs>
11
+ <style>
12
+ .small { font: 18px sans-serif; fill: #98baff }
13
+ .heavy { font: bold 52px sans-serif; fill: #76a9ff }
14
+ </style>
15
+
16
+ <rect x="20" y="20" rx="15" ry="15" width="98%" height="100" fill="url(#grad1)"/>
17
+
18
+ <text x="45" y="70" class=heavy>$view.title</text>
19
+ <text x="45" y="98" class=small>$view.subtitle</text>
20
+ </svg>
@@ -0,0 +1,21 @@
1
+ . --------------------------------------------------
2
+ . This file will usually not be edited by the user.
3
+ . It is used to generate the top-level index.html
4
+ . The user will more often edit blog/index.lt3 in
5
+ . the process of blog setup.
6
+ . --------------------------------------------------
7
+
8
+ <html>
9
+ <!-- Generated from $File on $$date.
10
+ Editing not recommended. -->
11
+ $.include $ViewDir/global.lt3
12
+ $.include blog/head.lt3
13
+ <body>
14
+ $.include banner/banner.lt3
15
+ <div class="content container-fluid mt-4">
16
+ <div class="row">
17
+ $.include blog/index.lt3
18
+ </div>
19
+ </div>
20
+ </body>
21
+ </html>
@@ -0,0 +1,16 @@
1
+ . --------------------------------------------------
2
+ . This file will usually not be edited by the user.
3
+ . It is used to generate the <HEAD> for the overall
4
+ . blog and for the individual post.
5
+ . SUBJECT TO CHANGE, like everything else but moreso
6
+ . --------------------------------------------------
7
+
8
+ <head>
9
+ .include etc/externals.lt3
10
+ .include etc/misc.js
11
+
12
+ . fix/remove later
13
+ .head
14
+ .end
15
+
16
+ </head>
@@ -0,0 +1,16 @@
1
+ . --------------------------------------------------
2
+ . This file describes the actual layout of the blog.
3
+ . It is referenced from blog/generate.lt3
4
+ . --------------------------------------------------
5
+
6
+ . figure out how to put navbar here
7
+
8
+ .recent_posts
9
+
10
+ .sidebar
11
+ links
12
+ pinned
13
+ pages
14
+ news
15
+ .end
16
+
@@ -0,0 +1,21 @@
1
+ . --------------------------------------------------
2
+ . This HTML fragment gives the format of a post's
3
+ . "index" entry (recent posts on blog front page).
4
+ . --------------------------------------------------
5
+
6
+ <div class="post">
7
+ <table width=100% cellpadding=7>
8
+ <tr>
9
+ <td width=16% valign=top align=right style="margin-top: -1px;">
10
+ <font size=-1>#{date}</font>
11
+ </td>
12
+ <td>
13
+ <span class="recent-title-text"><a href="#{url}" style="margin-top: -5px">#{title}</a></span>
14
+ <b>#{teaser_text}</b>&nbsp;&nbsp;
15
+ <a style="text-decoration: none" href="#{url}"><small>Keep&nbsp;reading</small></a>
16
+ </td>
17
+ </tr>
18
+ </table>
19
+ </div>
20
+
21
+ <font size=-4><br></font>
@@ -0,0 +1,62 @@
1
+ . --------------------------------------------------
2
+ . This file is processed to create blog.css
3
+ . Most of the global CSS goes here
4
+ . --------------------------------------------------
5
+
6
+ .include $ViewDir/global.lt3
7
+
8
+ body { font-family: $font.family }
9
+
10
+ \.recent-title a {
11
+ color: $recent.title.color;
12
+ font-family: $font.family;
13
+ font-size: $recent.title.size;
14
+ float: right;
15
+ display: inline-block;
16
+ text-align: top;
17
+ text-decoration: none;
18
+ }
19
+
20
+ \.recent-title a:hover {
21
+ text-decoration: none;
22
+ }
23
+
24
+ \.recent-title-text a {
25
+ color: $recent.text.color;
26
+ font-family: $font.family;
27
+ font-size: $recent.text.size;
28
+ display: block;
29
+ text-decoration: none;
30
+ }
31
+
32
+ \.recent-title-text a:hover {
33
+ text-decoration: none;
34
+ }
35
+
36
+ \.recent-date {
37
+ color: $recent.date.color;
38
+ font-family: $font.family;
39
+ font-size: $recent.date.size;
40
+ display: block;
41
+ float: left;
42
+ text-align: top;
43
+ }
44
+
45
+ \.mydrop {
46
+ color: #444444;
47
+ float: left;
48
+ text-align: top;
49
+ # font-family: Verdana;
50
+ font-size: 38px;
51
+ line-height: 38px;
52
+ # padding-top: 0px;
53
+ padding-right: 8px;
54
+ padding-left: 3px;
55
+ }
56
+
57
+ . not used?
58
+ \.thumbnail img {
59
+ max-height: 100%;
60
+ max-width: 100%;
61
+ }
62
+
@@ -0,0 +1,24 @@
1
+ . --------------------------------------------------
2
+ . External JS and CSS resources (Bootstrap, etc.)
3
+ . are defined here
4
+ . --------------------------------------------------
5
+
6
+ .stylesheet
7
+ https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css
8
+ sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T
9
+ .end
10
+
11
+ .script
12
+ https://code.jquery.com/jquery-3.3.1.slim.min.js
13
+ sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo
14
+ .end
15
+
16
+ .script
17
+ https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js
18
+ sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1
19
+ .end
20
+
21
+ .script
22
+ https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js
23
+ sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM
24
+ .end
@@ -0,0 +1,209 @@
1
+ .highlight table td { padding: 5px; }
2
+ .highlight table pre { margin: 0; }
3
+ .highlight .cm {
4
+ color: #999988;
5
+ font-style: italic;
6
+ }
7
+ .highlight .cp {
8
+ color: #999999;
9
+ font-weight: bold;
10
+ }
11
+ .highlight .c1 {
12
+ color: #999988;
13
+ font-style: italic;
14
+ }
15
+ .highlight .cs {
16
+ color: #999999;
17
+ font-weight: bold;
18
+ font-style: italic;
19
+ }
20
+ .highlight .c, .highlight .ch, .highlight .cd, .highlight .cpf {
21
+ color: #999988;
22
+ font-style: italic;
23
+ }
24
+ .highlight .err {
25
+ color: #a61717;
26
+ background-color: #e3d2d2;
27
+ }
28
+ .highlight .gd {
29
+ color: #000000;
30
+ background-color: #ffdddd;
31
+ }
32
+ .highlight .ge {
33
+ color: #000000;
34
+ font-style: italic;
35
+ }
36
+ .highlight .gr {
37
+ color: #aa0000;
38
+ }
39
+ .highlight .gh {
40
+ color: #999999;
41
+ }
42
+ .highlight .gi {
43
+ color: #000000;
44
+ background-color: #ddffdd;
45
+ }
46
+ .highlight .go {
47
+ color: #888888;
48
+ }
49
+ .highlight .gp {
50
+ color: #555555;
51
+ }
52
+ .highlight .gs {
53
+ font-weight: bold;
54
+ }
55
+ .highlight .gu {
56
+ color: #aaaaaa;
57
+ }
58
+ .highlight .gt {
59
+ color: #aa0000;
60
+ }
61
+ .highlight .kc {
62
+ color: #000000;
63
+ font-weight: bold;
64
+ }
65
+ .highlight .kd {
66
+ color: #000000;
67
+ font-weight: bold;
68
+ }
69
+ .highlight .kn {
70
+ color: #000000;
71
+ font-weight: bold;
72
+ }
73
+ .highlight .kp {
74
+ color: #000000;
75
+ font-weight: bold;
76
+ }
77
+ .highlight .kr {
78
+ color: #000000;
79
+ font-weight: bold;
80
+ }
81
+ .highlight .kt {
82
+ color: #445588;
83
+ font-weight: bold;
84
+ }
85
+ .highlight .k, .highlight .kv {
86
+ color: #000000;
87
+ font-weight: bold;
88
+ }
89
+ .highlight .mf {
90
+ color: #009999;
91
+ }
92
+ .highlight .mh {
93
+ color: #009999;
94
+ }
95
+ .highlight .il {
96
+ color: #009999;
97
+ }
98
+ .highlight .mi {
99
+ color: #009999;
100
+ }
101
+ .highlight .mo {
102
+ color: #009999;
103
+ }
104
+ .highlight .m, .highlight .mb, .highlight .mx {
105
+ color: #009999;
106
+ }
107
+ .highlight .sb {
108
+ color: #d14;
109
+ }
110
+ .highlight .sc {
111
+ color: #d14;
112
+ }
113
+ .highlight .sd {
114
+ color: #d14;
115
+ }
116
+ .highlight .s2 {
117
+ color: #d14;
118
+ }
119
+ .highlight .se {
120
+ color: #d14;
121
+ }
122
+ .highlight .sh {
123
+ color: #d14;
124
+ }
125
+ .highlight .si {
126
+ color: #d14;
127
+ }
128
+ .highlight .sx {
129
+ color: #d14;
130
+ }
131
+ .highlight .sr {
132
+ color: #009926;
133
+ }
134
+ .highlight .s1 {
135
+ color: #d14;
136
+ }
137
+ .highlight .ss {
138
+ color: #990073;
139
+ }
140
+ .highlight .s, .highlight .sa, .highlight .dl {
141
+ color: #d14;
142
+ }
143
+ .highlight .na {
144
+ color: #008080;
145
+ }
146
+ .highlight .bp {
147
+ color: #999999;
148
+ }
149
+ .highlight .nb {
150
+ color: #0086B3;
151
+ }
152
+ .highlight .nc {
153
+ color: #445588;
154
+ font-weight: bold;
155
+ }
156
+ .highlight .no {
157
+ color: #008080;
158
+ }
159
+ .highlight .nd {
160
+ color: #3c5d5d;
161
+ font-weight: bold;
162
+ }
163
+ .highlight .ni {
164
+ color: #800080;
165
+ }
166
+ .highlight .ne {
167
+ color: #990000;
168
+ font-weight: bold;
169
+ }
170
+ .highlight .nf, .highlight .fm {
171
+ color: #990000;
172
+ font-weight: bold;
173
+ }
174
+ .highlight .nl {
175
+ color: #990000;
176
+ font-weight: bold;
177
+ }
178
+ .highlight .nn {
179
+ color: #555555;
180
+ }
181
+ .highlight .nt {
182
+ color: #000080;
183
+ }
184
+ .highlight .vc {
185
+ color: #008080;
186
+ }
187
+ .highlight .vg {
188
+ color: #008080;
189
+ }
190
+ .highlight .vi {
191
+ color: #008080;
192
+ }
193
+ .highlight .nv, .highlight .vm {
194
+ color: #008080;
195
+ }
196
+ .highlight .ow {
197
+ color: #000000;
198
+ font-weight: bold;
199
+ }
200
+ .highlight .o {
201
+ color: #000000;
202
+ font-weight: bold;
203
+ }
204
+ .highlight .w {
205
+ color: #bbbbbb;
206
+ }
207
+ .highlight {
208
+ background-color: #f8f8f8;
209
+ }.highlight { font-family: courier; white-space: pre }
@@ -0,0 +1,20 @@
1
+ <!-- Miscellaneous local JS pieces are defined here -->
2
+ .nopara
3
+
4
+ <script>
5
+ function open_main(url) {
6
+ var site = url+'?toolbar=0&amp;navpanes=0&amp;scrollbar=0';
7
+ document.getElementById('main').src = site;
8
+ }
9
+
10
+ function callout(d, id, src) {
11
+ var js, fjs = d.getElementsByTagName('script')[0];
12
+ p=/^http:/.test(d.location)?'http':'https';
13
+ if (d.getElementById(id)) {return;}
14
+ js = d.createElement('script');
15
+ js.id = id;
16
+ js.src = p + src;
17
+ fjs.parentNode.insertBefore(js, fjs);
18
+ }
19
+
20
+ </script>
@@ -0,0 +1,20 @@
1
+ . --------------------------------------------------
2
+ . Global settings are stored here in the form
3
+ . <variable> <value>
4
+ . --------------------------------------------------
5
+
6
+ .variables view ../../settings/view.txt
7
+
8
+ .variables recent ../../settings/recent.txt
9
+
10
+ .variables publish ../../settings/publish.txt
11
+
12
+ .variables
13
+ host http://SITE
14
+ charset utf-8
15
+ url http://SITE
16
+ locale en_US
17
+
18
+ font.family verdana
19
+ .end
20
+
@@ -0,0 +1,39 @@
1
+ . --------------------------------------------------
2
+ . This is used to generate a single post.
3
+ . The logic behind it is convoluted and may be
4
+ . subject to change.
5
+ . --------------------------------------------------
6
+
7
+ .mixin liveblog
8
+ <html>
9
+ <!-- Generated from $File on $$date; editing not recommended. -->
10
+
11
+ .include $ViewDir/global.lt3
12
+
13
+ .variables! post metadata.txt
14
+
15
+ . FIXME
16
+ .head
17
+ og:title $post.title
18
+ description $post.teaser
19
+ style blog.css
20
+ .end
21
+
22
+ <body>
23
+
24
+ <section class="post">
25
+ <div class="recent-content">
26
+ $.post_toolbar
27
+ <table border=0 width=100%><tr>
28
+ <td align=left valign=bottom><h2 class="recent-title">$post.title</h2></td>
29
+ . FIXME - longdate is passed in from outside
30
+ <td align=right valign=top><font size=-5><br></font>$longdate</td>
31
+ </tr></table><hr>
32
+ $.copy guts.html
33
+ </div>
34
+ </section>
35
+
36
+ <br>
37
+ .post_trailer $post.num
38
+ </body>
39
+ </html>
@@ -0,0 +1,7 @@
1
+ . --------------------------------------------------
2
+ . This file is currently unused and may go away.
3
+ . It is intended to manage the <HEAD> for a post (as
4
+ . opposed to the entire blog).
5
+ . --------------------------------------------------
6
+
7
+ . To be done...
@@ -0,0 +1,24 @@
1
+ . --------------------------------------------------
2
+ . This file is overwritten and customized as the
3
+ . blog is maintained.
4
+ . Currently there is no user-friendly way to change
5
+ . the "skeleton" of a post. When there is, this will
6
+ . likely be the place.
7
+ . --------------------------------------------------
8
+
9
+ .post 0
10
+
11
+ .title This is my title
12
+ .pubdate 2019-07-09
13
+ .views stuff
14
+ .tags
15
+
16
+ .teaser
17
+ This is only a short excerpt from the top of the blog post.
18
+ .end
19
+
20
+ And now we continue the post.
21
+ Do we have anything to say?
22
+
23
+ Apparently not much.
24
+
@@ -0,0 +1,31 @@
1
+ . --------------------------------------------------
2
+ . A permalink differs very little from the original
3
+ . post except that it lacks "context" (navigation
4
+ . bar, banner, sidebar, etc.).
5
+ . It does have a link back to the current front page
6
+ . of the blog.
7
+ . --------------------------------------------------
8
+
9
+ .mixin liveblog
10
+
11
+ <html>
12
+ <!-- Editing this file is not recommended. -->
13
+ <!-- It was generated from $File on $$date. -->
14
+
15
+ .include $ViewDir/global.lt3
16
+
17
+ .head
18
+ og:title $title
19
+ description $teaser
20
+ .end
21
+
22
+ <section class="post">
23
+ <div class="recent-content">
24
+ $.copy guts.html
25
+ </div>
26
+ </section>
27
+
28
+ <br>
29
+ <a href="../index.html" style="text-decoration: none">[Home: $blog]</a>
30
+ </body>
31
+ </html>
@@ -0,0 +1,4 @@
1
+ bydates Browse blog entries for past dates
2
+ links List of links (typically offsite)
3
+ pages List of pages (my own local stuff)
4
+ search Search posts by tag, title, body, etc.
@@ -0,0 +1,2 @@
1
+ This is for a "standard" Runeblog widget
2
+ Code and docs are a work in progress
@@ -0,0 +1,18 @@
1
+ # Custom code for 'bydates' widget
2
+
3
+ class ::RuneBlog::Widget
4
+ class Bydates
5
+ def initialize(repo)
6
+ @blog = repo
7
+ end
8
+
9
+ def build
10
+ end
11
+
12
+ def edit_menu
13
+ end
14
+
15
+ def refresh
16
+ end
17
+ end
18
+ end