jekyll-rtd-theme 1.1.1 → 1.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +15 -11
- data/_includes/addons/analytics.liquid +10 -0
- data/_includes/assets/common.js +150 -26
- data/_includes/assets/search.js +4 -4
- data/_includes/assets/sw.caches.js +33 -0
- data/_includes/extend/toctree.liquid +1 -1
- data/_includes/extra/footer.html +0 -0
- data/_includes/extra/head.html +0 -0
- data/_includes/reset/defaults.liquid +16 -24
- data/_includes/toctree.liquid +6 -2
- data/_layouts/default.liquid +31 -10
- data/_layouts/plugins/compress.liquid +11 -7
- data/_layouts/plugins/extension.liquid +24 -0
- data/_sass/_album.scss +3 -9
- data/_sass/{site.scss → jekyll-rtd-theme.scss} +36 -3
- data/assets/js/mermaid.min.js +31 -0
- data/assets/robots.liquid +1 -1
- data/assets/sitemap.liquid +1 -1
- data/assets/sw.caches.liquid +8 -0
- metadata +10 -5
- data/assets/js/theme.js +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e623e1c2a34e05c520de194e2893323851d344c01638700815240352903369f2
|
4
|
+
data.tar.gz: e5a5b57710023f64e0767f9e347fbbfe9b39b192975ec4f33293863f9ec6783f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ceed9ba1e1c855a4a38dc5a6a8c78dcdf81922969fd09a450c83443c228f62cf56b2198d516b6452d12c3f1018f2e65e3dc636756f0f8c859e2346b6859eed24
|
7
|
+
data.tar.gz: 4fb3d3b40f6588d790326d43b187ddf61b275e96600543aaef84521eeb0cfc0063af8a714771cfbb289fa3396862c4bf4400a2efaf8b8d0c0f81e9036e917543
|
data/README.md
CHANGED
@@ -5,31 +5,35 @@
|
|
5
5
|
[![](https://data.jsdelivr.com/v1/package/gh/rundocs/jekyll-rtd-theme/badge)][cdn]
|
6
6
|
[![](https://www.codefactor.io/repository/github/rundocs/jekyll-rtd-theme/badge)][codefactor]
|
7
7
|
[![](https://img.shields.io/badge/featured%20on-JekyllThemes-red.svg)](https://jekyll-themes.com)
|
8
|
+
[![](https://badges.gitter.im/rundocs/jekyll-rtd-theme.svg)][gitter]
|
8
9
|
|
9
|
-
|
10
|
+
GitHub-flavored docs theme for Jekyll, based on sphinx_rtd_theme
|
10
11
|
|
11
|
-
|
12
|
+
<img class="shadow-box" width="50%" alt="jekyll-rtd-theme" src="https://user-images.githubusercontent.com/68011645/89026666-ad3a8680-d35b-11ea-9f4b-d3fe26ae12ed.png">
|
13
|
+
|
14
|
+
## Quick start
|
15
|
+
```yml
|
16
|
+
remote_theme: rundocs/jekyll-rtd-theme
|
17
|
+
```
|
18
|
+
You can [generate](https://github.com/rundocs/starter-slim/generate) with the same files and folders from [rundocs/starter-slim](https://github.com/rundocs/starter-slim/)
|
12
19
|
|
13
20
|
## Features
|
14
|
-
- Automatically generate sidebar based on directory
|
15
|
-
- Only need one file `_config.yml` to configure site
|
16
|
-
- Search engine optimized
|
21
|
+
- Automatically generate nested sidebar based on directory
|
17
22
|
- Multi-language supported
|
23
|
+
- Search engine optimized
|
18
24
|
- Document search (RegExp supported)
|
19
25
|
- Support third-party comments
|
20
26
|
- Google, Baidu, CNZZ Analytics supported
|
21
|
-
|
22
|
-
## Roadmap
|
23
|
-
See the [open issues](https://github.com/rundocs/jekyll-rtd-theme/issues) for a list of proposed features (and known issues)
|
27
|
+
- Just need one file `_config.yml` to configure site
|
24
28
|
|
25
29
|
## Documents
|
26
|
-
|
30
|
+
For full documentation, please refer to [rundocs.io](https://rundocs.io/), You can also view [the theme related tests documentation](https://rundocs.github.io/jekyll-rtd-theme)
|
27
31
|
|
28
|
-
##
|
32
|
+
## License
|
29
33
|
The theme is available as open source under the terms of the [MIT License](https://github.com/rundocs/jekyll-rtd-theme/blob/master/LICENSE).
|
30
34
|
|
31
|
-
|
32
35
|
[repository]: https://github.com/rundocs/jekyll-rtd-theme
|
33
36
|
[rubygem]: https://rubygems.org/gems/jekyll-rtd-theme
|
34
37
|
[cdn]: https://cdn.jsdelivr.net/gh/rundocs/jekyll-rtd-theme/
|
35
38
|
[codefactor]: https://www.codefactor.io/repository/github/rundocs/jekyll-rtd-theme
|
39
|
+
[gitter]: https://gitter.im/rundocs/jekyll-rtd-theme?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
|
@@ -6,3 +6,13 @@
|
|
6
6
|
</a>
|
7
7
|
</dd>
|
8
8
|
</dl>
|
9
|
+
|
10
|
+
<script>
|
11
|
+
$(document).ready(function() {
|
12
|
+
let analytics = new URL("https://rundocs-analytics.glitch.me/collect?v={{ version }}&lang={{ lang }}");
|
13
|
+
analytics.searchParams.append("user_lang", navigator.language);
|
14
|
+
analytics.searchParams.append("host", location.host);
|
15
|
+
analytics.searchParams.append("platform", navigator.platform);
|
16
|
+
$.getJSON(analytics.toString(), (data) => $("#counter").html(data.count));
|
17
|
+
});
|
18
|
+
</script>
|
data/_includes/assets/common.js
CHANGED
@@ -1,9 +1,6 @@
|
|
1
1
|
$(document).ready(function() {
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
SphinxRtdTheme.Navigation.reset = function() {
|
6
|
-
const link = $(".wy-menu-vertical").find(`[href="${location.pathname}"]`);
|
2
|
+
function initialize(name) {
|
3
|
+
let link = $(".wy-menu-vertical").find(`[href="${decodeURI(name)}"]`);
|
7
4
|
if (link.length > 0) {
|
8
5
|
$(".wy-menu-vertical .current").removeClass("current");
|
9
6
|
link.addClass("current");
|
@@ -14,34 +11,161 @@ $(document).ready(function() {
|
|
14
11
|
link.closest("li.toctree-l4").addClass("current");
|
15
12
|
link.closest("li.toctree-l5").addClass("current");
|
16
13
|
}
|
17
|
-
}
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
14
|
+
}
|
15
|
+
|
16
|
+
function toggleCurrent(link) {
|
17
|
+
let closest = link.closest("li");
|
18
|
+
closest.siblings("li.current").removeClass("current");
|
19
|
+
closest.siblings().find("li.current").removeClass("current");
|
20
|
+
closest.find("> ul li.current").removeClass("current");
|
21
|
+
closest.toggleClass("current");
|
22
|
+
}
|
23
|
+
|
24
|
+
function toc() {
|
25
|
+
$(".wy-menu-vertical li.current").append('<ul class="content-toc"></ul>').html(function() {
|
26
|
+
let level = parseInt(this.dataset.level);
|
27
|
+
let temp = 0;
|
28
|
+
let stack = [$(this).find(".content-toc")];
|
29
|
+
|
30
|
+
$(".document").find("h2,h3,h4,h5,h6").each(function() {
|
31
|
+
let anchor = $("<a/>").addClass("reference internal").text($(this).text()).attr("href", `#${this.id}`);
|
32
|
+
let tagLevel = parseInt(this.tagName.slice(1)) - 1;
|
33
|
+
|
34
|
+
if (tagLevel > temp) {
|
35
|
+
let parent = stack[0].children("li:last")[0];
|
36
|
+
if (parent) {
|
37
|
+
stack.unshift($("<ul/>").appendTo(parent));
|
38
|
+
}
|
39
|
+
} else {
|
40
|
+
stack.splice(0, Math.min(temp - tagLevel, Math.max(stack.length - 1, 0)));
|
25
41
|
}
|
26
|
-
|
27
|
-
|
42
|
+
temp = tagLevel;
|
43
|
+
|
44
|
+
$("<li/>").addClass(`toctree-l${level + tagLevel}`).append(anchor).appendTo(stack[0]);
|
45
|
+
});
|
46
|
+
if (!stack[0].html()) {
|
47
|
+
stack[0].remove();
|
28
48
|
}
|
29
49
|
});
|
30
|
-
|
31
|
-
|
32
|
-
|
50
|
+
}
|
51
|
+
|
52
|
+
function set(name, value) {
|
53
|
+
return localStorage.setItem(name, value);
|
54
|
+
}
|
55
|
+
|
56
|
+
function get(name) {
|
57
|
+
return localStorage.getItem(name) || false;
|
58
|
+
}
|
59
|
+
|
60
|
+
function restore() {
|
61
|
+
let scroll = get("scroll");
|
62
|
+
let scrollTime = get("scrollTime");
|
63
|
+
let scrollHost = get("scrollHost");
|
64
|
+
|
65
|
+
if (scroll && scrollTime && scrollHost) {
|
66
|
+
if (scrollHost == location.host && (Date.now() - scrollTime < 6e5)) {
|
67
|
+
$(".wy-side-scroll").scrollTop(scroll);
|
33
68
|
}
|
69
|
+
}
|
70
|
+
$(".wy-side-scroll").scroll(function() {
|
71
|
+
set("scroll", this.scrollTop);
|
72
|
+
set("scrollTime", Date.now());
|
73
|
+
set("scrollHost", location.host);
|
34
74
|
});
|
35
75
|
}
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
76
|
+
|
77
|
+
function highlight() {
|
78
|
+
let text = new URL(location.href).searchParams.get("highlight");
|
79
|
+
let box = ".highlighted-box";
|
80
|
+
|
81
|
+
if (text) {
|
82
|
+
$(".section").find("*").each(function() {
|
83
|
+
try {
|
84
|
+
if (this.outerHTML.match(new RegExp(text, "im"))) {
|
85
|
+
$(this).addClass("highlighted-box");
|
86
|
+
}
|
87
|
+
} catch (e) {
|
88
|
+
debug(e.message);
|
89
|
+
}
|
90
|
+
});
|
91
|
+
$(".section").find(box).each(function() {
|
92
|
+
if (($(this).find(box).length > 0)) {
|
93
|
+
$(this).removeClass(box);
|
94
|
+
}
|
95
|
+
});
|
96
|
+
}
|
40
97
|
}
|
98
|
+
|
41
99
|
anchors.add();
|
100
|
+
toc();
|
101
|
+
initialize(location.pathname);
|
102
|
+
restore();
|
103
|
+
highlight();
|
104
|
+
|
105
|
+
/* nested ul */
|
106
|
+
$(".wy-menu-vertical ul").siblings("a").each(function() {
|
107
|
+
let link = $(this);
|
108
|
+
let expand = $('<span class="toctree-expand"></span>');
|
109
|
+
|
110
|
+
expand.on("click", function(e) {
|
111
|
+
e.stopPropagation();
|
112
|
+
toggleCurrent(link);
|
113
|
+
return false;
|
114
|
+
});
|
115
|
+
link.prepend(expand);
|
116
|
+
});
|
117
|
+
|
118
|
+
/* admonition */
|
119
|
+
$(".admonition-title").each(function() {
|
120
|
+
$(this).html(ui.admonition[$(this).attr("ui")]);
|
121
|
+
});
|
122
|
+
|
123
|
+
/* bind */
|
124
|
+
$(document).on("click", '[data-toggle="wy-nav-top"]', function() {
|
125
|
+
$('[data-toggle="wy-nav-shift"]').toggleClass("shift");
|
126
|
+
$('[data-toggle="rst-versions"]').toggleClass("shift");
|
127
|
+
});
|
128
|
+
$(document).on("click", ".wy-menu-vertical .current ul li a", function() {
|
129
|
+
$('[data-toggle="wy-nav-shift"]').removeClass("shift");
|
130
|
+
$('[data-toggle="rst-versions"]').toggleClass("shift");
|
131
|
+
toggleCurrent($(this));
|
132
|
+
|
133
|
+
$("html,body").animate({
|
134
|
+
scrollTop: $(this.hash).offset().top
|
135
|
+
}, 500);
|
136
|
+
});
|
137
|
+
$(document).on("scroll", function() {
|
138
|
+
let start = $(this).scrollTop() + ($(window).height() * 0.382);
|
139
|
+
let items = [];
|
42
140
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
141
|
+
$(".document").find("h1,h2,h3,h4,h5,h6").each(function() {
|
142
|
+
items.push({
|
143
|
+
offset: $(this).offset().top,
|
144
|
+
id: this.id,
|
145
|
+
level: parseInt(this.tagName.slice(1))
|
146
|
+
});
|
147
|
+
});
|
148
|
+
for (let i = 0; i < items.length; i++) {
|
149
|
+
if (start > items[i].offset) {
|
150
|
+
if (i < items.length - 1) {
|
151
|
+
if (start < items[i + 1].offset) {
|
152
|
+
if (items[i].level == 1) {
|
153
|
+
initialize(location.pathname);
|
154
|
+
} else {
|
155
|
+
initialize("#" + items[i].id);
|
156
|
+
}
|
157
|
+
}
|
158
|
+
} else {
|
159
|
+
initialize("#" + items[i].id);
|
160
|
+
}
|
161
|
+
}
|
162
|
+
}
|
163
|
+
});
|
164
|
+
$(document).on("click", '[data-toggle="rst-current-version"]', function() {
|
165
|
+
$('[data-toggle="rst-versions"]').toggleClass("shift-up");
|
166
|
+
});
|
167
|
+
$(window).bind("resize", function() {
|
168
|
+
requestAnimationFrame(function() {});
|
169
|
+
});
|
170
|
+
$(window).bind("hashchange", (e) => initialize(location.hash || location.pathname));
|
47
171
|
});
|
data/_includes/assets/search.js
CHANGED
@@ -13,7 +13,7 @@ function search(data) {
|
|
13
13
|
$(".search").empty();
|
14
14
|
$(".search-summary").html(i18n[lang].search_results_not_found);
|
15
15
|
$("#search-results h2").html(i18n[lang].search_results);
|
16
|
-
return
|
16
|
+
return debug(e.message);
|
17
17
|
}
|
18
18
|
|
19
19
|
function slice(content, min, max) {
|
@@ -32,7 +32,7 @@ function search(data) {
|
|
32
32
|
}
|
33
33
|
}
|
34
34
|
} catch (e) {
|
35
|
-
|
35
|
+
debug(e.message);
|
36
36
|
}
|
37
37
|
try {
|
38
38
|
if (page.content) {
|
@@ -40,7 +40,7 @@ function search(data) {
|
|
40
40
|
content = page.content.match(regexp);
|
41
41
|
}
|
42
42
|
} catch (e) {
|
43
|
-
|
43
|
+
debug(e.message);
|
44
44
|
}
|
45
45
|
if (title || content) {
|
46
46
|
let result = [`<a href="${ui.baseurl}${page.url}?highlight=${text}">${page.title}</a>`];
|
@@ -72,5 +72,5 @@ function search(data) {
|
|
72
72
|
}
|
73
73
|
|
74
74
|
$(document).ready(function() {
|
75
|
-
$.ajax(`${ui.baseurl}/pages.json`).done(search).fail((xhr, message) =>
|
75
|
+
$.ajax(`${ui.baseurl}/pages.json`).done(search).fail((xhr, message) => debug(message));
|
76
76
|
});
|
@@ -0,0 +1,33 @@
|
|
1
|
+
self.addEventListener("activate", function(event) {
|
2
|
+
let cacheWhitelist = ["rundocs-{{ version }}"];
|
3
|
+
|
4
|
+
event.waitUntil(
|
5
|
+
caches.keys().then(function(keyList) {
|
6
|
+
return Promise.all(keyList.map(function(key) {
|
7
|
+
if (cacheWhitelist.indexOf(key) === -1) {
|
8
|
+
return caches.delete(key);
|
9
|
+
}
|
10
|
+
}));
|
11
|
+
})
|
12
|
+
);
|
13
|
+
});
|
14
|
+
|
15
|
+
self.addEventListener("fetch", function(e) {
|
16
|
+
if (/^https:\/\/cdn\.jsdelivr\.net\/gh\/rundocs\/jekyll-rtd-theme@.+/.exec(e.request.url)) {
|
17
|
+
e.respondWith(
|
18
|
+
caches.match(e.request).then(function(resp) {
|
19
|
+
if (resp !== undefined) {
|
20
|
+
return resp;
|
21
|
+
} else {
|
22
|
+
return fetch(e.request, { cache: "no-store" }).then(function(resp) {
|
23
|
+
let clone = resp.clone();
|
24
|
+
caches.open("rundocs-{{ version }}").then(function(cache) {
|
25
|
+
cache.put(e.request, clone);
|
26
|
+
});
|
27
|
+
return resp;
|
28
|
+
}).catch(console.log);
|
29
|
+
}
|
30
|
+
})
|
31
|
+
);
|
32
|
+
}
|
33
|
+
});
|
@@ -24,7 +24,7 @@
|
|
24
24
|
{%- assign level = level | minus: 1 -%}
|
25
25
|
{%- endif -%}
|
26
26
|
|
27
|
-
<li class="toctree-l{{ level }} {{ current }}">
|
27
|
+
<li class="toctree-l{{ level }} {{ current }}" data-sort="{{ item.sort }}" data-level="{{ level }}">
|
28
28
|
<a class="reference internal {{ current }}" href="{{ item.url | relative_url }}">
|
29
29
|
{%- if item.sort and site.show_sorted != false -%}
|
30
30
|
{{ item.sort }}. {{ item.title | default: item.url }}
|
File without changes
|
File without changes
|
@@ -1,14 +1,14 @@
|
|
1
1
|
{%- assign description = content | strip_html | split: " " | join: " " | escape | truncate: 150 -%}
|
2
|
-
{%- assign version = "1.1.
|
2
|
+
{%- assign version = "1.1.6" -%}
|
3
3
|
{%- assign addons = "github, i18n, plugins, analytics" | split: ", " -%}
|
4
4
|
|
5
5
|
{%- assign schema_date = page.date | default: site.time | date_to_xmlschema -%}
|
6
6
|
{%- assign schema_modi = site.time | date_to_xmlschema -%}
|
7
|
-
{%- assign schema_surl = page.url | absolute_url |
|
7
|
+
{%- assign schema_surl = page.url | absolute_url | xml_escape -%}
|
8
8
|
|
9
9
|
{% comment %} scss {% endcomment %}
|
10
10
|
{%- capture site_scss -%}
|
11
|
-
@import "
|
11
|
+
@import "jekyll-rtd-theme.scss";
|
12
12
|
{% if site.fluid %}@import "fluid.scss";{% endif %}
|
13
13
|
{% include assets/custom.scss %} {{ site.scss }}
|
14
14
|
{%- endcapture -%}
|
@@ -22,25 +22,15 @@
|
|
22
22
|
|
23
23
|
{% comment %} github-metadata {% endcomment %}
|
24
24
|
{%- if site.github_metadata != false -%}
|
25
|
-
{%-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
{%- capture github_edit_link %}{% github_edit_link %}{% endcapture -%}
|
33
|
-
{%- else -%}
|
34
|
-
{%- assign author = site.author | default: "[author]" -%}
|
35
|
-
{%- assign branch = "[branch]" -%}
|
36
|
-
{%- assign commit = "[commit]" -%}
|
37
|
-
{%- assign repository_url = "#" -%}
|
38
|
-
{%- assign issues_url = "#" -%}
|
39
|
-
{%- assign zip_url = "#" -%}
|
40
|
-
{%- assign github_edit_link = "#" -%}
|
41
|
-
{%- endif -%}
|
25
|
+
{%- assign author = site.author | default: site.github.owner_name -%}
|
26
|
+
{%- assign branch = site.github.source.branch -%}
|
27
|
+
{%- assign commit = site.github.build_revision | slice: 0, 7 -%}
|
28
|
+
{%- assign repository_url = site.github.repository_url -%}
|
29
|
+
{%- assign issues_url = site.github.issues_url -%}
|
30
|
+
{%- assign zip_url = site.github.zip_url -%}
|
31
|
+
{%- capture github_edit_link %}{% github_edit_link %}{% endcapture -%}
|
42
32
|
{%- else -%}
|
43
|
-
{%- assign author = site.author
|
33
|
+
{%- assign author = site.author -%}
|
44
34
|
{%- assign branch = "" -%}
|
45
35
|
{%- assign commit = "" -%}
|
46
36
|
{%- assign repository_url = "" -%}
|
@@ -68,11 +58,13 @@
|
|
68
58
|
{% comment %} content {% endcomment %}
|
69
59
|
{%- assign content = content
|
70
60
|
| replace: '’', "'"
|
71
|
-
| replace: '<pre class="highlight"><code>',
|
72
|
-
| replace: '<pre><code class=',
|
61
|
+
| replace: '<pre class="highlight"><code>', '<pre class="notranslate">'
|
62
|
+
| replace: '<pre><code class="', '<pre class="notranslate '
|
73
63
|
| replace: "</code></pre>", "</pre>"
|
74
64
|
| replace: '<code class="language-plaintext highlighter-rouge">', '<code class="literal">'
|
75
|
-
| replace: "<
|
65
|
+
| replace: "<dl>", '<dl class="definition">'
|
66
|
+
| replace: "<table>", '<div class="wy-table-responsive"><table class="docutils align-default">'
|
67
|
+
| replace: "</table>", '</table></div>' -%}
|
76
68
|
|
77
69
|
{% comment %} prev and next {% endcomment %}
|
78
70
|
{%- assign workdir_files = site_files | where_exp: "item", "item.dir == page.dir" -%}
|
data/_includes/toctree.liquid
CHANGED
@@ -10,9 +10,13 @@
|
|
10
10
|
{%- capture current -%}
|
11
11
|
{%- if page.url == item.url %}current{% endif -%}
|
12
12
|
{%- endcapture %}
|
13
|
-
<li class="toctree-l{{ level }} {{ current }}">
|
13
|
+
<li class="toctree-l{{ level }} {{ current }}" data-sort="{{ item.sort }}" data-level="{{ level }}">
|
14
14
|
<a class="reference internal {{ current }}" href="{{ item.url | relative_url }}">
|
15
|
-
{
|
15
|
+
{%- if item.sort and site.show_sorted != false -%}
|
16
|
+
{{ item.sort }}. {{ item.title | default: item.url }}
|
17
|
+
{%- else -%}
|
18
|
+
{{ item.title | default: item.url }}
|
19
|
+
{%- endif -%}
|
16
20
|
</a>
|
17
21
|
</li>
|
18
22
|
{%- endfor %}
|
data/_layouts/default.liquid
CHANGED
@@ -28,13 +28,17 @@ layout: plugins/compress
|
|
28
28
|
dataLayer.push(arguments);
|
29
29
|
}
|
30
30
|
|
31
|
-
function
|
32
|
-
|
33
|
-
"description": messages.join(":")
|
34
|
-
});
|
31
|
+
function debug() {
|
32
|
+
console.debug.apply(console, arguments);
|
35
33
|
}
|
36
34
|
|
37
35
|
gtag("js", new Date());
|
36
|
+
|
37
|
+
if ("serviceWorker" in navigator) {
|
38
|
+
navigator.serviceWorker.register("{{ site.baseurl }}/sw.caches.js");
|
39
|
+
} else {
|
40
|
+
debug("Service Worker not supported!");
|
41
|
+
}
|
38
42
|
</script>
|
39
43
|
<!-- meta -->
|
40
44
|
<meta name="description" content="{{ description }}">
|
@@ -85,12 +89,12 @@ layout: plugins/compress
|
|
85
89
|
</script>
|
86
90
|
<!-- link -->
|
87
91
|
<link rel="canonical" href="{{ schema_surl }}">
|
88
|
-
{% if prev %}<link rel="prev" href="{{ prev.url | absolute_url
|
89
|
-
{% if next %}<link rel="next" href="{{ next.url | absolute_url
|
92
|
+
{% if prev %}<link rel="prev" href="{{ prev.url | absolute_url }}">{% endif %}
|
93
|
+
{% if next %}<link rel="next" href="{{ next.url | absolute_url }}">{% endif %}
|
90
94
|
<!-- theme -->
|
91
95
|
<link rel="stylesheet" href="{{ cdn }}/assets/css/theme.css">
|
92
96
|
<link rel="stylesheet" href="{{ cdn }}/assets/css/rougify/{{ site.rougify | default: 'github' }}.css">
|
93
|
-
<style>{{ site_scss | scssify }}</style>
|
97
|
+
<style>{{ site_scss | scssify | strip_newlines }}</style>
|
94
98
|
<!-- icon -->
|
95
99
|
<link rel="icon" type="image/svg+xml" href="{{ site.baseurl }}/favicon.svg">
|
96
100
|
<!-- script -->
|
@@ -109,6 +113,7 @@ layout: plugins/compress
|
|
109
113
|
}
|
110
114
|
};
|
111
115
|
</script>
|
116
|
+
{% include extra/head.html %}
|
112
117
|
</head>
|
113
118
|
|
114
119
|
<body class="wy-body-for-nav">
|
@@ -141,8 +146,12 @@ layout: plugins/compress
|
|
141
146
|
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
|
142
147
|
<!-- MOBILE NAV -->
|
143
148
|
<nav class="wy-nav-top" aria-label="top navigation">
|
144
|
-
<
|
145
|
-
|
149
|
+
<div class="flex">
|
150
|
+
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
151
|
+
<div class="wy-nav-title">
|
152
|
+
<a href="{{ site.baseurl }}/{% if site_lang != lang %}{{ lang }}/{% endif %}">{{ site.title }}</a>
|
153
|
+
</div>
|
154
|
+
</div>
|
146
155
|
</nav>
|
147
156
|
<div class="wy-nav-content">
|
148
157
|
<div class="rst-content">
|
@@ -173,9 +182,21 @@ layout: plugins/compress
|
|
173
182
|
</section>
|
174
183
|
</div>
|
175
184
|
{%- if site.addons %}{% include addons.liquid %}{% endif %}
|
185
|
+
{% include extra/footer.html %}
|
176
186
|
<!-- script -->
|
177
|
-
<script src="{{ cdn }}/assets/js/theme.js"></script>
|
178
187
|
<script src="{{ cdn }}/assets/js/anchor.min.js"></script>
|
188
|
+
|
189
|
+
{% comment %} mermaid {% endcomment %}
|
190
|
+
{%- if content contains '<pre class="notranslate language-mermaid">' -%}
|
191
|
+
{%- if site.mermaid.custom -%}
|
192
|
+
<script src="{{ site.mermaid.custom }}"></script>
|
193
|
+
{%- else -%}
|
194
|
+
<script src="{{ cdn }}/assets/js/mermaid.min.js"></script>
|
195
|
+
{%- endif %}
|
196
|
+
<script>
|
197
|
+
mermaid.initialize({% if site.mermaid.initialize %}{{ site.mermaid.initialize | jsonify }}{% else %}{}{% endif %});
|
198
|
+
</script>
|
199
|
+
{%- endif %}
|
179
200
|
<script>
|
180
201
|
{% include assets/common.js %}
|
181
202
|
{% include assets/custom.js %} {{ site.script }}
|