-
Notifications
You must be signed in to change notification settings - Fork 1
/
.holocron.yml
135 lines (120 loc) · 3.92 KB
/
.holocron.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
metadata:
title: Ihor Kalnytskyi
author: Ihor Kalnytskyi
url: https://kalnytskyi.com
feedurl: /feed.xml
pipes:
compile:
- name: import-processors
args:
imports:
- guess-published-from-source = guess_published:process
- alias = alias:process
- shell = shell:process
from_: _processors
- name: source
args:
pattern: '[^_.].*$'
- name: guess-published-from-source
args:
pattern: '(?P<trim>/(?P<parse>\d{4}-\d{2}-\d{2})_)'
- name: pipe
args:
pipe:
- name: frontmatter
- name: commonmark
args:
infer_title: true
pygmentize: true
strikethrough: true
table: true
footnote: true
admonition: true
definition: true
- name: archive
when:
- item.published
- not item.draft
when:
- item.source.match("*.markdown")
- item.source.parts[0] != "talks" or item.source.parts[1] == "index.markdown"
- name: pipe
args:
pipe:
- name: sitemap
# Feed processor configuration is too overcomplicated now. Yet, it's
# something we need anyway because its options reflect RSS/Atom
# options. However, some sane defaults and references to metadata are
# required and it's something Holocron will incorporate one day.
- name: feed
args:
save_as: feed.xml
feed:
id:
$ref: metadata://#/url
title:
$ref: metadata://#/title
description: Ihor Kalnytskyi's thoughts & writings
link:
- href: https://kalnytskyi.com/feed.xml
rel: self
type: application/atom+xml
- href:
$ref: metadata://#/url
rel: alternate
type: text/html
item:
id:
$ref: item://#/absurl
title:
$ref: item://#/title
content:
$ref: item://#/content
link:
href:
$ref: item://#/absurl
author:
name:
$ref: metadata://#/author
published:
$ref: item://#/published
when:
- item.published
when:
- item.source.match("*.markdown")
- item.source.parts[0] != "talks" or item.source.parts[1] == "index.markdown"
- not item.draft
- name: alias
- name: jinja2
args:
themes: ["_theme"]
context:
theme:
sidebar:
photo: /about/me.jpg
about: |-
<a href="/about/" rel="me">Ihor Kalnytskyi</a>'s<br />
thoughts & writings
banner: |-
<a rel="nofollow" href="https://savelife.in.ua/en/donate-en/">Save lives in Ukraine</a> →
navigation: !!pairs
- Archives: /
- Talks: /talks/
- Feed: /feed.xml
fediverse:
creator: "@ihor@fosstodon.org"
when:
- |
"template" in item or (
item.source.match("*.markdown") and
item.source.parts[0] != "talks" or item.source.parts[1] == "index.markdown"
)
- name: save
args:
to: "%(here)s/_site/"
- name: shell
args:
commands:
- inkscape -w 180 -h 180 %(here)s/_theme/static/favicon.svg -o %(here)s/_site/static/apple-touch-icon.png
- inkscape -w 192 -h 192 %(here)s/_theme/static/favicon.svg -o %(here)s/_site/static/icon-192.png
- inkscape -w 512 -h 512 %(here)s/_theme/static/favicon.svg -o %(here)s/_site/static/icon-512.png