jekyll-citoyensbourgbresse 1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/CHANGELOG.md +123 -0
- data/LICENSE.txt +21 -0
- data/README.md +381 -0
- data/_data/i18n.yml +70 -0
- data/_includes/category_links.html +21 -0
- data/_includes/custom_comments_provider.html +3 -0
- data/_includes/date.html +32 -0
- data/_includes/fonts.html +3 -0
- data/_includes/footer.html +11 -0
- data/_includes/footer_content.html +5 -0
- data/_includes/google_analytics.html +25 -0
- data/_includes/head.html +69 -0
- data/_includes/head_custom.html +0 -0
- data/_includes/header.html +20 -0
- data/_includes/i18n.html +17 -0
- data/_includes/pagination.html +11 -0
- data/_layouts/archive.html +39 -0
- data/_layouts/category_archives.html +40 -0
- data/_layouts/default.html +20 -0
- data/_layouts/feed.xml +97 -0
- data/_layouts/home.html +51 -0
- data/_layouts/page.html +20 -0
- data/_layouts/post.html +25 -0
- data/_sass/whiteglass/_base.scss +217 -0
- data/_sass/whiteglass/_layout.scss +226 -0
- data/_sass/whiteglass/_syntax-highlighting.scss +72 -0
- data/_sass/whiteglass.scss +47 -0
- data/assets/main.scss +49 -0
- metadata +173 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
{% if site.google_analytics %}
|
2
|
+
{% assign prefix = site.google_analytics | slice: 0, 2 %}
|
3
|
+
{% if prefix == "G-" %}
|
4
|
+
<!-- Global site tag (gtag.js) - Google Analytics -->
|
5
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
|
6
|
+
<script>
|
7
|
+
window.dataLayer = window.dataLayer || [];
|
8
|
+
function gtag(){dataLayer.push(arguments);}
|
9
|
+
gtag('js', new Date());
|
10
|
+
|
11
|
+
gtag('config', '{{ site.google_analytics }}');
|
12
|
+
</script>
|
13
|
+
{% else %}
|
14
|
+
<!-- Google Analytics -->
|
15
|
+
<script>
|
16
|
+
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
17
|
+
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
18
|
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
19
|
+
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
20
|
+
|
21
|
+
ga('create', '{{ site.google_analytics }}', 'auto');
|
22
|
+
ga('send', 'pageview');
|
23
|
+
</script>
|
24
|
+
{% endif %}
|
25
|
+
{% endif %}
|
data/_includes/head.html
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
<head>
|
2
|
+
<meta charset="utf-8">
|
3
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
4
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
5
|
+
|
6
|
+
{% assign title = page.title | default: site.title | escape %}
|
7
|
+
{% assign canonical = page.url | replace:'index.html','' | absolute_url %}
|
8
|
+
{% assign description = page.description | default: page.excerpt | default: site.description | strip_html | normalize_whitespace | escape %}
|
9
|
+
<title>{{ title }}</title>
|
10
|
+
<meta name="description" content="{{ description }}">
|
11
|
+
{% if page.keywords %}
|
12
|
+
{% if page.keywords.first %}
|
13
|
+
{% assign keywords = page.keywords | join: ',' %}
|
14
|
+
{% else %}
|
15
|
+
{% assign keywords = page.keywords %}
|
16
|
+
{% endif %}
|
17
|
+
<meta name="keywords" content="{{ keywords }}">
|
18
|
+
{% endif %}
|
19
|
+
|
20
|
+
<link rel="stylesheet" href="{{ "/assets/main.css" | relative_url }}">
|
21
|
+
<link rel="canonical" href="{{ canonical }}">
|
22
|
+
{% assign feed_path = "/feed.xml" %}
|
23
|
+
{% if site.feed and site.feed.path %}
|
24
|
+
{% assign feed_path = site.feed.path %}
|
25
|
+
{% endif %}
|
26
|
+
<link rel="alternate" type="application/rss+xml" title="{{ site.title | escape }}" href="{{ feed_path | absolute_url }}">
|
27
|
+
|
28
|
+
{% include head_custom.html %}
|
29
|
+
|
30
|
+
{% if site.facebook_app_id %}<meta property="fb:admins" content="{{ site.facebook_app_id }}">{% endif %}
|
31
|
+
<meta property="og:title" content="{{ title }}">
|
32
|
+
<meta property="og:site_name" content="{{ site.title | escape }}">
|
33
|
+
<meta property="og:url" content="{{ canonical }}">
|
34
|
+
<meta property="og:description" content="{{ description }}">
|
35
|
+
{% if site.facebook_page %}<meta property="article:author" content="{{ site.facebook_page }}">{% endif %}
|
36
|
+
{% if page.facebook.image %}
|
37
|
+
<meta property="og:image" content="{{ page.facebook.image }}">
|
38
|
+
{% elsif site.facebook_image %}
|
39
|
+
<meta property="og:image" content="{{ site.facebook_image }}">
|
40
|
+
{% endif %}
|
41
|
+
<meta name="twitter:card" content="{{ page.twitter_card.type | default: "summary" }}">
|
42
|
+
{% if site.twitter_username %}<meta name="twitter:site" content="{{ site.twitter_username }}">{% endif %}
|
43
|
+
<meta name="twitter:title" content="{{ title | truncate: 70 }}">
|
44
|
+
<meta name="twitter:description" content="{{ description | truncate: 200 }}">
|
45
|
+
{% if page.twitter_card.creator %}
|
46
|
+
<meta name="twitter:creator" content="{{ page.twitter_card.creator }}">
|
47
|
+
{% elsif site.twitter_username %}
|
48
|
+
<meta name="twitter:creator" content="{{ site.twitter_username }}">
|
49
|
+
{% endif %}
|
50
|
+
{% if page.twitter_card.image %}
|
51
|
+
{% if page.twitter_card.type == 'gallery' %}
|
52
|
+
<meta name="twitter:image0" content="{{ page.twitter_card.image }}">
|
53
|
+
<meta name="twitter:image1" content="{{ page.twitter_card.image1 }}">
|
54
|
+
<meta name="twitter:image2" content="{{ page.twitter_card.image2 }}">
|
55
|
+
<meta name="twitter:image3" content="{{ page.twitter_card.image3 }}">
|
56
|
+
{% else %}
|
57
|
+
<meta name="twitter:image:src" content="{{ page.twitter_card.image }}">
|
58
|
+
{% if page.twitter_card.type == 'photo' %}
|
59
|
+
{% if page.twitter_card.width %}<meta name="twitter:image:width" content="{{ page.twitter_card.width }}">{% endif %}
|
60
|
+
{% if page.twitter_card.height %}<meta name="twitter:image:height" content="{{ page.twitter_card.height }}">{% endif %}
|
61
|
+
{% endif %}
|
62
|
+
{% endif %}
|
63
|
+
{% elsif site.twitter_image %}
|
64
|
+
<meta name="twitter:image:src" content="{{ site.twitter_image }}">
|
65
|
+
{% endif %}
|
66
|
+
|
67
|
+
{% include fonts.html %}
|
68
|
+
{% include google_analytics.html %}
|
69
|
+
</head>
|
File without changes
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<header class="site-header">
|
2
|
+
|
3
|
+
<div class="wrapper">
|
4
|
+
|
5
|
+
<a class="site-title" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
|
6
|
+
|
7
|
+
<nav class="site-nav">
|
8
|
+
{% for link in site.data.navigation.main %}
|
9
|
+
{% if link.url contains "http" %}
|
10
|
+
{% assign url = link.url %}
|
11
|
+
{% else %}
|
12
|
+
{% assign url = link.url | relative_url %}
|
13
|
+
{% endif %}
|
14
|
+
<a class="page-link" href="{{ url }}">{{ link.title }}</a>
|
15
|
+
{% endfor %}
|
16
|
+
</nav>
|
17
|
+
|
18
|
+
</div>
|
19
|
+
|
20
|
+
</header>
|
data/_includes/i18n.html
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
{%- capture text -%}
|
2
|
+
{%- if include.lang and include.lang != empty -%}
|
3
|
+
{%- assign plang = include.lang -%}
|
4
|
+
{%- else -%}
|
5
|
+
{%- assign plang = page.lang | default: site.lang | default: "en" -%}
|
6
|
+
{%- endif -%}
|
7
|
+
{%- assign i18n-tag = include.value -%}
|
8
|
+
{%- assign splang = plang | truncate: 2, "" -%}
|
9
|
+
{%- if site.data.i18n.[plang].[i18n-tag] -%}
|
10
|
+
{{ site.data.i18n.[plang].[i18n-tag] }}
|
11
|
+
{%- elsif site.data.i18n.[splang].[i18n-tag] -%}
|
12
|
+
{{ site.data.i18n.[splang].[i18n-tag] }}
|
13
|
+
{%- else -%}
|
14
|
+
{{ include.default }}
|
15
|
+
{%- endif -%}
|
16
|
+
{%- endcapture -%}
|
17
|
+
{{ text | strip_newlines }}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
{% if paginator.total_pages > 1 %}
|
2
|
+
<div class="pagination">
|
3
|
+
{% if paginator.next_page %}
|
4
|
+
<a class="previous" href="{{ paginator.next_page_path | relative_url }}">« {% include i18n.html value="page-older" default="Older" %}</a>
|
5
|
+
{% endif %}
|
6
|
+
|
7
|
+
{% if paginator.previous_page %}
|
8
|
+
<a class="next" href="{{ paginator.previous_page_path | relative_url }}">{% include i18n.html value="page-newer" default="Newer" %} »</a>
|
9
|
+
{% endif %}
|
10
|
+
</div>
|
11
|
+
{% endif %}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<div class="home">
|
5
|
+
|
6
|
+
<h1 class="page-heading">{% include i18n.html value="archive" default="Blog Archive" %}</h1>
|
7
|
+
|
8
|
+
{{ content }}
|
9
|
+
|
10
|
+
{% capture site_lang %}{{ site.lang | default: "en" }}{% endcapture %}
|
11
|
+
|
12
|
+
<ul class="post-archives">
|
13
|
+
{% for post in site.posts %}
|
14
|
+
{% capture post_lang %}{{ post.lang | default: site_lang }}{% endcapture %}
|
15
|
+
{% capture lang %}{% if post_lang != site_lang %}{{ post_lang }}{% endif %}{% endcapture %}
|
16
|
+
|
17
|
+
<li>
|
18
|
+
<span class="post-meta">
|
19
|
+
{% include date.html date=post.date lang=lang %}
|
20
|
+
{% if post.categories != empty or post.tags != empty %}
|
21
|
+
{% include category_links.html categories=post.categories tags=post.tags %}
|
22
|
+
{% endif %}
|
23
|
+
{% if post.external-url %}
|
24
|
+
• <a href="{{ post.url | relative_url }}">Permalink</a>
|
25
|
+
{% endif %}
|
26
|
+
</span>
|
27
|
+
|
28
|
+
<h2>
|
29
|
+
{% if post.external-url %}
|
30
|
+
<a class="post-link" href="{{ post.external-url }}">{{ post.title | escape }} →</a>
|
31
|
+
{% else %}
|
32
|
+
<a class="post-link" href="{{ post.url | relative_url }}"{% if lang != empty %} lang="{{ lang }}"{% endif %}>{{ post.title | escape }}</a>
|
33
|
+
{% endif %}
|
34
|
+
</h2>
|
35
|
+
</li>
|
36
|
+
{% endfor %}
|
37
|
+
</ul>
|
38
|
+
|
39
|
+
</div>
|
@@ -0,0 +1,40 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<div class="home">
|
5
|
+
|
6
|
+
{% capture i18n-tag %}archive-{{ page.type }}{% endcapture %}
|
7
|
+
{% capture default-title %}Archive of {{ page.type }} '%1'{% endcapture %}
|
8
|
+
{% capture title %}{% include i18n.html value=i18n-tag default=default-title %}{% endcapture %}
|
9
|
+
<h1 class="page-heading">{{ title | replace: "%1", page.title | escape }}</h1>
|
10
|
+
|
11
|
+
{% capture site_lang %}{{ site.lang | default: "en" }}{% endcapture %}
|
12
|
+
|
13
|
+
<ul class="post-archives">
|
14
|
+
{% for post in page.posts %}
|
15
|
+
{% capture post_lang %}{{ post.lang | default: site_lang }}{% endcapture %}
|
16
|
+
{% capture lang %}{% if post_lang != site_lang %}{{ post_lang }}{% endif %}{% endcapture %}
|
17
|
+
|
18
|
+
<li>
|
19
|
+
<span class="post-meta">
|
20
|
+
{{ post.date | date: "%b %-d, %Y" }}
|
21
|
+
{% if post.categories != empty or post.tags != empty %}
|
22
|
+
{% include category_links.html categories=post.categories tags=post.tags %}
|
23
|
+
{% endif %}
|
24
|
+
{% if post.external-url %}
|
25
|
+
• <a href="{{ post.url | relative_url }}">Permalink</a>
|
26
|
+
{% endif %}
|
27
|
+
</span>
|
28
|
+
|
29
|
+
<h2>
|
30
|
+
{% if post.external-url %}
|
31
|
+
<a class="post-link" href="{{ post.external-url }}">{{ post.title | escape }} →</a>
|
32
|
+
{% else %}
|
33
|
+
<a class="post-link" href="{{ post.url | relative_url }}"{% if lang != empty %} lang="{{ lang }}"{% endif %}>{{ post.title | escape }}</a>
|
34
|
+
{% endif %}
|
35
|
+
</h2>
|
36
|
+
</li>
|
37
|
+
{% endfor %}
|
38
|
+
</ul>
|
39
|
+
|
40
|
+
</div>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="{{ page.lang | default: site.lang | default: "en" }}">
|
3
|
+
|
4
|
+
{% include head.html %}
|
5
|
+
|
6
|
+
<body>
|
7
|
+
|
8
|
+
{% include header.html %}
|
9
|
+
|
10
|
+
<main class="page-content" aria-label="Content">
|
11
|
+
<div class="wrapper">
|
12
|
+
{{ content }}
|
13
|
+
</div>
|
14
|
+
</main>
|
15
|
+
|
16
|
+
{% include footer.html %}
|
17
|
+
|
18
|
+
</body>
|
19
|
+
|
20
|
+
</html>
|
data/_layouts/feed.xml
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
---
|
2
|
+
layout: null
|
3
|
+
---
|
4
|
+
<?xml version="1.0" encoding="utf-8"?>
|
5
|
+
<feed xmlns="http://www.w3.org/2005/Atom"{% if site.lang %} xml:lang="{{ site.lang }}"{% endif %}>
|
6
|
+
<generator uri="http://jekyllrb.com" version="{{ jekyll.version }}">Jekyll</generator>
|
7
|
+
{% assign feed_path = "/feed.xml" %}
|
8
|
+
{% if site.feed and site.feed.path %}
|
9
|
+
{% assign feed_path = site.feed.path %}
|
10
|
+
{% endif %}
|
11
|
+
<link href="{{ feed_path | absolute_url }}" rel="self" type="application/atom+xml" />
|
12
|
+
<link href="{{ '/' | absolute_url }}" rel="alternate" type="text/html" {% if site.lang %}hreflang="{{ site.lang }}" {% endif %}/>
|
13
|
+
<updated>{{ site.time | date_to_xmlschema }}</updated>
|
14
|
+
<id>{{ '/' | absolute_url | xml_escape }}/</id>
|
15
|
+
|
16
|
+
{% if site.title %}
|
17
|
+
<title type="html">{{ site.title | smartify | xml_escape }}</title>
|
18
|
+
{% elsif site.name %}
|
19
|
+
<title type="html">{{ site.name | smartify | xml_escape }}</title>
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% if site.description %}
|
23
|
+
<subtitle>{{ site.description | xml_escape }}</subtitle>
|
24
|
+
{% endif %}
|
25
|
+
|
26
|
+
{% if site.author %}
|
27
|
+
<author>
|
28
|
+
<name>{{ site.author.name | default: site.author | xml_escape }}</name>
|
29
|
+
{% if site.author.email %}
|
30
|
+
<email>{{ site.author.email | xml_escape }}</email>
|
31
|
+
{% endif %}
|
32
|
+
{% if site.author.uri %}
|
33
|
+
<uri>{{ site.author.uri | xml_escape }}</uri>
|
34
|
+
{% endif %}
|
35
|
+
</author>
|
36
|
+
{% endif %}
|
37
|
+
|
38
|
+
{% for post in site.posts limit: 20 %}
|
39
|
+
{% unless post.draft %}
|
40
|
+
<entry{% if post.lang %} xml:lang="{{ post.lang }}"{% endif %}>
|
41
|
+
{% if post.external-url %}
|
42
|
+
<title type="html">{{ post.title | append: " →" | smartify | strip_html | normalize_whitespace | xml_escape }}</title>
|
43
|
+
{% else %}
|
44
|
+
<title type="html">{{ post.title | smartify | strip_html | normalize_whitespace | xml_escape }}</title>
|
45
|
+
{% endif %}
|
46
|
+
{% if post.external-url %}
|
47
|
+
<link href="{{ post.external-url }}" rel="alternate" type="text/html" />
|
48
|
+
<link href="{{ post.url | absolute_url }}" rel="related" type="text/html" title="{{ post.title | xml_escape }}" />
|
49
|
+
{% else %}
|
50
|
+
<link href="{{ post.url | absolute_url }}" rel="alternate" type="text/html" title="{{ post.title | xml_escape }}" />
|
51
|
+
{% endif %}
|
52
|
+
<published>{{ post.date | date_to_xmlschema }}</published>
|
53
|
+
<updated>{{ post.last_modified_at | default: post.date | date_to_xmlschema }}</updated>
|
54
|
+
<id>{{ post.id | absolute_url | xml_escape }}</id>
|
55
|
+
<content type="html" xml:base="{{ post.url | absolute_url | xml_escape }}">{{ post.content | strip | xml_escape }}</content>
|
56
|
+
|
57
|
+
{% assign post_author = post.author | default: post.authors[0] | default: site.author %}
|
58
|
+
{% assign post_author = site.data.authors[post_author] | default: post_author %}
|
59
|
+
{% assign post_author_email = post_author.email | default: nil %}
|
60
|
+
{% assign post_author_uri = post_author.uri | default: nil %}
|
61
|
+
{% assign post_author_name = post_author.name | default: post_author %}
|
62
|
+
|
63
|
+
{% if post_author %}
|
64
|
+
<author>
|
65
|
+
<name>{{ post_author_name | xml_escape }}</name>
|
66
|
+
{% if post_author_email %}
|
67
|
+
<email>{{ post_author_email | xml_escape }}</email>
|
68
|
+
{% endif %}
|
69
|
+
{% if post_author_uri %}
|
70
|
+
<uri>{{ post_author_uri | xml_escape }}</uri>
|
71
|
+
{% endif %}
|
72
|
+
</author>
|
73
|
+
{% endif %}
|
74
|
+
|
75
|
+
{% for category in post.categories %}
|
76
|
+
<category term="{{ category | xml_escape }}" />
|
77
|
+
{% endfor %}
|
78
|
+
|
79
|
+
{% for tag in post.tags %}
|
80
|
+
<category term="{{ tag | xml_escape }}" />
|
81
|
+
{% endfor %}
|
82
|
+
|
83
|
+
{% if post.excerpt and post.excerpt != empty %}
|
84
|
+
<summary type="html">{{ post.excerpt | strip_html | normalize_whitespace | xml_escape }}</summary>
|
85
|
+
{% endif %}
|
86
|
+
|
87
|
+
{% assign post_image = post.twitter_card.image | default: post.facebook.image %}
|
88
|
+
{% if post_image %}
|
89
|
+
{% unless post_image contains "://" %}
|
90
|
+
{% assign post_image = post_image | absolute_url | xml_escape %}
|
91
|
+
{% endunless %}
|
92
|
+
<media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="{{ post_image }}" />
|
93
|
+
{% endif %}
|
94
|
+
</entry>
|
95
|
+
{% endunless %}
|
96
|
+
{% endfor %}
|
97
|
+
</feed>
|
data/_layouts/home.html
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="home">
|
6
|
+
|
7
|
+
{{ content }}
|
8
|
+
|
9
|
+
{% capture site_lang %}{{ site.lang | default: "en" }}{% endcapture %}
|
10
|
+
|
11
|
+
<ul class="post-list">
|
12
|
+
{% for post in paginator.posts %}
|
13
|
+
{% capture post_lang %}{{ post.lang | default: site_lang }}{% endcapture %}
|
14
|
+
{% capture lang %}{% if post_lang != site_lang %}{{ post_lang }}{% endif %}{% endcapture %}
|
15
|
+
|
16
|
+
<li{% if lang != empty %} lang="{{ lang }}"{% endif %}>
|
17
|
+
<header class="post-header">
|
18
|
+
<h1 class="post-title">
|
19
|
+
{% if post.external-url %}
|
20
|
+
<a class="post-link" href="{{ post.external-url }}">{{ post.title | escape }} →</a>
|
21
|
+
{% else %}
|
22
|
+
<a class="post-link" href="{{ post.url | relative_url }}">{{ post.title | escape }}</a>
|
23
|
+
{% endif %}
|
24
|
+
</h1>
|
25
|
+
|
26
|
+
<p class="post-meta">
|
27
|
+
{% include date.html date=post.date lang=lang %}
|
28
|
+
{% if post.categories != empty or post.tags != empty %}
|
29
|
+
{% include category_links.html categories=post.categories tags=post.tags %}
|
30
|
+
{% endif %}
|
31
|
+
{% if post.external-url %}
|
32
|
+
• <a href="{{ post.url | relative_url }}">Permalink</a>
|
33
|
+
{% endif %}
|
34
|
+
</p>
|
35
|
+
</header>
|
36
|
+
|
37
|
+
<div class="post-content">
|
38
|
+
{{ post.excerpt }}
|
39
|
+
</div>
|
40
|
+
{% if post.content contains site.excerpt_separator %}
|
41
|
+
<p class="post-continue">
|
42
|
+
<a href="{{ post.url | relative_url }}">{% include i18n.html lang=lang value="morelink" default="Read on" %} →</a>
|
43
|
+
</p>
|
44
|
+
{% endif %}
|
45
|
+
</li>
|
46
|
+
{% endfor %}
|
47
|
+
</ul>
|
48
|
+
|
49
|
+
{% include pagination.html %}
|
50
|
+
|
51
|
+
</div>
|
data/_layouts/page.html
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<article class="post">
|
5
|
+
|
6
|
+
<header class="post-header">
|
7
|
+
<h1 class="post-title">{{ page.title | escape }}</h1>
|
8
|
+
</header>
|
9
|
+
|
10
|
+
<div class="post-content">
|
11
|
+
{{ content }}
|
12
|
+
</div>
|
13
|
+
|
14
|
+
{% if site.comments == true and page.comments != false %}
|
15
|
+
<div class="post-comments">
|
16
|
+
{% include custom_comments_provider.html %}
|
17
|
+
</div>
|
18
|
+
{% endif %}
|
19
|
+
|
20
|
+
</article>
|
data/_layouts/post.html
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
|
5
|
+
|
6
|
+
<header class="post-header">
|
7
|
+
{% if page.external-url %}
|
8
|
+
<h1 class="post-title" itemprop="name headline"><a href="{{ page.external-url }}">{{ page.title | escape }} →</a></h1>
|
9
|
+
{% else %}
|
10
|
+
<h1 class="post-title" itemprop="name headline">{{ page.title | escape }}</h1>
|
11
|
+
{% endif %}
|
12
|
+
<p class="post-meta"><time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">{% include date.html date=page.date %}</time>{% if page.author %} • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span itemprop="name">{{ page.author }}</span></span>{% endif %}{% if page.categories != empty or page.tags != empty %}{% include category_links.html categories=page.categories tags=page.tags %}{% endif %}</p>
|
13
|
+
</header>
|
14
|
+
|
15
|
+
<div class="post-content" itemprop="articleBody">
|
16
|
+
{{ content }}
|
17
|
+
</div>
|
18
|
+
|
19
|
+
{% if site.comments == true and page.comments != false %}
|
20
|
+
<div class="post-comments" itemprop="comment">
|
21
|
+
{% include custom_comments_provider.html %}
|
22
|
+
</div>
|
23
|
+
{% endif %}
|
24
|
+
|
25
|
+
</article>
|
@@ -0,0 +1,217 @@
|
|
1
|
+
/**
|
2
|
+
* Reset some basic elements
|
3
|
+
*/
|
4
|
+
body, h1, h2, h3, h4, h5, h6,
|
5
|
+
p, blockquote, pre, hr,
|
6
|
+
dl, dd, ol, ul, figure {
|
7
|
+
margin: 0;
|
8
|
+
padding: 0;
|
9
|
+
}
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
/**
|
14
|
+
* Basic styling
|
15
|
+
*/
|
16
|
+
body {
|
17
|
+
font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;
|
18
|
+
color: $text-color;
|
19
|
+
background-color: $background-color;
|
20
|
+
-webkit-text-size-adjust: 100%;
|
21
|
+
-webkit-font-feature-settings: "kern" 1;
|
22
|
+
-moz-font-feature-settings: "kern" 1;
|
23
|
+
-o-font-feature-settings: "kern" 1;
|
24
|
+
font-feature-settings: "kern" 1;
|
25
|
+
font-kerning: normal;
|
26
|
+
word-wrap: break-word;
|
27
|
+
}
|
28
|
+
|
29
|
+
table {
|
30
|
+
width: 100%;
|
31
|
+
margin: 0 0 20px 0;
|
32
|
+
text-align: left;
|
33
|
+
}
|
34
|
+
|
35
|
+
/**
|
36
|
+
* Set `margin-bottom` to maintain vertical rhythm
|
37
|
+
*/
|
38
|
+
h1, h2, h3, h4, h5, h6,
|
39
|
+
p, blockquote, pre,
|
40
|
+
ul, ol, dl, figure,
|
41
|
+
%vertical-rhythm {
|
42
|
+
margin-bottom: $spacing-unit / 2;
|
43
|
+
}
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
/**
|
48
|
+
* Images
|
49
|
+
*/
|
50
|
+
img {
|
51
|
+
max-width: 100%;
|
52
|
+
vertical-align: middle;
|
53
|
+
}
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
/**
|
58
|
+
* Figures
|
59
|
+
*/
|
60
|
+
figure > img {
|
61
|
+
display: block;
|
62
|
+
}
|
63
|
+
|
64
|
+
figcaption {
|
65
|
+
font-size: $small-font-size;
|
66
|
+
}
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
/**
|
71
|
+
* Lists
|
72
|
+
*/
|
73
|
+
ul, ol {
|
74
|
+
margin-left: $spacing-unit;
|
75
|
+
}
|
76
|
+
|
77
|
+
li {
|
78
|
+
> ul,
|
79
|
+
> ol {
|
80
|
+
margin-bottom: 0;
|
81
|
+
}
|
82
|
+
}
|
83
|
+
|
84
|
+
|
85
|
+
|
86
|
+
/**
|
87
|
+
* Headings
|
88
|
+
*/
|
89
|
+
h1, h2, h3, h4, h5, h6 {
|
90
|
+
font-weight: $base-font-weight;
|
91
|
+
|
92
|
+
code {
|
93
|
+
font-size: inherit;
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
h1, h2, h3 {
|
98
|
+
&:lang(ko) {
|
99
|
+
word-break: keep-all;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
/**
|
106
|
+
* Links
|
107
|
+
*/
|
108
|
+
a {
|
109
|
+
color: $brand-color;
|
110
|
+
text-decoration: none;
|
111
|
+
|
112
|
+
&:visited {
|
113
|
+
color: darken($brand-color, 10%);
|
114
|
+
}
|
115
|
+
|
116
|
+
&:hover {
|
117
|
+
color: $text-color;
|
118
|
+
text-decoration: underline;
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
/**
|
125
|
+
* Blockquotes
|
126
|
+
*/
|
127
|
+
blockquote {
|
128
|
+
color: $grey-color;
|
129
|
+
border-left: 4px solid $grey-color-light;
|
130
|
+
padding-left: $spacing-unit / 2;
|
131
|
+
font-size: 18px;
|
132
|
+
letter-spacing: -1px;
|
133
|
+
font-style: italic;
|
134
|
+
|
135
|
+
> :last-child {
|
136
|
+
margin-bottom: 0;
|
137
|
+
}
|
138
|
+
|
139
|
+
pre, code {
|
140
|
+
color: $text-color;
|
141
|
+
}
|
142
|
+
}
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
/**
|
147
|
+
* Rules
|
148
|
+
*/
|
149
|
+
hr {
|
150
|
+
height: 4px;
|
151
|
+
margin: $spacing-unit / 2 0;
|
152
|
+
border: 0;
|
153
|
+
background-color: $grey-color-light;
|
154
|
+
}
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
/**
|
159
|
+
* Code formatting
|
160
|
+
*/
|
161
|
+
pre,
|
162
|
+
code {
|
163
|
+
font-family: $monospace-font-family;
|
164
|
+
font-size: 13px;
|
165
|
+
border: 1px solid $grey-color-light;
|
166
|
+
border-radius: 0;
|
167
|
+
background-color: #f8f8f8;
|
168
|
+
}
|
169
|
+
|
170
|
+
code {
|
171
|
+
padding: 1px 5px;
|
172
|
+
}
|
173
|
+
|
174
|
+
pre {
|
175
|
+
padding: 8px 12px;
|
176
|
+
overflow-x: auto;
|
177
|
+
word-wrap: normal;
|
178
|
+
|
179
|
+
> code {
|
180
|
+
border: 0;
|
181
|
+
padding-right: 0;
|
182
|
+
padding-left: 0;
|
183
|
+
}
|
184
|
+
}
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
/**
|
189
|
+
* Wrapper
|
190
|
+
*/
|
191
|
+
.wrapper {
|
192
|
+
max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));
|
193
|
+
max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));
|
194
|
+
margin-right: auto;
|
195
|
+
margin-left: auto;
|
196
|
+
padding-right: $spacing-unit;
|
197
|
+
padding-left: $spacing-unit;
|
198
|
+
@extend %clearfix;
|
199
|
+
|
200
|
+
@include media-query($on-laptop) {
|
201
|
+
max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));
|
202
|
+
max-width: calc(#{$content-width} - (#{$spacing-unit}));
|
203
|
+
padding-right: $spacing-unit / 2;
|
204
|
+
padding-left: $spacing-unit / 2;
|
205
|
+
}
|
206
|
+
}
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
/**
|
211
|
+
* Clearfix
|
212
|
+
*/
|
213
|
+
%clearfix:after {
|
214
|
+
content: "";
|
215
|
+
display: table;
|
216
|
+
clear: both;
|
217
|
+
}
|