jekyll-recker 0.5.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.org +9 -17
- data/_includes/footer.html +5 -0
- data/_includes/header.html +4 -0
- data/_includes/nav.html +7 -15
- data/_layouts/default.html +7 -30
- data/_layouts/home.html +6 -18
- data/_layouts/page.html +5 -7
- data/_layouts/post.html +18 -9
- data/assets/jekyll-recker.scss +98 -1
- data/lib/jekyll-recker/version.rb +1 -1
- metadata +4 -11
- data/_includes/archive.html +0 -23
- data/_includes/pager.html +0 -10
- data/_includes/stats.html +0 -36
- data/_sass/jekyll-recker.sass +0 -15
- data/assets/images/example-slack.png +0 -0
- data/assets/images/example-stats.png +0 -0
- data/assets/images/example-tweet.png +0 -0
- data/assets/images/me.jpg +0 -0
- data/assets/images/words.png +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe1b20e20cee29de09d145d281709dc36c4abd321a2a0153130b7aa9d060a431
|
4
|
+
data.tar.gz: af9f959a802e6911cce08eac00a5558942e9174dfec7449cb1e17d5f1cf73ec6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5370fd759cfb3a5fac84e8fb295945e533fee8fbc8b87a5df1527385ed8daf131c5bb6a0fdc62f0c56244394c22d9e2bf12bce87c61a4332fb01712cbb45510
|
7
|
+
data.tar.gz: 21f2e618b6d10eaf88d06d89d00c5b24aa0ac97795eadb0b77e60b8b0d9cd6117ac0476657e98ddd8ae0da2aa9c675622a14a93f50d7c27f3ca9266f812f1d74
|
data/README.org
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
This is the jekyll plugin for my personal website.
|
8
8
|
|
9
|
-
|
9
|
+
** Installation
|
10
10
|
|
11
11
|
Add =jekyll-recker= to the =jekyll_plugins= group of your =Gemfile=.
|
12
12
|
|
@@ -37,11 +37,11 @@ bundle install
|
|
37
37
|
bundle exec jekyll serve
|
38
38
|
#+END_SRC
|
39
39
|
|
40
|
-
|
40
|
+
** Usage
|
41
41
|
|
42
|
-
|
42
|
+
*** Commands
|
43
43
|
|
44
|
-
|
44
|
+
**** =slack=
|
45
45
|
|
46
46
|
The =slack= command posts a slack message advertising the latest
|
47
47
|
published jekyll blog post using a private incoming webhook.
|
@@ -117,7 +117,7 @@ https://www.alexrecker.com/2020-03-15.html
|
|
117
117
|
END MESSAGE
|
118
118
|
#+END_EXAMPLE
|
119
119
|
|
120
|
-
|
120
|
+
**** =tweet=
|
121
121
|
|
122
122
|
The =tweet= command tweets a link to the latest published jekyll blog
|
123
123
|
post.
|
@@ -164,18 +164,12 @@ https://www.alexrecker.com/2020-03-15.html
|
|
164
164
|
END TWEET
|
165
165
|
#+END_EXAMPLE
|
166
166
|
|
167
|
-
|
167
|
+
*** Generators
|
168
168
|
|
169
|
-
|
169
|
+
**** =stats=
|
170
170
|
|
171
171
|
On build time, =jekyll-recker= calculates and stores the following
|
172
|
-
stats in the =site.data.stats= object
|
173
|
-
widget on the home page layout.
|
174
|
-
|
175
|
-
[[assets/images/example-stats.png]]
|
176
|
-
|
177
|
-
If you'd like, you can override the template with your own stats
|
178
|
-
widget by providing your own =_includes/stats.html=.
|
172
|
+
stats in the =site.data.stats= object
|
179
173
|
|
180
174
|
| Field Name | Field Description |
|
181
175
|
|-----------------+------------------------------------------------------|
|
@@ -186,11 +180,9 @@ widget by providing your own =_includes/stats.html=.
|
|
186
180
|
| =days.start= | First day of current streak. |
|
187
181
|
| =days.end= | Last day of current streak. |
|
188
182
|
|
189
|
-
|
183
|
+
Use these variables to render your own page of neat writing statistics!
|
190
184
|
|
191
185
|
#+BEGIN_SRC html
|
192
|
-
<!-- _includes/stats.html -->
|
193
|
-
|
194
186
|
<table>
|
195
187
|
<tr>
|
196
188
|
<th>Total Posts</th>
|
data/_includes/nav.html
CHANGED
@@ -1,15 +1,7 @@
|
|
1
|
-
<
|
2
|
-
<
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
<div class="ui huge breadcrumb">
|
9
|
-
<a href="{{ site.baseurl}}/" class="section">
|
10
|
-
<i class="home icon"></i>
|
11
|
-
</a>
|
12
|
-
<i class="right angle icon divider"></i>
|
13
|
-
<div class="active section">{{ include.slug }}</div>
|
14
|
-
</div>
|
15
|
-
</div>
|
1
|
+
<nav>
|
2
|
+
<a href="{{ site.baseurl }}/" class="{% if page.active == 'index' %}active{% endif %}">index</a>
|
3
|
+
<a href="{% link archive.html %}" class="{% if page.active == 'archive' %}active{% endif %}">archive</a>
|
4
|
+
<a href="{% link stats.org %}" class="{% if page.active == 'stats' %}active{% endif %}">stats</a>
|
5
|
+
<a href="{% link contact.html %}" class="{% if page.active == 'contact' %}active{% endif %}">contact</a>
|
6
|
+
<span class="float-right">{{ page.slug }}</span>
|
7
|
+
</nav>
|
data/_layouts/default.html
CHANGED
@@ -1,37 +1,14 @@
|
|
1
1
|
<!doctype html>
|
2
2
|
<html lang="en">
|
3
3
|
<head>
|
4
|
-
<meta charset="
|
5
|
-
<
|
6
|
-
<
|
7
|
-
<link href="/assets/jekyll-recker.css" rel="stylesheet"/>
|
8
|
-
<title>
|
9
|
-
{{ site.title }} | {% if page.title != nil %}{{ page.title }}{% else %}{{ site.description }}{% endif %}
|
10
|
-
</title>
|
4
|
+
<meta charset="UTF-8"/>
|
5
|
+
<title>{{ site.title }} | {{ page.title | default: site.description }}</title>
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
7
|
+
<link href="{{ site.baseurl }}/assets/jekyll-recker.css" rel="stylesheet"/>
|
11
8
|
</head>
|
12
9
|
<body>
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
<div class="ui vertical footer segment">
|
17
|
-
<div class="ui center aligned container">
|
18
|
-
<div class="ui horizontal large divided link list">
|
19
|
-
<div class="ui buttons">
|
20
|
-
<a class="ui circular rss basic button" href="/feed.xml"><i class="rss icon"></i></a>
|
21
|
-
<a class="ui circular email basic button" href="mailto:{{ site.email }}"><i class="envelope icon"></i></a>
|
22
|
-
<a class="ui circular twitter basic button" href="https://www.twitter.com/{{ site.twitter_username }}"><i class="twitter icon"></i></a>
|
23
|
-
<a class="ui circular github basic button" href="https://www.github.com/{{ site.github_username }}"><i class="github icon"></i></a>
|
24
|
-
</div>
|
25
|
-
</div>
|
26
|
-
</div>
|
27
|
-
<div class="ui center aligned container">
|
28
|
-
<div class="ui centered mini">
|
29
|
-
<p>
|
30
|
-
powered by <a title="Jekyll is a simple, blog-aware, static site generator." href="http://jekyllrb.com/">jekyll</a> &
|
31
|
-
<a title="Alex Recker's custom jekyll plugin" href="{{ site.baseurl }}{% link README.org %}">jekyll-recker</a> v{% recker_version %}
|
32
|
-
</p>
|
33
|
-
</div>
|
34
|
-
</div>
|
35
|
-
</div>
|
10
|
+
{{ content }}
|
11
|
+
<hr/>
|
12
|
+
{% include footer.html %}
|
36
13
|
</body>
|
37
14
|
</html>
|
data/_layouts/home.html
CHANGED
@@ -1,21 +1,9 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
<div class="ui container center aligned segment">
|
11
|
-
{% include stats.html %}
|
12
|
-
</div>
|
13
|
-
<br/>
|
14
|
-
<div class="ui container">
|
15
|
-
<img class="ui fluid image" src="{{ site.baseurl }}assets/images/words.png">
|
16
|
-
</div>
|
17
|
-
<br/>
|
18
|
-
<div class="ui container">
|
19
|
-
{% include archive.html %}
|
20
|
-
</div>
|
21
|
-
</div>
|
4
|
+
{% include header.html title=site.title subtitle=site.description %}
|
5
|
+
<hr/>
|
6
|
+
{% include nav.html %}
|
7
|
+
<hr/>
|
8
|
+
{{ content }}
|
9
|
+
|
data/_layouts/page.html
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
</div>
|
10
|
-
|
4
|
+
{% include header.html title=page.title subtitle=page.description %}
|
5
|
+
<hr/>
|
6
|
+
{% include nav.html %}
|
7
|
+
<hr/>
|
8
|
+
{{ content }}
|
data/_layouts/post.html
CHANGED
@@ -1,12 +1,21 @@
|
|
1
1
|
---
|
2
2
|
layout: default
|
3
3
|
---
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
4
|
+
{% capture datestring %}{{ page.date | date: '%A, %B %d %Y' }}{% endcapture %}
|
5
|
+
{% include header.html title=datestring subtitle=page.title %}
|
6
|
+
<hr/>
|
7
|
+
{% include nav.html %}
|
8
|
+
<hr/>
|
9
|
+
{{ content }}
|
10
|
+
<nav class="clearfix">
|
11
|
+
{%- if page.next -%}
|
12
|
+
<a href="{{ page.next.url }}">
|
13
|
+
⟵ {{ page.next.slug }}
|
14
|
+
</a>
|
15
|
+
{%- endif -%}
|
16
|
+
{%- if page.previous -%}
|
17
|
+
<a class="float-right" href="{{ page.previous.url }}">
|
18
|
+
{{ page.previous.slug }} ⟶
|
19
|
+
</a>
|
20
|
+
</nav>
|
21
|
+
{%- endif -%}
|
data/assets/jekyll-recker.scss
CHANGED
@@ -1,3 +1,100 @@
|
|
1
1
|
---
|
2
2
|
---
|
3
|
-
@import
|
3
|
+
// @import 'https://fonts.googleapis.com/css?family=Titillium+Web&display=swap';
|
4
|
+
@import 'https://fonts.googleapis.com/css?family=Open+Sans&display=swap';
|
5
|
+
@import 'https://fonts.googleapis.com/css?family=Inconsolata&display=swap';
|
6
|
+
|
7
|
+
.float-right {
|
8
|
+
float: right;
|
9
|
+
}
|
10
|
+
|
11
|
+
.clearfix::after {
|
12
|
+
content: "";
|
13
|
+
clear: both;
|
14
|
+
display: block;
|
15
|
+
}
|
16
|
+
|
17
|
+
ul.unstyled {
|
18
|
+
list-style-type: none;
|
19
|
+
margin: 0;
|
20
|
+
padding: 0;
|
21
|
+
}
|
22
|
+
|
23
|
+
body {
|
24
|
+
margin: 40px auto;
|
25
|
+
max-width: 800px;
|
26
|
+
line-height: 1.6;
|
27
|
+
font-size: 18px;
|
28
|
+
color: #444;
|
29
|
+
padding: 0 10px;
|
30
|
+
}
|
31
|
+
|
32
|
+
h1, h2, h3 {
|
33
|
+
line-height: 1.2;
|
34
|
+
}
|
35
|
+
|
36
|
+
header {
|
37
|
+
h1 {
|
38
|
+
margin-bottom: 9px;
|
39
|
+
}
|
40
|
+
|
41
|
+
p {
|
42
|
+
margin-top: 9px;
|
43
|
+
}
|
44
|
+
}
|
45
|
+
|
46
|
+
figure {
|
47
|
+
img {
|
48
|
+
display: block;
|
49
|
+
margin-left: auto;
|
50
|
+
margin-right: auto;
|
51
|
+
vertical-align: top;
|
52
|
+
height: auto;
|
53
|
+
max-width: 100%;
|
54
|
+
}
|
55
|
+
|
56
|
+
figcaption {
|
57
|
+
text-align: center;
|
58
|
+
}
|
59
|
+
}
|
60
|
+
|
61
|
+
nav {
|
62
|
+
a {
|
63
|
+
margin-right: 10px;
|
64
|
+
}
|
65
|
+
|
66
|
+
a.active {
|
67
|
+
color: black !important;
|
68
|
+
}
|
69
|
+
|
70
|
+
span {
|
71
|
+
color: #6f7370;
|
72
|
+
}
|
73
|
+
}
|
74
|
+
|
75
|
+
a {
|
76
|
+
text-decoration: none !important;
|
77
|
+
color: #008083 !important;
|
78
|
+
|
79
|
+
:hover {
|
80
|
+
text-decoration: underline !important;
|
81
|
+
}
|
82
|
+
|
83
|
+
:active {
|
84
|
+
color: #6f7370 !important;
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
* {
|
89
|
+
// font-family: 'Titillium Web', sans-serif !important;
|
90
|
+
font-family: 'Open Sans', 'sans-serif' !important;
|
91
|
+
}
|
92
|
+
|
93
|
+
code, pre, pre span {
|
94
|
+
font-family: Inconsolata, monospace !important;
|
95
|
+
}
|
96
|
+
|
97
|
+
pre, pre span {
|
98
|
+
font-size: 14px;
|
99
|
+
}
|
100
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-recker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Recker
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03-
|
11
|
+
date: 2020-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -89,20 +89,13 @@ extra_rdoc_files: []
|
|
89
89
|
files:
|
90
90
|
- LICENSE
|
91
91
|
- README.org
|
92
|
-
- _includes/
|
92
|
+
- _includes/footer.html
|
93
|
+
- _includes/header.html
|
93
94
|
- _includes/nav.html
|
94
|
-
- _includes/pager.html
|
95
|
-
- _includes/stats.html
|
96
95
|
- _layouts/default.html
|
97
96
|
- _layouts/home.html
|
98
97
|
- _layouts/page.html
|
99
98
|
- _layouts/post.html
|
100
|
-
- _sass/jekyll-recker.sass
|
101
|
-
- assets/images/example-slack.png
|
102
|
-
- assets/images/example-stats.png
|
103
|
-
- assets/images/example-tweet.png
|
104
|
-
- assets/images/me.jpg
|
105
|
-
- assets/images/words.png
|
106
99
|
- assets/jekyll-recker.scss
|
107
100
|
- lib/jekyll-recker.rb
|
108
101
|
- lib/jekyll-recker/commands.rb
|
data/_includes/archive.html
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
<div class="ui two column stackable grid">
|
2
|
-
{%- for post in site.posts -%}
|
3
|
-
{%- capture this_month -%}{{ post.date | date: '%B %Y' }}{%- endcapture -%}
|
4
|
-
{%- capture next_month -%}{{ post.previous.date | date: '%B %Y' }}{%- endcapture -%}
|
5
|
-
{%- if forloop.first -%}
|
6
|
-
<div class="center aligned column">
|
7
|
-
<h3 class="ui large header">{{ this_month }}</h3>
|
8
|
-
<div class="ui middle aligned large link list">
|
9
|
-
{%- endif -%}
|
10
|
-
<a class="item" href="{{ post.url }}">{{ post.title }}</a>
|
11
|
-
{%- if this_month != next_month -%}
|
12
|
-
</div>
|
13
|
-
</div>
|
14
|
-
<div class="center aligned column">
|
15
|
-
<h3 class="ui large header">{{ next_month }}</h3>
|
16
|
-
<div class="ui middle aligned large link list">
|
17
|
-
{%- endif -%}
|
18
|
-
{%- if forloop.last -%}
|
19
|
-
</div>
|
20
|
-
</div>
|
21
|
-
{%- endif -%}
|
22
|
-
{%- endfor -%}
|
23
|
-
</div>
|
data/_includes/pager.html
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
{%- if page.next -%}
|
2
|
-
<a href="{{ page.next.url }}" class="ui basic left floated button">
|
3
|
-
<i class="angle left icon"></i> {{ page.next.slug }}
|
4
|
-
</a>
|
5
|
-
{%- endif -%}
|
6
|
-
{%- if page.previous -%}
|
7
|
-
<a href="{{ page.previous.url }}" class="ui basic right floated button">
|
8
|
-
{{ page.previous.slug }} <i class="angle right icon"></i>
|
9
|
-
</a>
|
10
|
-
{%- endif -%}
|
data/_includes/stats.html
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
<div class="ui center aligned four small statistics">
|
2
|
-
<div class="ui small statistic">
|
3
|
-
<div class="value">
|
4
|
-
{{ site.data.stats.words.total }}
|
5
|
-
</div>
|
6
|
-
<div class="label">
|
7
|
-
Total Words
|
8
|
-
</div>
|
9
|
-
</div>
|
10
|
-
<div class="ui small statistic">
|
11
|
-
<div class="value">
|
12
|
-
{{ site.data.stats.words.average }}
|
13
|
-
</div>
|
14
|
-
<div class="label">
|
15
|
-
Ave. Words per post
|
16
|
-
</div>
|
17
|
-
</div>
|
18
|
-
<div class="ui small statistic">
|
19
|
-
<div class="value">
|
20
|
-
{{ site.data.stats.posts }}
|
21
|
-
</div>
|
22
|
-
<div class="label">
|
23
|
-
Posts
|
24
|
-
</div>
|
25
|
-
</div>
|
26
|
-
<div class="ui small statistic">
|
27
|
-
<div class="value">
|
28
|
-
{{ site.data.stats.days.days }}
|
29
|
-
</div>
|
30
|
-
<div class="label">
|
31
|
-
Consecutive Days
|
32
|
-
</div>
|
33
|
-
</div>
|
34
|
-
</div>
|
35
|
-
|
36
|
-
|
data/_sass/jekyll-recker.sass
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
.ui
|
2
|
-
.container
|
3
|
-
margin: 2em
|
4
|
-
|
5
|
-
.footer
|
6
|
-
margin-top: 50px !important
|
7
|
-
|
8
|
-
p
|
9
|
-
font-size: 20px
|
10
|
-
line-height: 160%
|
11
|
-
-moz-osx-font-smoothing: grayscale
|
12
|
-
-webkit-font-smoothing: antialiased !important
|
13
|
-
-moz-font-smoothing: antialiased !important
|
14
|
-
text-rendering: optimizelegibility !important
|
15
|
-
letter-spacing: .03em
|
Binary file
|
Binary file
|
Binary file
|
data/assets/images/me.jpg
DELETED
Binary file
|
data/assets/images/words.png
DELETED
Binary file
|