jekyll-theme-so-simple-libre 4.0.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.
Files changed (103) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +329 -0
  3. data/LICENSE +21 -0
  4. data/README.md +1148 -0
  5. data/_data/authors.yml +16 -0
  6. data/_data/navigation.yml +14 -0
  7. data/_data/text.yml +193 -0
  8. data/_includes/documents-collection.html +19 -0
  9. data/_includes/entry-date.html +6 -0
  10. data/_includes/entry.html +38 -0
  11. data/_includes/footer-custom.html +3 -0
  12. data/_includes/footer.html +24 -0
  13. data/_includes/head-custom.html +5 -0
  14. data/_includes/head-feed.html +1 -0
  15. data/_includes/head-seo.html +1 -0
  16. data/_includes/head.html +47 -0
  17. data/_includes/masthead.html +18 -0
  18. data/_includes/navigation.html +17 -0
  19. data/_includes/page-author.html +37 -0
  20. data/_includes/page-categories.html +15 -0
  21. data/_includes/page-date.html +4 -0
  22. data/_includes/page-image.html +14 -0
  23. data/_includes/page-pagination.html +19 -0
  24. data/_includes/page-tags.html +15 -0
  25. data/_includes/posts-all.html +3 -0
  26. data/_includes/posts-category.html +3 -0
  27. data/_includes/posts-limit.html +5 -0
  28. data/_includes/posts-paginated.html +74 -0
  29. data/_includes/posts-tag.html +3 -0
  30. data/_includes/read-time.html +16 -0
  31. data/_includes/responsive-embed +16 -0
  32. data/_includes/skip-links.html +8 -0
  33. data/_includes/social-share.html +6 -0
  34. data/_includes/talkyard-comments-provider.html +10 -0
  35. data/_includes/toc +9 -0
  36. data/_layouts/categories.html +81 -0
  37. data/_layouts/category.html +9 -0
  38. data/_layouts/collection.html +9 -0
  39. data/_layouts/default.html +21 -0
  40. data/_layouts/home.html +17 -0
  41. data/_layouts/page.html +30 -0
  42. data/_layouts/post.html +41 -0
  43. data/_layouts/posts.html +29 -0
  44. data/_layouts/tag.html +9 -0
  45. data/_layouts/tags.html +81 -0
  46. data/_sass/so-simple.scss +31 -0
  47. data/_sass/so-simple/_author.scss +47 -0
  48. data/_sass/so-simple/_base.scss +106 -0
  49. data/_sass/so-simple/_buttons.scss +64 -0
  50. data/_sass/so-simple/_entries.scss +194 -0
  51. data/_sass/so-simple/_functions.scss +4 -0
  52. data/_sass/so-simple/_global.scss +353 -0
  53. data/_sass/so-simple/_icons.scss +43 -0
  54. data/_sass/so-simple/_mixins.scss +5 -0
  55. data/_sass/so-simple/_notices.scss +57 -0
  56. data/_sass/so-simple/_page.scss +286 -0
  57. data/_sass/so-simple/_reset.scss +522 -0
  58. data/_sass/so-simple/_skin.scss +552 -0
  59. data/_sass/so-simple/_syntax-highlighting.scss +68 -0
  60. data/_sass/so-simple/_tables.scss +34 -0
  61. data/_sass/so-simple/_utilities.scss +7 -0
  62. data/_sass/so-simple/_variables.scss +98 -0
  63. data/_sass/so-simple/functions/_color.scss +21 -0
  64. data/_sass/so-simple/functions/_em.scss +7 -0
  65. data/_sass/so-simple/functions/_fluid-type.scss +33 -0
  66. data/_sass/so-simple/functions/_yiq.scss +38 -0
  67. data/_sass/so-simple/mixins/_clearfix.scss +32 -0
  68. data/_sass/so-simple/mixins/_float.scss +15 -0
  69. data/_sass/so-simple/mixins/_image.scss +38 -0
  70. data/_sass/so-simple/mixins/_lists.scss +9 -0
  71. data/_sass/so-simple/mixins/_text-truncate.scss +10 -0
  72. data/_sass/so-simple/utilities/_accessibility.scss +42 -0
  73. data/_sass/so-simple/utilities/_align.scss +60 -0
  74. data/_sass/so-simple/utilities/_animations.scss +99 -0
  75. data/_sass/so-simple/utilities/_clearfix.scss +7 -0
  76. data/_sass/so-simple/utilities/_float.scss +7 -0
  77. data/_sass/so-simple/utilities/_responsive-embed.scss +66 -0
  78. data/_sass/so-simple/utilities/_text.scss +48 -0
  79. data/_sass/so-simple/vendor/breakpoint/_breakpoint.scss +114 -0
  80. data/_sass/so-simple/vendor/breakpoint/_context.scss +95 -0
  81. data/_sass/so-simple/vendor/breakpoint/_helpers.scss +151 -0
  82. data/_sass/so-simple/vendor/breakpoint/_legacy-settings.scss +50 -0
  83. data/_sass/so-simple/vendor/breakpoint/_no-query.scss +15 -0
  84. data/_sass/so-simple/vendor/breakpoint/_parsers.scss +215 -0
  85. data/_sass/so-simple/vendor/breakpoint/_respond-to.scss +82 -0
  86. data/_sass/so-simple/vendor/breakpoint/_settings.scss +71 -0
  87. data/_sass/so-simple/vendor/breakpoint/parsers/_double.scss +33 -0
  88. data/_sass/so-simple/vendor/breakpoint/parsers/_query.scss +82 -0
  89. data/_sass/so-simple/vendor/breakpoint/parsers/_resolution.scss +31 -0
  90. data/_sass/so-simple/vendor/breakpoint/parsers/_single.scss +26 -0
  91. data/_sass/so-simple/vendor/breakpoint/parsers/_triple.scss +36 -0
  92. data/_sass/so-simple/vendor/breakpoint/parsers/double/_default-pair.scss +21 -0
  93. data/_sass/so-simple/vendor/breakpoint/parsers/double/_default.scss +22 -0
  94. data/_sass/so-simple/vendor/breakpoint/parsers/double/_double-string.scss +22 -0
  95. data/_sass/so-simple/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -0
  96. data/_sass/so-simple/vendor/breakpoint/parsers/single/_default.scss +13 -0
  97. data/_sass/so-simple/vendor/breakpoint/parsers/triple/_default.scss +18 -0
  98. data/_sass/so-simple/vendor/lity/_lity.scss +221 -0
  99. data/assets/css/main.scss +8 -0
  100. data/assets/css/skins/dark.scss +43 -0
  101. data/assets/css/skins/default.scss +44 -0
  102. data/assets/css/skins/light.scss +44 -0
  103. metadata +262 -0
@@ -0,0 +1,29 @@
1
+ ---
2
+ layout: page
3
+ ---
4
+
5
+ {{ content }}
6
+
7
+ <ul class="taxonomy-index">
8
+ {% assign postsInYear = site.posts | group_by_exp: 'post', 'post.date | date: "%Y"' %}
9
+ {% for year in postsInYear %}
10
+ <li>
11
+ <a href="#{{ year.name }}">
12
+ <strong>{{ year.name }}</strong> <span class="taxonomy-count">{{ year.items | size }}</span>
13
+ </a>
14
+ </li>
15
+ {% endfor %}
16
+ </ul>
17
+
18
+ {% assign postsByYear = site.posts | group_by_exp: 'post', 'post.date | date: "%Y"' %}
19
+ {% for year in postsByYear %}
20
+ <section id="{{ year.name }}" class="taxonomy-section">
21
+ <h2 class="taxonomy-title">{{ year.name }}</h2>
22
+ <div class="entries-{{ page.entries_layout | default: 'list' }}">
23
+ {% for entry in year.items %}
24
+ {% include entry.html %}
25
+ {% endfor %}
26
+ </div>
27
+ <a href="#page-title" class="back-to-top">{{ site.data.text[site.locale].back_to_top | default: 'Back to Top' }} &uarr;</a>
28
+ </section>
29
+ {% endfor %}
@@ -0,0 +1,9 @@
1
+ ---
2
+ layout: page
3
+ ---
4
+
5
+ {{ content }}
6
+
7
+ <div class="entries-{{ page.entries_layout | default: 'list' }}">
8
+ {% include posts-tag.html taxonomy=page.taxonomy %}
9
+ </div>
@@ -0,0 +1,81 @@
1
+ ---
2
+ layout: page
3
+ ---
4
+
5
+ {{ content }}
6
+
7
+ {% assign tags_max = 0 %}
8
+ {% for tag in site.tags %}
9
+ {% if tag[1].size > tags_max %}
10
+ {% assign tags_max = tag[1].size %}
11
+ {% endif %}
12
+ {% endfor %}
13
+
14
+ {% assign tag_names_array = "" %}
15
+ {% assign tag_counts = "" %}
16
+ {% assign first_array_element = true %}
17
+ {% for i in (1..tags_max) reversed %}
18
+ {% assign tag_names = "" %}
19
+ {% assign first_tag = true %}
20
+
21
+ {% for tag in site.tags %}
22
+ {% if tag[1].size == i %}
23
+ {% if first_tag %}
24
+ {% assign first_tag = false %}
25
+ {% else %}
26
+ {% assign tag_names = tag_names | append: "," %}
27
+ {% endif %}
28
+ {% assign tag_names = tag_names | append: tag[0] %}
29
+ {% endif %}
30
+ {% endfor %}
31
+
32
+ {% if tag_names != "" %}
33
+ {% assign tag_names = tag_names | split: "," | sort | join: "," %}
34
+
35
+ {% if first_array_element %}
36
+ {% assign first_array_element = false %}
37
+ {% else %}
38
+ {% assign tag_names_array = tag_names_array | append: "|" %}
39
+ {% assign tag_counts = tag_counts | append: "|" %}
40
+ {% endif %}
41
+ {% assign tag_names_array = tag_names_array | append: tag_names %}
42
+ {% assign tag_counts = tag_counts | append: i %}
43
+ {% endif %}
44
+ {% endfor %}
45
+
46
+ {% assign tag_names_array = tag_names_array | split: "|" %}
47
+ {% assign tag_counts = tag_counts | split: "|" %}
48
+
49
+
50
+ <ul class="taxonomy-index">
51
+ {% for tag_names in tag_names_array %}
52
+ {% assign tag_names_list = tag_names | split: "," %}
53
+ {% assign tag_count = tag_counts[forloop.index0] %}
54
+ {% for tag_name in tag_names_list %}
55
+ <li>
56
+ <a href="#{{ tag_name | slugify }}">
57
+ <strong>{{ tag_name }}</strong> <span class="taxonomy-count">{{ tag_count }}</span>
58
+ </a>
59
+ </li>
60
+ {% endfor %}
61
+ {% endfor %}
62
+ </ul>
63
+
64
+ {% for tag_names in tag_names_array %}
65
+ {% assign tag_names_list = tag_names | split: "," %}
66
+ {% for tag_name in tag_names_list %}
67
+ <section id="{{ tag_name | slugify | downcase }}" class="taxonomy-section">
68
+ <h2 class="taxonomy-title">{{ tag_name }}</h2>
69
+ {% for tag in site.tags %}
70
+ {% if tag[0] == tag_name %}
71
+ <div class="entries-{{ page.entries_layout | default: 'list' }}">
72
+ {% for entry in tag.last %}
73
+ {% include entry.html %}
74
+ {% endfor %}
75
+ </div>
76
+ {% endif %}
77
+ {% endfor %}
78
+ <a href="#page-title" class="back-to-top">{{ site.data.text[site.locale].back_to_top | default: 'Back to Top' }} &uarr;</a>
79
+ </section>
80
+ {% endfor %}
81
+ {% endfor %}
@@ -0,0 +1,31 @@
1
+ /*!
2
+ * So Simple Jekyll Theme 3.2.0
3
+ * Copyright 2013-2019 Michael Rose - mademistakes.com | @mmistakes
4
+ * Free for personal and commercial use under the MIT license
5
+ * https://github.com/mmistakes/so-simple-theme/blob/master/LICENSE
6
+ */
7
+
8
+ @import "so-simple/functions";
9
+ @import "so-simple/variables";
10
+ @import "so-simple/mixins";
11
+ @import "so-simple/vendor/breakpoint/breakpoint";
12
+ @include breakpoint-set("to ems", true);
13
+ @import "so-simple/vendor/lity/lity";
14
+
15
+ /* Core Styles */
16
+ @import "so-simple/reset";
17
+ @import "so-simple/base";
18
+ @import "so-simple/tables";
19
+
20
+ /* Components */
21
+ @import "so-simple/global";
22
+ @import "so-simple/page";
23
+ @import "so-simple/author";
24
+ @import "so-simple/entries";
25
+ @import "so-simple/buttons";
26
+ @import "so-simple/icons";
27
+ @import "so-simple/notices";
28
+ @import "so-simple/syntax-highlighting";
29
+
30
+ /* Utility Clases */
31
+ @import "so-simple/utilities";
@@ -0,0 +1,47 @@
1
+ /* ==========================================================================
2
+ Author
3
+ ========================================================================== */
4
+
5
+ .author-avatar {
6
+ margin-right: 1em;
7
+ width: 50px;
8
+ height: auto;
9
+ border-radius: 50%;
10
+
11
+ @include breakpoint($large) {
12
+ margin-right: 0;
13
+ margin-bottom: 1em;
14
+ width: 100px;
15
+ height: auto;
16
+ }
17
+ }
18
+
19
+ .author-name {
20
+ @include breakpoint($large) {
21
+ margin-bottom: 0.5em;
22
+ }
23
+ }
24
+
25
+ .author-links {
26
+ display: none;
27
+ margin: 0 0 1.5em;
28
+ padding: 0;
29
+ list-style: none;
30
+
31
+ @include breakpoint($large) {
32
+ display: block;
33
+ }
34
+ }
35
+
36
+ .author-link {
37
+ display: inline;
38
+ padding-right: 0.5em;
39
+
40
+ @include breakpoint($large) {
41
+ padding: 0.25em;
42
+ }
43
+
44
+ a {
45
+ text-decoration: none;
46
+ }
47
+ }
@@ -0,0 +1,106 @@
1
+ /* ==========================================================================
2
+ Base elements
3
+ ========================================================================== */
4
+
5
+ html {
6
+ @include fluid-type($min-vw, $max-vw, $min-font-size, $max-font-size);
7
+ }
8
+
9
+ body {
10
+ border-top: solid 0.25em;
11
+ }
12
+
13
+ blockquote,
14
+ q {
15
+
16
+ footer {
17
+ font-size: 80%;
18
+ font-style: normal;
19
+
20
+ &::before {
21
+ padding-right: 0.25rem;
22
+ content: "\2014";
23
+ }
24
+ }
25
+ }
26
+
27
+ code,
28
+ kbd,
29
+ samp,
30
+ pre {
31
+ font-family: $monospace-font-family;
32
+ }
33
+
34
+ kbd {
35
+ display: inline-block;
36
+ margin: 0 0.125em;
37
+ padding: 0.125em 0.5em;
38
+ color: #000;
39
+ border: 1px solid rgb(204, 204, 204);
40
+ border-radius: 3px;
41
+ background-color: rgb(247, 247, 247);
42
+ font-size: 85%;
43
+ text-shadow: 0 1px 0 #fff;
44
+ -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25), inset 0 0 0 2px #fff;
45
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25), inset 0 0 0 2px #fff;
46
+ }
47
+
48
+ h1,
49
+ h2,
50
+ h3,
51
+ h4,
52
+ h5,
53
+ h6 {
54
+ font-family: $headline-font-family;
55
+ text-rendering: optimizeLegibility; /* enable common ligatures and kerning */
56
+ }
57
+
58
+ h1 {
59
+ @include fluid-type($min-vw, $max-vw, $h1-min, $h1-max);
60
+ }
61
+
62
+ h2 {
63
+ @include fluid-type($min-vw, $max-vw, $h2-min, $h2-max);
64
+ }
65
+
66
+ h3 {
67
+ @include fluid-type($min-vw, $max-vw, $h3-min, $h3-max);
68
+ }
69
+
70
+ h4 {
71
+ @include fluid-type($min-vw, $max-vw, $h4-min, $h4-max);
72
+ }
73
+
74
+ h5 {
75
+ @include fluid-type($min-vw, $max-vw, $h5-min, $h5-max);
76
+ }
77
+
78
+ h6 {
79
+ @include fluid-type($min-vw, $max-vw, $h6-min, $h6-max);
80
+ }
81
+
82
+ dt {
83
+ font-weight: bold;
84
+
85
+ &:not(:first-child) {
86
+ margin-top: 1rem;
87
+ }
88
+ }
89
+
90
+ dd {
91
+ margin: 0;
92
+ }
93
+
94
+ pre {
95
+ @include fluid-type($min-vw, $max-vw, 12px, 14px);
96
+ }
97
+
98
+ figcaption {
99
+ margin: 0.5rem 0;
100
+ font-size: 80%;
101
+ }
102
+
103
+ a {
104
+ -webkit-transition: $global-transition;
105
+ transition: $global-transition;
106
+ }
@@ -0,0 +1,64 @@
1
+ /* ==========================================================================
2
+ BUTTONS
3
+ ========================================================================== */
4
+
5
+ /*
6
+ Default button
7
+ ========================================================================== */
8
+
9
+ .btn {
10
+ /* default */
11
+ display: inline-block;
12
+ margin-bottom: 0.25em;
13
+ padding: 0.5em 1em;
14
+ font-family: $sans-serif-font-family;
15
+ font-size: 1rem;
16
+ font-weight: bold;
17
+ text-align: center;
18
+ text-decoration: none;
19
+ border-width: 0;
20
+ border-radius: $border-radius;
21
+ cursor: pointer;
22
+
23
+ .icon {
24
+ margin-right: 0.5em;
25
+ }
26
+
27
+ .icon + .hidden {
28
+ margin-left: -0.5em; /* override for hidden text*/
29
+ }
30
+
31
+ /* fills width of parent container */
32
+ &--block {
33
+ display: block;
34
+ width: 100%;
35
+
36
+ + .btn--block {
37
+ margin-top: 0.25em;
38
+ }
39
+ }
40
+
41
+ /* disabled */
42
+ &--disabled {
43
+ pointer-events: none;
44
+ cursor: not-allowed;
45
+ filter: alpha(opacity=65);
46
+ box-shadow: none;
47
+ opacity: 0.65;
48
+ }
49
+
50
+ /* extra large button */
51
+ &--x-large {
52
+ font-size: 2rem;
53
+ }
54
+
55
+ /* large button */
56
+ &--large {
57
+ font-size: 1.5rem;
58
+ }
59
+
60
+ /* small button */
61
+ &--small {
62
+ font-size: 0.75rem;
63
+ }
64
+ }
@@ -0,0 +1,194 @@
1
+ /* ==========================================================================
2
+ Entries (Posts, collection documents, etc.)
3
+ ========================================================================== */
4
+
5
+ .entry {
6
+ @include clearfix();
7
+ position: relative;
8
+
9
+ a {
10
+ color: inherit;
11
+ }
12
+ }
13
+
14
+ .entry-header {
15
+ display: -webkit-box;
16
+ display: -ms-flexbox;
17
+ display: flex;
18
+ -webkit-box-orient: vertical;
19
+ -webkit-box-direction: normal;
20
+ -ms-flex-direction: column;
21
+ flex-direction: column;
22
+ }
23
+
24
+ .entry-title {
25
+ margin-bottom: 0.5rem;
26
+ font-family: $title-font-family;
27
+ font-weight: $entry-title-weight;
28
+ font-style: italic;
29
+ letter-spacing: -1px;
30
+ word-wrap: break-word; /* break long words that could overflow */
31
+
32
+ a {
33
+ text-decoration: none;
34
+ }
35
+
36
+ a[rel="bookmark"]::before {
37
+ content: '';
38
+ position: absolute;
39
+ left: 0;
40
+ top: 0;
41
+ right: 0;
42
+ bottom: 0;
43
+ }
44
+ }
45
+
46
+ .entry-image {
47
+ -webkit-box-ordinal-group: 0;
48
+ -ms-flex-order: -1;
49
+ order: -1;
50
+ width: 100%;
51
+ margin-bottom: 0.5rem;
52
+ }
53
+
54
+ .entry-meta {
55
+ .entry-date,
56
+ .read-time {
57
+ font-family: $meta-font-family;
58
+ font-style: italic;
59
+ white-space: nowrap;
60
+ }
61
+
62
+ .read-time + .entry-date::before {
63
+ content: "\2022";
64
+ padding: 0 0.5em;
65
+ }
66
+ }
67
+
68
+ .entry-excerpt a,
69
+ .u-bookmark-of {
70
+ position: relative;
71
+ z-index: 10;
72
+ }
73
+
74
+ /*
75
+ Entries List Layout
76
+ ========================================================================== */
77
+
78
+ .entries-list {
79
+ .entry {
80
+ display: -webkit-box;
81
+ display: -ms-flexbox;
82
+ display: flex;
83
+ -webkit-box-orient: vertical;
84
+ -webkit-box-direction: normal;
85
+ -ms-flex-direction: column;
86
+ flex-direction: column;
87
+ margin-bottom: 2rem;
88
+ }
89
+
90
+ .entry-title {
91
+ @include fluid-type($min-vw, $max-vw, 24px, 36px);
92
+ -webkit-box-ordinal-group: 2;
93
+ -ms-flex-order: 1;
94
+ order: 1;
95
+ }
96
+
97
+ .entry-excerpt,
98
+ .entry-content {
99
+ -webkit-box-ordinal-group: 4;
100
+ -ms-flex-order: 3;
101
+ order: 3;
102
+
103
+ /* remove space after last child element */
104
+ > *:last-child {
105
+ margin-bottom: 0;
106
+ }
107
+ }
108
+
109
+ .entry-excerpt {
110
+ /* normalize font sizes */
111
+ > * {
112
+ font-size: 1rem;
113
+ }
114
+ }
115
+
116
+ .entry-meta {
117
+ -webkit-box-ordinal-group: 3;
118
+ -ms-flex-order: 2;
119
+ order: 2;
120
+ margin-bottom: 1em;
121
+ font-size: 0.75rem;
122
+ }
123
+
124
+ .more-link {
125
+ margin-top: -1em;
126
+
127
+ a {
128
+ text-decoration: none;
129
+ }
130
+ }
131
+ }
132
+
133
+ /*
134
+ Entries Grid Layout
135
+ ========================================================================== */
136
+
137
+ .entries-grid {
138
+ display: grid;
139
+ grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
140
+ grid-gap: 2em;
141
+
142
+ .entry {
143
+ display: -webkit-box;
144
+ display: -ms-flexbox;
145
+ display: flex;
146
+ -webkit-box-orient: vertical;
147
+ -webkit-box-direction: normal;
148
+ -ms-flex-direction: column;
149
+ flex-direction: column;
150
+ padding-bottom: 2rem;
151
+ }
152
+
153
+ .entry-title {
154
+ @include fluid-type($min-vw, $max-vw, 18px, 24px);
155
+ -webkit-box-ordinal-group: 2;
156
+ -ms-flex-order: 1;
157
+ order: 1;
158
+ }
159
+
160
+ .entry-excerpt,
161
+ .entry-content {
162
+ -webkit-box-ordinal-group: 4;
163
+ -ms-flex-order: 3;
164
+ order: 3;
165
+
166
+ /* remove space after last child element */
167
+ > *:last-child {
168
+ margin-bottom: 0;
169
+ }
170
+ }
171
+
172
+ .entry-excerpt {
173
+ /* normalize font sizes */
174
+ > * {
175
+ font-size: 1rem;
176
+ }
177
+ }
178
+
179
+ .entry-meta {
180
+ -webkit-box-ordinal-group: 3;
181
+ -ms-flex-order: 2;
182
+ order: 2;
183
+ margin-bottom: 1em;
184
+ font-size: 0.75rem;
185
+ }
186
+
187
+ .more-link {
188
+ margin-top: -1em;
189
+
190
+ a {
191
+ text-decoration: none;
192
+ }
193
+ }
194
+ }