jekyll-theme-satellite 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/_config.yml +82 -0
- data/_includes/loading.html +6 -0
- data/_includes/navigation.html +84 -0
- data/_includes/pagination.html +71 -0
- data/_includes/post.html +65 -0
- data/_includes/search.html +21 -0
- data/_includes/sidebar.html +83 -0
- data/_layouts/default.html +113 -0
- data/_sass/darkmode.scss +211 -0
- data/_sass/layout.scss +57 -0
- data/_sass/navigation.scss +178 -0
- data/_sass/pagination.scss +253 -0
- data/_sass/post.scss +640 -0
- data/_sass/search.scss +248 -0
- data/_sass/sidebar.scss +309 -0
- data/_sass/toc.scss +52 -0
- data/_sass/vars.scss +15 -0
- data/assets/css/highlight-dark.min.css +1 -0
- data/assets/css/highlight-default.min.css +1 -0
- data/assets/css/style.scss +89 -0
- data/assets/fonts/Lato-Regular.ttf +0 -0
- data/assets/fonts/NunitoSans-Regular.ttf +0 -0
- data/assets/fonts/Righteous-Regular.ttf +0 -0
- data/assets/img/La-Mancha.jpg +0 -0
- data/assets/img/example.jpg +0 -0
- data/assets/img/favicon.webp +0 -0
- data/assets/img/icon/book-solid.svg +1 -0
- data/assets/img/icon/calendar-days-regular.svg +1 -0
- data/assets/img/icon/clipboard-regular.svg +1 -0
- data/assets/img/icon/folder-open-regular.svg +1 -0
- data/assets/img/icon/tags-solid.svg +1 -0
- data/assets/img/loading.webp +0 -0
- data/assets/img/profile.jpg +0 -0
- data/assets/img/sorry.png +0 -0
- data/assets/img/thumbnail/book.jpg +0 -0
- data/assets/img/thumbnail/bricks.webp +0 -0
- data/assets/img/thumbnail/empty.jpg +0 -0
- data/assets/img/thumbnail/nightgardenflower.jpg +0 -0
- data/assets/img/thumbnail/sample.png +0 -0
- data/assets/img/tile.png +0 -0
- data/assets/js/404.js +22 -0
- data/assets/js/highlight.min.js +1213 -0
- data/assets/js/main.js +709 -0
- data/assets/js/stars.js +700 -0
- data/assets/js/sweet-scroll.min.js +2 -0
- data/assets/js/tocbot.min.js +1 -0
- metadata +104 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 04ee424c66214fc5325ace025a1205d3bba00ef334240e2cd3b046414f8824a4
|
4
|
+
data.tar.gz: 1d044b48a78e81a1aec1bac6f27ed8751b26636f04ae44aeaa449715754a5407
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 37cb13d4ea2f2870250ed1532c08e815c48eabb98ffffa540203b44359fcf3f8d50f1a845fd61368c855ac8b6acb783e1788283b0130db912c8e15fc23bc2aaf
|
7
|
+
data.tar.gz: cd038d7ac09e27f1279345c23b8acc884b12de0469ad35a275f92fc2565ff36176a05547644bf4778bfca7efa79b14a5ca0f10c79ab40953777cfb428dab5075
|
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2024 Yankos
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
13
|
+
copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21
|
+
SOFTWARE.
|
data/_config.yml
ADDED
@@ -0,0 +1,82 @@
|
|
1
|
+
# Welcome to Jekyll!
|
2
|
+
#
|
3
|
+
# This config file is meant for settings that affect your whole blog, values
|
4
|
+
# which you are expected to set up once and rarely edit after that. If you find
|
5
|
+
# yourself editing this file very often, consider using Jekyll's data files
|
6
|
+
# feature for the data you need to update frequently.
|
7
|
+
#
|
8
|
+
# For technical reasons, this file is *NOT* reloaded automatically when you use
|
9
|
+
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
|
10
|
+
#
|
11
|
+
# If you need help with YAML syntax, here are some quick references for you:
|
12
|
+
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
|
13
|
+
# https://learnxinyminutes.com/docs/yaml/
|
14
|
+
#
|
15
|
+
# Site settings
|
16
|
+
# These are used to personalize your new site. If you look in the HTML files,
|
17
|
+
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
|
18
|
+
# You can create any custom variable you would like, and they will be accessible
|
19
|
+
# in the templates via {{ site.myvariable }}.
|
20
|
+
|
21
|
+
title: Example.com
|
22
|
+
username: username
|
23
|
+
email: example@gmail.com
|
24
|
+
github_username: github
|
25
|
+
twitter_username: twitter
|
26
|
+
instagram_username: instagram
|
27
|
+
linkedin_username: linkedin
|
28
|
+
facebook_username: facebook
|
29
|
+
description: "Satellite - jekyll blog theme"
|
30
|
+
baseurl: "" # the subpath of your site, e.g. /blog
|
31
|
+
url: "localhost:4000" # the base hostname & protocol for your site, e.g. http://example.com
|
32
|
+
repo_url: "https://github.com/byanko55/jekyll-theme-satellite"
|
33
|
+
goatcounter_code:
|
34
|
+
google_analytics:
|
35
|
+
|
36
|
+
# Build settings
|
37
|
+
plugins:
|
38
|
+
- jekyll-feed
|
39
|
+
- jekyll-sitemap
|
40
|
+
- jekyll-seo-tag
|
41
|
+
|
42
|
+
exclude:
|
43
|
+
- guide/
|
44
|
+
|
45
|
+
collections:
|
46
|
+
pages:
|
47
|
+
output: true
|
48
|
+
permalink: /:path.html
|
49
|
+
|
50
|
+
defaults:
|
51
|
+
-
|
52
|
+
scope:
|
53
|
+
path: ""
|
54
|
+
type: "pages"
|
55
|
+
values:
|
56
|
+
layout: "default"
|
57
|
+
date: "1900-01-01"
|
58
|
+
|
59
|
+
# Markdown newline activator
|
60
|
+
kramdown:
|
61
|
+
input: GFM
|
62
|
+
hard_wrap: true
|
63
|
+
|
64
|
+
# Exclude from processing.
|
65
|
+
# The following items will not be processed, by default.
|
66
|
+
# Any item listed under the `exclude:` key here will be automatically added to
|
67
|
+
# the internal "default list".
|
68
|
+
#
|
69
|
+
# Excluded items can be processed by explicitly listing the directories or
|
70
|
+
# their entries' file path in the `include:` list.
|
71
|
+
#
|
72
|
+
# exclude:
|
73
|
+
# - .sass-cache/
|
74
|
+
# - .jekyll-cache/
|
75
|
+
# - gemfiles/
|
76
|
+
# - Gemfile
|
77
|
+
# - Gemfile.lock
|
78
|
+
# - node_modules/
|
79
|
+
# - vendor/bundle/
|
80
|
+
# - vendor/cache/
|
81
|
+
# - vendor/gems/
|
82
|
+
# - vendor/ruby/
|
@@ -0,0 +1,84 @@
|
|
1
|
+
<nav id="navigation">
|
2
|
+
{%- assign nav_pages = site.pages
|
3
|
+
| where_exp: "item", "item.title != nil"
|
4
|
+
| where_exp: "item", "item.bookmark == true"
|
5
|
+
| sort: 'title' -%}
|
6
|
+
|
7
|
+
{% assign first_level_pages = "" | split, "" %}
|
8
|
+
{% assign second_level_pages = "" | split, "" %}
|
9
|
+
{% assign third_level_pages = "" | split, "" %}
|
10
|
+
|
11
|
+
{% for p in nav_pages %}
|
12
|
+
{%- assign p_tree = p.url | remove_first: "/" | split: "/" -%}
|
13
|
+
{%- assign p_level = p_tree | size -%}
|
14
|
+
|
15
|
+
{% if p_level <= 2 and p.bookmark %}
|
16
|
+
{% assign first_level_pages = first_level_pages | push:p %}
|
17
|
+
{% elsif (p_level == 3 and p.bookmark) or (p_level == 2 and p.bookmark == nil) %}
|
18
|
+
{% assign second_level_pages = second_level_pages | push:p %}
|
19
|
+
{% elsif (p_level == 4 and p.bookmark) or (p_level == 3 and p.bookmark == nil) %}
|
20
|
+
{% assign third_level_pages = third_level_pages | push:p %}
|
21
|
+
{% endif %}
|
22
|
+
{% endfor %}
|
23
|
+
|
24
|
+
<ul class="nav-list">
|
25
|
+
{%- for node in first_level_pages -%}
|
26
|
+
{%- assign node_url = node.url | remove: 'index.html' -%}
|
27
|
+
{%- assign children_list = second_level_pages
|
28
|
+
| where_exp: "item", "item.url contains node_url"
|
29
|
+
| sort: 'title' -%}
|
30
|
+
{%- assign num_children = children_list | size -%}
|
31
|
+
<li id="nav-first" aria-label="{{ node.title }}">
|
32
|
+
<div class="nav-item">
|
33
|
+
<a href="{{ node_url }}" class="nav-list-link nav-lh">
|
34
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128h95.1l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H347.1L325.8 320H384c17.7 0 32 14.3 32 32s-14.3 32-32 32H315.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7H155.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l21.3-128H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320h95.1l21.3-128H187.1z"/></svg>
|
35
|
+
<span>{{ node.title }}</span>
|
36
|
+
</a>
|
37
|
+
{%- if num_children > 0 and node_url != "/" -%}
|
38
|
+
<button class="nav-list-expander" aria-label="toggle items in {{ node.title }} category" aria-pressed="false">
|
39
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M201.4 342.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 274.7 86.6 137.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"/></svg>
|
40
|
+
</button>
|
41
|
+
{%- endif -%}
|
42
|
+
</div>
|
43
|
+
{%- if num_children > 0 and node_url != "/" -%}
|
44
|
+
<ul class="nav-list">
|
45
|
+
{%- for child in children_list -%}
|
46
|
+
{%- assign child_url = child.url | remove: 'index.html' -%}
|
47
|
+
{%- assign grand_children_list = third_level_pages
|
48
|
+
| where_exp: "item", "item.url contains child_url"
|
49
|
+
| sort: 'title' -%}
|
50
|
+
{%- assign num_grand_children = grand_children_list | size -%}
|
51
|
+
<li id="nav-second" aria-label="{{ child.title }}">
|
52
|
+
<div class="nav-item">
|
53
|
+
<a href="{{ child_url }}" class="nav-list-link nav-sh">
|
54
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"/></svg>
|
55
|
+
<span>{{ child.title }}</span>
|
56
|
+
</a>
|
57
|
+
{%- if num_grand_children > 0 -%}
|
58
|
+
<button class="nav-list-expander" aria-label="toggle items in {{ child.title }} category" aria-pressed="false">
|
59
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M201.4 342.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 274.7 86.6 137.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"/></svg>
|
60
|
+
</button>
|
61
|
+
{%- endif -%}
|
62
|
+
</div>
|
63
|
+
{%- if num_grand_children > 0 -%}
|
64
|
+
<ul class="nav-list">
|
65
|
+
{%- for grand_child in grand_children_list -%}
|
66
|
+
<li id="nav-third" aria-label="{{ grand_child.title }}">
|
67
|
+
<div class="nav-item">
|
68
|
+
<a href="{{ grand_child.url | relative_url }}" class="nav-list-link nav-sh">
|
69
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"/></svg>
|
70
|
+
<span>{{ grand_child.title }}</span>
|
71
|
+
</a>
|
72
|
+
</div>
|
73
|
+
</li>
|
74
|
+
{%- endfor -%}
|
75
|
+
</ul>
|
76
|
+
{%- endif -%}
|
77
|
+
</li>
|
78
|
+
{%- endfor -%}
|
79
|
+
</ul>
|
80
|
+
{%- endif -%}
|
81
|
+
</li>
|
82
|
+
{%- endfor -%}
|
83
|
+
</ul>
|
84
|
+
</nav>
|
@@ -0,0 +1,71 @@
|
|
1
|
+
{%- assign list_pages = site.pages | sort:"date" | reverse -%}
|
2
|
+
{%- assign post_counts = 0 -%}
|
3
|
+
|
4
|
+
<p class="category-header">
|
5
|
+
{% if page_level == 1 %}
|
6
|
+
All Posts
|
7
|
+
{% else %}
|
8
|
+
{{ page.title }}
|
9
|
+
{% endif %}
|
10
|
+
</p>
|
11
|
+
<div id="category-list">
|
12
|
+
<ul class="paginated-list" data-current-page="1" aria-live="polite">
|
13
|
+
{%- for sub_page in list_pages -%}
|
14
|
+
{%- assign page_url = page.url | remove: 'index.html' -%}
|
15
|
+
{% if sub_page.url contains page_url %}
|
16
|
+
{% unless sub_page.url contains "index.html" %}
|
17
|
+
{%- assign post_counts = post_counts | plus:1 -%}
|
18
|
+
<li class="paginated-item">
|
19
|
+
<div id="article_content">
|
20
|
+
<div class="thumbnail_zone">
|
21
|
+
{% if sub_page.thumbnail != nil %}
|
22
|
+
<a href="{{ sub_page.url }}" class="thumbnail_post" loading="lazy" aria-label="thumbnail_post" style="background-image:url('{{ sub_page.thumbnail }}') !important"></a>
|
23
|
+
{% else %}
|
24
|
+
<a href="{{ sub_page.url }}" class="thumbnail_post empty" loading="lazy" aria-label="thumbnail_post" style="background-image:url('/assets/img/thumbnail/empty.jpg') !important"></a>
|
25
|
+
{% endif %}
|
26
|
+
</div>
|
27
|
+
|
28
|
+
<div class="box_contents">
|
29
|
+
<a href="{{ sub_page.url }}" class="title_post">{{ sub_page.title }}</a>
|
30
|
+
<a href="{{ sub_page.url }}" class="txt_post">
|
31
|
+
{{ sub_page.content | markdownify | strip_html }}
|
32
|
+
</a>
|
33
|
+
<div class="info-post">
|
34
|
+
{%- assign sub_page_tree = sub_page.path | split: "/" -%}
|
35
|
+
{% if sub_page_tree.size > 2 %}
|
36
|
+
<a href="{{ '/' | append: sub_page_tree[1] }}" class="category">{{ sub_page_tree[1] }}</a>
|
37
|
+
{% else %}
|
38
|
+
<span class="category">None</span>
|
39
|
+
{% endif %}
|
40
|
+
{%- assign posting_date = sub_page.date | date: "%Y-%m-%d" -%}
|
41
|
+
{% if posting_date != "1900-01-01" %}
|
42
|
+
<span class="date">· {{ sub_page.date | date: "%Y-%m-%d" }}</span>
|
43
|
+
{% endif %}
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
</li>
|
48
|
+
{% endunless %}
|
49
|
+
{% endif %}
|
50
|
+
{%- endfor -%}
|
51
|
+
</ul>
|
52
|
+
{% if post_counts == 0 %}
|
53
|
+
<div class="no-posts">
|
54
|
+
<img src="{{ '/assets/img/sorry.png'' }}"></img>
|
55
|
+
<h1>Sorry, No posts found</h1>
|
56
|
+
</div>
|
57
|
+
{% endif %}
|
58
|
+
</div>
|
59
|
+
<div class="pagination">
|
60
|
+
<nav class="pagination-container">
|
61
|
+
<button class="pagination-button" id="prev-button" aria-label="Previous page" title="Previous page">
|
62
|
+
<
|
63
|
+
</button>
|
64
|
+
|
65
|
+
<div id="pagination-numbers"></div>
|
66
|
+
|
67
|
+
<button class="pagination-button" id="next-button" aria-label="Next page" title="Next page">
|
68
|
+
>
|
69
|
+
</button>
|
70
|
+
</nav>
|
71
|
+
</div>
|
data/_includes/post.html
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
<div class="post-header">
|
2
|
+
<div class="thumbnail">
|
3
|
+
<div class="transbox">
|
4
|
+
{% if page.title %}
|
5
|
+
<span class="post-title">{{ page.title }}</span>
|
6
|
+
{% endif %}
|
7
|
+
<div class="post-info">
|
8
|
+
{% if page_level > 2 %}
|
9
|
+
<a class="info-box category-box" href="{{ '/' | append: page_tree[0] }}">
|
10
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M384 480h48c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224H144c-11.4 0-21.9 6-27.6 15.9L48 357.1V96c0-8.8 7.2-16 16-16H181.5c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8H416c8.8 0 16 7.2 16 16v32h48V160c0-35.3-28.7-64-64-64H298.5c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H87.7 384z"/></svg>
|
11
|
+
<span>{{ page_tree[0] }}</span>
|
12
|
+
</a>
|
13
|
+
{% else %}
|
14
|
+
<span class="info-box">
|
15
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M384 480h48c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224H144c-11.4 0-21.9 6-27.6 15.9L48 357.1V96c0-8.8 7.2-16 16-16H181.5c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8H416c8.8 0 16 7.2 16 16v32h48V160c0-35.3-28.7-64-64-64H298.5c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H87.7 384z"/></svg>
|
16
|
+
<span>None</span>
|
17
|
+
</span>
|
18
|
+
{% endif %}
|
19
|
+
<span class="info-box">
|
20
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192h80v56H48V192zm0 104h80v64H48V296zm128 0h96v64H176V296zm144 0h80v64H320V296zm80-48H320V192h80v56zm0 160v40c0 8.8-7.2 16-16 16H320V408h80zm-128 0v56H176V408h96zm-144 0v56H64c-8.8 0-16-7.2-16-16V408h80zM272 248H176V192h96v56z"/></svg>
|
21
|
+
<span>
|
22
|
+
{%- assign posting_date = page.date | date: "%Y-%m-%d" -%}
|
23
|
+
{% if posting_date == "1900-01-01" %}
|
24
|
+
-
|
25
|
+
{% else %}
|
26
|
+
{{ posting_date }}
|
27
|
+
{% endif %}
|
28
|
+
</span>
|
29
|
+
</span>
|
30
|
+
{% if site.goatcounter_code != nil %}
|
31
|
+
<span class="info-box">
|
32
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z"/></svg>
|
33
|
+
<span id="page-hits" usercode="{{ site.goatcounter_code }}">-</span>
|
34
|
+
</span>
|
35
|
+
{% endif %}
|
36
|
+
<a class="info-box" href="#giscus" data-scroll>
|
37
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M512 240c0 114.9-114.6 208-256 208c-37.1 0-72.3-6.4-104.1-17.9c-11.9 8.7-31.3 20.6-54.3 30.6C73.6 471.1 44.7 480 16 480c-6.5 0-12.3-3.9-14.8-9.9c-2.5-6-1.1-12.8 3.4-17.4l0 0 0 0 0 0 0 0 .3-.3c.3-.3 .7-.7 1.3-1.4c1.1-1.2 2.8-3.1 4.9-5.7c4.1-5 9.6-12.4 15.2-21.6c10-16.6 19.5-38.4 21.4-62.9C17.7 326.8 0 285.1 0 240C0 125.1 114.6 32 256 32s256 93.1 256 208z"/></svg>
|
38
|
+
<span id="num-comments">-</span>
|
39
|
+
</a>
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
</div>
|
44
|
+
<div class="tags">
|
45
|
+
{%- for page_tag in page.tags -%}
|
46
|
+
<span class="tag-box theme-{{ forloop.index0 | modulo: 3 }}" contentID="{{ page_tag }}">
|
47
|
+
{{ page_tag }}
|
48
|
+
</span>
|
49
|
+
{%- endfor -%}
|
50
|
+
</div>
|
51
|
+
<main>
|
52
|
+
{{ content }}
|
53
|
+
<!-- see https://giscus.app/ -->
|
54
|
+
<div class="giscus" id="giscus" style="margin: 4rem auto;"></div>
|
55
|
+
<div id="related-box">
|
56
|
+
<span>
|
57
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M278.5 215.6L23 471c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l74.8-74.8c7.4 4.6 15.3 8.2 23.8 10.5C200.3 452.8 270 454.5 338 409.4c12.2-8.1 5.8-25.4-8.8-25.4l-16.1 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l97.7-29.3c3.4-1 6.4-3.1 8.4-6.1c4.4-6.4 8.6-12.9 12.6-19.6c6.2-10.3-1.5-23-13.5-23l-38.6 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l80.9-24.3c4.6-1.4 8.4-4.8 10.2-9.3C494.5 163 507.8 86.1 511.9 36.8c.8-9.9-3-19.6-10-26.6s-16.7-10.8-26.6-10C391.5 7 228.5 40.5 137.4 131.6C57.3 211.7 56.7 302.3 71.3 356.4c2.1 7.9 12 9.6 17.8 3.8L253.6 195.8c6.2-6.2 16.4-6.2 22.6 0c5.4 5.4 6.1 13.6 2.2 19.8z"/></svg>
|
58
|
+
You May Also Like
|
59
|
+
</span>
|
60
|
+
<ul id="related-posts"></ul>
|
61
|
+
</div>
|
62
|
+
</main>
|
63
|
+
<div class="top-arrow">
|
64
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" href="#" data-scroll><path d="M214.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 141.2V448c0 17.7 14.3 32 32 32s32-14.3 32-32V141.2L329.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"/></svg>
|
65
|
+
</div>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<div id="search">
|
2
|
+
<div class="wave"></div>
|
3
|
+
<div class="wave"></div>
|
4
|
+
<div class="wave"></div>
|
5
|
+
|
6
|
+
<div class="search-box">
|
7
|
+
<h1>Touch background to close</h1>
|
8
|
+
<div class="input-box">
|
9
|
+
<input id="search-input"
|
10
|
+
type="search"
|
11
|
+
tabindex="1"
|
12
|
+
spellcheck="false"
|
13
|
+
placeholder="Search..."
|
14
|
+
/>
|
15
|
+
<button id="btn-clear">
|
16
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"/></svg>
|
17
|
+
</button>
|
18
|
+
</div>
|
19
|
+
<ul id="search-result"></ul>
|
20
|
+
</div>
|
21
|
+
</div>
|
@@ -0,0 +1,83 @@
|
|
1
|
+
<div class="sidebar sidebar-left">
|
2
|
+
<div class="side-banner">
|
3
|
+
<h1 class="site-name">
|
4
|
+
<a href="/"><span class="highlight">example.com</span></a>
|
5
|
+
<button id="btn-brightness" aria-label="brightness-button">
|
6
|
+
<svg class='ico-dark' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M223.5 32C100 32 0 132.3 0 256S100 480 223.5 480c60.6 0 115.5-24.2 155.8-63.4c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-9.8 1.7-19.8 2.6-30.1 2.6c-96.9 0-175.5-78.8-175.5-176c0-65.8 36-123.1 89.3-153.3c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-6.3-.5-12.6-.8-19-.8z"/></svg>
|
7
|
+
<svg class='ico-light' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M361.5 1.2c5 2.1 8.6 6.6 9.6 11.9L391 121l107.9 19.8c5.3 1 9.8 4.6 11.9 9.6s1.5 10.7-1.6 15.2L446.9 256l62.3 90.3c3.1 4.5 3.7 10.2 1.6 15.2s-6.6 8.6-11.9 9.6L391 391 371.1 498.9c-1 5.3-4.6 9.8-9.6 11.9s-10.7 1.5-15.2-1.6L256 446.9l-90.3 62.3c-4.5 3.1-10.2 3.7-15.2 1.6s-8.6-6.6-9.6-11.9L121 391 13.1 371.1c-5.3-1-9.8-4.6-11.9-9.6s-1.5-10.7 1.6-15.2L65.1 256 2.8 165.7c-3.1-4.5-3.7-10.2-1.6-15.2s6.6-8.6 11.9-9.6L121 121 140.9 13.1c1-5.3 4.6-9.8 9.6-11.9s10.7-1.5 15.2 1.6L256 65.1 346.3 2.8c4.5-3.1 10.2-3.7 15.2-1.6zM160 256a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zm224 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z"/></svg>
|
8
|
+
</button>
|
9
|
+
<button id="btn-search" aria-label="search-button">
|
10
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
|
11
|
+
</button>
|
12
|
+
<button id="btn-nav" aria-pressed="false" aria-label="menu-button">
|
13
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>
|
14
|
+
</button>
|
15
|
+
</h1>
|
16
|
+
<a href="/" class="site-avatar" aria-label="site-avatar">
|
17
|
+
<img src="{{ '/assets/img/profile.jpg' }}" loading="lazy" alt="homepage" aria-label="homepage-button">
|
18
|
+
</a>
|
19
|
+
</div>
|
20
|
+
<div class="side-info">
|
21
|
+
{% include navigation.html %}
|
22
|
+
<div id="contact">
|
23
|
+
<hr>
|
24
|
+
<h3>Contact</h3>
|
25
|
+
<ul class="contact-list">
|
26
|
+
{% if site.github_username %}
|
27
|
+
<li><a aria-label="My Github" href="https://github.com/{{ site.github_username }}">
|
28
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
|
29
|
+
</a></li>
|
30
|
+
{% endif %}
|
31
|
+
{% if site.email %}
|
32
|
+
<li><a aria-label="My Email" href="{{ site.email }}">
|
33
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"/></svg>
|
34
|
+
</a></li>
|
35
|
+
{% endif %}
|
36
|
+
{% if site.twitter_username %}
|
37
|
+
<li><a aria-label="My Twitter" href="https://twitter.com/{{ site.twitter_username }}">
|
38
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M459.4 151.7c.3 4.5 .3 9.1 .3 13.6 0 138.7-105.6 298.6-298.6 298.6-59.5 0-114.7-17.2-161.1-47.1 8.4 1 16.6 1.3 25.3 1.3 49.1 0 94.2-16.6 130.3-44.8-46.1-1-84.8-31.2-98.1-72.8 6.5 1 13 1.6 19.8 1.6 9.4 0 18.8-1.3 27.6-3.6-48.1-9.7-84.1-52-84.1-103v-1.3c14 7.8 30.2 12.7 47.4 13.3-28.3-18.8-46.8-51-46.8-87.4 0-19.5 5.2-37.4 14.3-53 51.7 63.7 129.3 105.3 216.4 109.8-1.6-7.8-2.6-15.9-2.6-24 0-57.8 46.8-104.9 104.9-104.9 30.2 0 57.5 12.7 76.7 33.1 23.7-4.5 46.5-13.3 66.6-25.3-7.8 24.4-24.4 44.8-46.1 57.8 21.1-2.3 41.6-8.1 60.4-16.2-14.3 20.8-32.2 39.3-52.6 54.3z"/></svg>
|
39
|
+
</a></li>
|
40
|
+
{% endif %}
|
41
|
+
{% if site.instagram_username %}
|
42
|
+
<li><a aria-label="My Instagram" href="https://www.instagram.com/{{ site.instagram_username }}">
|
43
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>
|
44
|
+
</a></li>
|
45
|
+
{% endif %}
|
46
|
+
{% if site.facebook_username %}
|
47
|
+
<li><a aria-label="My Facebook" href="https://www.facebook.com/{{ site.facebook_username }}">
|
48
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"/></svg>
|
49
|
+
</a></li>
|
50
|
+
{% endif %}
|
51
|
+
{% if site.linkedin_username %}
|
52
|
+
<li><a aria-label="My LinkedIn" href="https://www.linkedin.com/in/{{ site.linkedin_username }}">
|
53
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"/></svg>
|
54
|
+
</a></li>
|
55
|
+
{% endif %}
|
56
|
+
</ul>
|
57
|
+
<hr>
|
58
|
+
<span>
|
59
|
+
Copyright © 2024 | <a href="https://github.com/byanko55/jekyll-theme-satellite">Yankos</a>
|
60
|
+
</span>
|
61
|
+
</div>
|
62
|
+
</div>
|
63
|
+
</div>
|
64
|
+
<div class="sidebar sidebar-right">
|
65
|
+
<div class="tools">
|
66
|
+
<button id="btn-brightness" aria-label="brightness-button">
|
67
|
+
<svg class='ico-dark' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M223.5 32C100 32 0 132.3 0 256S100 480 223.5 480c60.6 0 115.5-24.2 155.8-63.4c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-9.8 1.7-19.8 2.6-30.1 2.6c-96.9 0-175.5-78.8-175.5-176c0-65.8 36-123.1 89.3-153.3c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-6.3-.5-12.6-.8-19-.8z"/></svg>
|
68
|
+
<svg class='ico-light' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M361.5 1.2c5 2.1 8.6 6.6 9.6 11.9L391 121l107.9 19.8c5.3 1 9.8 4.6 11.9 9.6s1.5 10.7-1.6 15.2L446.9 256l62.3 90.3c3.1 4.5 3.7 10.2 1.6 15.2s-6.6 8.6-11.9 9.6L391 391 371.1 498.9c-1 5.3-4.6 9.8-9.6 11.9s-10.7 1.5-15.2-1.6L256 446.9l-90.3 62.3c-4.5 3.1-10.2 3.7-15.2 1.6s-8.6-6.6-9.6-11.9L121 391 13.1 371.1c-5.3-1-9.8-4.6-11.9-9.6s-1.5-10.7 1.6-15.2L65.1 256 2.8 165.7c-3.1-4.5-3.7-10.2-1.6-15.2s6.6-8.6 11.9-9.6L121 121 140.9 13.1c1-5.3 4.6-9.8 9.6-11.9s10.7-1.5 15.2 1.6L256 65.1 346.3 2.8c4.5-3.1 10.2-3.7 15.2-1.6zM160 256a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zm224 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z"/></svg>
|
69
|
+
</button>
|
70
|
+
<button id="btn-search" aria-label="search-button">
|
71
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
|
72
|
+
</button>
|
73
|
+
</div>
|
74
|
+
{%- if page_type == "post" -%}
|
75
|
+
<div class="toc">
|
76
|
+
<span class="toc-header">
|
77
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M0 48V487.7C0 501.1 10.9 512 24.3 512c5 0 9.9-1.5 14-4.4L192 400 345.7 507.6c4.1 2.9 9 4.4 14 4.4c13.4 0 24.3-10.9 24.3-24.3V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48z"/></svg>
|
78
|
+
Contents
|
79
|
+
</span>
|
80
|
+
<div class='toc-board'></div>
|
81
|
+
</div>
|
82
|
+
{%- endif -%}
|
83
|
+
</div>
|
@@ -0,0 +1,113 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
7
|
+
{% seo %}
|
8
|
+
<link rel="shortcut icon" type="image/png" href="{{ '/assets/img/favicon.webp' }}">
|
9
|
+
<link rel="preload" href="{{ '/assets/img/favicon.webp' }}" as="image">
|
10
|
+
{% if site.goatcounter_code %}
|
11
|
+
<script data-goatcounter="https://{{ site.goatcounter_code }}.goatcounter.com/count"
|
12
|
+
async src="//gc.zgo.at/count.js"></script>
|
13
|
+
{% endif %}
|
14
|
+
|
15
|
+
<title>
|
16
|
+
{% if page.title %}{{ page.title }}
|
17
|
+
{% else %}{{ site.title }}
|
18
|
+
{% endif %}
|
19
|
+
</title>
|
20
|
+
|
21
|
+
<meta
|
22
|
+
name="description"
|
23
|
+
content="{% if page.description %}{{ page.description | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}">
|
24
|
+
|
25
|
+
<link rel="stylesheet" href="{{ '/assets/css/style.css' }}">
|
26
|
+
{% if page.thumbnail %}
|
27
|
+
<style>
|
28
|
+
.thumbnail {
|
29
|
+
background-image: url("{{ page.thumbnail }}");
|
30
|
+
}
|
31
|
+
</style>
|
32
|
+
{% else %}
|
33
|
+
<style>
|
34
|
+
.thumbnail {
|
35
|
+
aspect-ratio: auto !important;
|
36
|
+
}
|
37
|
+
.transbox {
|
38
|
+
transform: none;
|
39
|
+
position: relative;
|
40
|
+
margin: auto;
|
41
|
+
left: 0;
|
42
|
+
top: 0;
|
43
|
+
}
|
44
|
+
</style>
|
45
|
+
{% endif %}
|
46
|
+
<script src="{{ '/assets/js/tocbot.min.js' }}"></script>
|
47
|
+
<script src="{{ '/assets/js/sweet-scroll.min.js' }}"></script>
|
48
|
+
</head>
|
49
|
+
<body>
|
50
|
+
<canvas id="stars" width="100%" height="100%"></canvas>
|
51
|
+
{%- assign page_tree = page.path | remove_first: "_pages/" | split: "/" -%}
|
52
|
+
{%- assign page_level = page_tree.size -%}
|
53
|
+
{% if page_tree.last == "index.md" %}
|
54
|
+
{%- assign page_type = "category" -%}
|
55
|
+
{% else %}
|
56
|
+
{%- assign page_type = "post" -%}
|
57
|
+
{% endif %}
|
58
|
+
{% include sidebar.html %}
|
59
|
+
<div id="post">
|
60
|
+
<div class="inner-header">
|
61
|
+
<span class="dot" style="background-color: #F86158;"></span>
|
62
|
+
<span class="dot" style="background-color: #FBBF2D;"></span>
|
63
|
+
<span class="dot" style="background-color: #2ACB45;"></span>
|
64
|
+
</div>
|
65
|
+
<div class="inner-content">
|
66
|
+
<div class="category-tree">
|
67
|
+
{%- assign page_link = "/" -%}
|
68
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c0 2.7-.2 5.4-.5 8.1V472c0 22.1-17.9 40-40 40H456c-1.1 0-2.2 0-3.3-.1c-1.4 .1-2.8 .1-4.2 .1H416 392c-22.1 0-40-17.9-40-40V448 384c0-17.7-14.3-32-32-32H256c-17.7 0-32 14.3-32 32v64 24c0 22.1-17.9 40-40 40H160 128.1c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2H104c-22.1 0-40-17.9-40-40V360c0-.9 0-1.9 .1-2.8V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24z"/></svg>
|
69
|
+
<p>
|
70
|
+
{%- assign search_tree = page.path | remove: "/index.md" | split: "/" -%}
|
71
|
+
{%- for sub_tree in search_tree -%}
|
72
|
+
{% if forloop.first %}
|
73
|
+
<a href="/">Home</a>
|
74
|
+
>
|
75
|
+
{% elsif forloop.last %}
|
76
|
+
{% if page_type == "category" %}
|
77
|
+
{{ sub_tree }}
|
78
|
+
{% else %}
|
79
|
+
{{ page.title }}
|
80
|
+
{% endif %}
|
81
|
+
{% else %}
|
82
|
+
{%- assign page_link = page_link | append: sub_tree | append: "/" -%}
|
83
|
+
<a href="{{ page_link }}">{{ sub_tree }}</a>
|
84
|
+
>
|
85
|
+
{% endif %}
|
86
|
+
{%- endfor -%}
|
87
|
+
</p>
|
88
|
+
</div>
|
89
|
+
{% if page_type == "category" %}
|
90
|
+
{% include loading.html %}
|
91
|
+
{% include pagination.html %}
|
92
|
+
{% else %}
|
93
|
+
{% include post.html %}
|
94
|
+
{% endif %}
|
95
|
+
</div>
|
96
|
+
</div>
|
97
|
+
{% include search.html %}
|
98
|
+
</body>
|
99
|
+
<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
|
100
|
+
<script src="{{ '/assets/js/highlight.min.js' }}"></script>
|
101
|
+
<link id="highlight-default" rel="stylesheet" href="{{ '/assets/css/highlight-default.min.css' }}">
|
102
|
+
<link id="highlight-dark" rel="stylesheet" href="{{ '/assets/css/highlight-dark.min.css' }}">
|
103
|
+
<script src="{{ '/assets/js/stars.js' }}"></script>
|
104
|
+
<script src="{{ '/assets/js/main.js' }}"></script>
|
105
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
|
106
|
+
<script>
|
107
|
+
window.dataLayer = window.dataLayer || [];
|
108
|
+
function gtag(){ dataLayer.push(arguments); }
|
109
|
+
|
110
|
+
gtag('js', new Date());
|
111
|
+
gtag('config', '{{ site.google_analytics }}');
|
112
|
+
</script>
|
113
|
+
</html>
|