jekyll-theme-so-simple-libre 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
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,16 @@
1
+ # Sample Authors
2
+ # Remove file or replace with your own
3
+
4
+ Billy Rick:
5
+ name: Billy Rick
6
+ picture: /images/bio-photo-2.jpg
7
+ twitter: "@billyrick"
8
+ links:
9
+ - title: Twitter
10
+ url: https://twitter.com/billyrick
11
+ icon: fab fa-twitter-square
12
+
13
+ Cornelius Fiddlebone:
14
+ name: Cornelius Fiddlebone
15
+ picture: /images/bio-photo.jpg
16
+ twitter: corneliusfiddlebone
@@ -0,0 +1,14 @@
1
+ # Sample site navigation bar links
2
+
3
+ - title: Home
4
+ url: /
5
+ # - title: Posts
6
+ # url: /posts/
7
+ # - title: Categories
8
+ # url: /categories/
9
+ # - title: Tags
10
+ # url: /tags/
11
+ # - title: Recipes
12
+ # url: /recipes/
13
+ # - title: External Page
14
+ # url: https://the-page.com/you-want-to-link-to.html
@@ -0,0 +1,193 @@
1
+ # Theme text and labels
2
+
3
+
4
+ # English (default)
5
+ # -----------------
6
+ en: &DEFAULT_EN
7
+ skip_links: "Skip links"
8
+ skip_primary_nav: "Skip to primary navigation"
9
+ skip_content: "Skip to content"
10
+ skip_footer: "Skip to footer"
11
+ menu_label: "Menu"
12
+ by: "by"
13
+ min_read: "min read"
14
+ read_more: "Read more…"
15
+ categories: "Categories"
16
+ tags: "Tags"
17
+ pages_categorized: "Pages filed under"
18
+ pages_tagged: "Pages tagged"
19
+ table_of_contents: "Table of Contents"
20
+ results_found: "Result(s) found"
21
+ share: "Share"
22
+ tweet: "Tweet"
23
+ next: "Next"
24
+ previous: "Previous"
25
+ newer: "Newer"
26
+ older: "Older"
27
+ back_to_top: "Back to Top"
28
+ search_placeholder_text: "Enter your search term..."
29
+ powered_by: "Powered by"
30
+ en-US:
31
+ <<: *DEFAULT_EN
32
+ en-CA:
33
+ <<: *DEFAULT_EN
34
+ en-GB:
35
+ <<: *DEFAULT_EN
36
+ en-AU:
37
+ <<: *DEFAULT_EN
38
+
39
+
40
+ # German
41
+ # -----------------
42
+ de: &DEFAULT_DE
43
+ skip_links: "Links überspringen"
44
+ skip_primary_nav: "Zu Hauptmenü springen"
45
+ skip_content: "Zu Inhalt springen"
46
+ skip_footer: "Zu Fußzeile springen"
47
+ menu_label: "Menü"
48
+ by: "von"
49
+ min_read: "min read"
50
+ read_more: "Mehr lesen&hellip;"
51
+ categories: "Kategorien"
52
+ tags: "Tags"
53
+ pages_categorized: "Seiten kategorisiert als"
54
+ pages_tagged: "Seiten, getaggt als"
55
+ table_of_contents: "Inhaltsverzeichnis"
56
+ results_found: "Ergebnis(se) gefunden"
57
+ share: "Teilen"
58
+ tweet: "Tweet"
59
+ next: "Vor"
60
+ previous: "Zurück"
61
+ newer: "Neuer"
62
+ older: "Älter"
63
+ back_to_top: "Zurück nach Oben"
64
+ search_placeholder_text: "Suchtext eingeben..."
65
+ powered_by: "Unterstützt von"
66
+ de-DE:
67
+ <<: *DEFAULT_DE
68
+ de-AU:
69
+ <<: *DEFAULT_DE
70
+ de-CH:
71
+ <<: *DEFAULT_DE
72
+
73
+
74
+ # Spanish
75
+ # -------
76
+ es: &DEFAULT_ES
77
+ skip_links: "Saltar enlaces"
78
+ skip_primary_nav: "Saltar a la navegación primaria"
79
+ skip_content: "Saltar al contenido"
80
+ skip_footer: "Saltar al pie de página"
81
+ menu_label: "Menú"
82
+ by: "por"
83
+ min_read: "minuto(s) de lectura"
84
+ read_more: "Leer más&hellip;"
85
+ categories: "Categorías"
86
+ tags: "Etiquetas"
87
+ pages_categorized: "Páginas archivadas bajo"
88
+ pages_tagged: "Páginas etiquetadas"
89
+ table_of_contents: "Tabla de contenidos"
90
+ results_found: "Resultado(s) encontrado(s)"
91
+ share: "Compartir"
92
+ tweet: "Tweet"
93
+ next: "Siguiente"
94
+ previous: "Anterior"
95
+ newer: "Nuevo"
96
+ older: "Antiguo"
97
+ back_to_top: "Volver arriba"
98
+ search_placeholder_text: "Ingrese su término de búsqueda ..."
99
+ powered_by: "Energizado por"
100
+ es-ES:
101
+ <<: *DEFAULT_ES
102
+ es-CL:
103
+ <<: *DEFAULT_ES
104
+
105
+
106
+ # French
107
+ # -----------------
108
+ fr: &DEFAULT_FR
109
+ skip_links: "Sauter les liens"
110
+ skip_primary_nav: "Aller à la navigation principale"
111
+ skip_content: "Aller au contenu"
112
+ skip_footer: "Aller au pied de page"
113
+ menu_label: "Menu"
114
+ by: "par"
115
+ min_read: "min de lecture"
116
+ read_more: "En savoir plus&hellip;"
117
+ categories: "Catégories"
118
+ tags: "Tags"
119
+ pages_categorized: "Pages catégorisées dans"
120
+ pages_tagged: "Pages étiquettées"
121
+ table_of_contents: "Table des matières"
122
+ results_found: "Résultat(s) trouvé(s)"
123
+ share: "Partager"
124
+ tweet: "Tweet"
125
+ next: "Suivant"
126
+ previous: "Précédent"
127
+ newer: "Plus récent"
128
+ older: "Plus ancier"
129
+ back_to_top: "Retour en haut"
130
+ search_placeholder_text: "Entrer le terme à rechercher..."
131
+ powered_by: "Propulsé par"
132
+ fr-FR:
133
+ <<: *DEFAULT_FR
134
+ fr-BE:
135
+ <<: *DEFAULT_FR
136
+ fr-CA:
137
+ <<: *DEFAULT_FR
138
+
139
+ it: &DEFAULT_IT
140
+ skip_links: "Salta links"
141
+ skip_primary_nav: "Salta alla navigazione primaria"
142
+ skip_content: "Vai al contenuto"
143
+ skip_footer: "Vai al footer"
144
+ menu_label: "Menu"
145
+ by: "di"
146
+ min_read: "min. per leggere"
147
+ read_more: "Leggi di più&hellip;"
148
+ categories: "Categorie"
149
+ tags: "Tags"
150
+ pages_categorized: "Pagine categorizzate come"
151
+ pages_tagged: "Pagine con tag"
152
+ table_of_contents: "Indice dei Contenuti"
153
+ results_found: "Risultati della ricerca"
154
+ share: "Condividi"
155
+ tweet: "Tweet"
156
+ next: "Avanti"
157
+ previous: "Indietro"
158
+ newer: "Nuovi"
159
+ older: "Vecchi"
160
+ back_to_top: "Torna in cima"
161
+ search_placeholder_text: "Inserisci una parola da cercare..."
162
+ powered_by: "Generato da"
163
+ it-IT:
164
+ <<: *DEFAULT_IT
165
+
166
+ # Turkish
167
+ # -----------------
168
+ tr: &DEFAULT_TR
169
+ skip_links: "Linklere git"
170
+ skip_primary_nav: "Birincil navigasyona git"
171
+ skip_content: "İçeriğe git"
172
+ skip_footer: "Sayfa altbilgisine git"
173
+ menu_label: "Menü"
174
+ by: "by"
175
+ min_read: "dakikalık okuma"
176
+ read_more: "Daha fazla&hellip;"
177
+ categories: "Kategoriler"
178
+ tags: "Etiketler"
179
+ pages_categorized: "Pages filed under"
180
+ pages_tagged: "Pages tagged"
181
+ table_of_contents: "Başlıklar"
182
+ results_found: "Sonuç bulundu"
183
+ share: "Paylaş"
184
+ tweet: "Tweet"
185
+ next: "Sonraki"
186
+ previous: "Önceki"
187
+ newer: "Daha Yeni"
188
+ older: "Daha Eski"
189
+ back_to_top: "Başa Dön"
190
+ search_placeholder_text: "Arama teriminizi girin..."
191
+ powered_by: "Powered by"
192
+ tr-TR:
193
+ <<: *DEFAULT_TR
@@ -0,0 +1,19 @@
1
+ {% assign entries = site[include.collection] %}
2
+
3
+ {% if include.sort_by == 'title' %}
4
+ {% if include.sort_order == 'reverse' %}
5
+ {% assign entries = entries | sort: 'title' | reverse %}
6
+ {% else %}
7
+ {% assign entries = entries | sort: 'title' %}
8
+ {% endif %}
9
+ {% elsif include.sort_by == 'date' %}
10
+ {% if include.sort_order == 'reverse' %}
11
+ {% assign entries = entries | sort: 'date' | reverse %}
12
+ {% else %}
13
+ {% assign entries = entries | sort: 'date' %}
14
+ {% endif %}
15
+ {% endif %}
16
+
17
+ {%- for entry in entries -%}
18
+ {% include entry.html %}
19
+ {%- endfor -%}
@@ -0,0 +1,6 @@
1
+ {%- unless page.layout == 'collection' -%}
2
+ <time class="entry-date dt-published" datetime="{{ entry.date | date_to_xmlschema }}">
3
+ {%- assign date_format = site.date_format | default: "%B %-d, %Y" -%}
4
+ {{ entry.date | date: date_format }}
5
+ </time>
6
+ {%- endunless -%}
@@ -0,0 +1,38 @@
1
+ {% if entry.id %}
2
+ {% assign title = entry.title | markdownify | strip_html %}
3
+ {% else %}
4
+ {% assign title = entry.title %}
5
+ {% endif %}
6
+
7
+ <article class="entry h-entry">
8
+ <header class="entry-header">
9
+ <h3 class="entry-title p-name">
10
+ {% if entry.link %}
11
+ <a class="u-bookmark-of" href="{{ entry.link }}">{{ title }}</a> <a href="{{ entry.url | relative_url }}" rel="bookmark"><span class="link-arrow">&rarr;</span></a>
12
+ {% else %}
13
+ <a href="{{ entry.url | relative_url }}" rel="bookmark">{{ title }}</a>
14
+ {% endif %}
15
+ </h3>
16
+ {% if entry.image.thumbnail %}
17
+ {% assign entry_image = entry.image.thumbnail %}
18
+ {% unless entry_image contains '://' %}
19
+ {% assign entry_image = entry_image | relative_url %}
20
+ {% endunless %}
21
+ {% assign entry_image = entry_image | escape %}
22
+ <img class="entry-image u-photo" src="{{ entry_image }}" alt="">
23
+ {% endif %}
24
+ </header>
25
+ {% unless page.show_excerpts == false %}
26
+ <div class="entry-excerpt p-summary">
27
+ {% if entry.excerpt %}
28
+ {{ entry.excerpt | markdownify }}
29
+ {% endif %}
30
+ </div>
31
+ {% endunless %}
32
+ {% if site.read_time or entry.date and page.layout != 'collection' %}
33
+ <footer class="entry-meta">
34
+ {% if site.read_time %}{% include read-time.html %}{% endif %}
35
+ {% if entry.date %}{% include entry-date.html %}{% endif %}
36
+ </footer>
37
+ {% endif %}
38
+ </article>
@@ -0,0 +1,3 @@
1
+ <!-- start custom footer snippets -->
2
+
3
+ <!-- end custom footer snippets -->
@@ -0,0 +1,24 @@
1
+ <footer id="footer" class="site-footer">
2
+ {% include footer-custom.html %}
3
+
4
+ {%- if site.footer_links -%}
5
+ <div class="social-icons">
6
+ {%- for footer_link in site.footer_links -%}
7
+ {%- if footer_link.url contains "://" -%}
8
+ {%- assign url = footer_link.url -%}
9
+ {%- else -%}
10
+ {%- assign url = footer_link.url | relative_url -%}
11
+ {%- endif -%}
12
+ <a class="social-icon" href="{{ url }}"><i class="{{ footer_link.icon | default: 'fas fa-link' }} fa-2x" title="{{ footer_link.title }}"></i></a>
13
+ {%- endfor -%}
14
+ </div>
15
+ {%- endif -%}
16
+
17
+ <div class="copyright">
18
+ {% if site.copyright %}
19
+ {{ site.copyright | markdownify }}
20
+ {% else %}
21
+ <p>&copy; {{ site.time | date: '%Y' }} {{ site.name | default: site.title }}. {{ site.data.text[site.locale].powered_by | default: "Powered by" }} <a href="https://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://github.com/mmistakes/so-simple-theme" rel="nofollow">So Simple</a>.</p>
22
+ {% endif %}
23
+ </div>
24
+ </footer>
@@ -0,0 +1,5 @@
1
+ <!-- start custom head snippets -->
2
+
3
+ <!-- insert favicons. use http://realfavicongenerator.net/ -->
4
+
5
+ <!-- end custom head snippets -->
@@ -0,0 +1 @@
1
+ <link rel="alternate" type="application/atom+xml" title="{{ site.title | escape }}" href="{{ site.feed.path | default: 'feed.xml' | relative_url }}">
@@ -0,0 +1 @@
1
+ {% seo %}
@@ -0,0 +1,47 @@
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">
5
+ {% if site.owner.bing-verify %}<meta name="msvalidate.01" content="{{ site.owner.bing-verify }}">{% endif %}
6
+
7
+ {% if site.plugins contains 'jekyll-seo-tag' or site.gems contains 'jekyll-seo-tag' %}
8
+ {% comment %}
9
+ Add metadata for search engines and social networks if jekyll-seo-tag plugin is enabled
10
+ {% endcomment %}
11
+ {% include head-seo.html %}
12
+ {% else %}
13
+ <title>{% if page.title %}{{ page.title | escape }}{% else %}{{ site.title | escape }}{% endif %}</title>
14
+ <meta name="description" content="{{ page.excerpt | default: site.description | strip_html | normalize_whitespace | truncate: 160 | escape }}">
15
+ <link rel="canonical" href="{{ page.url | replace:'index.html', '' | absolute_url }}">
16
+ {% endif %}
17
+
18
+ <script>
19
+ /* Cut the mustard */
20
+ if ( 'querySelector' in document && 'addEventListener' in window ) {
21
+ document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + 'js';
22
+ }
23
+ </script>
24
+
25
+ <link rel="stylesheet" href="{{ '/assets/css/main.css' | relative_url }}">
26
+ <link rel="stylesheet" href="{{ site.skin | default: '/assets/css/skins/default.css' | relative_url }}">
27
+
28
+ {%- if site.plugins contains 'jekyll-feed' or site.gems contains 'jekyll-feed' -%}
29
+ {%- comment -%}
30
+ Add Atom feed link if jekyll-feed plugin is enabled
31
+ {%- endcomment -%}
32
+ {% include head-feed.html %}
33
+ {%- endif -%}
34
+
35
+ {%- if site.head_scripts -%}
36
+ {%- for script in site.head_scripts -%}
37
+ {%- if script contains "://" -%}
38
+ {%- capture script_path %}{{ script }}{% endcapture -%}
39
+ {%- else -%}
40
+ {%- capture script_path %}{{ script | absolute_url }}{% endcapture -%}
41
+ {%- endif -%}
42
+ <script src="{{ script_path }}"></script>
43
+ {%- endfor -%}
44
+ {%- endif -%}
45
+
46
+ {% include head-custom.html %}
47
+ </head>
@@ -0,0 +1,18 @@
1
+ <header class="masthead">
2
+ <div class="wrap">
3
+ {% if site.logo %}
4
+ <a href="{{ '/' | relative_url }}" class="site-logo" rel="home" title="{{ site.title }}">
5
+ <img src="{{ site.logo | relative_url }}" class="site-logo-img animated fadeInDown" alt="{{ site.title }}">
6
+ </a>
7
+ {% endif %}
8
+ {% assign page_image = page.image.path | default: page.image %}
9
+ {% unless page_image %}
10
+ {% if page.url == '/' %}
11
+ <h1 class="site-title animated fadeIn"><a href="{{ '/' | relative_url }}">{{ site.title }}</a></h1>
12
+ {% else %}
13
+ <div class="site-title animated fadeIn"><a href="{{ '/' | relative_url }}">{{ site.title }}</a></div>
14
+ {% endif %}
15
+ <p class="site-description animated fadeIn" itemprop="description">{{ site.description }}</p>
16
+ {% endunless %}
17
+ </div>
18
+ </header><!-- /.masthead -->
@@ -0,0 +1,17 @@
1
+ {% if site.data.navigation %}
2
+ <div class="navigation-wrapper">
3
+ <a href="#menu-toggle" id="menu-toggle">{{ site.data.text[site.locale].menu_label | default: 'Menu' }}</a>
4
+ <nav id="primary-nav" class="site-nav animated drop">
5
+ <ul>
6
+ {%- for link in site.data.navigation -%}
7
+ {%- if link.url contains '://' -%}
8
+ {%- assign url = link.url -%}
9
+ {%- else -%}
10
+ {%- assign url = link.url | relative_url -%}
11
+ {%- endif -%}
12
+ <li><a href="{{ url }}">{{ link.title }}</a></li>
13
+ {%- endfor -%}
14
+ </ul>
15
+ </nav>
16
+ </div><!-- /.navigation-wrapper -->
17
+ {% endif %}
@@ -0,0 +1,37 @@
1
+ {%- assign author = page.author | default: page.authors[0] | default: site.author -%}
2
+ {%- assign author = site.data.authors[author] | default: author -%}
3
+
4
+ <div class="page-author h-card p-author">
5
+ {%- if author.picture -%}
6
+ {%- if author.picture contains "://" -%}
7
+ {%- assign author_picture = author.picture -%}
8
+ {%- else -%}
9
+ {%- assign author_picture = author.picture | relative_url -%}
10
+ {%- endif -%}
11
+ <img src="{{ author_picture }}" class="author-avatar u-photo" alt="{{ author.name }}">
12
+ {%- endif -%}
13
+
14
+ <div class="author-info">
15
+ {%- if author.name -%}
16
+ <div class="author-name">
17
+ {% if site.data.text[site.locale].by %}<em>{{ site.data.text[site.locale].by }}</em> {% endif %}<span class="p-name">{{ author.name }}</span>
18
+ </div>
19
+ {%- endif -%}
20
+ {%- if author.links -%}
21
+ <ul class="author-links">
22
+ {%- for link in author.links -%}
23
+ {%- if link.url contains "://" -%}
24
+ {%- assign url = link.url -%}
25
+ {%- else -%}
26
+ {%- assign url = link.url | relative_url -%}
27
+ {%- endif -%}
28
+ <li class="author-link">
29
+ <a class="u-url" rel="me" href="{{ url }}"><i class="{{ link.icon | default : 'fas fa-link' }} fa-lg" title="{{ link.title }}"></i></a>
30
+ </li>
31
+ {%- endfor -%}
32
+ </ul>
33
+ {%- endif -%}
34
+ {% if site.read_time %}{% include read-time.html %}{% endif %}
35
+ {% if page.date %}{% include page-date.html %}{% endif %}
36
+ </div>
37
+ </div>