jekyll-theme-composer 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.txt +21 -0
- data/README.md +317 -0
- data/_config.yml +11 -0
- data/_includes/disqus_comments.html +20 -0
- data/_includes/footer.html +35 -0
- data/_includes/google-analytics.html +12 -0
- data/_includes/head.html +11 -0
- data/_includes/header.html +30 -0
- data/_includes/icon-github.html +1 -0
- data/_includes/icon-github.svg +1 -0
- data/_includes/icon-twitter.html +1 -0
- data/_includes/icon-twitter.svg +1 -0
- data/_includes/media.html +20 -0
- data/_includes/social.html +14 -0
- data/_layouts/default.html +20 -0
- data/_layouts/game.html +33 -0
- data/_layouts/games.html +35 -0
- data/_layouts/home.html +34 -0
- data/_layouts/page.html +14 -0
- data/_layouts/post.html +27 -0
- data/_layouts/work.html +66 -0
- data/_layouts/works.html +44 -0
- data/_sass/composer/_base.scss +276 -0
- data/_sass/composer/_layout.scss +313 -0
- data/_sass/composer/_syntax-highlighting.scss +71 -0
- data/_sass/composer.scss +51 -0
- data/assets/main.scss +5 -0
- data/assets/minima-social-icons.svg +33 -0
- metadata +114 -0
data/_layouts/home.html
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="home">
|
6
|
+
{%- if page.title -%}
|
7
|
+
<h1 class="page-heading">{{ page.title }}</h1>
|
8
|
+
{%- endif -%}
|
9
|
+
|
10
|
+
{{ content }}
|
11
|
+
|
12
|
+
{%- if site.posts.size > 0 -%}
|
13
|
+
<h2 class="post-list-heading">{{ page.list_title | default: "News" }}</h2>
|
14
|
+
<ul class="post-list">
|
15
|
+
{%- for post in site.posts -%}
|
16
|
+
<li>
|
17
|
+
{%- assign date_format = site.composer.date_format | default: "%b %-d, %Y" -%}
|
18
|
+
<span class="post-meta">{{ post.date | date: date_format }}</span>
|
19
|
+
<h3>
|
20
|
+
<a class="post-link" href="{{ post.url | relative_url }}">
|
21
|
+
{{ post.title | escape }}
|
22
|
+
</a>
|
23
|
+
</h3>
|
24
|
+
{%- if site.show_excerpts -%}
|
25
|
+
{{ post.excerpt }}
|
26
|
+
{%- endif -%}
|
27
|
+
</li>
|
28
|
+
{%- endfor -%}
|
29
|
+
</ul>
|
30
|
+
|
31
|
+
<p class="rss-subscribe">subscribe <a href="{{ "/feed.xml" | relative_url }}">via RSS</a></p>
|
32
|
+
{%- endif -%}
|
33
|
+
|
34
|
+
</div>
|
data/_layouts/page.html
ADDED
data/_layouts/post.html
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
<article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">
|
5
|
+
|
6
|
+
<header class="post-header">
|
7
|
+
<h1 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h1>
|
8
|
+
<p class="post-meta">
|
9
|
+
<time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
10
|
+
{%- assign date_format = site.composer.date_format | default: "%b %-d, %Y" -%}
|
11
|
+
{{ page.date | date: date_format }}
|
12
|
+
</time>
|
13
|
+
{%- if page.author -%}
|
14
|
+
• <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author }}</span></span>
|
15
|
+
{%- endif -%}</p>
|
16
|
+
</header>
|
17
|
+
|
18
|
+
<div class="post-content e-content" itemprop="articleBody">
|
19
|
+
{{ content }}
|
20
|
+
</div>
|
21
|
+
|
22
|
+
{%- if site.disqus.shortname -%}
|
23
|
+
{%- include disqus_comments.html -%}
|
24
|
+
{%- endif -%}
|
25
|
+
|
26
|
+
<a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
|
27
|
+
</article>
|
data/_layouts/work.html
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<article class="work">
|
6
|
+
|
7
|
+
<h1>{{ page.title }}</h1>
|
8
|
+
|
9
|
+
{%- include media.html -%}
|
10
|
+
|
11
|
+
<h2 class="instrumentation-title">Instrumentation</h2>
|
12
|
+
<div class="instrumentation">{{ page.instrumentation }}</div>
|
13
|
+
|
14
|
+
{%- if page.duration -%}
|
15
|
+
<h2 class="duration-title">Duration</h2>
|
16
|
+
<div class="duration">
|
17
|
+
{{ page.duration }}
|
18
|
+
</div>
|
19
|
+
{%- endif -%}
|
20
|
+
|
21
|
+
{%- if page.commissioned_by or page.written_for or page.premiered_at or page.premiered_on or page.premiered_by -%}
|
22
|
+
<h2 class="performance-title">Performance Information</h2>
|
23
|
+
{%- if page.commissioned_by -%}
|
24
|
+
<div class="commission">
|
25
|
+
Commissioned by <span class="commissioned_by">{{ page.commissioned_by }}</span>
|
26
|
+
</div>
|
27
|
+
{%- endif -%}
|
28
|
+
{%- if page.written_for -%}
|
29
|
+
<div class="written-for">
|
30
|
+
Written for <span class="written-for">{{ page.written_for }}</span>
|
31
|
+
</div>
|
32
|
+
{%- endif -%}
|
33
|
+
{%- if page.premiered_at or page.premiered_on or page.premiered_by -%}
|
34
|
+
<div class="premier">
|
35
|
+
Premiered
|
36
|
+
{%comment%}
|
37
|
+
There's probably a better way of forcing a space between words than {{ " " }},
|
38
|
+
but hey, it works and it's concise.
|
39
|
+
{%endcomment%}
|
40
|
+
{%- if page.premiered_on -%}
|
41
|
+
{%- assign date_format = site.composer.premier_date_format | default: "%B %-d, %Y" -%}
|
42
|
+
{{ " " }}on <span class="premiered-on">{{ page.premiered_on | date: date_format }}</span>
|
43
|
+
{%- endif -%}
|
44
|
+
{%- if page.premiered_by -%}
|
45
|
+
{{ " " }}by <span class="premiered-by">{{ page.premiered_by }}</span>
|
46
|
+
{%- endif -%}
|
47
|
+
{%- if page.premiered_at -%}
|
48
|
+
{{ " " }}in <span class="premiered-at">{{ page.premiered_at }}</span>
|
49
|
+
{%- endif -%}
|
50
|
+
</div>
|
51
|
+
{%- endif -%}
|
52
|
+
{%- endif -%}
|
53
|
+
|
54
|
+
{%- if page.score_url -%}
|
55
|
+
<h2 class="score-title">Score</h2>
|
56
|
+
<div class="score">
|
57
|
+
View the <a href="{{ page.score_url | relative_url }}">score</a>
|
58
|
+
</div>
|
59
|
+
{%- endif -%}
|
60
|
+
|
61
|
+
<h2 class="program-note-title">Program Notes</h2>
|
62
|
+
<div class="program-note">
|
63
|
+
{{ content }}
|
64
|
+
</div>
|
65
|
+
|
66
|
+
</article>
|
data/_layouts/works.html
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="works">
|
6
|
+
{%- if page.title -%}
|
7
|
+
<h1 class="page-heading">{{ page.title }}</h1>
|
8
|
+
{%- endif -%}
|
9
|
+
|
10
|
+
{{ content }}
|
11
|
+
|
12
|
+
{%- if site.works.size > 0 -%}
|
13
|
+
<ul class="work-list">
|
14
|
+
{%- assign works_by_date_desc = site.works | reverse -%}
|
15
|
+
{%- for work in works_by_date_desc -%}
|
16
|
+
<li>
|
17
|
+
{%- assign date_format = site.composer.work_date_format | default: "%Y" -%}
|
18
|
+
<div class="work-heading">
|
19
|
+
<a class="work-link" href="{{ work.url | relative_url }}">
|
20
|
+
<span class="work-title">{{ work.title }}</span>
|
21
|
+
<span class="work-date">({{ work.date | date: date_format }})</span>
|
22
|
+
</a>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
{%- assign instrumentation = work.instrumentation_summary | default: work.instrumentation -%}
|
26
|
+
{%- assign duration = work.duration -%}
|
27
|
+
{%- if instrumentation or duration -%}
|
28
|
+
<div class="work-info">
|
29
|
+
{%- if instrumentation -%}
|
30
|
+
<span class="instrumentation">{{ instrumentation }}</span>
|
31
|
+
{%- if duration -%},{{ " " }}
|
32
|
+
{%- endif -%}
|
33
|
+
{%- endif -%}
|
34
|
+
{%- if duration -%}
|
35
|
+
{{ duration }}
|
36
|
+
{%- endif -%}
|
37
|
+
</div>
|
38
|
+
{%- endif -%}
|
39
|
+
</li>
|
40
|
+
{%- endfor -%}
|
41
|
+
</ul>
|
42
|
+
{%- endif -%}
|
43
|
+
|
44
|
+
</div>
|
@@ -0,0 +1,276 @@
|
|
1
|
+
@use "sass:math";
|
2
|
+
|
3
|
+
/**
|
4
|
+
* Reset some basic elements
|
5
|
+
*/
|
6
|
+
body, h1, h2, h3, h4, h5, h6,
|
7
|
+
p, blockquote, pre, hr,
|
8
|
+
dl, dd, ol, ul, figure {
|
9
|
+
margin: 0;
|
10
|
+
padding: 0;
|
11
|
+
}
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
/**
|
16
|
+
* Basic styling
|
17
|
+
*/
|
18
|
+
body {
|
19
|
+
font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;
|
20
|
+
color: $text-color;
|
21
|
+
background-color: $background-color;
|
22
|
+
-webkit-text-size-adjust: 100%;
|
23
|
+
-webkit-font-feature-settings: "kern" 1;
|
24
|
+
-moz-font-feature-settings: "kern" 1;
|
25
|
+
-o-font-feature-settings: "kern" 1;
|
26
|
+
font-feature-settings: "kern" 1;
|
27
|
+
font-kerning: normal;
|
28
|
+
display: flex;
|
29
|
+
min-height: 100vh;
|
30
|
+
flex-direction: column;
|
31
|
+
}
|
32
|
+
|
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: math.div($spacing-unit, 2);
|
43
|
+
}
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
/**
|
48
|
+
* `main` element
|
49
|
+
*/
|
50
|
+
main {
|
51
|
+
display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */
|
52
|
+
}
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
/**
|
57
|
+
* Images
|
58
|
+
*/
|
59
|
+
img {
|
60
|
+
max-width: 100%;
|
61
|
+
vertical-align: middle;
|
62
|
+
}
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
/**
|
67
|
+
* Figures
|
68
|
+
*/
|
69
|
+
figure > img {
|
70
|
+
display: block;
|
71
|
+
}
|
72
|
+
|
73
|
+
figcaption {
|
74
|
+
font-size: $small-font-size;
|
75
|
+
}
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
/**
|
80
|
+
* Lists
|
81
|
+
*/
|
82
|
+
ul, ol {
|
83
|
+
margin-left: $spacing-unit;
|
84
|
+
}
|
85
|
+
|
86
|
+
li {
|
87
|
+
> ul,
|
88
|
+
> ol {
|
89
|
+
margin-bottom: 0;
|
90
|
+
}
|
91
|
+
}
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
/**
|
96
|
+
* Headings
|
97
|
+
*/
|
98
|
+
h1, h2, h3, h4, h5, h6 {
|
99
|
+
font-weight: $base-font-weight;
|
100
|
+
}
|
101
|
+
|
102
|
+
h2 {
|
103
|
+
margin-top: $spacing-unit;
|
104
|
+
}
|
105
|
+
|
106
|
+
h3 {
|
107
|
+
margin-top: math.div($spacing-unit, 2);
|
108
|
+
}
|
109
|
+
|
110
|
+
h4 {
|
111
|
+
margin-top: math.div($spacing-unit, 3);
|
112
|
+
}
|
113
|
+
|
114
|
+
h5 {
|
115
|
+
margin-top: math.div($spacing-unit, 4);
|
116
|
+
}
|
117
|
+
|
118
|
+
h6 {
|
119
|
+
margin-top: math.div($spacing-unit, 5);
|
120
|
+
}
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
/**
|
125
|
+
* Links
|
126
|
+
*/
|
127
|
+
a {
|
128
|
+
color: $brand-color;
|
129
|
+
text-decoration: none;
|
130
|
+
|
131
|
+
&:visited {
|
132
|
+
color: darken($brand-color, 15%);
|
133
|
+
}
|
134
|
+
|
135
|
+
&:hover {
|
136
|
+
color: $text-color;
|
137
|
+
text-decoration: underline;
|
138
|
+
}
|
139
|
+
|
140
|
+
.social-media-list &:hover {
|
141
|
+
text-decoration: none;
|
142
|
+
|
143
|
+
.username {
|
144
|
+
text-decoration: underline;
|
145
|
+
}
|
146
|
+
}
|
147
|
+
}
|
148
|
+
|
149
|
+
|
150
|
+
/**
|
151
|
+
* Blockquotes
|
152
|
+
*/
|
153
|
+
blockquote {
|
154
|
+
color: $grey-color;
|
155
|
+
border-left: 4px solid $grey-color-light;
|
156
|
+
padding-left: math.div($spacing-unit, 2);
|
157
|
+
@include relative-font-size(1.125);
|
158
|
+
letter-spacing: -1px;
|
159
|
+
font-style: italic;
|
160
|
+
|
161
|
+
> :last-child {
|
162
|
+
margin-bottom: 0;
|
163
|
+
}
|
164
|
+
}
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
/**
|
169
|
+
* Code formatting
|
170
|
+
*/
|
171
|
+
pre,
|
172
|
+
code {
|
173
|
+
@include relative-font-size(0.9375);
|
174
|
+
border: 1px solid $grey-color-light;
|
175
|
+
border-radius: 3px;
|
176
|
+
background-color: #eef;
|
177
|
+
}
|
178
|
+
|
179
|
+
code {
|
180
|
+
padding: 1px 5px;
|
181
|
+
}
|
182
|
+
|
183
|
+
pre {
|
184
|
+
padding: 8px 12px;
|
185
|
+
overflow-x: auto;
|
186
|
+
|
187
|
+
> code {
|
188
|
+
border: 0;
|
189
|
+
padding-right: 0;
|
190
|
+
padding-left: 0;
|
191
|
+
}
|
192
|
+
}
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
/**
|
197
|
+
* Wrapper
|
198
|
+
*/
|
199
|
+
.wrapper {
|
200
|
+
max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));
|
201
|
+
max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));
|
202
|
+
margin-right: auto;
|
203
|
+
margin-left: auto;
|
204
|
+
padding-right: $spacing-unit;
|
205
|
+
padding-left: $spacing-unit;
|
206
|
+
@extend %clearfix;
|
207
|
+
|
208
|
+
@include media-query($on-laptop) {
|
209
|
+
max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));
|
210
|
+
max-width: calc(#{$content-width} - (#{$spacing-unit}));
|
211
|
+
padding-right: math.div($spacing-unit, 2);
|
212
|
+
padding-left: math.div($spacing-unit, 2);
|
213
|
+
}
|
214
|
+
}
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
/**
|
219
|
+
* Clearfix
|
220
|
+
*/
|
221
|
+
%clearfix:after {
|
222
|
+
content: "";
|
223
|
+
display: table;
|
224
|
+
clear: both;
|
225
|
+
}
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
/**
|
230
|
+
* Icons
|
231
|
+
*/
|
232
|
+
|
233
|
+
.svg-icon {
|
234
|
+
width: 16px;
|
235
|
+
height: 16px;
|
236
|
+
display: inline-block;
|
237
|
+
fill: #{$grey-color};
|
238
|
+
padding-right: 5px;
|
239
|
+
vertical-align: text-top;
|
240
|
+
}
|
241
|
+
|
242
|
+
.social-media-list {
|
243
|
+
li + li {
|
244
|
+
padding-top: 5px;
|
245
|
+
}
|
246
|
+
}
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
/**
|
251
|
+
* Tables
|
252
|
+
*/
|
253
|
+
table {
|
254
|
+
margin-bottom: $spacing-unit;
|
255
|
+
width: 100%;
|
256
|
+
text-align: $table-text-align;
|
257
|
+
color: lighten($text-color, 18%);
|
258
|
+
border-collapse: collapse;
|
259
|
+
border: 1px solid $grey-color-light;
|
260
|
+
tr {
|
261
|
+
&:nth-child(even) {
|
262
|
+
background-color: lighten($grey-color-light, 6%);
|
263
|
+
}
|
264
|
+
}
|
265
|
+
th, td {
|
266
|
+
padding: math.div($spacing-unit, 3) math.div($spacing-unit, 2);
|
267
|
+
}
|
268
|
+
th {
|
269
|
+
background-color: lighten($grey-color-light, 3%);
|
270
|
+
border: 1px solid darken($grey-color-light, 4%);
|
271
|
+
border-bottom-color: darken($grey-color-light, 12%);
|
272
|
+
}
|
273
|
+
td {
|
274
|
+
border: 1px solid $grey-color-light;
|
275
|
+
}
|
276
|
+
}
|