jekyll-theme-hydejack 6.6.1 → 7.0.0.pre.beta.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.md +617 -17
- data/README.md +18 -11
- data/_includes/about.html +3 -2
- data/_includes/author.html +18 -11
- data/_includes/avatar-tag.html +4 -0
- data/_includes/body.html +21 -31
- data/_includes/body/menu.html +11 -0
- data/_includes/body/scripts.html +18 -0
- data/_includes/comments.html +6 -4
- data/_includes/footer.html +3 -5
- data/_includes/head.html +4 -142
- data/_includes/head/links.html +25 -0
- data/_includes/head/meta.html +30 -0
- data/_includes/head/scripts.html +44 -0
- data/_includes/head/seo-fallback.html +13 -0
- data/_includes/head/seo-tag.html +4 -0
- data/_includes/head/styles.html +24 -0
- data/_includes/header.txt +1 -1
- data/_includes/link.html +9 -2
- data/_includes/message.html +12 -7
- data/_includes/my-scripts.html +14 -5
- data/_includes/nav.html +20 -13
- data/_includes/page-style.html +33 -3
- data/_includes/pagination.html +8 -12
- data/_includes/post-list-item.html +4 -6
- data/_includes/post.html +20 -13
- data/_includes/related-posts.html +23 -0
- data/_includes/scripts/load-disqus.js +1 -2
- data/_includes/scripts/load-disqus.min.js +1 -1
- data/_includes/scripts/load-js-deferred.js +47 -43
- data/_includes/scripts/load-js-deferred.min.js +1 -1
- data/_includes/sidebar.html +25 -14
- data/_includes/social-list-item.html +1 -1
- data/_includes/social.html +16 -10
- data/_includes/srcset-img.html +5 -5
- data/_includes/styles/inline.scss +31 -33
- data/_includes/styles/style.scss +69 -55
- data/_includes/tag-list.html +1 -1
- data/_includes/templates.html +32 -0
- data/_layouts/about.html +10 -3
- data/_layouts/base.html +17 -10
- data/_layouts/compress.html +3 -11
- data/_layouts/default.html +7 -5
- data/_layouts/home.html +7 -5
- data/_layouts/list.html +10 -4
- data/_layouts/not-found.html +14 -5
- data/_layouts/page.html +1 -1
- data/_layouts/post.html +12 -2
- data/_layouts/redirect.html +1 -1
- data/_sass/_mixins.scss +9 -3
- data/_sass/_reboot-mod.scss +286 -0
- data/_sass/_spinner.scss +23 -80
- data/_sass/_syntax.scss +1 -1
- data/_sass/_variables.scss +9 -11
- data/_sass/hydejack/__inline/_avatar.scss +27 -0
- data/_sass/hydejack/__inline/_base.scss +99 -0
- data/_sass/hydejack/__inline/_break-layout.scss +12 -0
- data/_sass/hydejack/__inline/_content.scss +43 -0
- data/_sass/hydejack/__inline/_footer.scss +12 -0
- data/_sass/hydejack/__inline/_katex.scss +12 -0
- data/_sass/hydejack/__inline/_mark-external.scss +36 -0
- data/_sass/hydejack/__inline/_menu.scss +50 -0
- data/_sass/hydejack/__inline/_sidebar.scss +129 -0
- data/_sass/hydejack/__inline/_social.scss +42 -0
- data/_sass/hydejack/__link/_avatar.scss +17 -0
- data/_sass/hydejack/__link/_base.scss +93 -0
- data/_sass/hydejack/__link/_break-layout.scss +69 -0
- data/_sass/hydejack/__link/_content.scss +12 -0
- data/_sass/hydejack/__link/_footer.scss +26 -0
- data/_sass/hydejack/__link/_katex.scss +45 -0
- data/_sass/hydejack/__link/_mark-external.scss +36 -0
- data/_sass/hydejack/__link/_menu.scss +37 -0
- data/_sass/hydejack/__link/_sidebar.scss +156 -0
- data/_sass/hydejack/__link/_social.scss +12 -0
- data/_sass/hydejack/_avatar.pre.scss +18 -0
- data/_sass/hydejack/_base.pre.scss +133 -0
- data/_sass/hydejack/_break-layout.pre.scss +58 -0
- data/_sass/hydejack/{_content-inline.scss → _content.pre.scss} +5 -5
- data/_sass/hydejack/{_footer-inline.scss → _footer.pre.scss} +2 -5
- data/_sass/hydejack/{_katex.scss → _katex.pre.scss} +6 -3
- data/_sass/hydejack/_mark-external.pre.scss +25 -0
- data/_sass/hydejack/_menu.pre.scss +53 -0
- data/_sass/hydejack/_sidebar.pre.scss +188 -0
- data/_sass/hydejack/{_social-inline.scss → _social.pre.scss} +6 -11
- data/_sass/pooleparty/{_base-inline.scss → __inline/_base.scss} +15 -17
- data/_sass/pooleparty/__inline/_code.scss +17 -0
- data/_sass/pooleparty/__inline/_footer.scss +12 -0
- data/_sass/pooleparty/__inline/_footnotes.scss +16 -0
- data/_sass/pooleparty/__inline/_message.scss +26 -0
- data/_sass/pooleparty/__inline/_pagination.scss +17 -0
- data/_sass/pooleparty/__inline/_posts.scss +41 -0
- data/_sass/pooleparty/__inline/_related.scss +25 -0
- data/_sass/pooleparty/__inline/_table.scss +39 -0
- data/_sass/pooleparty/__inline/_type.scss +83 -0
- data/_sass/pooleparty/__link/_base.scss +26 -0
- data/_sass/pooleparty/__link/_code.scss +54 -0
- data/_sass/pooleparty/__link/_footer.scss +12 -0
- data/_sass/pooleparty/__link/_footnotes.scss +57 -0
- data/_sass/pooleparty/__link/_message.scss +17 -0
- data/_sass/pooleparty/__link/_pagination.scss +78 -0
- data/_sass/pooleparty/__link/_posts.scss +30 -0
- data/_sass/pooleparty/__link/_related.scss +14 -0
- data/_sass/pooleparty/{_table.scss → __link/_table.scss} +71 -46
- data/_sass/pooleparty/__link/_type.scss +144 -0
- data/_sass/pooleparty/_base.pre.scss +54 -0
- data/_sass/pooleparty/_code.pre.scss +43 -0
- data/_sass/pooleparty/_footer.pre.scss +1 -0
- data/_sass/pooleparty/{_footnotes.scss → _footnotes.pre.scss} +17 -4
- data/_sass/pooleparty/{_message-inline.scss → _message.pre.scss} +2 -0
- data/_sass/pooleparty/{_pagination.scss → _pagination.pre.scss} +7 -6
- data/_sass/pooleparty/{_posts-inline.scss → _posts.pre.scss} +16 -15
- data/_sass/pooleparty/{_related-inline.scss → _related.pre.scss} +5 -6
- data/_sass/pooleparty/_table.pre.scss +161 -0
- data/_sass/pooleparty/_type.pre.scss +198 -0
- data/assets/icomoon/fonts/icomoon.eot +0 -0
- data/assets/icomoon/fonts/icomoon.svg +9 -3
- data/assets/icomoon/fonts/icomoon.ttf +0 -0
- data/assets/icomoon/fonts/icomoon.woff +0 -0
- data/assets/icomoon/selection.json +250 -76
- data/assets/icomoon/style.css +26 -8
- data/assets/icons/apple-touch-icon.png +0 -0
- data/assets/icons/favicon.ico +0 -0
- data/assets/icons/icon.png +0 -0
- data/assets/icons/icon@0,25x.png +0 -0
- data/assets/icons/icon@0,5x.png +0 -0
- data/assets/icons/icon@0,75x.png +0 -0
- data/assets/icons/icon@2x.png +0 -0
- data/assets/icons/icon@3x.png +0 -0
- data/assets/icons/tile-large.png +0 -0
- data/assets/icons/tile-medium.png +0 -0
- data/assets/icons/tile-small.png +0 -0
- data/assets/icons/tile-wide.png +0 -0
- data/assets/ieconfig.xml +15 -0
- data/assets/img/sidebar-bg.jpg +0 -0
- data/assets/js/hydejack.js +2 -2
- data/assets/manifest.json +45 -0
- data/assets/version.json +1 -1
- data/licenses/Apache-2.0.md +55 -47
- data/licenses/GPL-3.0.md +623 -0
- data/licenses/MIT.md +1 -0
- data/licenses/PRO.md +142 -0
- metadata +103 -99
- data/_includes/related.html +0 -41
- data/_includes/scripts.html +0 -17
- data/_sass/hydejack/_base-inline.scss +0 -143
- data/_sass/hydejack/_base.scss +0 -143
- data/_sass/hydejack/_drawer-inline.scss +0 -19
- data/_sass/hydejack/_drawer.scss +0 -19
- data/_sass/hydejack/_me-inline.scss +0 -24
- data/_sass/hydejack/_menu-inline.scss +0 -56
- data/_sass/hydejack/_menu.scss +0 -56
- data/_sass/hydejack/_sidebar-inline.scss +0 -118
- data/_sass/hydejack/_sidebar.scss +0 -115
- data/_sass/hydejack/_social.scss +0 -36
- data/_sass/hydejack/_toc.scss +0 -2
- data/_sass/pooleparty/_base.scss +0 -60
- data/_sass/pooleparty/_code.scss +0 -82
- data/_sass/pooleparty/_footer-inline.scss +0 -3
- data/_sass/pooleparty/_posts.scss +0 -41
- data/_sass/pooleparty/_table-inline.scss +0 -130
- data/_sass/pooleparty/_type-inline.scss +0 -124
- data/_sass/pooleparty/_type.scss +0 -124
- data/assets/icomoon/Read Me.txt +0 -7
- data/assets/icomoon/demo-files/demo.css +0 -152
- data/assets/icomoon/demo-files/demo.js +0 -30
- data/assets/icomoon/demo.html +0 -1206
- data/assets/img/nap.jpg +0 -0
- data/assets/img/projects/hyde-v1.jpg +0 -0
- data/assets/img/projects/hyde-v1@0,25x.jpg +0 -0
- data/assets/img/projects/hyde-v1@0,5x.jpg +0 -0
- data/assets/img/projects/hyde-v2.jpg +0 -0
- data/assets/img/projects/hyde-v2@0,25x.jpg +0 -0
- data/assets/img/projects/hyde-v2@0,5x.jpg +0 -0
- data/licenses/PRO-license.md +0 -147
@@ -0,0 +1,13 @@
|
|
1
|
+
{% assign strings = site.data.strings %}
|
2
|
+
{% capture title %}
|
3
|
+
{% if page.url == "/" %}
|
4
|
+
{{ site.title }}{% if site.tagline %} {{ strings.separator }} {{ site.tagline }}{% endif %}
|
5
|
+
{% elsif page.title.size > 0 %}
|
6
|
+
{{ page.title }} {{ strings.separator }} {{ site.title }}
|
7
|
+
{% else %}
|
8
|
+
{{ site.title }}
|
9
|
+
{% endif %}
|
10
|
+
{% endcapture %}
|
11
|
+
<title>{{ title | strip }}</title>
|
12
|
+
<meta name="description" content="{{ page.description | default:page.excerpt | default:site.description | markdownify | strip_html }}">
|
13
|
+
<link rel="canonical" href="{{ page.url | absolute_url }}">
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<!--[if gt IE 8]><!---->
|
2
|
+
{% capture style_url %}{% link assets/css/hydejack.css %}?v=7.0.0-beta.0{% endcapture %}
|
3
|
+
|
4
|
+
{% if site.hydejack.no_inline_css or jekyll.environment == 'development' %}
|
5
|
+
<link rel="stylesheet" href="{{ style_url | relative_url }}">
|
6
|
+
{% else %}
|
7
|
+
<style>
|
8
|
+
{% capture include_to_scssify %}{% include styles/inline.scss %}{% endcapture %}
|
9
|
+
{{ include_to_scssify | scssify }}
|
10
|
+
{% if page.layout == "projects" or page.layout == "project" or page.layout == "welcome" %}
|
11
|
+
{% capture include_to_scssify %}{% include styles/pro/projects.scss %}{% endcapture %}
|
12
|
+
{{ include_to_scssify | scssify }}
|
13
|
+
{% elsif page.layout == "resume" %}
|
14
|
+
{% capture include_to_scssify %}{% include styles/pro/resume.scss %}{% endcapture %}
|
15
|
+
{{ include_to_scssify | scssify }}
|
16
|
+
{% endif %}
|
17
|
+
</style>
|
18
|
+
<link id="_stylePreload" rel="preload" as="style" href="{{ style_url | relative_url }}">
|
19
|
+
<script>window.setRelStylesheet('_stylePreload');</script>
|
20
|
+
<noscript><link rel="stylesheet" href="{{ style_url | relative_url }}"></noscript>
|
21
|
+
{% endif %}
|
22
|
+
|
23
|
+
{% include page-style.html %}
|
24
|
+
<!--<![endif]-->
|
data/_includes/header.txt
CHANGED
data/_includes/link.html
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
{% if include.href.size > 0 %}
|
2
|
-
<a
|
2
|
+
<a
|
3
|
+
class="{{ include.class }} {{ include.a_class }}"
|
4
|
+
href="{{ include.href }}"
|
5
|
+
{% if include.rel %}rel="{{ include.rel }}"{% endif %}
|
6
|
+
{% if include.property %}property="{{ include.property }}"{% endif %}
|
7
|
+
>
|
8
|
+
{{ include.title }}
|
9
|
+
</a>
|
3
10
|
{% else %}
|
4
|
-
<span>{{ include.title }}</span>
|
11
|
+
<span class="{{ include.class }} {{ include.span_class }}">{{ include.title }}</span>
|
5
12
|
{% endif %}
|
data/_includes/message.html
CHANGED
@@ -1,9 +1,14 @@
|
|
1
|
-
{%
|
2
|
-
|
3
|
-
|
4
|
-
{
|
5
|
-
{%
|
6
|
-
|
1
|
+
{% assign alt = include.alt %}
|
2
|
+
{% unless alt %}{% capture alt %}<div class="hr pb0"></div>{% endcapture %}{% endunless %}
|
3
|
+
|
4
|
+
{% if include.text.size > 0 %}
|
5
|
+
{% unless include.hide %}
|
6
|
+
<p class="message" {% if include.property %}property="{{ include.property }}"{% endif %}>
|
7
|
+
{{ include.text | markdownify | replace:"<p>","" | replace:"</p>","" }}
|
8
|
+
</p>
|
9
|
+
{% else %}
|
10
|
+
{{ alt }}
|
11
|
+
{% endunless %}
|
7
12
|
{% else %}
|
8
|
-
|
13
|
+
{{ alt }}
|
9
14
|
{% endif %}
|
data/_includes/my-scripts.html
CHANGED
@@ -1,7 +1,16 @@
|
|
1
|
-
{% comment %}
|
2
1
|
<script>
|
3
|
-
|
4
|
-
|
5
|
-
|
2
|
+
function detectCFScript() {
|
3
|
+
var cfScript = Array.prototype.find.call(document.scripts, function(s) {
|
4
|
+
return s !== document.currentScript && s.textContent.indexOf('__cf_email__') > -1;
|
5
|
+
});
|
6
|
+
|
7
|
+
if (cfScript)
|
8
|
+
this.addEventListener('hy-push-state-load', new Function(cfScript.textContent));
|
9
|
+
|
10
|
+
this.removeEventListener('hy-push-state-init', detectCFScript);
|
11
|
+
}
|
12
|
+
|
13
|
+
document
|
14
|
+
.getElementsByTagName('hy-push-state')[0]
|
15
|
+
.addEventListener('hy-push-state-init', detectCFScript);
|
6
16
|
</script>
|
7
|
-
{% endcomment %}
|
data/_includes/nav.html
CHANGED
@@ -1,16 +1,23 @@
|
|
1
|
-
<span class="sr-only">Navigation
|
1
|
+
<span class="sr-only">{{ site.data.strings.navigation | default:"Navigation" }}{{ site.data.strings.colon }}</span>
|
2
2
|
<ul>
|
3
|
-
{% assign pages = site.pages %}
|
4
|
-
|
5
|
-
{%
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
3
|
+
{% assign pages = site.pages | where: "menu", true %}
|
4
|
+
{% assign documents = site.documents | where: "menu", true %}
|
5
|
+
{% assign nodes = pages | concat: documents | sort: "order" %}
|
6
|
+
{% for node in nodes %}
|
7
|
+
{% unless node.redirect_to %}
|
8
|
+
<li>
|
9
|
+
<a
|
10
|
+
href="{{ node.url | relative_url }}"
|
11
|
+
class="sidebar-nav-item{% if page.url contains node.url %} active{% endif %}"
|
12
|
+
{% if path.rel %}rel="{{ node.rel }}"{% endif %}
|
13
|
+
>
|
14
|
+
{{ node.title }}
|
15
|
+
</a>
|
16
|
+
</li>
|
17
|
+
{% else %}
|
18
|
+
<li>
|
19
|
+
<a href="{{ node.redirect_to }}" class="sidebar-nav-item" >{{ node.title }}</a>
|
20
|
+
</li>
|
21
|
+
{% endunless %}
|
15
22
|
{% endfor %}
|
16
23
|
</ul>
|
data/_includes/page-style.html
CHANGED
@@ -1,12 +1,14 @@
|
|
1
|
-
|
1
|
+
{% comment %}<!--
|
2
|
+
These styles interact with JavsScript. Their ordering MUST NOT be changed. See `_js/cross-fader.js`.
|
3
|
+
-->{% endcomment %}
|
2
4
|
<style id="_pageStyle">
|
3
5
|
{% capture page_style %}
|
4
|
-
.content a {
|
6
|
+
.content a:not(.btn) {
|
5
7
|
color: {{ color }};
|
6
8
|
border-color: fade-out({{ color }}, 0.8);
|
7
9
|
}
|
8
10
|
|
9
|
-
.content a:hover {
|
11
|
+
.content a:not(.btn):hover {
|
10
12
|
border-color: {{ color }};
|
11
13
|
}
|
12
14
|
|
@@ -14,6 +16,34 @@
|
|
14
16
|
outline-color: {{ color }};
|
15
17
|
}
|
16
18
|
|
19
|
+
.btn-primary {
|
20
|
+
color: #fff;
|
21
|
+
background-color: {{ color }};
|
22
|
+
border-color: {{ color }};
|
23
|
+
}
|
24
|
+
|
25
|
+
.btn-primary:focus, .btn-primary.focus {
|
26
|
+
box-shadow: 0 0 0 3px rgba({{ color }}, .5);
|
27
|
+
}
|
28
|
+
|
29
|
+
.btn-primary:hover, .btn-primary.hover {
|
30
|
+
color: #fff;
|
31
|
+
background-color: darken({{ color }}, 7.5%);
|
32
|
+
border-color: darken({{ color }}, 7.5%);
|
33
|
+
}
|
34
|
+
|
35
|
+
.btn-primary:disabled, .btn-primary.disabled {
|
36
|
+
color: #fff;
|
37
|
+
background-color: {{ color }};
|
38
|
+
border-color: {{ color }};
|
39
|
+
}
|
40
|
+
|
41
|
+
.btn-primary:active, .btn-primary.active {
|
42
|
+
color: #fff;
|
43
|
+
background-color: darken({{ color }}, 7.5%);
|
44
|
+
border-color: darken({{ color }}, 7.5%);
|
45
|
+
}
|
46
|
+
|
17
47
|
::selection {
|
18
48
|
color: #fff;
|
19
49
|
background: {{ color }};
|
data/_includes/pagination.html
CHANGED
@@ -1,19 +1,15 @@
|
|
1
|
-
<h2 class="sr-only">Pagination</h2>
|
2
|
-
<nav class="pagination heading" role="navigation">
|
1
|
+
<h2 class="sr-only">{{ site.data.strings.pagination | default:"Pagination" }}</h2>
|
2
|
+
<nav class="pagination heading clearfix" role="navigation">
|
3
3
|
<ul>
|
4
4
|
<li class="pagination-item older" >
|
5
|
-
{%
|
6
|
-
|
7
|
-
{%
|
8
|
-
<span>Older</span>
|
9
|
-
{% endif %}
|
5
|
+
{% assign next_title = site.data.strings.older | default:"Older" %}
|
6
|
+
{% assign next_href = paginator.next_page_path | relative_url %}
|
7
|
+
{% include link.html rel="next" title=next_title href=next_href %}
|
10
8
|
</li>
|
11
9
|
<li class="pagination-item newer" >
|
12
|
-
{%
|
13
|
-
|
14
|
-
{%
|
15
|
-
<span>Newer</span>
|
16
|
-
{% endif %}
|
10
|
+
{% assign prev_title = site.data.strings.newer | default:"Newer" %}
|
11
|
+
{% assign prev_href = paginator.previous_page_path | relative_url %}
|
12
|
+
{% include link.html rel="prev" title=prev_title href=prev_href %}
|
17
13
|
</li>
|
18
14
|
</ul>
|
19
15
|
</nav>
|
@@ -1,11 +1,9 @@
|
|
1
1
|
{% assign post = include.post %}
|
2
|
-
{% assign format = include.format | default:"%d %b %Y" %}
|
2
|
+
{% assign format = include.format | default:site.data.strings.date_formats.related_post | default:"%d %b %Y" %}
|
3
3
|
|
4
|
-
<li
|
5
|
-
<a href="{{ post.url | relative_url }}"
|
4
|
+
<li>
|
5
|
+
<a href="{{ post.url | relative_url }}" class="h4 flip-title">
|
6
6
|
<span>{{ post.title }}</span>
|
7
7
|
</a>
|
8
|
-
<
|
9
|
-
{{ post.date | date:format }}
|
10
|
-
</time></small>
|
8
|
+
<time class="heading faded fine" datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date:format }}</time>
|
11
9
|
</li>
|
data/_includes/post.html
CHANGED
@@ -1,31 +1,38 @@
|
|
1
1
|
{% assign post = include.post %}
|
2
|
+
{% assign link_title = include.link_title %}
|
2
3
|
|
3
|
-
<article id="post
|
4
|
+
<article id="post{{ post.id | replace:'/','-' }}" class="page post{% if link_title %} mb6{% endif %}" role="article">
|
4
5
|
<header>
|
5
6
|
<h1 class="post-title">
|
6
|
-
{% if
|
7
|
+
{% if link_title %}<a href="{{ post.url | relative_url }}" class="flip-title">{% endif %}
|
7
8
|
{{ post.title }}
|
8
|
-
{% if
|
9
|
+
{% if link_title %}</a>{% endif %}
|
9
10
|
</h1>
|
10
11
|
|
11
12
|
<p class="post-date heading">
|
12
|
-
|
13
|
-
{
|
14
|
-
{%
|
13
|
+
{% assign post_format = site.data.strings.date_formats.post | default:"%d %b %Y" %}
|
14
|
+
<time datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date:post_format }}</time>
|
15
|
+
{% assign category_start = site.data.strings.category_start | default:"in " %}
|
16
|
+
{% assign tag_start = site.data.strings.tag_start | default:"on " %}
|
17
|
+
{% assign category_separator = site.data.strings.category_separator | default:" / " %}
|
18
|
+
{% assign tag_separator = site.data.strings.tag_separator | default:", " %}
|
19
|
+
{% include tag-list.html tags=post.categories meta=site.featured_categories start_with=category_start separator=category_separator %}
|
20
|
+
{% include tag-list.html tags=post.tags meta=site.featured_tags start_with=tag_start separator=tag_separator %}
|
15
21
|
</p>
|
16
22
|
|
17
|
-
{% include message.html text=post.description %}
|
23
|
+
{% include message.html text=post.description hide=page.no_description %}
|
18
24
|
</header>
|
19
25
|
|
20
26
|
{% unless include.excerpt %}
|
21
27
|
{{ post.content }}
|
22
28
|
{% else %}
|
23
29
|
{{ post.excerpt }}
|
24
|
-
|
30
|
+
{% capture post_title %}<a class="heading flip-title" href="{{ post.url | relative_url }}">{{ post.title }}</a>{% endcapture %}
|
31
|
+
{% assign text = site.data.strings.continue_reading | default:"Continue reading <!--post_title-->" %}
|
32
|
+
<footer>
|
33
|
+
<p class="read-more">
|
34
|
+
{{ text | replace:"<!--post_title-->", post_title }}
|
35
|
+
</p>
|
36
|
+
</footer>
|
25
37
|
{% endunless %}
|
26
|
-
|
27
38
|
</article>
|
28
|
-
|
29
|
-
{% unless include.link_title %}
|
30
|
-
<hr class="dingbat" />
|
31
|
-
{% endunless %}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
{% assign post = include.post %}
|
2
|
+
|
3
|
+
{% if site.hydejack.use_lsi or site.use_lsi %}
|
4
|
+
{% assign related_posts = site.related_posts %}
|
5
|
+
{% elsif post.categories.first %}
|
6
|
+
{% assign related_posts = site.categories[post.categories.first] | where_exp:"post", "post.url != page.url" %}
|
7
|
+
{% elsif post.tags.first %}
|
8
|
+
{% assign related_posts = site.tags[post.tags.first] | where_exp:"post", "post.url != page.url" %}
|
9
|
+
{% else %}
|
10
|
+
{% assign related_posts = site.related_posts %}
|
11
|
+
{% endif %}
|
12
|
+
|
13
|
+
{% if related_posts.size > 0 %}
|
14
|
+
<aside class="related mb4" role="complementary">
|
15
|
+
<h2 class="hr">{{ site.data.strings.related_posts | default:"Related Posts" }}</h2>
|
16
|
+
|
17
|
+
<ul class="related-posts">
|
18
|
+
{% for post in related_posts limit:3 %}
|
19
|
+
{% include post-list-item.html post=post %}
|
20
|
+
{% endfor %}
|
21
|
+
</ul>
|
22
|
+
</aside>
|
23
|
+
{% endif %}
|
@@ -30,11 +30,10 @@
|
|
30
30
|
if (!w._disqusLoading) {
|
31
31
|
w._disqusLoading = true;
|
32
32
|
|
33
|
-
loadJSDeferred('//{{
|
33
|
+
loadJSDeferred('//{{ include.disqus }}.disqus.com/embed.js');
|
34
34
|
|
35
35
|
// add event listener
|
36
36
|
if (w.addEventListener) w.addEventListener('scroll', loadDQ, { passive: true });
|
37
|
-
else if (w.attachEvent) w.attachEvent('onscroll', loadDQ);
|
38
37
|
else w.onscroll = loadDQ;
|
39
38
|
} else {
|
40
39
|
w._disqusFirst = false;
|
@@ -1 +1 @@
|
|
1
|
-
!function(s,i){function
|
1
|
+
!function(s,i){function d(d){var t=s.pageYOffset||i.body.scrollTop;s.DISQUS&&!s._disqusThis&&!s._disqusFirst&&t+s.innerHeight>=s._disqusThreadOffsetTop&&(s._disqusThis=!0,s.DISQUS.reset({reload:!0,config:e}))}var e=function(){this.page.title="{{ page.title }}",this.page.identifier="{{ page.id }}",this.page.url="{{ page.url | absolute_url }}"};s._disqusFirst=void 0===s._disqusFirst||s._disqusFirst,s._disqusLoading=void 0!==s._disqusLoading&&s._disqusLoading,s._disqusThis=!1,s._disqusThreadOffsetTop=i.getElementById("disqus_thread").offsetTop,s._disqusLoading?s._disqusFirst=!1:(s._disqusLoading=!0,loadJSDeferred("//{{ include.disqus }}.disqus.com/embed.js"),s.addEventListener?s.addEventListener("scroll",d,{passive:!0}):s.onscroll=d)}(window,document);
|
@@ -1,49 +1,53 @@
|
|
1
1
|
// Compress via uglify:
|
2
2
|
// uglifyjs load-js-deferred.js -c -m > load-js-deferred.min.js
|
3
|
-
|
4
|
-
function
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
function
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
3
|
+
function stdOnEnd(script, cb) {
|
4
|
+
script.onload = function () {
|
5
|
+
this.onerror = this.onload = null;
|
6
|
+
cb(null, script);
|
7
|
+
};
|
8
|
+
|
9
|
+
script.onerror = function () {
|
10
|
+
this.onerror = this.onload = null;
|
11
|
+
cb(new Error('Failed to load ' + this.src), script);
|
12
|
+
};
|
13
|
+
}
|
14
|
+
|
15
|
+
function ieOnEnd(script, cb) {
|
16
|
+
script.onreadystatechange = function () {
|
17
|
+
if (this.readyState != 'complete' && this.readyState != 'loaded') return;
|
18
|
+
this.onreadystatechange = null;
|
19
|
+
cb(null, script);
|
20
|
+
};
|
21
|
+
}
|
22
|
+
|
23
|
+
window.setRelStylesheet = function (id) {
|
24
|
+
var link = document.getElementById(id);
|
25
|
+
function set() { this.rel = 'stylesheet'; }
|
26
|
+
if (link.addEventListener) link.addEventListener('load', set, false);
|
27
|
+
else link.onload = set;
|
28
|
+
};
|
29
|
+
|
30
|
+
window._loaded = false;
|
31
|
+
window.loadJSDeferred = function(src, cb) {
|
32
|
+
function loadJS() {
|
33
|
+
window._loaded = true;
|
34
|
+
|
35
|
+
var script = document.createElement('script');
|
36
|
+
script.src = src;
|
37
|
+
|
38
|
+
if (cb) {
|
39
|
+
('onload' in script ? stdOnEnd : ieOnEnd)(script, cb);
|
40
|
+
|
41
|
+
if (!script.onload) {
|
42
|
+
stdOnEnd(script, cb);
|
38
43
|
}
|
39
|
-
|
40
|
-
var ref = d.getElementsByTagName('script')[0];
|
41
|
-
ref.parentNode.insertBefore(script, ref);
|
42
44
|
}
|
43
45
|
|
44
|
-
|
45
|
-
|
46
|
-
else if (w.attachEvent) w.attachEvent('onload', loadJS);
|
47
|
-
else w.onload = loadJS;
|
46
|
+
var ref = document.scripts[0];
|
47
|
+
ref.parentNode.insertBefore(script, ref);
|
48
48
|
}
|
49
|
-
|
49
|
+
|
50
|
+
if (window._loaded) loadJS();
|
51
|
+
else if (window.addEventListener) window.addEventListener('load', loadJS, false);
|
52
|
+
else window.onload = loadJS;
|
53
|
+
};
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
function stdOnEnd(n,e){n.onload=function(){this.onerror=this.onload=null,e(null,n)},n.onerror=function(){this.onerror=this.onload=null,e(new Error("Failed to load "+this.src),n)}}function ieOnEnd(n,e){n.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,e(null,n))}}window.setRelStylesheet=function(n){function e(){this.rel="stylesheet"}var o=document.getElementById(n);o.addEventListener?o.addEventListener("load",e,!1):o.onload=e},window._loaded=!1,window.loadJSDeferred=function(n,e){function o(){window._loaded=!0;var o=document.createElement("script");o.src=n,e&&(("onload"in o?stdOnEnd:ieOnEnd)(o,e),o.onload||stdOnEnd(o,e));var t=document.scripts[0];t.parentNode.insertBefore(o,t)}window._loaded?o():window.addEventListener?window.addEventListener("load",o,!1):window.onload=o};
|
data/_includes/sidebar.html
CHANGED
@@ -1,10 +1,23 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
|
4
|
-
|
1
|
+
<hy-drawer>
|
2
|
+
<header id="_sidebar" class="sidebar" role="banner">
|
3
|
+
{% if image.background %}
|
4
|
+
{% capture bg_style %}background:{{ image.background }}{% endcapture %}
|
5
|
+
{% capture bg_class %}sidebar-bg {% if image.overlay %}sidebar-overlay{% endif %}{% endcapture %}
|
6
|
+
{% else %}
|
7
|
+
{% capture bg_style %}background-color:{{ color }};{% if image != 'none' %}background-image:url({{ image }}){% endif %}{% endcapture %}
|
8
|
+
{% capture bg_class %}sidebar-bg {% if image != 'none' %}sidebar-overlay{% endif %}{% endcapture %}
|
9
|
+
{% endif %}
|
10
|
+
<div class="{{ bg_class }}" style="{{ bg_style }}"></div>
|
11
|
+
|
12
|
+
<div class="sidebar-sticky">
|
5
13
|
<div class="sidebar-about">
|
6
|
-
<h1><a id="_title" href="{{ '/' | relative_url }}">{{ site.title }}</a></
|
7
|
-
{
|
14
|
+
<h2 class="h1"><a id="_title" href="{{ '/' | relative_url }}">{{ site.title }}</a></h2>
|
15
|
+
{% assign text = site.tagline | default:site.description %}
|
16
|
+
{% if text %}
|
17
|
+
<p class="{% if text.size > 100 %}fine{% endif %}">
|
18
|
+
{{ text | markdownify | replace:'<p>','' | replace:'</p>','' }}
|
19
|
+
</p>
|
20
|
+
{% endif %}
|
8
21
|
</div>
|
9
22
|
|
10
23
|
<nav class="sidebar-nav heading" role="navigation">
|
@@ -13,11 +26,9 @@
|
|
13
26
|
|
14
27
|
{% assign author = site.data.authors.first[1] | default:site.author %}
|
15
28
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
</div>
|
23
|
-
</div>
|
29
|
+
<div class="sidebar-social">
|
30
|
+
{% include social.html author=author %}
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
</header>
|
34
|
+
</hy-drawer>
|