Browse Source

initial commit

Thomas Forest 1 year ago
commit
d4718ccdb3
100 changed files with 13305 additions and 0 deletions
  1. 17 0
      README.txt
  2. BIN
      cache/.mako.tmp/__pycache__/archive.tmpl.cpython-39.pyc
  3. BIN
      cache/.mako.tmp/__pycache__/archive_navigation_helper.tmpl.cpython-39.pyc
  4. BIN
      cache/.mako.tmp/__pycache__/base.tmpl.cpython-39.pyc
  5. BIN
      cache/.mako.tmp/__pycache__/base_helper.tmpl.cpython-39.pyc
  6. BIN
      cache/.mako.tmp/__pycache__/book.tmpl.cpython-39.pyc
  7. BIN
      cache/.mako.tmp/__pycache__/comments_helper.tmpl.cpython-39.pyc
  8. BIN
      cache/.mako.tmp/__pycache__/comments_helper_dummy.tmpl.cpython-39.pyc
  9. BIN
      cache/.mako.tmp/__pycache__/crumbs.tmpl.cpython-39.pyc
  10. BIN
      cache/.mako.tmp/__pycache__/feeds_translations_helper.tmpl.cpython-39.pyc
  11. BIN
      cache/.mako.tmp/__pycache__/gallery.tmpl.cpython-39.pyc
  12. BIN
      cache/.mako.tmp/__pycache__/index.tmpl.cpython-39.pyc
  13. BIN
      cache/.mako.tmp/__pycache__/index_helper.tmpl.cpython-39.pyc
  14. BIN
      cache/.mako.tmp/__pycache__/list.tmpl.cpython-39.pyc
  15. BIN
      cache/.mako.tmp/__pycache__/list_post.tmpl.cpython-39.pyc
  16. BIN
      cache/.mako.tmp/__pycache__/listing.tmpl.cpython-39.pyc
  17. BIN
      cache/.mako.tmp/__pycache__/math_helper.tmpl.cpython-39.pyc
  18. BIN
      cache/.mako.tmp/__pycache__/page.tmpl.cpython-39.pyc
  19. BIN
      cache/.mako.tmp/__pycache__/post.tmpl.cpython-39.pyc
  20. BIN
      cache/.mako.tmp/__pycache__/post_header.tmpl.cpython-39.pyc
  21. BIN
      cache/.mako.tmp/__pycache__/post_helper.tmpl.cpython-39.pyc
  22. BIN
      cache/.mako.tmp/__pycache__/story.tmpl.cpython-39.pyc
  23. BIN
      cache/.mako.tmp/__pycache__/tag.tmpl.cpython-39.pyc
  24. BIN
      cache/.mako.tmp/__pycache__/tags.tmpl.cpython-39.pyc
  25. BIN
      cache/.mako.tmp/__pycache__/ui_helper.tmpl.cpython-39.pyc
  26. 42 0
      cache/.mako.tmp/archive.tmpl.py
  27. 82 0
      cache/.mako.tmp/archive_navigation_helper.tmpl.py
  28. 232 0
      cache/.mako.tmp/base.tmpl.py
  29. 288 0
      cache/.mako.tmp/base_helper.tmpl.py
  30. 120 0
      cache/.mako.tmp/book.tmpl.py
  31. 84 0
      cache/.mako.tmp/comments_helper.tmpl.py
  32. 64 0
      cache/.mako.tmp/comments_helper_dummy.tmpl.py
  33. 59 0
      cache/.mako.tmp/crumbs.tmpl.py
  34. 357 0
      cache/.mako.tmp/feeds_translations_helper.tmpl.py
  35. 220 0
      cache/.mako.tmp/gallery.tmpl.py
  36. 181 0
      cache/.mako.tmp/index.tmpl.py
  37. 84 0
      cache/.mako.tmp/index_helper.tmpl.py
  38. 138 0
      cache/.mako.tmp/list.tmpl.py
  39. 140 0
      cache/.mako.tmp/list_post.tmpl.py
  40. 143 0
      cache/.mako.tmp/listing.tmpl.py
  41. 144 0
      cache/.mako.tmp/math_helper.tmpl.py
  42. 42 0
      cache/.mako.tmp/page.tmpl.py
  43. 200 0
      cache/.mako.tmp/post.tmpl.py
  44. 167 0
      cache/.mako.tmp/post_header.tmpl.py
  45. 208 0
      cache/.mako.tmp/post_helper.tmpl.py
  46. 107 0
      cache/.mako.tmp/story.tmpl.py
  47. 150 0
      cache/.mako.tmp/tag.tmpl.py
  48. 150 0
      cache/.mako.tmp/tags.tmpl.py
  49. 57 0
      cache/.mako.tmp/ui_helper.tmpl.py
  50. 2 0
      cache/galleries/demo/index.html
  51. 0 0
      cache/galleries/demo/index.html.dep
  52. 5 0
      cache/pages/1.html
  53. 0 0
      cache/pages/1.html.dep
  54. 52 0
      cache/pages/about.html
  55. 0 0
      cache/pages/about.html.dep
  56. 1037 0
      cache/pages/bootstrap-demo.html
  57. 0 0
      cache/pages/bootstrap-demo.html.dep
  58. 28 0
      cache/pages/charts.html
  59. 0 0
      cache/pages/charts.html.dep
  60. 703 0
      cache/pages/creating-a-theme.html
  61. 0 0
      cache/pages/creating-a-theme.html.dep
  62. 348 0
      cache/pages/dr-nikolas-vendetta.html
  63. 0 0
      cache/pages/dr-nikolas-vendetta.html.dep
  64. 667 0
      cache/pages/extending.html
  65. 6 0
      cache/pages/extending.html.dep
  66. 125 0
      cache/pages/internals.html
  67. 0 0
      cache/pages/internals.html.dep
  68. 15 0
      cache/pages/listings-demo.html
  69. 1 0
      cache/pages/listings-demo.html.dep
  70. 2773 0
      cache/pages/manual.html
  71. 18 0
      cache/pages/manual.html.dep
  72. 150 0
      cache/pages/path_handlers.html
  73. 0 0
      cache/pages/path_handlers.html.dep
  74. 1338 0
      cache/pages/quickref.html
  75. 0 0
      cache/pages/quickref.html.dep
  76. 355 0
      cache/pages/quickstart.html
  77. 0 0
      cache/pages/quickstart.html.dep
  78. 162 0
      cache/pages/social_buttons.html
  79. 0 0
      cache/pages/social_buttons.html.dep
  80. 449 0
      cache/pages/theming.html
  81. 0 0
      cache/pages/theming.html.dep
  82. 14 0
      cache/posts/1.html
  83. 0 0
      cache/posts/1.html.dep
  84. 1439 0
      conf.py
  85. BIN
      files/favicon.ico
  86. BIN
      files/images/nikola.png
  87. 63 0
      files/refresh.js
  88. 60 0
      files/refresh.js~
  89. 1 0
      files/test.txt
  90. 1 0
      galleries/demo/exclude.meta
  91. 4 0
      galleries/demo/index.txt
  92. 13 0
      galleries/demo/metadata.sample.yml
  93. BIN
      galleries/demo/tesla2_lg.jpg
  94. BIN
      galleries/demo/tesla4_lg.jpg
  95. BIN
      galleries/demo/tesla_conducts_lg.jpg
  96. BIN
      galleries/demo/tesla_lightning1_lg.jpg
  97. BIN
      galleries/demo/tesla_lightning2_lg.jpg
  98. BIN
      galleries/demo/tesla_tower1_lg.jpg
  99. BIN
      images/frontispiece.jpg
  100. 0 0
      images/illus_001.jpg

+ 17 - 0
README.txt View File

@@ -0,0 +1,17 @@
1
+This folder contains the source used to generate a static site using Nikola.
2
+
3
+Installation and documentation at https://getnikola.com/
4
+
5
+Configuration file for the site is ``conf.py``.
6
+
7
+To build the site::
8
+
9
+    nikola build
10
+
11
+To see it::
12
+
13
+    nikola serve -b
14
+
15
+To check all available commands::
16
+
17
+    nikola help

BIN
cache/.mako.tmp/__pycache__/archive.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/archive_navigation_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/base.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/base_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/book.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/comments_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/comments_helper_dummy.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/crumbs.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/feeds_translations_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/gallery.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/index.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/index_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/list.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/list_post.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/listing.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/math_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/page.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/post.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/post_header.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/post_helper.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/story.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/tag.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/tags.tmpl.cpython-39.pyc View File


BIN
cache/.mako.tmp/__pycache__/ui_helper.tmpl.cpython-39.pyc View File


+ 42 - 0
cache/.mako.tmp/archive.tmpl.py View File

@@ -0,0 +1,42 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.3475218
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/archive.tmpl'
11
+_template_uri = 'archive.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = []
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    pass
24
+def _mako_inherit(template, context):
25
+    _mako_generate_namespaces(context)
26
+    return runtime._inherit_from(context, 'list_post.tmpl', _template_uri)
27
+def render_body(context,**pageargs):
28
+    __M_caller = context.caller_stack._push_frame()
29
+    try:
30
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
31
+        __M_writer = context.writer()
32
+        __M_writer('\n')
33
+        return ''
34
+    finally:
35
+        context.caller_stack._pop_frame()
36
+
37
+
38
+"""
39
+__M_BEGIN_METADATA
40
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/archive.tmpl", "uri": "archive.tmpl", "source_encoding": "utf-8", "line_map": {"27": 0, "32": 1, "38": 32}}
41
+__M_END_METADATA
42
+"""

File diff suppressed because it is too large
+ 82 - 0
cache/.mako.tmp/archive_navigation_helper.tmpl.py


File diff suppressed because it is too large
+ 232 - 0
cache/.mako.tmp/base.tmpl.py


File diff suppressed because it is too large
+ 288 - 0
cache/.mako.tmp/base_helper.tmpl.py


File diff suppressed because it is too large
+ 120 - 0
cache/.mako.tmp/book.tmpl.py


+ 84 - 0
cache/.mako.tmp/comments_helper.tmpl.py View File

@@ -0,0 +1,84 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.1161768
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/comments_helper.tmpl'
11
+_template_uri = 'comments_helper.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['comment_form', 'comment_link', 'comment_link_script']
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    ns = runtime.TemplateNamespace('comments_helper_impl', context._clean_inheritance_tokens(), templateuri='comments_helper_' + (context['comment_system']) + '.tmpl', callables=None,  calling_uri=_template_uri)
24
+    context.namespaces[(__name__, 'comments_helper_impl')] = ns
25
+
26
+def render_body(context,**pageargs):
27
+    __M_caller = context.caller_stack._push_frame()
28
+    try:
29
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
30
+        __M_writer = context.writer()
31
+        __M_writer('\n')
32
+        __M_writer('\n\n')
33
+        __M_writer('\n\n')
34
+        __M_writer('\n\n')
35
+        __M_writer('\n')
36
+        return ''
37
+    finally:
38
+        context.caller_stack._pop_frame()
39
+
40
+
41
+def render_comment_form(context,url,title,identifier):
42
+    __M_caller = context.caller_stack._push_frame()
43
+    try:
44
+        comments_helper_impl = _mako_get_namespace(context, 'comments_helper_impl')
45
+        __M_writer = context.writer()
46
+        __M_writer('\n    ')
47
+        __M_writer(str(comments_helper_impl.comment_form(url, title, identifier)))
48
+        __M_writer('\n')
49
+        return ''
50
+    finally:
51
+        context.caller_stack._pop_frame()
52
+
53
+
54
+def render_comment_link(context,link,identifier):
55
+    __M_caller = context.caller_stack._push_frame()
56
+    try:
57
+        comments_helper_impl = _mako_get_namespace(context, 'comments_helper_impl')
58
+        __M_writer = context.writer()
59
+        __M_writer('\n    ')
60
+        __M_writer(str(comments_helper_impl.comment_link(link, identifier)))
61
+        __M_writer('\n')
62
+        return ''
63
+    finally:
64
+        context.caller_stack._pop_frame()
65
+
66
+
67
+def render_comment_link_script(context):
68
+    __M_caller = context.caller_stack._push_frame()
69
+    try:
70
+        comments_helper_impl = _mako_get_namespace(context, 'comments_helper_impl')
71
+        __M_writer = context.writer()
72
+        __M_writer('\n    ')
73
+        __M_writer(str(comments_helper_impl.comment_link_script()))
74
+        __M_writer('\n')
75
+        return ''
76
+    finally:
77
+        context.caller_stack._pop_frame()
78
+
79
+
80
+"""
81
+__M_BEGIN_METADATA
82
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/comments_helper.tmpl", "uri": "comments_helper.tmpl", "source_encoding": "utf-8", "line_map": {"23": 3, "26": 0, "31": 2, "32": 3, "33": 7, "34": 11, "35": 15, "41": 5, "46": 5, "47": 6, "48": 6, "54": 9, "59": 9, "60": 10, "61": 10, "67": 13, "72": 13, "73": 14, "74": 14, "80": 74}}
83
+__M_END_METADATA
84
+"""

+ 64 - 0
cache/.mako.tmp/comments_helper_dummy.tmpl.py View File

@@ -0,0 +1,64 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.144974
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/comments_helper_dummy.tmpl'
11
+_template_uri = 'comments_helper_dummy.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['comment_form', 'comment_link', 'comment_link_script']
14
+
15
+
16
+def render_body(context,**pageargs):
17
+    __M_caller = context.caller_stack._push_frame()
18
+    try:
19
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
20
+        __M_writer = context.writer()
21
+        __M_writer('\n')
22
+        __M_writer('\n\n')
23
+        __M_writer('\n\n')
24
+        __M_writer('\n')
25
+        return ''
26
+    finally:
27
+        context.caller_stack._pop_frame()
28
+
29
+
30
+def render_comment_form(context,url,title,identifier):
31
+    __M_caller = context.caller_stack._push_frame()
32
+    try:
33
+        __M_writer = context.writer()
34
+        __M_writer('\n')
35
+        return ''
36
+    finally:
37
+        context.caller_stack._pop_frame()
38
+
39
+
40
+def render_comment_link(context,link,identifier):
41
+    __M_caller = context.caller_stack._push_frame()
42
+    try:
43
+        __M_writer = context.writer()
44
+        __M_writer('\n')
45
+        return ''
46
+    finally:
47
+        context.caller_stack._pop_frame()
48
+
49
+
50
+def render_comment_link_script(context):
51
+    __M_caller = context.caller_stack._push_frame()
52
+    try:
53
+        __M_writer = context.writer()
54
+        __M_writer('\n')
55
+        return ''
56
+    finally:
57
+        context.caller_stack._pop_frame()
58
+
59
+
60
+"""
61
+__M_BEGIN_METADATA
62
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/comments_helper_dummy.tmpl", "uri": "comments_helper_dummy.tmpl", "source_encoding": "utf-8", "line_map": {"16": 0, "21": 2, "22": 4, "23": 7, "24": 10, "30": 3, "34": 3, "40": 6, "44": 6, "50": 9, "54": 9, "60": 54}}
63
+__M_END_METADATA
64
+"""

+ 59 - 0
cache/.mako.tmp/crumbs.tmpl.py View File

@@ -0,0 +1,59 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.246071
9
+_enable_loop = True
10
+_template_filename = 'themes/bootstrap3/templates/crumbs.tmpl'
11
+_template_uri = 'crumbs.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['bar']
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    ns = runtime.TemplateNamespace('ui', context._clean_inheritance_tokens(), templateuri='ui_helper.tmpl', callables=None,  calling_uri=_template_uri)
24
+    context.namespaces[(__name__, 'ui')] = ns
25
+
26
+def render_body(context,**pageargs):
27
+    __M_caller = context.caller_stack._push_frame()
28
+    try:
29
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
30
+        _import_ns = {}
31
+        _mako_get_namespace(context, 'ui')._populate(_import_ns, ['*'])
32
+        __M_writer = context.writer()
33
+        __M_writer('\n')
34
+        __M_writer('\n')
35
+        return ''
36
+    finally:
37
+        context.caller_stack._pop_frame()
38
+
39
+
40
+def render_bar(context,crumbs):
41
+    __M_caller = context.caller_stack._push_frame()
42
+    try:
43
+        _import_ns = {}
44
+        _mako_get_namespace(context, 'ui')._populate(_import_ns, ['*'])
45
+        ui = _mako_get_namespace(context, 'ui')
46
+        __M_writer = context.writer()
47
+        __M_writer('\n')
48
+        __M_writer(str(ui.breadcrumbs(crumbs)))
49
+        __M_writer('\n')
50
+        return ''
51
+    finally:
52
+        context.caller_stack._pop_frame()
53
+
54
+
55
+"""
56
+__M_BEGIN_METADATA
57
+{"filename": "themes/bootstrap3/templates/crumbs.tmpl", "uri": "crumbs.tmpl", "source_encoding": "utf-8", "line_map": {"23": 2, "26": 0, "33": 2, "34": 5, "40": 3, "47": 3, "48": 4, "49": 4, "55": 49}}
58
+__M_END_METADATA
59
+"""

File diff suppressed because it is too large
+ 357 - 0
cache/.mako.tmp/feeds_translations_helper.tmpl.py


File diff suppressed because it is too large
+ 220 - 0
cache/.mako.tmp/gallery.tmpl.py


File diff suppressed because it is too large
+ 181 - 0
cache/.mako.tmp/index.tmpl.py


+ 84 - 0
cache/.mako.tmp/index_helper.tmpl.py View File

@@ -0,0 +1,84 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.405856
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/index_helper.tmpl'
11
+_template_uri = 'index_helper.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['html_pager', 'mathjax_script']
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    ns = runtime.TemplateNamespace('math', context._clean_inheritance_tokens(), templateuri='math_helper.tmpl', callables=None,  calling_uri=_template_uri)
24
+    context.namespaces[(__name__, 'math')] = ns
25
+
26
+def render_body(context,**pageargs):
27
+    __M_caller = context.caller_stack._push_frame()
28
+    try:
29
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
30
+        __M_writer = context.writer()
31
+        __M_writer('\n')
32
+        __M_writer('\n\n')
33
+        __M_writer('\n')
34
+        return ''
35
+    finally:
36
+        context.caller_stack._pop_frame()
37
+
38
+
39
+def render_html_pager(context):
40
+    __M_caller = context.caller_stack._push_frame()
41
+    try:
42
+        messages = context.get('messages', UNDEFINED)
43
+        prevlink = context.get('prevlink', UNDEFINED)
44
+        nextlink = context.get('nextlink', UNDEFINED)
45
+        __M_writer = context.writer()
46
+        __M_writer('\n')
47
+        if prevlink or nextlink:
48
+            __M_writer('        <nav class="postindexpager">\n        <ul class="pager">\n')
49
+            if prevlink:
50
+                __M_writer('            <li class="previous">\n                <a href="')
51
+                __M_writer(str(prevlink))
52
+                __M_writer('" rel="prev">')
53
+                __M_writer(str(messages("Newer posts")))
54
+                __M_writer('</a>\n            </li>\n')
55
+            if nextlink:
56
+                __M_writer('            <li class="next">\n                <a href="')
57
+                __M_writer(str(nextlink))
58
+                __M_writer('" rel="next">')
59
+                __M_writer(str(messages("Older posts")))
60
+                __M_writer('</a>\n            </li>\n')
61
+            __M_writer('        </ul>\n        </nav>\n')
62
+        return ''
63
+    finally:
64
+        context.caller_stack._pop_frame()
65
+
66
+
67
+def render_mathjax_script(context,posts):
68
+    __M_caller = context.caller_stack._push_frame()
69
+    try:
70
+        math = _mako_get_namespace(context, 'math')
71
+        __M_writer = context.writer()
72
+        __M_writer('\n    ')
73
+        __M_writer(str(math.math_scripts_ifposts(posts)))
74
+        __M_writer('\n')
75
+        return ''
76
+    finally:
77
+        context.caller_stack._pop_frame()
78
+
79
+
80
+"""
81
+__M_BEGIN_METADATA
82
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/index_helper.tmpl", "uri": "index_helper.tmpl", "source_encoding": "utf-8", "line_map": {"23": 2, "26": 0, "31": 2, "32": 20, "33": 25, "39": 3, "46": 3, "47": 4, "48": 5, "49": 7, "50": 8, "51": 9, "52": 9, "53": 9, "54": 9, "55": 12, "56": 13, "57": 14, "58": 14, "59": 14, "60": 14, "61": 17, "67": 23, "72": 23, "73": 24, "74": 24, "80": 74}}
83
+__M_END_METADATA
84
+"""

File diff suppressed because it is too large
+ 138 - 0
cache/.mako.tmp/list.tmpl.py


File diff suppressed because it is too large
+ 140 - 0
cache/.mako.tmp/list_post.tmpl.py


File diff suppressed because it is too large
+ 143 - 0
cache/.mako.tmp/listing.tmpl.py


File diff suppressed because it is too large
+ 144 - 0
cache/.mako.tmp/math_helper.tmpl.py


+ 42 - 0
cache/.mako.tmp/page.tmpl.py View File

@@ -0,0 +1,42 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.0620935
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/page.tmpl'
11
+_template_uri = 'page.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = []
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    pass
24
+def _mako_inherit(template, context):
25
+    _mako_generate_namespaces(context)
26
+    return runtime._inherit_from(context, 'story.tmpl', _template_uri)
27
+def render_body(context,**pageargs):
28
+    __M_caller = context.caller_stack._push_frame()
29
+    try:
30
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
31
+        __M_writer = context.writer()
32
+        __M_writer('\n')
33
+        return ''
34
+    finally:
35
+        context.caller_stack._pop_frame()
36
+
37
+
38
+"""
39
+__M_BEGIN_METADATA
40
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/page.tmpl", "uri": "page.tmpl", "source_encoding": "utf-8", "line_map": {"27": 0, "32": 1, "38": 32}}
41
+__M_END_METADATA
42
+"""

File diff suppressed because it is too large
+ 200 - 0
cache/.mako.tmp/post.tmpl.py


File diff suppressed because it is too large
+ 167 - 0
cache/.mako.tmp/post_header.tmpl.py


File diff suppressed because it is too large
+ 208 - 0
cache/.mako.tmp/post_helper.tmpl.py


+ 107 - 0
cache/.mako.tmp/story.tmpl.py View File

@@ -0,0 +1,107 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.0727968
9
+_enable_loop = True
10
+_template_filename = '/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/story.tmpl'
11
+_template_uri = 'story.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['content']
14
+
15
+
16
+def _mako_get_namespace(context, name):
17
+    try:
18
+        return context.namespaces[(__name__, name)]
19
+    except KeyError:
20
+        _mako_generate_namespaces(context)
21
+        return context.namespaces[(__name__, name)]
22
+def _mako_generate_namespaces(context):
23
+    ns = runtime.TemplateNamespace('helper', context._clean_inheritance_tokens(), templateuri='post_helper.tmpl', callables=None,  calling_uri=_template_uri)
24
+    context.namespaces[(__name__, 'helper')] = ns
25
+
26
+    ns = runtime.TemplateNamespace('pheader', context._clean_inheritance_tokens(), templateuri='post_header.tmpl', callables=None,  calling_uri=_template_uri)
27
+    context.namespaces[(__name__, 'pheader')] = ns
28
+
29
+    ns = runtime.TemplateNamespace('comments', context._clean_inheritance_tokens(), templateuri='comments_helper.tmpl', callables=None,  calling_uri=_template_uri)
30
+    context.namespaces[(__name__, 'comments')] = ns
31
+
32
+    ns = runtime.TemplateNamespace('math', context._clean_inheritance_tokens(), templateuri='math_helper.tmpl', callables=None,  calling_uri=_template_uri)
33
+    context.namespaces[(__name__, 'math')] = ns
34
+
35
+def _mako_inherit(template, context):
36
+    _mako_generate_namespaces(context)
37
+    return runtime._inherit_from(context, 'post.tmpl', _template_uri)
38
+def render_body(context,**pageargs):
39
+    __M_caller = context.caller_stack._push_frame()
40
+    try:
41
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
42
+        math = _mako_get_namespace(context, 'math')
43
+        enable_comments = context.get('enable_comments', UNDEFINED)
44
+        messages = context.get('messages', UNDEFINED)
45
+        comments = _mako_get_namespace(context, 'comments')
46
+        post = context.get('post', UNDEFINED)
47
+        site_has_comments = context.get('site_has_comments', UNDEFINED)
48
+        pheader = _mako_get_namespace(context, 'pheader')
49
+        def content():
50
+            return render_content(context._locals(__M_locals))
51
+        __M_writer = context.writer()
52
+        __M_writer('\n')
53
+        __M_writer('\n')
54
+        __M_writer('\n')
55
+        __M_writer('\n')
56
+        __M_writer('\n\n')
57
+        if 'parent' not in context._data or not hasattr(context._data['parent'], 'content'):
58
+            context['self'].content(**pageargs)
59
+        
60
+
61
+        __M_writer('\n')
62
+        return ''
63
+    finally:
64
+        context.caller_stack._pop_frame()
65
+
66
+
67
+def render_content(context,**pageargs):
68
+    __M_caller = context.caller_stack._push_frame()
69
+    try:
70
+        math = _mako_get_namespace(context, 'math')
71
+        enable_comments = context.get('enable_comments', UNDEFINED)
72
+        messages = context.get('messages', UNDEFINED)
73
+        comments = _mako_get_namespace(context, 'comments')
74
+        post = context.get('post', UNDEFINED)
75
+        site_has_comments = context.get('site_has_comments', UNDEFINED)
76
+        pheader = _mako_get_namespace(context, 'pheader')
77
+        def content():
78
+            return render_content(context)
79
+        __M_writer = context.writer()
80
+        __M_writer('\n<article class="post-')
81
+        __M_writer(str(post.meta('type')))
82
+        __M_writer(' storypage" itemscope="itemscope" itemtype="http://schema.org/Article">\n    <header>\n        ')
83
+        __M_writer(str(pheader.html_title()))
84
+        __M_writer('\n        ')
85
+        __M_writer(str(pheader.html_translations(post)))
86
+        __M_writer('\n    </header>\n    <div class="e-content entry-content" itemprop="articleBody text">\n    ')
87
+        __M_writer(str(post.text()))
88
+        __M_writer('\n    </div>\n')
89
+        if site_has_comments and enable_comments and not post.meta('nocomments'):
90
+            __M_writer('        <section class="comments">\n        <h2>')
91
+            __M_writer(str(messages("Comments")))
92
+            __M_writer('</h2>\n        ')
93
+            __M_writer(str(comments.comment_form(post.permalink(absolute=True), post.title(), post.base_path)))
94
+            __M_writer('\n        </section>\n')
95
+        __M_writer('    ')
96
+        __M_writer(str(math.math_scripts_ifpost(post)))
97
+        __M_writer('\n</article>\n')
98
+        return ''
99
+    finally:
100
+        context.caller_stack._pop_frame()
101
+
102
+
103
+"""
104
+__M_BEGIN_METADATA
105
+{"filename": "/home/thomas/.local/lib/python3.9/site-packages/nikola/data/themes/base/templates/story.tmpl", "uri": "story.tmpl", "source_encoding": "utf-8", "line_map": {"23": 2, "26": 3, "29": 4, "32": 5, "38": 0, "52": 2, "53": 3, "54": 4, "55": 5, "56": 6, "61": 25, "67": 8, "80": 8, "81": 9, "82": 9, "83": 11, "84": 11, "85": 12, "86": 12, "87": 15, "88": 15, "89": 17, "90": 18, "91": 19, "92": 19, "93": 20, "94": 20, "95": 23, "96": 23, "97": 23, "103": 97}}
106
+__M_END_METADATA
107
+"""

File diff suppressed because it is too large
+ 150 - 0
cache/.mako.tmp/tag.tmpl.py


File diff suppressed because it is too large
+ 150 - 0
cache/.mako.tmp/tags.tmpl.py


+ 57 - 0
cache/.mako.tmp/ui_helper.tmpl.py View File

@@ -0,0 +1,57 @@
1
+# -*- coding:utf-8 -*-
2
+from mako import runtime, filters, cache
3
+UNDEFINED = runtime.UNDEFINED
4
+STOP_RENDERING = runtime.STOP_RENDERING
5
+__M_dict_builtin = dict
6
+__M_locals_builtin = locals
7
+_magic_number = 10
8
+_modified_time = 1676236796.2577004
9
+_enable_loop = True
10
+_template_filename = 'themes/bootstrap3/templates/ui_helper.tmpl'
11
+_template_uri = 'ui_helper.tmpl'
12
+_source_encoding = 'utf-8'
13
+_exports = ['breadcrumbs']
14
+
15
+
16
+def render_body(context,**pageargs):
17
+    __M_caller = context.caller_stack._push_frame()
18
+    try:
19
+        __M_locals = __M_dict_builtin(pageargs=pageargs)
20
+        __M_writer = context.writer()
21
+        __M_writer('\n')
22
+        return ''
23
+    finally:
24
+        context.caller_stack._pop_frame()
25
+
26
+
27
+def render_breadcrumbs(context,crumbs):
28
+    __M_caller = context.caller_stack._push_frame()
29
+    try:
30
+        index_file = context.get('index_file', UNDEFINED)
31
+        __M_writer = context.writer()
32
+        __M_writer('\n')
33
+        if crumbs:
34
+            __M_writer('<nav class="breadcrumbs">\n<ul class="breadcrumb">\n')
35
+            for link, text in crumbs:
36
+                if text != index_file:
37
+                    if link == '#':
38
+                        __M_writer('                <li>')
39
+                        __M_writer(str(text.rsplit('.html', 1)[0]))
40
+                        __M_writer('</li>\n')
41
+                    else:
42
+                        __M_writer('                <li><a href="')
43
+                        __M_writer(str(link))
44
+                        __M_writer('">')
45
+                        __M_writer(str(text))
46
+                        __M_writer('</a></li>\n')
47
+            __M_writer('</ul>\n</nav>\n')
48
+        return ''
49
+    finally:
50
+        context.caller_stack._pop_frame()
51
+
52
+
53
+"""
54
+__M_BEGIN_METADATA
55
+{"filename": "themes/bootstrap3/templates/ui_helper.tmpl", "uri": "ui_helper.tmpl", "source_encoding": "utf-8", "line_map": {"16": 0, "21": 18, "27": 2, "32": 2, "33": 3, "34": 4, "35": 6, "36": 7, "37": 8, "38": 9, "39": 9, "40": 9, "41": 10, "42": 11, "43": 11, "44": 11, "45": 11, "46": 11, "47": 15, "53": 47}}
56
+__M_END_METADATA
57
+"""

+ 2 - 0
cache/galleries/demo/index.html View File

@@ -0,0 +1,2 @@
1
+<p>Some public domain pictures of Nikola Tesla
2
+(copied from <a class="reference external" href="https://kerryr.net/pioneers/gallery/tesla.htm">here</a>)</p>

+ 0 - 0
cache/galleries/demo/index.html.dep View File


+ 5 - 0
cache/pages/1.html View File

@@ -0,0 +1,5 @@
1
+<p>Hope you enjoy this software!</p>
2
+<ul class="simple">
3
+<li><p>Home page at <a class="reference external" href="https://getnikola.com/">https://getnikola.com/</a></p></li>
4
+<li><p>Author's blog (and reason why Nikola exists): <a class="reference external" href="https://ralsina.me/">https://ralsina.me/</a></p></li>
5
+</ul>

+ 0 - 0
cache/pages/1.html.dep View File


File diff suppressed because it is too large
+ 52 - 0
cache/pages/about.html


+ 0 - 0
cache/pages/about.html.dep View File


File diff suppressed because it is too large
+ 1037 - 0
cache/pages/bootstrap-demo.html


+ 0 - 0
cache/pages/bootstrap-demo.html.dep View File


File diff suppressed because it is too large
+ 28 - 0
cache/pages/charts.html


+ 0 - 0
cache/pages/charts.html.dep View File


File diff suppressed because it is too large
+ 703 - 0
cache/pages/creating-a-theme.html


+ 0 - 0
cache/pages/creating-a-theme.html.dep View File


+ 348 - 0
cache/pages/dr-nikolas-vendetta.html View File

@@ -0,0 +1,348 @@
1
+<!DOCTYPE html>
2
+<div><p class="subtitle">By <a class="reference external" href="https://www.gutenberg.org/ebooks/author/3587"><span class="caps">GUY</span>&nbsp;<span class="caps">BOOTHBY</span></a></p>
3
+<p>Author of &#8220;Dr. Nikola,&#8221; &#8220;The Beautiful White Devil,&#8221; etc.,&nbsp;etc.</p>
4
+<figure>
5
+<img alt="/images/frontispiece.jpg" class="bookfig" src="/images/frontispiece.jpg">
6
+</figure>
7
+<aside class="topic">
8
+<p class="topic-title">The Project Gutenberg EBook of A Bid for Fortune, by Guy&nbsp;Boothby</p>
9
+<p>This eBook is for the use of anyone anywhere at no cost and with
10
+almost no restrictions whatsoever.  You may copy it, give it away or
11
+re-use it under the terms of the Project Gutenberg License included
12
+with this eBook or online at&nbsp;www.gutenberg.org</p>
13
+<p>Title: A Bid for Fortune
14
+or Dr. Nikola&#8217;s&nbsp;Vendetta</p>
15
+<p>Author: <a class="reference external" href="https://www.gutenberg.org/ebooks/author/3587">Guy&nbsp;Boothby</a></p>
16
+<p>Release Date: May 29, 2007 [EBook&nbsp;#21640]</p>
17
+<p>Language:&nbsp;English</p>
18
+<p>Produced by Marilynda Fraser-Cunliffe, Mary Meehan and the
19
+Online Distributed Proofreading Team at <a class="reference external" href="https://www.pgdp.net">https://www.pgdp.net</a></p>
20
+<p>Originally published&nbsp;by:</p>
21
+<p><span class="caps">WARD</span>, <span class="caps">LOCK</span> <span class="amp">&amp;</span> <span class="caps">CO</span>., <span class="caps">LIMITED</span>
22
+<span class="caps">LONDON</span>, <span class="caps">MELBOURNE</span> <span class="caps">AND</span> <span class="caps">TORONTO</span>&nbsp;1918</p>
23
+</aside>
24
+<figure>
25
+<img alt="/images/illus_001.jpg" class="bookfig" src="/images/illus_001.jpg">
26
+</figure>
27
+<section id="part-i">
28
+<h1><span class="caps">PART</span>&nbsp;I</h1>
29
+<section id="prologue">
30
+<h2><span class="caps">PROLOGUE</span></h2>
31
+<p><span class="smallcaps">The</span> manager of the new Imperial Restaurant on the Thames Embankment went
32
+into his luxurious private office and shut the door. Having done so, he
33
+first scratched his chin reflectively, and then took a letter from the
34
+drawer in which it had reposed for more than two months and perused it
35
+carefully. Though he was not aware of it, this was the thirtieth time he
36
+had read it since breakfast that morning. And yet he was not a whit
37
+nearer understanding it than he had been at the beginning. He turned it
38
+over and scrutinized the back, where not a sign of writing was to be
39
+seen; he held it up to the window, as if he might hope to discover
40
+something from the water-mark; but there was nothing in either of these
41
+places of a nature calculated to set his troubled mind at rest. Then he
42
+took a magnificent repeater watch from his waistcoat pocket and glanced
43
+at the dial; the hands stood at half-past seven. He immediately threw
44
+the letter on the table, and as he did so his anxiety found relief in&nbsp;words.</p>
45
+<p><span class="dquo">&#8220;</span>It&#8217;s really the most extraordinary affair I ever had to do with,&#8221; he
46
+remarked. &#8220;And as I&#8217;ve been in the business just three-and-thirty years
47
+at eleven a.m. next Monday morning, I ought to know something about it.
48
+I only hope I&#8217;ve done right, that&#8217;s&nbsp;all.&#8221;</p>
49
+<p>As he spoke, the chief bookkeeper, who had the treble advantage of being
50
+tall, pretty, and just eight-and-twenty years of age, entered the room.
51
+She noticed the open letter and the look upon her chief&#8217;s face, and her
52
+curiosity was proportionately&nbsp;excited.</p>
53
+<p><span class="dquo">&#8220;</span>You seem worried, Mr. McPherson,&#8221; she said tenderly, as she put down
54
+the papers she had brought in for his&nbsp;signature.</p>
55
+<p><span class="dquo">&#8220;</span>You have just hit it, Miss O&#8217;Sullivan,&#8221; he answered, pushing them
56
+farther on to the table. &#8220;I am worried about many things, but
57
+particularly about this&nbsp;letter.&#8221;</p>
58
+<p>He handed the epistle to her, and she, being desirous of impressing him
59
+with her business capabilities, read it with ostentatious care. But it
60
+was noticeable that when she reached the signature she too turned back
61
+to the beginning, and then deliberately read it over again. The manager
62
+rose, crossed to the mantelpiece, and rang for the head waiter. Having
63
+relieved his feelings in this way, he seated himself again at his
64
+writing-table, put on his glasses, and stared at his companion, while
65
+waiting for her to&nbsp;speak.</p>
66
+<p><span class="dquo">&#8220;</span>It&#8217;s very funny,&#8221; she said. &#8220;Very funny&nbsp;indeed!&#8221;</p>
67
+<p><span class="dquo">&#8220;</span>It&#8217;s the most extraordinary communication I have ever received,&#8221; he
68
+replied with conviction. &#8220;You see it is written from Cuyaba, Brazil. The
69
+date is three months ago to a day. Now I have taken the trouble to find
70
+out where and what Cuyaba&nbsp;is.&#8221;</p>
71
+<p>He made this confession with an air of conscious pride, and having done
72
+so, laid himself back in his chair, stuck his thumbs into the armholes
73
+of his waistcoat, and looked at his fair subordinate for approval. Nor
74
+was he destined to be disappointed. He was a bachelor in possession of a
75
+snug income, and she, besides being pretty, was a lady with a keen eye
76
+to the main&nbsp;chance.</p>
77
+<p><span class="dquo">&#8220;</span>And where <em>is</em> Cuyaba?&#8221; she asked&nbsp;humbly.</p>
78
+<p><span class="dquo">&#8220;</span>Cuyaba,&#8221; he replied, rolling his tongue with considerable relish round
79
+his unconscious mispronunciation of the name, &#8220;is a town almost on the
80
+western or Bolivian border of Brazil. It is of moderate size, is
81
+situated on the banks of the river Cuyaba, and is considerably connected
82
+with the famous Brazilian Diamond&nbsp;Fields.&#8221;</p>
83
+<p><span class="dquo">&#8220;</span>And does the writer of this letter live&nbsp;there?&#8221;</p>
84
+<p><span class="dquo">&#8220;</span>I cannot say. He writes from there&#8212;that is enough for&nbsp;us.&#8221;</p>
85
+<p><span class="dquo">&#8220;</span>And he orders dinner for four&#8212;here, in a private room overlooking the
86
+river, three months ahead&#8212;punctually at eight o&#8217;clock, gives you a list
87
+of the things he wants, and even arranges the decoration of the table.
88
+Says he has never seen either of his three friends before; that one of
89
+them hails from (here she consulted the letter again) Hang-chow, another
90
+from Bloemfontein, while the third resides, at present, in England. Each
91
+one is to present an ordinary visiting card with a red dot on it to the
92
+porter in the hall, and to be shown to the room at once. I don&#8217;t
93
+understand it at&nbsp;all.&#8221;</p>
94
+<p>The manager paused for a moment, and then said deliberately,&#8212;&#8221;Hang-chow
95
+is in China, Bloemfontein is in South&nbsp;Africa.&#8221;</p>
96
+<p><span class="dquo">&#8220;</span>What a wonderful man you are, to be sure, Mr. McPherson! I never can
97
+<em>think</em> how you manage to carry so much in your&nbsp;head.&#8221;</p>
98
+<p>There spoke the true woman. And it was a move in the right direction,
99
+for the manager was susceptible to her gentle influence, as she had
100
+occasion to&nbsp;know.</p>
101
+<p>At this juncture the head waiter appeared upon the scene, and took up a
102
+position just inside the doorway, as if he were afraid of injuring the
103
+carpet by coming&nbsp;farther.</p>
104
+<p><span class="dquo">&#8220;</span>Is No. 22 ready,&nbsp;Williams?&#8221;</p>
105
+<p><span class="dquo">&#8220;</span>Quite ready, sir. The wine is on the ice, and cook tells me he&#8217;ll be
106
+ready to dish punctual to the&nbsp;moment.&#8221;</p>
107
+<p><span class="dquo">&#8220;</span>The letter says, &#8216;no electric light; candles with red shades.&#8217; Have you
108
+put on those shades I got this&nbsp;morning?&#8221;</p>
109
+<p><span class="dquo">&#8220;</span>Just seen it done this very minute,&nbsp;sir.&#8221;</p>
110
+<p><span class="dquo">&#8220;</span>And let me see, there was one other thing.&#8221; He took the letter from the
111
+chief bookkeeper&#8217;s hand and glanced at it. &#8220;Ah, yes, a porcelain saucer,
112
+and a small jug of new milk upon the mantelpiece. An extraordinary
113
+request, but has it been attended&nbsp;to?&#8221;</p>
114
+<p><span class="dquo">&#8220;</span>I put it there myself,&nbsp;sir.&#8221;</p>
115
+<p><span class="dquo">&#8220;</span>Who&nbsp;wait?&#8221;</p>
116
+<p><span class="dquo">&#8220;</span>Jones, Edmunds, Brooks, and&nbsp;Tomkins.&#8221;</p>
117
+<p><span class="dquo">&#8220;</span>Very good. Then I think that will do. Stay! You had better tell the
118
+hall porter to look out for three gentlemen presenting plain visiting
119
+cards with a little red spot on them. Let Brooks wait in the hall, and
120
+when they arrive tell him to show them straight up to the&nbsp;room.&#8221;</p>
121
+<p><span class="dquo">&#8220;</span>It shall be done,&nbsp;sir.&#8221;</p>
122
+<p>The head waiter left the room, and the manager stretched himself in his
123
+chair, yawned by way of showing his importance, and then said&nbsp;solemnly,&#8212;</p>
124
+<p><span class="dquo">&#8220;</span>I don&#8217;t believe they&#8217;ll any of them turn up; but if they do, this Dr.
125
+Nikola, whoever he may be, won&#8217;t be able to find fault with my&nbsp;arrangements.&#8221;</p>
126
+<p>Then, leaving the dusty high road of Business, he and his companion
127
+wandered in the shady bridle-paths of Love&#8212;to the end that when the
128
+chief bookkeeper returned to her own department she had forgotten the
129
+strange dinner party about to take place upstairs, and was busily
130
+engaged upon a calculation as to how she would look in white satin and
131
+orange blossoms, and, that settled, fell to wondering whether it was
132
+true, as Miss Joyce, a subordinate, had been heard to declare, that the
133
+manager had once shown himself partial to a certain widow with reputed
134
+savings and a share in an extensive egg and dairy&nbsp;business.</p>
135
+<p>At ten minutes to eight precisely a hansom drew up at the steps of the
136
+hotel. As soon as it stopped, an undersized gentleman, with a clean
137
+shaven countenance, a canonical corporation, and bow legs, dressed in a
138
+decidedly clerical garb, alighted. He paid and discharged his cabman,
139
+and then took from his ticket pocket an ordinary white visiting card,
140
+which he presented to the gold-laced individual who had opened the
141
+apron. The latter, having noted the red spot, called a waiter, and the
142
+reverend gentleman was immediately escorted&nbsp;upstairs.</p>
143
+<p>Hardly had the attendant time to return to his station in the hall,
144
+before a second cab made its appearance, closely followed by a third.
145
+Out of the second jumped a tall, active, well-built man of about thirty
146
+years of age. He was dressed in evening dress of the latest fashion, and
147
+to conceal it from the vulgar gaze, wore a large Inverness cape of heavy
148
+texture. He also in his turn handed a white card to the porter, and,
149
+having done so, proceeded into the hall, followed by the occupant of the
150
+last cab, who had closely copied his example. This individual was also
151
+in evening dress, but it was of a different stamp. It was old-fashioned
152
+and had seen much use. The wearer, too, was taller than the ordinary run
153
+of men, while it was noticeable that his hair was snow-white, and that
154
+his face was deeply pitted with smallpox. After disposing of their hats
155
+and coats in an ante-room, they reached room No. 22, where they found
156
+the gentleman in clerical costume pacing impatiently up and&nbsp;down.</p>
157
+<p>Left alone, the tallest of the trio, who for want of a better title we
158
+may call the Best Dressed Man, took out his watch, and having glanced at
159
+it, looked at his companions. &#8220;Gentlemen,&#8221; he said, with a slight
160
+American accent, &#8220;it is three minutes to eight o&#8217;clock. My name is&nbsp;Eastover!&#8221;</p>
161
+<p><span class="dquo">&#8220;</span>I&#8217;m glad to hear it, for I&#8217;m most uncommonly hungry,&#8221; said the next
162
+tallest, whom I have already described as being so marked by disease.
163
+&#8220;My name is&nbsp;Prendergast!&#8221;</p>
164
+<p><span class="dquo">&#8220;</span>We only wait for our friend and host,&#8221; remarked the clerical gentleman,
165
+as if he felt he ought to take a share in the conversation, and then, as
166
+an afterthought, he continued, &#8220;My name is&nbsp;Baxter!&#8221;</p>
167
+<p>They shook hands all round with marked cordiality, seated themselves
168
+again, and took it in turns to examine the&nbsp;clock.</p>
169
+<p><span class="dquo">&#8220;</span>Have you ever had the pleasure of meeting our host before?&#8221; asked Mr.
170
+Baxter of Mr.&nbsp;Prendergast.</p>
171
+<p><span class="dquo">&#8220;</span>Never,&#8221; replied that gentleman, with a shake of his head. &#8220;Perhaps Mr.
172
+Eastover has been more&nbsp;fortunate?&#8221;</p>
173
+<p><span class="dquo">&#8220;</span>Not I,&#8221; was the brief rejoinder. &#8220;I&#8217;ve had to do with him off and on
174
+for longer than I care to reckon, but I&#8217;ve never set eyes on him up to&nbsp;date.&#8221;</p>
175
+<p><span class="dquo">&#8220;</span>And where may he have been the first time you heard from&nbsp;him?&#8221;</p>
176
+<p><span class="dquo">&#8220;</span>In Nashville, Tennessee,&#8221; said Eastover. &#8220;After that, Tahupapa, New
177
+Zealand; after that, Papeete, in the Society Islands; then Pekin, China.
178
+And&nbsp;you?&#8221;</p>
179
+<p><span class="dquo">&#8220;</span>First time, Brussels; second, Monte Video; third, Mandalay, and then
180
+the Gold Coast, Africa. It&#8217;s your turn, Mr.&nbsp;Baxter.&#8221;</p>
181
+<p>The clergyman glanced at the timepiece. It was exactly eight o&#8217;clock.
182
+&#8220;First time, Cabul, Afghanistan; second, Nijni Novgorod, Russia; third,
183
+Wilcannia, Darling River, Australia; fourth, Valparaiso, Chili; fifth,
184
+Nagasaki,&nbsp;Japan.&#8221;</p>
185
+<p><span class="dquo">&#8220;</span>He is evidently a great traveller and a most mysterious&nbsp;person.&#8221;</p>
186
+<p><span class="dquo">&#8220;</span>He is more than that,&#8221; said Eastover with conviction; &#8220;he is late for&nbsp;dinner!&#8221;</p>
187
+<p>Prendergast looked at his&nbsp;watch.</p>
188
+<p><span class="dquo">&#8220;</span>That clock is two minutes fast. Hark, there goes Big Ben! Eight&nbsp;exactly.&#8221;</p>
189
+<p>As he spoke the door was thrown open and a voice announced &#8220;Dr.&nbsp;Nikola.&#8221;</p>
190
+<p>The three men sprang to their feet simultaneously, with exclamations of
191
+astonishment, as the man they had been discussing made his&nbsp;appearance.</p>
192
+<p>It would take more time than I can spare the subject to give you an
193
+adequate and inclusive description of the person who entered the room at
194
+that moment. In stature he was slightly above the ordinary, his
195
+shoulders were broad, his limbs perfectly shaped and plainly muscular,
196
+but very slim. His head, which was magnificently set upon his shoulders,
197
+was adorned with a profusion of glossy black hair; his face was
198
+destitute of beard or moustache, and was of oval shape and handsome
199
+moulding; while his skin was of a dark olive hue, a colour which
200
+harmonized well with his piercing black eyes and pearly teeth. His hands
201
+and feet were small, and the greatest dandy must have admitted that he
202
+was irreproachably dressed, with a neatness that bordered on the
203
+puritanical. In age he might have been anything from eight-and-twenty to
204
+forty; in reality he was thirty-three. He advanced into the room and
205
+walked with out-stretched hand directly across to where Eastover was
206
+standing by the&nbsp;fireplace.</p>
207
+<p><span class="dquo">&#8220;</span>Mr. Eastover, I feel certain,&#8221; he said, fixing his glittering eyes upon
208
+the man he addressed, and allowing a curious smile to play upon his&nbsp;face.</p>
209
+<p><span class="dquo">&#8220;</span>That is my name, Dr. Nikola,&#8221; the other answered with evident surprise.
210
+&#8220;But how on earth can you distinguish me from your other&nbsp;guests?&#8221;</p>
211
+<p><span class="dquo">&#8220;</span>Ah! it would surprise you if you knew. And Mr. Prendergast, and Mr.
212
+Baxter. This is delightful; I hope I am not late. We had a collision in
213
+the Channel this morning, and I was almost afraid I might not be up to
214
+time. Dinner seems ready; shall we sit down to it?&#8221; They seated
215
+themselves, and the meal commenced. The Imperial Restaurant has earned
216
+an enviable reputation for doing things well, and the dinner that night
217
+did not in any way detract from its lustre. But, delightful as it all
218
+was, it was noticeable that the three guests paid more attention to
219
+their host than to his excellent <em>menu</em>. As they had said before his
220
+arrival, they had all had dealings with him for several years, but what
221
+those dealings were they were careful not to describe. It was more than
222
+possible that they hardly liked to remember them&nbsp;themselves.</p>
223
+<p>When coffee had been served and the servants had withdrawn, Dr. Nikola
224
+rose from the table, and went across to the massive sideboard. On it
225
+stood a basket of very curious shape and workmanship. This he opened,
226
+and as he did so, to the astonishment of his guests, an enormous cat, as
227
+black as his master&#8217;s coat, leaped out on to the floor. The reason for
228
+the saucer and jug of milk became&nbsp;evident.</p>
229
+<p>Seating himself at the table again, the host followed the example of his
230
+guests and lit a cigar, blowing a cloud of smoke luxuriously through his
231
+delicately chiselled nostrils. His eyes wandered round the cornice of
232
+the room, took in the pictures and decorations, and then came down to
233
+meet the faces of his companions. As they did so, the black cat, having
234
+finished its meal, sprang on to his shoulder to crouch there, watching
235
+the three men through the curling smoke drift with its green blinking,
236
+fiendish eyes. Dr. Nikola smiled as he noticed the effect the animal had
237
+upon his&nbsp;guests.</p>
238
+<p><span class="dquo">&#8220;</span>Now shall we get to business?&#8221; he said&nbsp;briskly.</p>
239
+<p>The others almost simultaneously knocked the ashes off their cigars and
240
+brought themselves to attention. Dr. Nikola&#8217;s dainty, languid manner
241
+seemed to drop from him like a cloak, his eyes brightened, and his
242
+voice, when he spoke, was clean cut as chiselled&nbsp;silver.</p>
243
+<p><span class="dquo">&#8220;</span>You are doubtless anxious to be informed why I summoned you from all
244
+parts of the globe to meet me here to-night? And it is very natural you
245
+should be. But then, from what you know of me, you should not be
246
+surprised at anything I&nbsp;do.&#8221;</p>
247
+<p>His voice dropped back into its old tone of gentle languor. He drew in a
248
+great breath of smoke and then sent it slowly out from his lips again.
249
+His eyes were half closed, and he drummed with one finger on the table
250
+edge. The cat looked through the smoke at the three men, and it seemed
251
+to them that he grew every moment larger and more ferocious. Presently
252
+his owner took him from his perch, and seating him on his knee fell to
253
+stroking his fur, from head to tail, with his long slim fingers. It was
254
+as if he were drawing inspiration for some deadly mischief from the
255
+uncanny&nbsp;beast.</p>
256
+<p><span class="dquo">&#8220;</span>To preface what I have to say to you, let me tell you that this is by
257
+far the most important business for which I have ever required your
258
+help. (Three slow strokes down the centre of the back, and one round
259
+each ear.) When it first came into my mind I was at a loss who to trust
260
+in the matter. I thought of Vendon, but I found Vendon was dead. I
261
+thought of Brownlow, but Brownlow was no longer faithful. (Two strokes
262
+down the back and two on the throat.) Then bit by bit I remembered you.
263
+I was in Brazil at the time. So I sent for you. You came. So far so&nbsp;good.&#8221;</p>
264
+<p>He rose, and crossed over to the fireplace. As he went the cat crawled
265
+back to its original position on his shoulder. Then his voice changed
266
+once more to its former business-like&nbsp;tone.</p>
267
+<p><span class="dquo">&#8220;</span>I am not going to tell you very much about it. But from what I do tell
268
+you, you will be able to gather a great deal and imagine the rest. To
269
+begin with, there is a man living in this world to-day who has done me a
270
+great and lasting injury. What that injury is is no concern of yours.
271
+You would not understand if I told you. So we&#8217;ll leave that out of the
272
+question. He is immensely rich. His cheque for £300,000 would be
273
+honoured by his bank at any minute. Obviously he is a power. He has had
274
+reason to know that I am pitting my wits against his, and he flatters
275
+himself that so far he has got the better of me. That is because I am
276
+drawing him on. I am maturing a plan which will make him a poor and a
277
+very miserable man at one and the same time. If that scheme succeeds,
278
+and I am satisfied with the way you three men have performed the parts I
279
+shall call on you to play in it, I shall pay to each of you the sum of
280
+£10,000. If it doesn&#8217;t succeed, then you will each receive a thousand
281
+and your expenses. Do you follow&nbsp;me?&#8221;</p>
282
+<p>It was evident from their faces that they hung upon his every&nbsp;word.</p>
283
+<p><span class="dquo">&#8220;</span>But, remember, I demand from you your whole and entire labour. While
284
+you are serving me you are mine body and soul. I know you are
285
+trustworthy. I have had good proof that you are&#8212;pardon the
286
+expression&#8212;unscrupulous, and I flatter myself you are silent. What is
287
+more, I shall tell you nothing beyond what is necessary for the carrying
288
+out of my scheme, so that you could not betray me if you would. Now for
289
+my&nbsp;plans!&#8221;</p>
290
+<p>He sat down again and took a paper from his pocket. Having perused it,
291
+he turned to&nbsp;Eastover.</p>
292
+<p><span class="dquo">&#8220;</span>You will leave at once&#8212;that is to say, by the boat on Wednesday&#8212;for
293
+Sydney. You will book your passage to-morrow morning, first thing, and
294
+join her in Plymouth. You will meet me to-morrow evening at an address I
295
+will send you, and receive your final instructions.&nbsp;Good-night.&#8221;</p>
296
+<p>Seeing that he was expected to go, Eastover rose, shook hands, and left
297
+the room without a word. He was too astonished to hesitate or to say&nbsp;anything.</p>
298
+<p>Nikola took another letter from his pocket and turned to Prendergast.
299
+&#8220;<em>You</em> will go down to Dover to-night, cross to Paris to-morrow morning,
300
+and leave this letter personally at the address you will find written on
301
+it. On Thursday, at half-past two precisely, you will deliver me an
302
+answer in the porch at Charing Cross. You will find sufficient money in
303
+that envelope to pay all your expenses. Now&nbsp;go!&#8221;</p>
304
+<p><span class="dquo">&#8220;</span>At half-past two you shall have your answer.&nbsp;Good-night.&#8221;</p>
305
+<p><span class="dquo">&#8220;</span>Good-night.&#8221;</p>
306
+<p>When Prendergast had left the room, Dr. Nikola lit another cigar and
307
+turned his attentions to Mr.&nbsp;Baxter.</p>
308
+<p><span class="dquo">&#8220;</span>Six months ago, Mr. Baxter, I found for you a situation as tutor to the
309
+young Marquis of Beckenham. You still hold it, I&nbsp;suppose?&#8221;</p>
310
+<p><span class="dquo">&#8220;</span>I&nbsp;do.&#8221;</p>
311
+<p><span class="dquo">&#8220;</span>Is the father well disposed towards&nbsp;you?&#8221;</p>
312
+<p><span class="dquo">&#8220;</span>In every way. I have done my best to ingratiate myself with him. That
313
+was one of your&nbsp;instructions.&#8221;</p>
314
+<p><span class="dquo">&#8220;</span>Yes, yes! But I was not certain that you would succeed. If the old man
315
+is anything like what he was when I last met him he must still be a
316
+difficult person to deal with. Does the boy like&nbsp;you?&#8221;</p>
317
+<p><span class="dquo">&#8220;</span>I hope&nbsp;so.&#8221;</p>
318
+<p><span class="dquo">&#8220;</span>Have you brought me his photograph as I&nbsp;directed?&#8221;</p>
319
+<p><span class="dquo">&#8220;</span>I have. Here it&nbsp;is.&#8221;</p>
320
+<p>Baxter took a photograph from his pocket and handed it across the&nbsp;table.</p>
321
+<p><span class="dquo">&#8220;</span>Good. You have done very well, Mr. Baxter. I am pleased with you.
322
+To-morrow morning you will go back to&nbsp;Yorkshire&#8212;&#8212;&#8221;</p>
323
+<p><span class="dquo">&#8220;</span>I beg your pardon, Bournemouth. His Grace owns a house near
324
+Bournemouth, which he occupies during the summer&nbsp;months.&#8221;</p>
325
+<p><span class="dquo">&#8220;</span>Very well&#8212;then to-morrow morning you will go back to Bournemouth and
326
+continue to ingratiate yourself with father and son. You will also begin
327
+to implant in the boy&#8217;s mind a desire for travel. Don&#8217;t let him become
328
+aware that his desire has its source in you&#8212;but do not fail to foster
329
+it all you can. I will communicate with you further in a day or two. Now&nbsp;go.&#8221;</p>
330
+<p>Baxter in his turn left the room. The door closed. Dr. Nikola picked up
331
+the photograph and studied&nbsp;it.</p>
332
+<p><span class="dquo">&#8220;</span>The likeness is unmistakable&#8212;or it ought to be. My friend, my very
333
+dear friend, Wetherell, my toils are closing on you. My arrangements are
334
+perfecting themselves admirably. Presently, when all is complete, I
335
+shall press the lever, the machinery will be set in motion, and you will
336
+find yourself being slowly but surely ground into powder. Then you will
337
+hand over what I want, and be sorry you thought fit to baulk Dr.&nbsp;Nikola!&#8221;</p>
338
+<p>He rang the bell and ordered his bill. This duty discharged, he placed
339
+the cat back in its prison, shut the lid, descended with the basket to
340
+the hall, and called a hansom. The porter inquired to what address he
341
+should order the cabman to drive. Dr. Nikola did not reply for a moment,
342
+then he said, as if he had been thinking something out: &#8220;The <em>Green
343
+Sailor</em> public-house, East India Dock&nbsp;Road.&#8221;</p>
344
+<hr class="docutils">
345
+<p>You can read the rest of &#8220;A Bid For Fortune; Or, Dr. Nikola&#8217;s Vendetta&#8221; at <a class="reference external" href="https://archive.org/stream/bidforfortunenov00bootiala#page/12/mode/2up">Open&nbsp;Library</a></p>
346
+</section>
347
+</section>
348
+</div>

+ 0 - 0
cache/pages/dr-nikolas-vendetta.html.dep View File


File diff suppressed because it is too large
+ 667 - 0
cache/pages/extending.html


+ 6 - 0
cache/pages/extending.html.dep View File

@@ -0,0 +1,6 @@
1
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
2
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
3
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
4
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
5
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
6
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl

+ 125 - 0
cache/pages/internals.html View File

@@ -0,0 +1,125 @@
1
+<p class="lead">When trying to guide someone into adding a feature in Nikola, it hit me that
2
+while the way it's structured makes sense <strong>to me</strong> it is far from obvious.</p>
3
+<p>So, this is a short document explaining what each piece of Nikola does and
4
+how it all fits together.</p>
5
+<dl>
6
+<dt>Nikola is a Pile of Plugins</dt>
7
+<dd><p>Most of Nikola is implemented as plugins using <a class="reference external" href="http://yapsy.sourceforge.net/">Yapsy</a>.
8
+You can ignore that they are plugins and just think of them as regular python
9
+modules and packages with a funny little <code class="docutils literal">.plugin</code> file next to them.</p>
10
+<p>So, 90% of the time, what you want to do is either write a new plugin or extend
11
+an existing one.</p>
12
+<p>There are several kinds of plugins, all implementing interfaces defined in
13
+<code class="docutils literal">nikola/plugin_categories.py</code> and documented in
14
+<a class="reference external" href="https://getnikola.com/extending.html">Extending Nikola</a></p>
15
+<p>If your plugin has a dependency, please make sure it doesn't make Nikola
16
+throw an exception when the dependency is missing. Try to fail gracefully
17
+with an informative message.</p>
18
+</dd>
19
+<dt>Commands are plugins</dt>
20
+<dd><p>When you use <code class="docutils literal">nikola foo</code> you are using the plugin <code class="docutils literal">command/foo</code>. Those are
21
+used to extend Nikola's command line. Their interface is defined in the <code class="docutils literal">Command</code>
22
+class. They take options and arguments and do whatever you want, so go wild.</p>
23
+</dd>
24
+<dt>The <code class="docutils literal">build</code> command is special</dt>
25
+<dd><p>The <code class="docutils literal">build</code> command triggers a whole lot of things, and is the core of Nikola
26
+because it's the one that you use to build sites. So it deserves its own section.</p>
27
+</dd>
28
+</dl>
29
+<section id="the-build-command">
30
+<h1>The Build Command</h1>
31
+<p>Nikola's goal is similar, deep at heart, to a Makefile. Take sources, compile them
32
+into something, in this case a website. Instead of a Makefile, Nikola uses
33
+<a class="reference external" href="https://pydoit.org">doit</a>.</p>
34
+<p>Doit has the concept of &quot;tasks&quot;. The 1 minute summary of tasks is that they have:</p>
35
+<dl class="simple">
36
+<dt>actions</dt>
37
+<dd><p>What the task <strong>does</strong>. For example, convert a markdown document into HTML.</p>
38
+</dd>
39
+<dt>dependencies</dt>
40
+<dd><p>If this file changes, then we need to redo the actions. If this configuration
41
+option changes, redo it, etc.</p>
42
+</dd>
43
+<dt>targets</dt>
44
+<dd><p>Files that the action generates. No two actions can have the same targets.</p>
45
+</dd>
46
+<dt>basename:name</dt>
47
+<dd><p>Each task is identified by either a name or a basename:name pair.</p>
48
+</dd>
49
+</dl>
50
+<aside class="sidebar">
51
+<p class="sidebar-title">More about tasks</p>
52
+<p>If you ever want to do your own tasks, you really should read the doit
53
+<a class="reference external" href="https://pydoit.org/tasks.html">documentation on tasks</a>.</p>
54
+<p>Notably, by default doit redirects <code class="docutils literal">stdout</code> and <code class="docutils literal">stderr</code>. To get a
55
+proper PDB debugging shell, you need to use doit's own
56
+<a class="reference external" href="https://pydoit.org/tools.html#set-trace">set_trace</a> function.</p>
57
+</aside>
58
+<p>So, what Nikola does, when you use the build command, is to read the
59
+configuration <code class="docutils literal">conf.py</code> from the current folder, instantiate
60
+the <code class="docutils literal">Nikola</code> class, and have it generate a whole list of tasks for doit
61
+to process. Then doit will decide which tasks need doing, and do them, in
62
+the right order.</p>
63
+<p>The place where the tasks are generated is in <code class="docutils literal">Nikola.gen_tasks</code>, which collects tasks
64
+from all the plugins inheriting <code class="docutils literal">BaseTask</code>, massages them a bit, then passes them
65
+to doit.</p>
66
+<p>So, if you want things to happen on <code class="docutils literal">build</code> you want to create a Task plugin, or extend
67
+one of the existing ones.</p>
68
+<aside class="sidebar">
69
+<p class="sidebar-title">Tests</p>
70
+<p>While Nikola is not a hardcore TDD project, we like tests. So, please add them if you can.
71
+You can write unit tests or integration tests. (Doctests are not supported
72
+anymore due to fragility.)</p>
73
+</aside>
74
+</section>
75
+<section id="posts-and-pages">
76
+<h1>Posts and Pages</h1>
77
+<p>Nikola has a concept of posts and pages. Both are more or less the same thing, except
78
+posts are added into RSS feeds and pages are not. All of them are in a list called
79
+&quot;the timeline&quot; formed by objects of class <code class="docutils literal">Post</code>.</p>
80
+<p>When you are creating a task that needs the list of posts and/or pages (for example,
81
+the RSS creation plugin) on task execution time, your plugin should call <code class="docutils literal">self.site.scan_posts()</code>
82
+in <code class="docutils literal">gen_tasks</code> to ensure the timeline is created and available in
83
+<code class="docutils literal">self.site.timeline</code>. You should not modify the timeline, because it will cause consistency issues.</p>
84
+<aside class="sidebar">
85
+<p class="sidebar-title">scan_posts</p>
86
+<p>The <code class="docutils literal">Nikola.scan_posts</code> function can be used in plugins to force the
87
+timeline creation, for example, while creating the tasks.</p>
88
+</aside>
89
+<p>Your plugin can use the timeline to generate &quot;stuff&quot; (technical term). For example,
90
+Nikola comes with plugins that use the timeline to create a website (surprised?).</p>
91
+<p>The workflow included with nikola is as follows (incomplete!):</p>
92
+<ol class="arabic simple">
93
+<li><p>The post is assigned a compiler based on its extension and the <code class="docutils literal">COMPILERS</code> option.</p></li>
94
+<li><p>The compiler is applied to the post data and a &quot;HTML fragment&quot; is produced. That
95
+fragment is stored in a cache (the <code class="docutils literal">posts</code> plugin).</p></li>
96
+<li><p>The configured theme has templates (and a template engine), which are applied to the post's
97
+HTML fragment and metadata (the <code class="docutils literal">pages</code> plugin).</p></li>
98
+<li><p>The original sources for the post are copied to some accessible place (the <code class="docutils literal">sources</code> plugin).</p></li>
99
+<li><p>If the post is tagged, some pages and RSS feeds for each tag are updated (the <code class="docutils literal">tags</code> plugin).</p></li>
100
+<li><p>If the post is new, it's included in the blog's RSS feed (the <code class="docutils literal">rss</code> plugin).</p></li>
101
+<li><p>The post is added in the right place in the index pages for the blog (the <code class="docutils literal">indexes</code> plugin).</p></li>
102
+<li><p>CSS/JS/Images for the theme are put in the right places (the <code class="docutils literal">copy_assets</code> and <code class="docutils literal">bundles</code> plugins).</p></li>
103
+<li><p>A File describing the whole site is created (the <code class="docutils literal">sitemap</code> plugin).</p></li>
104
+</ol>
105
+<p>You can add whatever you want to that list: just create a plugin for it.</p>
106
+<p>You can also expand Nikola's capabilities at several points:</p>
107
+<dl class="simple">
108
+<dt>compilers</dt>
109
+<dd><p>Nikola supports a variety of markups. If you want to add another one, you need to create
110
+a <code class="docutils literal">Compiler</code> plugin.</p>
111
+</dd>
112
+<dt>templates</dt>
113
+<dd><p>Nikola's themes can use Jinja2 or Mako templates. If you prefer another template system,
114
+you have to create a <code class="docutils literal">TemplateSystem</code> plugin.</p>
115
+</dd>
116
+<dt>themes</dt>
117
+<dd><p>To change how the generated site looks, you can create custom themes.</p>
118
+</dd>
119
+</dl>
120
+<p>And of course, you can also replace or extend each of the existing plugins.</p>
121
+<section id="nikola-architecture">
122
+<h2>Nikola Architecture</h2>
123
+<a class="reference external image-reference" href="https://getnikola.com/images/architecture.png"><img alt="https://getnikola.com/images/architecture.thumbnail.png" src="https://getnikola.com/images/architecture.thumbnail.png" /></a>
124
+</section>
125
+</section>

+ 0 - 0
cache/pages/internals.html.dep View File


+ 15 - 0
cache/pages/listings-demo.html View File

@@ -0,0 +1,15 @@
1
+<p>Nikola intends to let you show code easily via listings:</p>
2
+<p><a class="reference external" href="link://listing/listings/hello.py">hello.py</a>  <a class="reference external" href="link://listing_source/listings/hello.py">(Source)</a></p>
3
+<pre class="code python"><a name="rest_code_39d324261d5b4eb2910076b264d3954a-1"></a><span class="ch">#!/usr/bin/python</span>
4
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-2"></a>
5
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-3"></a><span class="kn">import</span> <span class="nn">sys</span>
6
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-4"></a>
7
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-5"></a>
8
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-6"></a><span class="k">def</span> <span class="nf">hello</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s1">&#39;world&#39;</span><span class="p">):</span>
9
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-7"></a>    <span class="n">greeting</span> <span class="o">=</span> <span class="s2">&quot;hello &quot;</span> <span class="o">+</span> <span class="n">name</span>
10
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-8"></a>    <span class="nb">print</span><span class="p">(</span><span class="n">greeting</span><span class="p">)</span>
11
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-9"></a>
12
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-10"></a>
13
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-11"></a><span class="k">if</span> <span class="vm">__name__</span> <span class="o">==</span> <span class="s2">&quot;__main__&quot;</span><span class="p">:</span>
14
+<a name="rest_code_39d324261d5b4eb2910076b264d3954a-12"></a>    <span class="n">hello</span><span class="p">(</span><span class="o">*</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span>
15
+</pre>

+ 1 - 0
cache/pages/listings-demo.html.dep View File

@@ -0,0 +1 @@
1
+listings/hello.py

File diff suppressed because it is too large
+ 2773 - 0
cache/pages/manual.html


+ 18 - 0
cache/pages/manual.html.dep View File

@@ -0,0 +1,18 @@
1
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
2
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
3
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
4
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
5
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
6
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
7
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
8
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
9
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
10
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
11
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
12
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
13
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
14
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
15
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
16
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
17
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl
18
+/home/thomas/.local/lib/python3.9/site-packages/nikola/data/shortcodes/mako/raw.tmpl

+ 150 - 0
cache/pages/path_handlers.html View File

@@ -0,0 +1,150 @@
1
+<!-- DO NOT EDIT, this file is auto-generated by scripts/document_path_handlers.py -->
2
+<p>Nikola supports special links with the syntax <code class="docutils literal"><span class="pre">link://kind/name</span></code>. In
3
+templates you can also use <code class="docutils literal">_link(kind, name)</code>.  You can add query strings
4
+(<code class="docutils literal"><span class="pre">?key=value</span></code>) for extra arguments, or pass keyword arguments to <code class="docutils literal">_link</code> in
5
+templates (support and behavior depends on path handlers themselves). Fragments
6
+(<code class="docutils literal">#anchor</code>) will be appended to the transformed link.</p>
7
+<p>Here are the descriptions for all the supported kinds.</p>
8
+<dl class="dl-horizontal">
9
+<dt>archive</dt>
10
+<dd><p>Link to archive path, name is the year.</p>
11
+<p>Example:</p>
12
+<p>link://archive/2013 =&gt; /archives/2013/index.html</p>
13
+</dd>
14
+<dt>author</dt>
15
+<dd><p>Link to an author's page.</p>
16
+<p>Example:</p>
17
+<p>link://author/joe =&gt; /authors/joe.html</p>
18
+</dd>
19
+<dt>author_atom</dt>
20
+<dd><p>Link to an author's Atom feed.</p>
21
+<p>Example:</p>
22
+<p>link://author_atom/joe =&gt; /authors/joe.atom</p>
23
+</dd>
24
+<dt>author_index</dt>
25
+<dd><p>Link to the authors index.</p>
26
+<p>Example:</p>
27
+<p>link://authors/ =&gt; /authors/index.html</p>
28
+</dd>
29
+<dt>author_rss</dt>
30
+<dd><p>Link to an author's RSS feed.</p>
31
+<p>Example:</p>
32
+<p>link://author_rss/joe =&gt; /authors/joe.xml</p>
33
+</dd>
34
+<dt>category</dt>
35
+<dd><p>A link to a category. Takes page number as optional keyword argument.</p>
36
+<p>Example:</p>
37
+<p>link://category/dogs =&gt; /categories/dogs.html</p>
38
+</dd>
39
+<dt>category_atom</dt>
40
+<dd><p>A link to a category's Atom feed.</p>
41
+<p>Example:</p>
42
+<p>link://category_atom/dogs =&gt; /categories/dogs.atom</p>
43
+</dd>
44
+<dt>category_index</dt>
45
+<dd><p>A link to the category index.</p>
46
+<p>Example:</p>
47
+<p>link://category_index =&gt; /categories/index.html</p>
48
+</dd>
49
+<dt>category_rss</dt>
50
+<dd><p>A link to a category's RSS feed.</p>
51
+<p>Example:</p>
52
+<p>link://category_rss/dogs =&gt; /categories/dogs.xml</p>
53
+</dd>
54
+<dt>filename</dt>
55
+<dd><p>Link to post or page by source filename.</p>
56
+<p>Example:</p>
57
+<p>link://filename/manual.txt =&gt; /docs/handbook.html</p>
58
+</dd>
59
+<dt>gallery</dt>
60
+<dd><p>Link to an image gallery's path.</p>
61
+<p>It will try to find a gallery with that name if it's not ambiguous
62
+or with that path. For example:</p>
63
+<p>link://gallery/london =&gt; /galleries/trips/london/index.html</p>
64
+<p>link://gallery/trips/london =&gt; /galleries/trips/london/index.html</p>
65
+</dd>
66
+<dt>gallery_global</dt>
67
+<dd><p>Link to the global gallery path, which contains all the images in galleries.</p>
68
+<p>There is only one copy of an image on multilingual blogs, in the site root.</p>
69
+<p>link://gallery_global/london =&gt; /galleries/trips/london/index.html</p>
70
+<p>link://gallery_global/trips/london =&gt; /galleries/trips/london/index.html</p>
71
+<p>(a <code class="docutils literal">gallery</code> link could lead to eg. /en/galleries/trips/london/index.html)</p>
72
+</dd>
73
+<dt>gallery_rss</dt>
74
+<dd><p>Link to an image gallery's RSS feed.</p>
75
+<p>It will try to find a gallery with that name if it's not ambiguous
76
+or with that path. For example:</p>
77
+<p>link://gallery_rss/london =&gt; /galleries/trips/london/rss.xml</p>
78
+<p>link://gallery_rss/trips/london =&gt; /galleries/trips/london/rss.xml</p>
79
+</dd>
80
+<dt>index</dt>
81
+<dd><p>Link to a numbered index.</p>
82
+<p>Example:</p>
83
+<p>link://index/3 =&gt; /index-3.html</p>
84
+</dd>
85
+<dt>index_atom</dt>
86
+<dd><p>Link to a numbered Atom index.</p>
87
+<p>Example:</p>
88
+<p>link://index_atom/3 =&gt; /index-3.atom</p>
89
+</dd>
90
+<dt>index_rss</dt>
91
+<dd><p>A link to the RSS feed path.</p>
92
+<p>Example:</p>
93
+<p>link://rss =&gt; /blog/rss.xml</p>
94
+</dd>
95
+<dt>listing</dt>
96
+<dd><p>Return a link to a listing.</p>
97
+<p>It will try to use the file name if it's not ambiguous, or the file path.</p>
98
+<p>Example:</p>
99
+<p>link://listing/hello.py =&gt; /listings/tutorial/hello.py.html</p>
100
+<p>link://listing/tutorial/hello.py =&gt; /listings/tutorial/hello.py.html</p>
101
+</dd>
102
+<dt>listing_source</dt>
103
+<dd><p>Return a link to the source code for a listing.</p>
104
+<p>It will try to use the file name if it's not ambiguous, or the file path.</p>
105
+<p>Example:</p>
106
+<p>link://listing_source/hello.py =&gt; /listings/tutorial/hello.py</p>
107
+<p>link://listing_source/tutorial/hello.py =&gt; /listings/tutorial/hello.py</p>
108
+</dd>
109
+<dt>post_path</dt>
110
+<dd><p>Link to the destination of an element in the POSTS/PAGES settings.</p>
111
+<p>Example:</p>
112
+<p>link://post_path/posts =&gt; /blog</p>
113
+</dd>
114
+<dt>root</dt>
115
+<dd><p>Link to the current language's root.</p>
116
+<p>Example:</p>
117
+<p>link://root_path =&gt; /</p>
118
+<p>link://root_path =&gt; /translations/spanish/</p>
119
+</dd>
120
+<dt>rss</dt>
121
+<dd><p>A link to the RSS feed path.</p>
122
+<p>Example:</p>
123
+<p>link://rss =&gt; /blog/rss.xml</p>
124
+</dd>
125
+<dt>slug</dt>
126
+<dd><p>Return a link to a post with given slug, if not ambiguous.</p>
127
+<p>Example:</p>
128
+<p>link://slug/yellow-camaro =&gt; /posts/cars/awful/yellow-camaro/index.html</p>
129
+</dd>
130
+<dt>tag</dt>
131
+<dd><p>A link to a tag's page. Takes page number as optional keyword argument.</p>
132
+<p>Example:</p>
133
+<p>link://tag/cats =&gt; /tags/cats.html</p>
134
+</dd>
135
+<dt>tag_atom</dt>
136
+<dd><p>A link to a tag's Atom feed.</p>
137
+<p>Example:</p>
138
+<p>link://tag_atom/cats =&gt; /tags/cats.atom</p>
139
+</dd>
140
+<dt>tag_index</dt>
141
+<dd><p>A link to the tag index.</p>
142
+<p>Example:</p>
143
+<p>link://tag_index =&gt; /tags/index.html</p>
144
+</dd>
145
+<dt>tag_rss</dt>
146
+<dd><p>A link to a tag's RSS feed.</p>
147
+<p>Example:</p>
148
+<p>link://tag_rss/cats =&gt; /tags/cats.xml</p>
149
+</dd>
150
+</dl>

+ 0 - 0
cache/pages/path_handlers.html.dep View File


File diff suppressed because it is too large
+ 1338 - 0
cache/pages/quickref.html


+ 0 - 0
cache/pages/quickref.html.dep View File


+ 355 - 0
cache/pages/quickstart.html View File

@@ -0,0 +1,355 @@
1
+<dl class="docinfo simple">
2
+<dt class="author">Author<span class="colon">:</span></dt>
3
+<dd class="author"><p>Richard Jones</p></dd>
4
+<dt class="version">Version<span class="colon">:</span></dt>
5
+<dd class="version">5801</dd>
6
+<dt class="copyright">Copyright<span class="colon">:</span></dt>
7
+<dd class="copyright">This document has been placed in the public domain.</dd>
8
+</dl>
9
+<nav class="contents alert alert-info pull-left" id="contents" role="doc-toc">
10
+<p class="topic-title">Contents</p>
11
+<ul class="simple">
12
+<li><p><a class="reference internal" href="#structure" id="toc-entry-1">Structure</a></p></li>
13
+<li><p><a class="reference internal" href="#text-styles" id="toc-entry-2">Text styles</a></p></li>
14
+<li><p><a class="reference internal" href="#lists" id="toc-entry-3">Lists</a></p></li>
15
+<li><p><a class="reference internal" href="#preformatting-code-samples" id="toc-entry-4">Preformatting (code samples)</a></p></li>
16
+<li><p><a class="reference internal" href="#sections" id="toc-entry-5">Sections</a></p>
17
+<ul>
18
+<li><p><a class="reference internal" href="#document-title-subtitle" id="toc-entry-6">Document Title / Subtitle</a></p></li>
19
+</ul>
20
+</li>
21
+<li><p><a class="reference internal" href="#images" id="toc-entry-7">Images</a></p></li>
22
+<li><p><a class="reference internal" href="#what-next" id="toc-entry-8">What Next?</a></p></li>
23
+</ul>
24
+</nav>
25
+<p>The text below contains links that look like &quot;(<a class="reference external" href="../quickref/">quickref</a>)&quot;.  These
26
+are relative links that point to the <a class="reference external" href="../quickref/">Quick reStructuredText</a> user
27
+reference.  If these links don't work, please refer to the <a class="reference external" href="https://docutils.sourceforge.io/docs/user/rst/quickref.html">master
28
+quick reference</a> document.</p>
29
+<aside class="admonition note">
30
+<p class="admonition-title">Note</p>
31
+<p>This document is an informal introduction to
32
+reStructuredText.  The <a class="reference internal" href="#what-next">What Next?</a> section below has links to
33
+further resources, including a formal reference.</p>
34
+</aside>
35
+<section id="structure">
36
+<h1><a class="toc-backref" href="#toc-entry-1" role="doc-backlink">Structure</a></h1>
37
+<p>From the outset, let me say that &quot;Structured Text&quot; is probably a bit
38
+of a misnomer.  It's more like &quot;Relaxed Text&quot; that uses certain
39
+consistent patterns.  These patterns are interpreted by a HTML
40
+converter to produce &quot;Very Structured Text&quot; that can be used by a web
41
+browser.</p>
42
+<p>The most basic pattern recognised is a <strong>paragraph</strong> (<a class="reference external" href="../quickref/#paragraphs">quickref</a>).
43
+That's a chunk of text that is separated by blank lines (one is
44
+enough).  Paragraphs must have the same indentation -- that is, line
45
+up at their left edge.  Paragraphs that start indented will result in
46
+indented quote paragraphs. For example:</p>
47
+<pre class="literal-block">This is a paragraph.  It's quite
48
+short.
49
+
50
+   This paragraph will result in an indented block of
51
+   text, typically used for quoting other text.
52
+
53
+This is another one.</pre>
54
+<p>Results in:</p>
55
+<blockquote>
56
+<p>This is a paragraph.  It's quite
57
+short.</p>
58
+<blockquote>
59
+<p>This paragraph will result in an indented block of
60
+text, typically used for quoting other text.</p>
61
+</blockquote>
62
+<p>This is another one.</p>
63
+</blockquote>
64
+</section>
65
+<section id="text-styles">
66
+<h1><a class="toc-backref" href="#toc-entry-2" role="doc-backlink">Text styles</a></h1>
67
+<p>(<a class="reference external" href="../quickref/#inline-markup">quickref</a>)</p>
68
+<p>Inside paragraphs and other bodies of text, you may additionally mark
69
+text for <em>italics</em> with &quot;<code class="docutils literal">*italics*</code>&quot; or <strong>bold</strong> with
70
+&quot;<code class="docutils literal">**bold**</code>&quot;.  This is called &quot;inline markup&quot;.</p>
71
+<p>If you want something to appear as a fixed-space literal, use
72
+&quot;<code class="docutils literal">``double <span class="pre">back-quotes``</span></code>&quot;.  Note that no further fiddling is done
73
+inside the double back-quotes -- so asterisks &quot;<code class="docutils literal">*</code>&quot; etc. are left
74
+alone.</p>
75
+<p>If you find that you want to use one of the &quot;special&quot; characters in
76
+text, it will generally be OK -- reStructuredText is pretty smart.
77
+For example, this lone asterisk * is handled just fine, as is the
78
+asterisk in this equation: 5*6=30.  If you actually
79
+want text *surrounded by asterisks* to <strong>not</strong> be italicised, then
80
+you need to indicate that the asterisk is not special.  You do this by
81
+placing a backslash just before it, like so &quot;<code class="docutils literal">\*</code>&quot; (<a class="reference external" href="../quickref/#escaping">quickref</a>), or
82
+by enclosing it in double back-quotes (inline literals), like this:</p>
83
+<pre class="literal-block">``*``</pre>
84
+<aside class="admonition tip">
85
+<p class="admonition-title">Tip</p>
86
+<p>Think of inline markup as a form of (parentheses) and use it
87
+the same way: immediately before and after the text being marked
88
+up.  Inline markup by itself (surrounded by whitespace) or in the
89
+middle of a word won't be recognized.  See the <a class="reference external" href="https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html#inline-markup">markup spec</a> for
90
+full details.</p>
91
+</aside>
92
+</section>
93
+<section id="lists">
94
+<h1><a class="toc-backref" href="#toc-entry-3" role="doc-backlink">Lists</a></h1>
95
+<p>Lists of items come in three main flavours: <strong>enumerated</strong>,
96
+<strong>bulleted</strong> and <strong>definitions</strong>.  In all list cases, you may have as
97
+many paragraphs, sublists, etc. as you want, as long as the left-hand
98
+side of the paragraph or whatever aligns with the first line of text
99
+in the list item.</p>
100
+<p>Lists must always start a new paragraph -- that is, they must appear
101
+after a blank line.</p>
102
+<dl>
103
+<dt><strong>enumerated</strong> lists (numbers, letters or roman numerals; <a class="reference external" href="../quickref/#enumerated-lists">quickref</a>)</dt>
104
+<dd><p>Start a line off with a number or letter followed by a period &quot;.&quot;,
105
+right bracket &quot;)&quot; or surrounded by brackets &quot;( )&quot; -- whatever you're
106
+comfortable with.  All of the following forms are recognised:</p>
107
+<pre class="literal-block">1. numbers
108
+
109
+A. upper-case letters
110
+   and it goes over many lines
111
+
112
+   with two paragraphs and all!
113
+
114
+a. lower-case letters
115
+
116
+   3. with a sub-list starting at a different number
117
+   4. make sure the numbers are in the correct sequence though!
118
+
119
+I. upper-case roman numerals
120
+
121
+i. lower-case roman numerals
122
+
123
+(1) numbers again
124
+
125
+1) and again</pre>
126
+<p>Results in (note: the different enumerated list styles are not
127
+always supported by every web browser, so you may not get the full
128
+effect here):</p>
129
+<ol class="arabic simple">
130
+<li><p>numbers</p></li>
131
+</ol>
132
+<ol class="upperalpha">
133
+<li><p>upper-case letters
134
+and it goes over many lines</p>
135
+<p>with two paragraphs and all!</p>
136
+</li>
137
+</ol>
138
+<ol class="loweralpha simple">
139
+<li><p>lower-case letters</p>
140
+<ol class="arabic simple" start="3">
141
+<li><p>with a sub-list starting at a different number</p></li>
142
+<li><p>make sure the numbers are in the correct sequence though!</p></li>
143
+</ol>
144
+</li>
145
+</ol>
146
+<ol class="upperroman simple">
147
+<li><p>upper-case roman numerals</p></li>
148
+</ol>
149
+<ol class="lowerroman simple">
150
+<li><p>lower-case roman numerals</p></li>
151
+</ol>
152
+<ol class="arabic simple">
153
+<li><p>numbers again</p></li>
154
+</ol>
155
+<ol class="arabic simple">
156
+<li><p>and again</p></li>
157
+</ol>
158
+</dd>
159
+<dt><strong>bulleted</strong> lists (<a class="reference external" href="../quickref/#bullet-lists">quickref</a>)</dt>
160
+<dd><p>Just like enumerated lists, start the line off with a bullet point
161
+character - either &quot;-&quot;, &quot;+&quot; or &quot;*&quot;:</p>
162
+<pre class="literal-block">* a bullet point using &quot;*&quot;
163
+
164
+  - a sub-list using &quot;-&quot;
165
+
166
+    + yet another sub-list
167
+
168
+  - another item</pre>
169
+<p>Results in:</p>
170
+<ul class="simple">
171
+<li><p>a bullet point using &quot;*&quot;</p>
172
+<ul>
173
+<li><p>a sub-list using &quot;-&quot;</p>
174
+<ul>
175
+<li><p>yet another sub-list</p></li>
176
+</ul>
177
+</li>
178
+<li><p>another item</p></li>
179
+</ul>
180
+</li>
181
+</ul>
182
+</dd>
183
+<dt><strong>definition</strong> lists (<a class="reference external" href="../quickref/#definition-lists">quickref</a>)</dt>
184
+<dd><p>Unlike the other two, the definition lists consist of a term, and
185
+the definition of that term.  The format of a definition list is:</p>
186
+<pre class="literal-block">what
187
+  Definition lists associate a term with a definition.
188
+
189
+*how*
190
+  The term is a one-line phrase, and the definition is one or more
191
+  paragraphs or body elements, indented relative to the term.
192
+  Blank lines are not allowed between term and definition.</pre>
193
+<p>Results in:</p>
194
+<dl class="simple">
195
+<dt>what</dt>
196
+<dd><p>Definition lists associate a term with a definition.</p>
197
+</dd>
198
+<dt><em>how</em></dt>
199
+<dd><p>The term is a one-line phrase, and the definition is one or more
200
+paragraphs or body elements, indented relative to the term.
201
+Blank lines are not allowed between term and definition.</p>
202
+</dd>
203
+</dl>
204
+</dd>
205
+</dl>
206
+</section>
207
+<section id="preformatting-code-samples">
208
+<h1><a class="toc-backref" href="#toc-entry-4" role="doc-backlink">Preformatting (code samples)</a></h1>
209
+<p>(<a class="reference external" href="../quickref/#literal-blocks">quickref</a>)</p>
210
+<p>To just include a chunk of preformatted, never-to-be-fiddled-with
211
+text, finish the prior paragraph with &quot;<code class="docutils literal">::</code>&quot;.  The preformatted
212
+block is finished when the text falls back to the same indentation
213
+level as a paragraph prior to the preformatted block.  For example:</p>
214
+<pre class="literal-block">An example::
215
+
216
+    Whitespace, newlines, blank lines, and all kinds of markup
217
+      (like *this* or \this) is preserved by literal blocks.
218
+  Lookie here, I've dropped an indentation level
219
+  (but not far enough)
220
+
221
+no more example</pre>
222
+<p>Results in:</p>
223
+<blockquote>
224
+<p>An example:</p>
225
+<pre class="literal-block">  Whitespace, newlines, blank lines, and all kinds of markup
226
+    (like *this* or \this) is preserved by literal blocks.
227
+Lookie here, I've dropped an indentation level
228
+(but not far enough)</pre>
229
+<p>no more example</p>
230
+</blockquote>
231
+<p>Note that if a paragraph consists only of &quot;<code class="docutils literal">::</code>&quot;, then it's removed
232
+from the output:</p>
233
+<pre class="literal-block">::
234
+
235
+    This is preformatted text, and the
236
+    last &quot;::&quot; paragraph is removed</pre>
237
+<p>Results in:</p>
238
+<pre class="literal-block">This is preformatted text, and the
239
+last &quot;::&quot; paragraph is removed</pre>
240
+</section>
241
+<section id="sections">
242
+<h1><a class="toc-backref" href="#toc-entry-5" role="doc-backlink">Sections</a></h1>
243
+<p>(<a class="reference external" href="../quickref/#section-structure">quickref</a>)</p>
244
+<p>To break longer text up into sections, you use <strong>section headers</strong>.
245
+These are a single line of text (one or more words) with adornment: an
246
+underline alone, or an underline and an overline together, in dashes
247
+&quot;<code class="docutils literal"><span class="pre">-----</span></code>&quot;, equals &quot;<code class="docutils literal"><span class="pre">======</span></code>&quot;, tildes &quot;<code class="docutils literal"><span class="pre">~~~~~~</span></code>&quot; or any of the
248
+non-alphanumeric characters <code class="docutils literal">= - ` : ' &quot; ~ ^ _ * + # &lt; &gt;</code> that you
249
+feel comfortable with.  An underline-only adornment is distinct from
250
+an overline-and-underline adornment using the same character.  The
251
+underline/overline must be at least as long as the title text.  Be
252
+consistent, since all sections marked with the same adornment style
253
+are deemed to be at the same level:</p>
254
+<pre class="literal-block">Chapter 1 Title
255
+===============
256
+
257
+Section 1.1 Title
258
+-----------------
259
+
260
+Subsection 1.1.1 Title
261
+~~~~~~~~~~~~~~~~~~~~~~
262
+
263
+Section 1.2 Title
264
+-----------------
265
+
266
+Chapter 2 Title
267
+===============</pre>
268
+<p>This results in the following structure, illustrated by simplified
269
+pseudo-XML:</p>
270
+<pre class="literal-block">&lt;section&gt;
271
+    &lt;title&gt;
272
+        Chapter 1 Title
273
+    &lt;section&gt;
274
+        &lt;title&gt;
275
+            Section 1.1 Title
276
+        &lt;section&gt;
277
+            &lt;title&gt;
278
+                Subsection 1.1.1 Title
279
+    &lt;section&gt;
280
+        &lt;title&gt;
281
+            Section 1.2 Title
282
+&lt;section&gt;
283
+    &lt;title&gt;
284
+        Chapter 2 Title</pre>
285
+<p>(Pseudo-XML uses indentation for nesting and has no end-tags.  It's
286
+not possible to show actual processed output, as in the other
287
+examples, because sections cannot exist inside block quotes.  For a
288
+concrete example, compare the section structure of this document's
289
+source text and processed output.)</p>
290
+<p>Note that section headers are available as link targets, just using
291
+their name.  To link to the <a class="reference internal" href="#lists">Lists</a> heading, I write &quot;<code class="docutils literal">Lists_</code>&quot;.  If
292
+the heading has a space in it like <a class="reference internal" href="#text-styles">text styles</a>, we need to quote
293
+the heading &quot;<code class="docutils literal">`text styles`_</code>&quot;.</p>
294
+<section id="document-title-subtitle">
295
+<h2><a class="toc-backref" href="#toc-entry-6" role="doc-backlink">Document Title / Subtitle</a></h2>
296
+<p>The title of the whole document is distinct from section titles and
297
+may be formatted somewhat differently (e.g. the HTML writer by default
298
+shows it as a centered heading).</p>
299
+<p>To indicate the document title in reStructuredText, use a unique adornment
300
+style at the beginning of the document.  To indicate the document subtitle,
301
+use another unique adornment style immediately after the document title.  For
302
+example:</p>
303
+<pre class="literal-block">================
304
+ Document Title
305
+================
306
+----------
307
+ Subtitle
308
+----------
309
+
310
+Section Title
311
+=============
312
+
313
+...</pre>
314
+<p>Note that &quot;Document Title&quot; and &quot;Section Title&quot; above both use equals
315
+signs, but are distinct and unrelated styles.  The text of
316
+overline-and-underlined titles (but not underlined-only) may be inset
317
+for aesthetics.</p>
318
+</section>
319
+</section>
320
+<section id="images">
321
+<h1><a class="toc-backref" href="#toc-entry-7" role="doc-backlink">Images</a></h1>
322
+<p>(<a class="reference external" href="../quickref/#directives">quickref</a>)</p>
323
+<p>To include an image in your document, you use the <code class="docutils literal">image</code> <a class="reference external" href="https://docutils.sourceforge.io/docs/ref/rst/directives.html">directive</a>.
324
+For example:</p>
325
+<pre class="literal-block">.. image:: /images/nikola.png</pre>
326
+<p>results in:</p>
327
+<img alt="/images/nikola.png" src="/images/nikola.png" />
328
+<p>The <code class="docutils literal">/images/nikola.png</code> part indicates the filename of the image
329
+you wish to appear in the document. There's no restriction placed on
330
+the image (format, size etc).  If the image is to appear in HTML and
331
+you wish to supply additional information, you may:</p>
332
+<pre class="literal-block">.. image:: /images/nikola.png
333
+   :height: 100
334
+   :width: 200
335
+   :scale: 50
336
+   :alt: alternate text</pre>
337
+<p>See the full <a class="reference external" href="https://docutils.sourceforge.io/docs/ref/rst/directives.html#images">image directive documentation</a> for more info.</p>
338
+</section>
339
+<section id="what-next">
340
+<h1><a class="toc-backref" href="#toc-entry-8" role="doc-backlink">What Next?</a></h1>
341
+<p>This primer introduces the most common features of reStructuredText,
342
+but there are a lot more to explore.  The <a class="reference external" href="../quickref/">Quick reStructuredText</a>
343
+user reference is a good place to go next.  For complete details, the
344
+<a class="reference external" href="https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html">reStructuredText Markup Specification</a> is the place to go <a class="footnote-reference brackets" href="#footnote-1" id="footnote-reference-1" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a>.</p>
345
+<p>Users who have questions or need assistance with Docutils or
346
+reStructuredText should post a message to the <a class="reference external" href="https://docutils.sourceforge.io/docs/user/mailing-lists.html#docutils-users">Docutils-users</a> mailing
347
+list.</p>
348
+<aside class="footnote-list brackets">
349
+<aside class="footnote brackets" id="footnote-1" role="note">
350
+<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#footnote-reference-1">1</a><span class="fn-bracket">]</span></span>
351
+<p>If that relative link doesn't work, try the master document:
352
+<a class="reference external" href="https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html">https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html</a>.</p>
353
+</aside>
354
+</aside>
355
+</section>

+ 0 - 0
cache/pages/quickstart.html.dep View File


+ 162 - 0
cache/pages/social_buttons.html View File

@@ -0,0 +1,162 @@
1
+<dl class="docinfo simple">
2
+<dt class="version">Version<span class="colon">:</span></dt>
3
+<dd class="version">8.2.3</dd>
4
+</dl>
5
+<nav class="contents alert alert-primary float-md-right" id="contents" role="doc-toc">
6
+<p class="topic-title">Contents</p>
7
+<ul class="simple">
8
+<li><p><a class="reference internal" href="#the-default" id="toc-entry-1">The Default</a></p></li>
9
+<li><p><a class="reference internal" href="#sharenice" id="toc-entry-2">ShareNice</a></p></li>
10
+<li><p><a class="reference internal" href="#socialshareprivacy" id="toc-entry-3">SocialSharePrivacy</a></p>
11
+<ul>
12
+<li><p><a class="reference internal" href="#the-hard-way" id="toc-entry-4">The Hard Way</a></p></li>
13
+<li><p><a class="reference internal" href="#the-easy-way" id="toc-entry-5">The Easy Way</a></p></li>
14
+</ul>
15
+</li>
16
+</ul>
17
+</nav>
18
+<section id="the-default">
19
+<h1><a class="toc-backref" href="#toc-entry-1" role="doc-backlink">The Default</a></h1>
20
+<p>By Default, the themes provided with Nikola will add to your pages a &quot;slide in&quot; widget at
21
+the bottom right of the page, provided by Addthis. This is the HTML code for that:</p>
22
+<pre class="code html"><a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-1"></a><span class="c">&lt;!-- Social buttons --&gt;</span>
23
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-2"></a><span class="p">&lt;</span><span class="nt">div</span> <span class="na">id</span><span class="o">=</span><span class="s">&quot;addthisbox&quot;</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_toolbox addthis_peekaboo_style</span>
24
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-3"></a><span class="s">    addthis_default_style addthis_label_style addthis_32x32_style&quot;</span><span class="p">&gt;</span>
25
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-4"></a><span class="p">&lt;</span><span class="nt">a</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_button_more&quot;</span><span class="p">&gt;</span>Share<span class="p">&lt;/</span><span class="nt">a</span><span class="p">&gt;</span>
26
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-5"></a><span class="p">&lt;</span><span class="nt">ul</span><span class="p">&gt;&lt;</span><span class="nt">li</span><span class="p">&gt;&lt;</span><span class="nt">a</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_button_facebook&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">a</span><span class="p">&gt;</span>
27
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-6"></a><span class="p">&lt;</span><span class="nt">li</span><span class="p">&gt;&lt;</span><span class="nt">a</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_button_google_plusone_share&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">a</span><span class="p">&gt;</span>
28
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-7"></a><span class="p">&lt;</span><span class="nt">li</span><span class="p">&gt;&lt;</span><span class="nt">a</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_button_linkedin&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">a</span><span class="p">&gt;</span>
29
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-8"></a><span class="p">&lt;</span><span class="nt">li</span><span class="p">&gt;&lt;</span><span class="nt">a</span> <span class="na">class</span><span class="o">=</span><span class="s">&quot;addthis_button_twitter&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">a</span><span class="p">&gt;</span>
30
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-9"></a><span class="p">&lt;/</span><span class="nt">ul</span><span class="p">&gt;</span>
31
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-10"></a><span class="p">&lt;/</span><span class="nt">div</span><span class="p">&gt;</span>
32
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-11"></a><span class="p">&lt;</span><span class="nt">script</span> <span class="na">src</span><span class="o">=</span><span class="s">&quot;//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-4f7088a56bb93798&quot;</span><span class="p">&gt;&lt;/</span><span class="nt">script</span><span class="p">&gt;</span>
33
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-12"></a><span class="c">&lt;!-- End of social buttons --&gt;</span>
34
+<a name="rest_code_fdbd4b2582b34ec78f82fe9fab67f0d6-13"></a>&quot;&quot;&quot;
35
+</pre><p>You can change that using the <code class="docutils literal">SOCIAL_BUTTONS_CODE</code> option in your conf.py. In some cases, just
36
+doing that will be enough but in others, it won't. This document tries to describe all the bits
37
+involved in making this work correctly.</p>
38
+<dl>
39
+<dt>Part 1: <code class="docutils literal">SOCIAL_BUTTONS_CODE</code></dt>
40
+<dd><p>Social sharing services like addthis and others will provide you a HTML snippet.
41
+If it is self-contained, then just setting <code class="docutils literal">SOCIAL_BUTTONS_CODE</code> may be enough.
42
+Try :-)</p>
43
+</dd>
44
+<dt>Part 2: The theme</dt>
45
+<dd><p>The <code class="docutils literal">SOCIAL_BUTTONS_CODE</code> HTML fragment will be embedded <em>somewhere</em> by the theme. Whether that
46
+is the correct place or not is not something the theme author can truly know, so it is possible that
47
+you may have to tweak the <code class="docutils literal">base.html</code> template to make it look good.</p>
48
+</dd>
49
+<dt>Part 3: <code class="docutils literal">BODY_END</code> and <code class="docutils literal">EXTRA_HEAD_DATA</code></dt>
50
+<dd><p>Some social sharing code requires JS execution that depends on JQuery being available
51
+(example: <a class="reference external" href="https://github.com/panzi/SocialSharePrivacy">SocialSharePrivacy</a>). It's good
52
+practice (and often, the only way that will work) to put those at the end of <code class="docutils literal">&lt;BODY&gt;</code>,
53
+and one easy way to do that is to put them in <code class="docutils literal">BODY_END</code></p>
54
+<p>On the other hand, it's possible that it requires you to load some CSS files.
55
+The right place for that is in the document's <code class="docutils literal">&lt;HEAD&gt;</code> so they should be added
56
+in <code class="docutils literal">EXTRA_HEAD_DATA</code></p>
57
+</dd>
58
+<dt>Part 4: assets</dt>
59
+<dd><p>For sharing code that doesn't rely on a social sharing service, you may need to add CSS, Image, or JS
60
+files to your site</p>
61
+</dd>
62
+</dl>
63
+</section>
64
+<section id="sharenice">
65
+<h1><a class="toc-backref" href="#toc-entry-2" role="doc-backlink">ShareNice</a></h1>
66
+<p><a class="reference external" href="https://graingert.co.uk/shareNice/">ShareNice</a> is &quot;written in order to provide social sharing features to
67
+web developers and website administrators who wish to maintain and protect their users' privacy&quot;
68
+which sounds cool to me.</p>
69
+<p>Let's go step by step into integrating the hosted version of ShareNice into a Nikola site.</p>
70
+<p>For testing purposes, let's do it on a demo site:</p>
71
+<pre class="literal-block">$ nikola init --demo sharenice_test
72
+A new site with example data has been created at sharenice_test.
73
+See README.txt in that folder for more information.
74
+$ cd sharenice_test/</pre>
75
+<p>To see what's going on, let's start Nikola in &quot;auto mode&quot;. This should build the
76
+site and open a web browser showing the default configuration, with the AddThis widget:</p>
77
+<pre class="literal-block">$ nikola auto -b</pre>
78
+<p>First, let's add the HTML snippet that will show the sharing options. In your conf.py, set this, which
79
+is the HTML code suggested by ShareNice:</p>
80
+<pre class="code python"><a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-1"></a><span class="n">SOCIAL_BUTTONS_CODE</span> <span class="o">=</span> <span class="s2">&quot;&quot;&quot;&lt;div id=&quot;shareNice&quot; data-share-label=&quot;Share&quot;</span>
81
+<a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-2"></a><span class="s2">    data-color-scheme=&quot;black&quot; data-icon-size=&quot;32&quot; data-panel-bottom=&quot;plain&quot;</span>
82
+<a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-3"></a><span class="s2">    data-services=&quot;plus.google.com,facebook.com,digg.com,email,delicious.com,twitter.com&quot;</span>
83
+<a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-4"></a><span class="s2">    style=&quot;float:right&quot;&gt;&lt;/div&gt;&quot;&quot;&quot;</span>
84
+<a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-5"></a>
85
+<a name="rest_code_d45bd5e47f254bfeb9aa565ed399def8-6"></a><span class="n">BODY_END</span> <span class="o">=</span> <span class="s2">&quot;&quot;&quot;&lt;script src=&quot;https://graingert.co.uk/shareNice/code.js&quot;&gt;&lt;/script&gt;&quot;&quot;&quot;</span>
86
+</pre><p>And you should now see a sharing box at the bottom right of the page.</p>
87
+<p>Main problem remaining is that it doesn't really look good and integrated in the page layout.
88
+I suggest changing the code to this which looks nicer, but still has some placement issues:</p>
89
+<pre class="code python"><a name="rest_code_b749fc146e7e47cc8686e5aaf4c038f1-1"></a><span class="n">SOCIAL_BUTTONS_CODE</span> <span class="o">=</span> <span class="s2">&quot;&quot;&quot;&lt;div id=&quot;shareNice&quot; data-share-label=&quot;Share&quot;</span>
90
+<a name="rest_code_b749fc146e7e47cc8686e5aaf4c038f1-2"></a><span class="s2">    data-color-scheme=&quot;black&quot; data-icon-size=&quot;32&quot; data-panel-bottom=&quot;plain&quot;</span>
91
+<a name="rest_code_b749fc146e7e47cc8686e5aaf4c038f1-3"></a><span class="s2">    data-services=&quot;plus.google.com,facebook.com,email,twitter.com&quot;</span>
92
+<a name="rest_code_b749fc146e7e47cc8686e5aaf4c038f1-4"></a><span class="s2">    style=&quot;position: absolute; left: 20px; top: 60px;&quot;&gt;&lt;/div&gt;&quot;&quot;&quot;</span>
93
+</pre><p>If anyone comes up with a better idea of styling/placement, just let me know ;-)</p>
94
+<p>One bad bit of this so far is that you are now using a script from another site, and that
95
+doesn't let Nikola perform as many optimizations to your page as it could.
96
+So, if you really want to go the extra mile to save a few KB and round trips, you <em>could</em>
97
+install your own copy from the <a class="reference external" href="https://github.com/mischat/shareNice">github repo</a> and
98
+use that instead of the copy at <a class="reference external" href="https://graingert.co.uk/shareNice">ShareNice</a>.</p>
99
+<p>Then, you can create your own theme inheriting from the one you are using and add the CSS
100
+and JS files from ShareNice into your <code class="docutils literal">bundles</code> configuration so they are combined and
101
+minified.</p>
102
+</section>
103
+<section id="socialshareprivacy">
104
+<h1><a class="toc-backref" href="#toc-entry-3" role="doc-backlink">SocialSharePrivacy</a></h1>
105
+<section id="the-hard-way">
106
+<h2><a class="toc-backref" href="#toc-entry-4" role="doc-backlink">The Hard Way</a></h2>
107
+<p><a class="reference external" href="https://github.com/panzi/SocialSharePrivacy">SocialSharePrivacy</a> is &quot;a jQuery plugin that
108
+lets you add social share buttons to your website that don't allow the social sites to track
109
+your users.&quot; Nice!</p>
110
+<p>Let's go step-by-step into integrating SocialSharePrivacy into a Nikola site. To improve
111
+privacy, they recommend you not use the hosted service so we'll do it the hard way, by
112
+getting and distributing everything in our own site.</p>
113
+<p><a class="reference external" href="https://github.com/panzi/SocialSharePrivacy">https://github.com/panzi/SocialSharePrivacy</a></p>
114
+<p>For testing purposes, let's do it on a demo site:</p>
115
+<pre class="literal-block">$ nikola init --demo ssp_test
116
+A new site with example data has been created at ssp_test.
117
+See README.txt in that folder for more information.
118
+$ cd ssp_test/</pre>
119
+<p>To see what's going on, let's start Nikola in &quot;auto mode&quot;. This should build the
120
+site and open a web browser showing the default configuration, with the AddThis widget:</p>
121
+<pre class="literal-block">$ nikola auto -b</pre>
122
+<p>Now, download <a class="reference external" href="https://github.com/panzi/SocialSharePrivacy/archive/master.zip">the current version</a>
123
+and unzip it. You will have a <code class="docutils literal"><span class="pre">SocialSharePrivacy-master</span></code> folder with lots of stuff in it.</p>
124
+<p>First, we need to build it (this requires a working and modern uglifyjs, this may not be easy):</p>
125
+<pre class="literal-block">$ cd SocialSharePrivacy-master
126
+$ sh build.sh -m gplus,twitter,facebook,mail -s &quot;/assets/css/socialshareprivacy.css&quot; -a off</pre>
127
+<p>You will now have several files in a <code class="docutils literal">build</code> folder. We need to bring them into the site:</p>
128
+<pre class="literal-block">$ cp -Rv SocialSharePrivacy-master/build/* files/
129
+$ cp -R SocialSharePrivacy-master/images/ files/assets/</pre>
130
+<p>Edit your <code class="docutils literal">conf.py</code>:</p>
131
+<pre class="code python"><a name="rest_code_65b770dc716e498eb31cf1abee0d274c-1"></a><span class="n">BODY_END</span> <span class="o">=</span> <span class="s2">&quot;&quot;&quot;</span>
132
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-2"></a><span class="s2">&lt;script src=&quot;/javascripts/jquery.socialshareprivacy.min.js&quot;&gt;&lt;/script&gt;</span>
133
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-3"></a><span class="s2">&lt;script&gt;</span>
134
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-4"></a><span class="s2">$(document).ready(function () {</span>
135
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-5"></a><span class="s2">    $(&#39;.share&#39;).socialSharePrivacy();</span>
136
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-6"></a><span class="s2">});</span>
137
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-7"></a><span class="s2">&lt;/script&gt;</span>
138
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-8"></a><span class="s2">&quot;&quot;&quot;</span>
139
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-9"></a>
140
+<a name="rest_code_65b770dc716e498eb31cf1abee0d274c-10"></a><span class="n">SOCIAL_BUTTONS_CODE</span> <span class="o">=</span> <span class="s2">&quot;&quot;&quot;&lt;div class=&quot;share&quot;&gt;&lt;/div&gt;&quot;&quot;&quot;</span>
141
+</pre><p>In my experience this produces a broken, duplicate, semi-working thing. YMMV and if you make it work correctly, let me know how :-)</p>
142
+</section>
143
+<section id="the-easy-way">
144
+<h2><a class="toc-backref" href="#toc-entry-5" role="doc-backlink">The Easy Way</a></h2>
145
+<p>Go to <a class="reference external" href="https://panzi.github.io/SocialSharePrivacy/">https://panzi.github.io/SocialSharePrivacy/</a> and use the provided form to get the code. Make sure you check &quot;I already use JQuery&quot;
146
+if you are using one of the themes that require it, like site or default, select the services you want, and use your disqus name if
147
+you have one.</p>
148
+<p>It will give you 3 code snippets:</p>
149
+<dl class="simple">
150
+<dt>&quot;Insert this once in the head of your page&quot;</dt>
151
+<dd><p>Put it in <code class="docutils literal">BODY_END</code></p>
152
+</dd>
153
+<dt>&quot;Insert this wherever you want a share widget displayed&quot;</dt>
154
+<dd><p>Put it in <code class="docutils literal">SOCIAL_BUTTONS_CODE</code></p>
155
+</dd>
156
+<dt>&quot;Insert this once anywhere after the other code&quot;</dt>
157
+<dd><p>Put it in <code class="docutils literal">BODY_END</code></p>
158
+</dd>
159
+</dl>
160
+<p>That should give you a working integration (not tested)</p>
161
+</section>
162
+</section>

+ 0 - 0
cache/pages/social_buttons.html.dep View File


File diff suppressed because it is too large
+ 449 - 0
cache/pages/theming.html


+ 0 - 0
cache/pages/theming.html.dep View File


+ 14 - 0
cache/posts/1.html View File

@@ -0,0 +1,14 @@
1
+<figure>
2
+<a class="reference external image-reference" href="https://farm1.staticflickr.com/138/352972944_4f9d568680_z.jpg?zz=1"><img alt="Nikola Tesla Corner by nicwest, on Flickr" class="thumbnail" src="https://farm1.staticflickr.com/138/352972944_4f9d568680.jpg" /></a>
3
+</figure>
4
+<p>If you can see this in a web browser, it means you managed to install Nikola,
5
+and build a site using it. Congratulations!</p>
6
+<p>Next steps:</p>
7
+<ul class="simple">
8
+<li><p><a class="reference external" href="/pages/handbook.html">Read the manual</a></p></li>
9
+<li><p><a class="reference external" href="https://getnikola.com">Visit the Nikola website to learn more</a></p></li>
10
+<li><p><a class="reference external" href="link://gallery/demo">See a demo photo gallery</a></p></li>
11
+<li><p><a class="reference external" href="/pages/listings-demo.html">See a demo listing</a></p></li>
12
+<li><p><a class="reference external" href="/pages/dr-nikolas-vendetta.html">See a demo of a longer text</a></p></li>
13
+</ul>
14
+<p>Send feedback to <a class="reference external" href="mailto:info&#64;getnikola.com">info&#64;getnikola.com</a>!</p>

+ 0 - 0
cache/posts/1.html.dep View File


File diff suppressed because it is too large
+ 1439 - 0
conf.py


BIN
files/favicon.ico View File


BIN
files/images/nikola.png View File


+ 63 - 0
files/refresh.js View File

@@ -0,0 +1,63 @@
1
+
2
+
3
+
4
+var seconds = 1;
5
+var divid = "shoutcastdiv";
6
+var url = "test.txt";
7
+
8
+////////////////////////////////
9
+//
10
+// Refreshing the DIV
11
+//
12
+////////////////////////////////
13
+
14
+function refreshdiv(){
15
+
16
+// The XMLHttpRequest object
17
+
18
+var xmlHttp;
19
+try{
20
+xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
21
+}
22
+catch (e){
23
+try{
24
+xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
25
+}
26
+catch (e){
27
+try{
28
+xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
29
+}
30
+catch (e){
31
+alert("Your browser does not support AJAX.");
32
+return false;
33
+}
34
+}
35
+}
36
+
37
+// Timestamp for preventing IE caching the GET request
38
+
39
+fetch_unix_timestamp = function()
40
+{
41
+return parseInt(new Date().getTime().toString().substring(0, 10))
42
+}
43
+
44
+var timestamp = fetch_unix_timestamp();
45
+var nocacheurl = url+"?t="+timestamp;
46
+
47
+// The code...
48
+
49
+xmlHttp.onreadystatechange=function(){
50
+if(xmlHttp.readyState==4){
51
+document.getElementById(divid).innerHTML=xmlHttp.responseText;
52
+setTimeout('refreshdiv()',seconds*1000);
53
+}
54
+}
55
+xmlHttp.open("GET",url,true);
56
+xmlHttp.send(null);
57
+}
58
+
59
+// Start the refreshing process
60
+
61
+window.onload = function startrefresh(){
62
+setTimeout('refreshdiv()',seconds*1000);
63
+}

+ 60 - 0
files/refresh.js~ View File

@@ -0,0 +1,60 @@
1
+var seconds = 10;
2
+var divid = "shoutcastdiv";
3
+var url = "/shoutcastajax/shoutcast_song_title.php";
4
+
5
+////////////////////////////////
6
+//
7
+// Refreshing the DIV
8
+//
9
+////////////////////////////////
10
+
11
+function refreshdiv(){
12
+
13
+// The XMLHttpRequest object
14
+
15
+var xmlHttp;
16
+try{
17
+xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
18
+}
19
+catch (e){
20
+try{
21
+xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
22
+}
23
+catch (e){
24
+try{
25
+xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
26
+}
27
+catch (e){
28
+alert("Your browser does not support AJAX.");
29
+return false;
30
+}
31
+}
32
+}
33
+
34
+// Timestamp for preventing IE caching the GET request
35
+
36
+fetch_unix_timestamp = function()
37
+{
38
+return parseInt(new Date().getTime().toString().substring(0, 10))
39
+}
40
+
41
+var timestamp = fetch_unix_timestamp();
42
+var nocacheurl = url+"?t="+timestamp;
43
+
44
+// The code...
45
+
46
+xmlHttp.onreadystatechange=function(){
47
+if(xmlHttp.readyState==4){
48
+document.getElementById(divid).innerHTML=xmlHttp.responseText;
49
+setTimeout('refreshdiv()',seconds*1000);
50
+}
51
+}
52
+xmlHttp.open("GET",nocacheurl,true);
53
+xmlHttp.send(null);
54
+}
55
+
56
+// Start the refreshing process
57
+
58
+window.onload = function startrefresh(){
59
+setTimeout('refreshdiv()',seconds*1000);
60
+}

+ 1 - 0
files/test.txt View File

@@ -0,0 +1 @@
1
+Salut!

+ 1 - 0
galleries/demo/exclude.meta View File

@@ -0,0 +1 @@
1
+tesla2_lg.jpg

+ 4 - 0
galleries/demo/index.txt View File

@@ -0,0 +1,4 @@
1
+.. title: Nikola Tesla
2
+
3
+Some public domain pictures of Nikola Tesla
4
+(copied from `here <https://kerryr.net/pioneers/gallery/tesla.htm>`_)

+ 13 - 0
galleries/demo/metadata.sample.yml View File

@@ -0,0 +1,13 @@
1
+---
2
+name: tesla_tower1_lg.jpg
3
+caption: Wardenclyffe Tower
4
+built_in: 1904
5
+order: 2
6
+---
7
+name: tesla4_lg.jpg
8
+order: 0
9
+---
10
+name: tesla_conducts_lg.jpg
11
+caption: Nikola Tesla conducts electricity
12
+order: 1
13
+---

BIN
galleries/demo/tesla2_lg.jpg View File


BIN
galleries/demo/tesla4_lg.jpg View File


BIN
galleries/demo/tesla_conducts_lg.jpg View File


BIN
galleries/demo/tesla_lightning1_lg.jpg View File


BIN
galleries/demo/tesla_lightning2_lg.jpg View File


BIN
galleries/demo/tesla_tower1_lg.jpg View File


BIN
images/frontispiece.jpg View File


+ 0 - 0
images/illus_001.jpg View File


Some files were not shown because too many files changed in this diff