purelog 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +1 -0
- data/README.md +45 -0
- data/_includes/analytics.html +18 -0
- data/_includes/author.html +6 -0
- data/_includes/footer.html +38 -0
- data/_includes/head.html +30 -0
- data/_includes/journal-data.html +13 -0
- data/_includes/links.html +38 -0
- data/_includes/post-data.html +25 -0
- data/_includes/search.html +44 -0
- data/_includes/sidebar.html +27 -0
- data/_layouts/default.html +30 -0
- data/_layouts/home.html +92 -0
- data/_layouts/journal-entry.html +23 -0
- data/_layouts/journals.html +38 -0
- data/_layouts/notes.html +45 -0
- data/_layouts/page.html +15 -0
- data/_layouts/post.html +23 -0
- data/assets/code.css +131 -0
- data/assets/css/purelog.css +4 -0
- data/assets/css/purelog.scss +3 -0
- data/assets/main.css +522 -0
- data/assets/simple-jekyll-search.js +296 -0
- data/lib/purelog/version.rb +5 -0
- data/lib/purelog.rb +7 -0
- metadata +85 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 38ae3491fa5651ea16cfd0bd53a0bd8eff07029bf8b71c0359893ec836436295
|
4
|
+
data.tar.gz: 678c4035de1fc059a8f7a87f90263ef57642479ac980f9eb68a8a25448c9c54c
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 64e8bb37c8a2eeaa275263526d4a8be8e8e8f4898bc9ad0c82e7b77d3d1d2dbac6caf080fb24d933de0c1a6389ecd6bcdf7c00553713f8343b671e4fcec0b69c
|
7
|
+
data.tar.gz: 8a527b2dce04044046da50220752287968461b924e46489952b1d9264d16474605d9001863af9ec75865102d261be4ffcda3427bebe14f10a22c7bfba49e4863
|
data/LICENSE
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
<copied>
|
data/README.md
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
# Purelog Jekyll Theme (Gem)
|
2
|
+
|
3
|
+
A reusable Jekyll theme extracted from the Purelog site, featuring a responsive layout built with Pure.css, accessibility-minded search, and portable links.
|
4
|
+
|
5
|
+
## Usage (local path)
|
6
|
+
|
7
|
+
In a Jekyll site, add to your `Gemfile`:
|
8
|
+
|
9
|
+
```ruby
|
10
|
+
gem "purelog", path: "../theme"
|
11
|
+
```
|
12
|
+
|
13
|
+
And in `_config.yml`:
|
14
|
+
|
15
|
+
```yml
|
16
|
+
theme: purelog
|
17
|
+
```
|
18
|
+
|
19
|
+
Ensure your site has the required plugins listed in your main Gemfile and `_config.yml` (jekyll-seo-tag, jekyll-feed, jekyll-paginate-v2, jekyll-sitemap).
|
20
|
+
|
21
|
+
## Assets
|
22
|
+
|
23
|
+
The theme provides `/assets/main.css`, `/assets/code.css`, and `/assets/simple-jekyll-search.js`.
|
24
|
+
|
25
|
+
## Notes & Journals (optional)
|
26
|
+
|
27
|
+
If you use the optional `notes` and `journals` collections, define them in your site's `_config.yml`:
|
28
|
+
|
29
|
+
```yml
|
30
|
+
collections:
|
31
|
+
notes:
|
32
|
+
output: true
|
33
|
+
permalink: /notes/:title
|
34
|
+
journals:
|
35
|
+
output: true
|
36
|
+
permalink: /journals/:title
|
37
|
+
```
|
38
|
+
|
39
|
+
## Google Analytics
|
40
|
+
|
41
|
+
Set `google_analytics: G-XXXXXXXXXX` and build with `JEKYLL_ENV=production`.
|
42
|
+
|
43
|
+
## License
|
44
|
+
|
45
|
+
MIT
|
@@ -0,0 +1,18 @@
|
|
1
|
+
{%- comment -%}
|
2
|
+
Google Analytics (GA4) snippet.
|
3
|
+
Usage:
|
4
|
+
1) Set `google_analytics: G-XXXXXXXXXX` in `_config.yml` (or via environment-specific config)
|
5
|
+
2) Ensure builds set JEKYLL_ENV=production to activate the include in `head.html`
|
6
|
+
{%- endcomment -%}
|
7
|
+
{%- if site.google_analytics and site.google_analytics != '' -%}
|
8
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
|
9
|
+
<script>
|
10
|
+
window.dataLayer = window.dataLayer || [];
|
11
|
+
function gtag(){dataLayer.push(arguments);}
|
12
|
+
gtag('js', new Date());
|
13
|
+
gtag('config', '{{ site.google_analytics }}', {
|
14
|
+
'anonymize_ip': true,
|
15
|
+
'page_path': window.location.pathname
|
16
|
+
});
|
17
|
+
</script>
|
18
|
+
{%- endif -%}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<hr/>
|
2
|
+
|
3
|
+
<footer class="footer">
|
4
|
+
<div class="pure-menu pure-menu-horizontal">
|
5
|
+
<ul>
|
6
|
+
<li class="pure-menu-item">
|
7
|
+
<a class="pure-menu-link" href="{{ "/" | relative_url }}">
|
8
|
+
<i class="fas fa-home"></i>
|
9
|
+
<span class="md-display">Home</span>
|
10
|
+
</a>
|
11
|
+
</li>
|
12
|
+
<li class="pure-menu-item">
|
13
|
+
<a class="pure-menu-link" href="https://twitter.com/{{site.twitter}}">
|
14
|
+
<i class="fab fa-twitter"></i>
|
15
|
+
<span class="md-display">Twitter</span>
|
16
|
+
</a>
|
17
|
+
</li>
|
18
|
+
<li class="pure-menu-item">
|
19
|
+
<a class="pure-menu-link" href="https://github.com/{{site.github}}">
|
20
|
+
<i class="fab fa-github"></i>
|
21
|
+
<span class="md-display">GitHub</span>
|
22
|
+
</a>
|
23
|
+
</li>
|
24
|
+
<li class="pure-menu-item">
|
25
|
+
<a class="pure-menu-link" href="mailto:{{site.email}}">
|
26
|
+
<i class="fas fa-paper-plane"></i>
|
27
|
+
<span class="md-display">E-mail</span>
|
28
|
+
</a>
|
29
|
+
</li>
|
30
|
+
<li class="pure-menu-item">
|
31
|
+
<a class="pure-menu-link" href="https://github.com/{{site.repository}}">
|
32
|
+
<i class="fas fa-code"></i>
|
33
|
+
<span class="md-display">Source Code</span>
|
34
|
+
</a>
|
35
|
+
</li>
|
36
|
+
</ul>
|
37
|
+
</div>
|
38
|
+
</footer>
|
data/_includes/head.html
ADDED
@@ -0,0 +1,30 @@
|
|
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.0">
|
5
|
+
<meta name="generator" content="Jekyll">
|
6
|
+
<link rel="license" href="LICENSE">
|
7
|
+
|
8
|
+
<meta name="application-name" content="{{ site.title }}">
|
9
|
+
<meta name="theme-color" content="{{ site.theme_color }}">
|
10
|
+
<link rel="archives" href="{{ "/archive" | relative_url }}">
|
11
|
+
|
12
|
+
<meta name="robots" content="index,follow"> <!-- All Search Engines -->
|
13
|
+
<meta name="googlebot" content="index,follow"><!-- Google Specific -->
|
14
|
+
|
15
|
+
<!-- Performance hints for external fonts -->
|
16
|
+
<link rel="preconnect" href="https://fonts.googleapis.com" crossorigin>
|
17
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
18
|
+
|
19
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/pure/2.0.3/pure-min.css" integrity="sha512-FEioxlObRXIskNAQ1/L0byx0SEkfAY+5fO024p9kGEfUQnACGRfCG5Af4bp/7sPNSzKbMtvmcJOWZC7fPX1/FA==" crossorigin="anonymous">
|
20
|
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/pure/2.0.3/grids-responsive-min.css" integrity="sha512-kAun73Sep6+UULykSwzQpmYKvyuU12oHjnHvm6khVmK8uFSiWp1gR9KHQbte5GNyTfJ88069HImsSP0gtgMfIg==" crossorigin="anonymous">
|
21
|
+
<link rel="stylesheet" href="{{ "/assets/main.css" | relative_url }}">
|
22
|
+
<link rel="stylesheet" href="{{ "/assets/code.css" | relative_url }}">
|
23
|
+
<script src="https://kit.fontawesome.com/e9dddf84a6.js" crossorigin="anonymous"></script>
|
24
|
+
{% if jekyll.environment == "production" and site.google_analytics %}
|
25
|
+
{%- include analytics.html -%}
|
26
|
+
{% endif %}
|
27
|
+
{%- seo -%}
|
28
|
+
{%- feed_meta -%}
|
29
|
+
<link rel="alternate" type="application/rss+xml" href="{{ "/feed.xml" | relative_url }}">
|
30
|
+
</head>
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<p>
|
2
|
+
{%- if page.author -%}
|
3
|
+
{% for author in page.author %}
|
4
|
+
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
5
|
+
<span itemprop="name">By: {{ author }}</span></span>
|
6
|
+
{%- if forloop.last == false %}, {% endif -%}
|
7
|
+
{% endfor %}
|
8
|
+
{%- endif -%}
|
9
|
+
<br />
|
10
|
+
{%- for tag in page.tags -%}
|
11
|
+
<a href="{{ "/tags/#" | append: tag | relative_url }}">#{{ tag }}</a>  
|
12
|
+
{%- endfor -%}
|
13
|
+
</p>
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<div class="menu" aria-label="Secondary">
|
2
|
+
<div class="about">
|
3
|
+
<a href="{{ "/about" | relative_url }}">
|
4
|
+
<i class="fas fa-signature"></i>
|
5
|
+
About
|
6
|
+
</a>
|
7
|
+
</div>
|
8
|
+
<div class="hashtags">
|
9
|
+
<a href="{{ "/tags" | relative_url }}">
|
10
|
+
<i class="fas fa-hashtag"></i>
|
11
|
+
Tags
|
12
|
+
</a>
|
13
|
+
</div>
|
14
|
+
<div class="categories">
|
15
|
+
<a href="{{ "/categories" | relative_url }}">
|
16
|
+
<i class="far fa-folder-open"></i>
|
17
|
+
Categories
|
18
|
+
</a>
|
19
|
+
</div>
|
20
|
+
<div class="archive">
|
21
|
+
<a href="{{ "/archive" | relative_url }}">
|
22
|
+
<i class="fas fa-archive"></i>
|
23
|
+
Archive
|
24
|
+
</a>
|
25
|
+
</div>
|
26
|
+
<div class="rss">
|
27
|
+
<a href="{{ "/feed.xml" | relative_url }}">
|
28
|
+
<i class="fas fa-rss"></i>
|
29
|
+
RSS
|
30
|
+
</a>
|
31
|
+
</div>
|
32
|
+
<div class="donate">
|
33
|
+
<a href="{{ site.donate_link }}">
|
34
|
+
<i class="fas fa-dollar-sign"></i>
|
35
|
+
Donate
|
36
|
+
</a>
|
37
|
+
</div>
|
38
|
+
</div>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<p>
|
2
|
+
{%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
|
3
|
+
<time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
4
|
+
{{ page.date | date: date_format }}
|
5
|
+
</time>
|
6
|
+
{%- if page.modified_date -%}
|
7
|
+
~
|
8
|
+
{%- assign mdate = page.modified_date | date_to_xmlschema -%}
|
9
|
+
<time datetime="{{ mdate }}" itemprop="dateModified">
|
10
|
+
{{ mdate | date: date_format }}
|
11
|
+
</time>
|
12
|
+
{%- endif -%}
|
13
|
+
 
|
14
|
+
{%- if page.author -%}
|
15
|
+
{% for author in page.author %}
|
16
|
+
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
17
|
+
<span itemprop="name">By: {{ author }}</span></span>
|
18
|
+
{%- if forloop.last == false %}, {% endif -%}
|
19
|
+
{% endfor %}
|
20
|
+
{%- endif -%}
|
21
|
+
 | 
|
22
|
+
{%- for tag in page.tags -%}
|
23
|
+
<a href="{{ "/tags/#" | append: tag | relative_url }}">#{{ tag }}</a>  
|
24
|
+
{%- endfor -%}
|
25
|
+
</p>
|
@@ -0,0 +1,44 @@
|
|
1
|
+
<div id="search" role="search">
|
2
|
+
<label>
|
3
|
+
<span class="search-icon">🔎</span>
|
4
|
+
<input autocomplete="off" id="search-input" oninput="changeResultContainerDisp(this.value)" placeholder="Search all articles..." type="text"/>
|
5
|
+
</label>
|
6
|
+
|
7
|
+
<ul id="results-container" style="display: none"></ul>
|
8
|
+
</div>
|
9
|
+
<script src="{{ "/assets/simple-jekyll-search.js" | relative_url }}"></script>
|
10
|
+
<script>
|
11
|
+
function changeResultContainerDisp(val) {
|
12
|
+
if (val) {
|
13
|
+
document
|
14
|
+
.getElementById("results-container")
|
15
|
+
.style
|
16
|
+
.display = "block";
|
17
|
+
document.getElementById("search-input").addEventListener("blur", function () {
|
18
|
+
document.addEventListener("click", function (event) {
|
19
|
+
var isClickInside = document.getElementById("results-container").contains(event.target);
|
20
|
+
if (! isClickInside) {
|
21
|
+
document
|
22
|
+
.getElementById("results-container")
|
23
|
+
.style
|
24
|
+
.display = "none";
|
25
|
+
}
|
26
|
+
})
|
27
|
+
})
|
28
|
+
} else {
|
29
|
+
document
|
30
|
+
.getElementById("results-container")
|
31
|
+
.style
|
32
|
+
.display = "none";
|
33
|
+
}
|
34
|
+
}
|
35
|
+
var sjs = SimpleJekyllSearch({
|
36
|
+
searchInput: document.getElementById("search-input"),
|
37
|
+
resultsContainer: document.getElementById("results-container"),
|
38
|
+
json: "{{ '/search.json' | relative_url }}",
|
39
|
+
searchResultTemplate: "<li class='search_res' style='list-style: none;'><a href='{url}' style='color:#555555;'><p><strong>></strong> {title}</p></a></li>",
|
40
|
+
noResultsText: "No results found. Try another search.",
|
41
|
+
fuzzy: false,
|
42
|
+
limit: 5
|
43
|
+
})
|
44
|
+
</script>
|
@@ -0,0 +1,27 @@
|
|
1
|
+
<aside class="sidebar pure-u-1 pure-u-md-1-4">
|
2
|
+
<div class="sidebar-info">
|
3
|
+
<a href="{{ "/" | relative_url }}">
|
4
|
+
<span hidden>{{site.title}}
|
5
|
+
Header Image</span>
|
6
|
+
<img class="brand-photo" src="{{ site.header_image | relative_url }}" alt="Photo of {{site.author}}"/>
|
7
|
+
</a>
|
8
|
+
<h1 class="brand-title">
|
9
|
+
<a href="{{ "/" | relative_url }}">{{site.title}}</a>
|
10
|
+
</h1>
|
11
|
+
<h2 class="brand-tagline">{{site.description}}</h2>
|
12
|
+
|
13
|
+
<nav class="nav" aria-label="Primary">
|
14
|
+
<ul class="nav-list">
|
15
|
+
<li class="nav-item">
|
16
|
+
<a class="pure-button" href="{{ "/" | relative_url }}">Home</a>
|
17
|
+
</li>
|
18
|
+
<li class="nav-item">
|
19
|
+
<a class="pure-button" href="{{ "/notes" | relative_url }}">Notes</a>
|
20
|
+
</li>
|
21
|
+
<li class="nav-item">
|
22
|
+
<a class="pure-button" href="{{ "/journals" | relative_url }}">Journal</a>
|
23
|
+
</li>
|
24
|
+
</ul>
|
25
|
+
</nav>
|
26
|
+
</div>
|
27
|
+
</aside>
|
@@ -0,0 +1,30 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html lang="en">
|
3
|
+
|
4
|
+
{%- include head.html -%}
|
5
|
+
|
6
|
+
<body>
|
7
|
+
|
8
|
+
<div id="layout" class="pure-g">
|
9
|
+
|
10
|
+
{%- include sidebar.html -%}
|
11
|
+
|
12
|
+
<div class="content pure-u-1 pure-u-md-3-4">
|
13
|
+
<div class="md-display">
|
14
|
+
<h1>
|
15
|
+
<a class="jekyll-header" href="{{ "/" | relative_url }}">Welcome to {{site.title}}</a>
|
16
|
+
</h1>
|
17
|
+
{%- include links.html -%}
|
18
|
+
{%- include search.html -%}
|
19
|
+
</div>
|
20
|
+
<main id="main-content" role="main">
|
21
|
+
{{ content }}
|
22
|
+
{%- include footer.html -%}
|
23
|
+
|
24
|
+
</main>
|
25
|
+
</div>
|
26
|
+
</div>
|
27
|
+
|
28
|
+
</body>
|
29
|
+
|
30
|
+
</html>
|
data/_layouts/home.html
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
{{ content }}
|
5
|
+
|
6
|
+
{% if paginator %}
|
7
|
+
{% assign posts = paginator.posts %}
|
8
|
+
{% else %}
|
9
|
+
{% assign posts = site.posts %}
|
10
|
+
{% endif %}
|
11
|
+
|
12
|
+
<div class="posts">
|
13
|
+
<h2 class="content-subhead">Recent Posts</h2>
|
14
|
+
|
15
|
+
{%- if posts.size > 0 -%}
|
16
|
+
{%- assign date_format = site.minima.date_format | default: "%B %-d, %Y" -%}
|
17
|
+
|
18
|
+
{%- for post in posts -%}
|
19
|
+
<section class="post">
|
20
|
+
<header class="feed-header">
|
21
|
+
<img width="48" height="48" alt="{{post.author}}'s Avatar'" class="post-avatar" src="{{ post.avatar | relative_url }}"/>
|
22
|
+
<h2 class="post-title">
|
23
|
+
<a href="{{ post.url | relative_url }}">
|
24
|
+
{{ post.title | escape }}
|
25
|
+
</a>
|
26
|
+
</h2>
|
27
|
+
<p class="post-meta">
|
28
|
+
Posted:
|
29
|
+
{{ post.date | date: date_format }}
|
30
|
+
|
|
31
|
+
<br class="sm-display"/>
|
32
|
+
By
|
33
|
+
<a class="post-author" href="#">{{ post.author }}</a>
|
34
|
+
under
|
35
|
+
<span>
|
36
|
+
{% for tag in post.tags %}
|
37
|
+
<a href="{{ "/tags/#" | append: tag | relative_url }}">#{{ tag }}</a>
|
38
|
+
{% endfor %}
|
39
|
+
</span>
|
40
|
+
</p>
|
41
|
+
</header>
|
42
|
+
|
43
|
+
<div class="post-description">
|
44
|
+
<p class="md-display">
|
45
|
+
<em>{{ post.content | strip_html | escape | truncate: 400}}</em>
|
46
|
+
</p>
|
47
|
+
<p class="sm-display">
|
48
|
+
<em>{{ post.content | strip_html | escape | truncate: 300}}</em>
|
49
|
+
</p>
|
50
|
+
</div>
|
51
|
+
</section>
|
52
|
+
{%- endfor -%}
|
53
|
+
</div>
|
54
|
+
|
55
|
+
|
56
|
+
<br/>
|
57
|
+
|
58
|
+
{% if paginator %}
|
59
|
+
<div class="pure-menu pure-menu-horizontal paginate">
|
60
|
+
<ul>
|
61
|
+
|
62
|
+
{%- if paginator.previous_page %}
|
63
|
+
<li class="pure-menu-item">
|
64
|
+
<a href="{{ paginator.previous_page_path | relative_url }}">
|
65
|
+
🡐
|
66
|
+
Previous</a>
|
67
|
+
</li>
|
68
|
+
{%- else %}
|
69
|
+
<li class="pure-menu-item">#</li>
|
70
|
+
{%- endif %}
|
71
|
+
|
72
|
+
<li class="pure-menu-item" id="current-page">
|
73
|
+
Page
|
74
|
+
{{ paginator.page }}
|
75
|
+
of
|
76
|
+
{{ paginator.total_pages }}
|
77
|
+
</li>
|
78
|
+
|
79
|
+
{%- if paginator.next_page %}
|
80
|
+
<li class="pure-menu-item">
|
81
|
+
<a href="{{ paginator.next_page_path | relative_url }}" class="next-page">Next
|
82
|
+
🡒
|
83
|
+
</a>
|
84
|
+
</li>
|
85
|
+
{%- else %}
|
86
|
+
<li class="pure-menu-item">#</li>
|
87
|
+
{%- endif %}
|
88
|
+
|
89
|
+
</ul>
|
90
|
+
</div>
|
91
|
+
{%- endif %}
|
92
|
+
{%- endif -%}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<article class="post-entry" itemscope itemtype="http://schema.org/BlogPosting">
|
6
|
+
|
7
|
+
<header class="post-header">
|
8
|
+
<h2 class="post-title" itemprop="name headline">{{ page.title | escape }}</h2>
|
9
|
+
{%- include journal-data.html -%}
|
10
|
+
</header>
|
11
|
+
|
12
|
+
<div articlebody" class="post-body itemprop=">
|
13
|
+
{{ content }}
|
14
|
+
</div>
|
15
|
+
|
16
|
+
{%- include author.html -%}
|
17
|
+
|
18
|
+
{%- if site.disqus.shortname -%}
|
19
|
+
{%- include disqus_comments.html -%}
|
20
|
+
{%- endif -%}
|
21
|
+
|
22
|
+
<a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
|
23
|
+
</article>
|
@@ -0,0 +1,38 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
{{ content }}
|
5
|
+
|
6
|
+
{% assign journals = site.journals %}
|
7
|
+
|
8
|
+
<div class="journals">
|
9
|
+
<h2 class="content-subhead">Recent Journals</h2>
|
10
|
+
|
11
|
+
{%- if journals.size > 0 -%}
|
12
|
+
{%- assign date_format = site.minima.date_format | default: "%B %-d, %Y" -%}
|
13
|
+
|
14
|
+
{%- for journal in journals -%}
|
15
|
+
<section class="journal">
|
16
|
+
<header class="journal-header">
|
17
|
+
<small>
|
18
|
+
<h2 class="post-title">
|
19
|
+
<a href="{{ journal.url | relative_url }}">
|
20
|
+
{{ journal.title | escape }}
|
21
|
+
</a>
|
22
|
+
</h2>
|
23
|
+
</small>
|
24
|
+
</header>
|
25
|
+
|
26
|
+
<div class="journal-description">
|
27
|
+
<p>
|
28
|
+
<em>{{ journal.content | escape | truncate: 300}}</em>
|
29
|
+
</p>
|
30
|
+
</div>
|
31
|
+
</section>
|
32
|
+
{%- endfor -%}
|
33
|
+
</div>
|
34
|
+
|
35
|
+
|
36
|
+
<br/>
|
37
|
+
|
38
|
+
{%- endif -%}
|
data/_layouts/notes.html
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
{{ content }}
|
5
|
+
|
6
|
+
{% assign notes = site.notes %}
|
7
|
+
|
8
|
+
<div class="notes">
|
9
|
+
<h2 class="content-subhead">Recent Notes</h2>
|
10
|
+
|
11
|
+
{%- if notes.size > 0 -%}
|
12
|
+
{%- assign date_format = site.minima.date_format | default: "%B %-d, %Y" -%}
|
13
|
+
|
14
|
+
{%- for note in notes -%}
|
15
|
+
<section class="post">
|
16
|
+
<header class="note-header">
|
17
|
+
<h2 class="post-title">
|
18
|
+
<a href="{{ note.url | relative_url }}">
|
19
|
+
{{ note.title | escape }}
|
20
|
+
</a>
|
21
|
+
</h2>
|
22
|
+
|
23
|
+
<p class="post-meta">
|
24
|
+
Tagged:
|
25
|
+
<span>
|
26
|
+
{% for tag in note.tags %}
|
27
|
+
<a href="{{ "/tags/#" | append: tag | relative_url }}">#{{ tag }}</a>
|
28
|
+
{% endfor %}
|
29
|
+
</span>
|
30
|
+
</p>
|
31
|
+
</header>
|
32
|
+
|
33
|
+
<div class="post-description">
|
34
|
+
<p>
|
35
|
+
<em>{{ note.content | strip_html | escape | truncate: 300}}</em>
|
36
|
+
</p>
|
37
|
+
</div>
|
38
|
+
</section>
|
39
|
+
{%- endfor -%}
|
40
|
+
</div>
|
41
|
+
|
42
|
+
|
43
|
+
<br/>
|
44
|
+
|
45
|
+
{%- endif -%}
|
data/_layouts/page.html
ADDED
data/_layouts/post.html
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<article class="post-entry" itemscope itemtype="http://schema.org/BlogPosting">
|
6
|
+
|
7
|
+
<header class="post-header">
|
8
|
+
<h2 class="post-title" itemprop="name headline">{{ page.title | escape }}</h2>
|
9
|
+
{%- include post-data.html -%}
|
10
|
+
</header>
|
11
|
+
|
12
|
+
<div articlebody" class="post-body itemprop=">
|
13
|
+
{{ content }}
|
14
|
+
</div>
|
15
|
+
|
16
|
+
{%- include author.html -%}
|
17
|
+
|
18
|
+
{%- if site.disqus.shortname -%}
|
19
|
+
{%- include disqus_comments.html -%}
|
20
|
+
{%- endif -%}
|
21
|
+
|
22
|
+
<a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
|
23
|
+
</article>
|