blob: b59631a08b2b777be357b5bb7958fbd240aa8716 [file] [log] [blame]
Giulio Fidente44ccac72013-03-21 18:51:03 +01001<!DOCTYPE html>
2<html lang="{{ DEFAULT_LANG }}">
3
4<head>
pR0Ps6d648322015-01-15 01:34:55 -05005 <meta charset="utf-8">
pR0Psb1beb102015-01-11 22:19:11 -05006 <meta name="viewport" content="width=device-width, initial-scale=1.0">
Giulio Fidente663537a2013-04-17 16:48:53 +02007 <meta name="author" content="{{ AUTHOR }}">
pR0Ps277fab82014-09-25 01:52:29 -04008 <meta name="description" content="{% block description %}Posts by {{ AUTHOR }}{% endblock %}">
Giulio Fidentea3296652013-03-28 11:30:46 +01009
Carey Metcalfe9461e3f2015-12-08 00:02:33 -050010 {% block base %}{% endblock %}
Carey Metcalfeed3a5522016-03-12 14:14:30 -050011 {% assets filters="pyscss,cssmin", output="css/styles.%(version)s.min.css", "css/style.scss", "css/pygments.css" %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +000012 <link rel="stylesheet" type="text/css" href="{{ THEMEURL }}/{{ ASSET_URL }}">
pR0Psa9f82032015-03-11 21:36:35 -040013 {% endassets %}
Carey Metcalfeed3a5522016-03-12 14:14:30 -050014
15 {% assets filters="slimit", output="js/scripts.%(version)s.min.js", "js/lw-timeago/lw-timeago.js", "js/scroll.js", "js/email.js" %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +000016 <script src="{{ THEMEURL }}/{{ ASSET_URL }}" type="text/javascript"></script>
Carey Metcalfeed3a5522016-03-12 14:14:30 -050017 {% endassets%}
18
Carey Metcalfe288f0602016-09-14 23:10:55 -040019 <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css" rel="stylesheet">
pR0Psa9f82032015-03-11 21:36:35 -040020
Giulio Fidente44ccac72013-03-21 18:51:03 +010021 {% if FEED_ALL_ATOM %}
Giulio Fidente8305e742013-03-22 23:17:45 +010022 <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}" type="application/atom+xml" rel="alternate" title="{{ SITENAME }} Full Atom Feed" />
Giulio Fidente44ccac72013-03-21 18:51:03 +010023 {% endif %}
24 {% if FEED_ALL_RSS %}
Giulio Fidente8305e742013-03-22 23:17:45 +010025 <link href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}" type="application/rss+xml" rel="alternate" title="{{ SITENAME }} Full RSS Feed" />
Giulio Fidente44ccac72013-03-21 18:51:03 +010026 {% endif %}
Giulio Fidentea3296652013-03-28 11:30:46 +010027
Giulio Fidente44ccac72013-03-21 18:51:03 +010028 {% block head %}
pR0Ps02550b72013-12-17 17:03:38 -050029 <meta name="keywords" content="
30 {%- if GLOBAL_KEYWORDS -%}
31 {{ GLOBAL_KEYWORDS|join(', ') }}
pR0Ps86b80862014-09-25 02:41:07 -040032 {%- if tags -%}{{', '}}{%- endif -%}
pR0Ps02550b72013-12-17 17:03:38 -050033 {%- endif -%}
34 {{tags|join(', ', attribute='0') }}">
Giulio Fidente44ccac72013-03-21 18:51:03 +010035 {% endblock %}
Giulio Fidentea3296652013-03-28 11:30:46 +010036
Carey Metcalfebc526612016-10-21 23:38:02 -040037 <title>{% block title %}{{ SITENAME }}{% endblock %}</title>
Giulio Fidentefbc35fb2013-04-05 11:26:07 +020038
Giulio Fidente180d1722013-06-14 09:29:38 +020039 {% include "modules/analytics.html" %}
Giulio Fidente44ccac72013-03-21 18:51:03 +010040</head>
41
pR0Ps58acb372015-03-05 00:18:35 -050042{% macro get_icon(link) %}
43 {%- set class = 'fa-external-link-square' -%}
44
45 {# Attempt to normalize link URLs #}
46 {%- set temp = link|lower|replace('http://', '')|replace('https://', '')|replace('www.', '') -%}
47
48 {# Choosing a specific link icon #}
49 {%- if temp.startswith('bitcoin:') %}{% set class = 'fa-btc' %}
50 {% elif temp.startswith('irc:') %}{% set class = 'fa-comments' %}
51 {% elif temp.startswith('mailto:') %}{% set class = 'fa-envelope' %}
52 {% elif temp.startswith('skype:') %}{% set class = 'fa-skype' -%}
53
54 {%- elif temp.endswith('.pdf') or
55 temp.endswith('.txt') or
56 temp.endswith('.doc') or
57 temp.endswith('.docx') %}{% set class = 'fa-file-text' -%}
58
Carey Metcalfe288f0602016-09-14 23:10:55 -040059 {%- elif temp.startswith('500px.com') %}{% set class = 'fa-500px' %}
60 {% elif temp.startswith('behance.net') %}{% set class = 'fa-behance' %}
61 {% elif temp.startswith('bitbucket.org') %}{% set class = 'fa-bitbucket' %}
62 {% elif temp.startswith('codepen.io') %}{% set class = 'fa-codepen' %}
pR0Ps58acb372015-03-05 00:18:35 -050063 {% elif temp.startswith('delicious.com') %}{% set class = 'fa-delicious' %}
64 {% elif temp.startswith('deviantart.com') %}{% set class = 'fa-deviantart' %}
65 {% elif temp.startswith('facebook.com') %}{% set class = 'fa-facebook' %}
66 {% elif temp.startswith('flickr.com') %}{% set class = 'fa-flickr' %}
67 {% elif temp.startswith('foursquare.com') %}{% set class = 'fa-foursquare' %}
68 {% elif temp.startswith('github.com') %}{% set class = 'fa-github' %}
Carey Metcalfe288f0602016-09-14 23:10:55 -040069 {% elif temp.startswith('gitlab.com') %}{% set class = 'fa-gitlab' %}
pR0Ps58acb372015-03-05 00:18:35 -050070 {% elif temp.startswith('instagram.com') %}{% set class = 'fa-instagram' %}
71 {% elif temp.startswith('last.fm') %}{% set class = 'fa-lastfm' %}
72 {% elif temp.startswith('linkedin.com') %}{% set class = 'fa-linkedin' %}
73 {% elif temp.startswith('news.ycombinator.com') %}{% set class = 'fa-hacker-news' %}
74 {% elif temp.startswith('pinterest.com') %}{% set class = 'fa-pinterest' %}
Carey Metcalfe288f0602016-09-14 23:10:55 -040075 {% elif temp.startswith('plus.google.com') %}{% set class = 'fa-google-plus-official' %}
pR0Ps58acb372015-03-05 00:18:35 -050076 {% elif temp.startswith('reddit.com') %}{% set class = 'fa-reddit' %}
Carey Metcalfe288f0602016-09-14 23:10:55 -040077 {% elif temp.startswith('snapchat.com') %}{% set class = 'fa-snapchat-ghost' %}
pR0Ps58acb372015-03-05 00:18:35 -050078 {% elif temp.startswith('spotify.com') %}{% set class = 'fa-spotify' %}
79 {% elif temp.startswith('stackoverflow.com') %}{% set class = 'fa-stack-overflow' %}
80 {% elif temp.startswith('steamcommunity.com') %}{% set class = 'fa-steam' %}
81 {% elif temp.startswith('soundcloud.com') %}{% set class = 'fa-soundcloud' %}
82 {% elif temp.startswith('twitch.tv') %}{% set class = 'fa-twitch' %}
83 {% elif temp.startswith('twitter.com') %}{% set class = 'fa-twitter' %}
84 {% elif temp.startswith('vimeo.com') %}{% set class = 'fa-vimeo-square' %}
85 {% elif temp.startswith('vine.co') %}{% set class = 'fa-vine' %}
86 {% elif temp.startswith('youtube.com') %}{% set class = 'fa-youtube' -%}
filgal66148732016-09-14 23:41:58 +020087 {% elif temp.startswith('keybase.io') %}{% set class = 'fa-key' -%}
pR0Ps58acb372015-03-05 00:18:35 -050088
89 {%- elif '.stackexchange.com' in temp %}{% set class = 'fa-stack-exchange' %}
90 {% elif '.tumblr.com' in temp %}{% set class = 'fa-tumblr' %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +000091 {% elif 'debian.org' in temp %}{% set class = 'fa fa-linux fa-lg' %}
pR0Ps58acb372015-03-05 00:18:35 -050092 {% endif -%}
93
94 <i class="fa {{ class }} fa-lg"></i>
95{%- endmacro -%}
96
pR0Psf072a8c2015-03-05 01:28:24 -050097{%- macro display_link(name, link, text) -%}
98 {%- if MANGLE_EMAILS and link.startswith('mailto:') -%}
Justin Montgomeryad60cae2016-05-04 17:41:16 -070099 <a data-email="{{ link|reverse }}"{% if not text %} data-title="{{ name }}"{% endif %} title="You need javascript enabled to view this email" class="email" target="_blank" rel="noopener noreferrer">{{ text }}{{ get_icon(link) }}</a>
pR0Psf072a8c2015-03-05 01:28:24 -0500100 {%- else -%}
Justin Montgomery3bcd02f2016-05-04 17:19:30 -0700101 <a href="{{ link }}"{% if not text %} title="{{ name }}"{% endif %} target="_blank" rel="noopener noreferrer">{{ text }}{{ get_icon(link) }}</a>
pR0Psf072a8c2015-03-05 01:28:24 -0500102 {%- endif -%}
103{%- endmacro -%}
104
Giulio Fidente44ccac72013-03-21 18:51:03 +0100105<body>
Giulio Fidentefc3b4d02013-03-26 15:23:42 +0100106 <aside>
Giulio Fidente44ccac72013-03-21 18:51:03 +0100107 <div id="user_meta">
Giulio Fidente5c9ed782013-03-27 11:20:31 +0100108 <a href="{{ SITEURL }}">
109 {% if USER_LOGO_URL %}
Carey Metcalfe36b4a302016-10-17 22:49:10 -0400110 <img src="{{ USER_LOGO_URL }}" id="logo">
Giulio Fidente5c9ed782013-03-27 11:20:31 +0100111 {% endif %}
112 </a>
Carey Metcalfe9a4c7512014-09-25 13:35:55 -0400113 <h2><a href="{{ SITEURL }}" class="nohover">{{ SITENAME }}</a></h2>
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000114 {{ TAGLINE }}
115 {% if SOCIAL|length > 1 %}
pR0Ps58acb372015-03-05 00:18:35 -0500116 <div class="social">
Giulio Fidente44ccac72013-03-21 18:51:03 +0100117 {% for name, link in SOCIAL %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000118 {{ display_link(name, link, "") }}
Giulio Fidente44ccac72013-03-21 18:51:03 +0100119 {% endfor %}
pR0Ps58acb372015-03-05 00:18:35 -0500120 </div>
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000121 {% endif %}
122 {% if LINKS|length > 1 %}
pR0Pse5f49ca2014-03-04 01:47:54 -0500123 <ul>
Vincent Cheng713daa22014-02-21 04:49:15 -0800124 {% for name, link in LINKS %}
pR0Psf072a8c2015-03-05 01:28:24 -0500125 <li>{{ display_link(name, link, name) }}</li>
Vincent Cheng713daa22014-02-21 04:49:15 -0800126 {% endfor %}
Giulio Fidente44ccac72013-03-21 18:51:03 +0100127 </ul>
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000128 {% endif %}
Giulio Fidente44ccac72013-03-21 18:51:03 +0100129 </div>
Giulio Fidentefc3b4d02013-03-26 15:23:42 +0100130 </aside>
Giulio Fidente44ccac72013-03-21 18:51:03 +0100131
pR0Ps6c173152013-12-11 12:13:15 -0500132 <main id="main">
Giulio Fidentea3296652013-03-28 11:30:46 +0100133 <header>
Giulio Fidenteda4d95b2013-04-29 15:59:35 +0200134 {% block header %}
pR0Ps09af9c42013-12-06 04:51:29 -0500135 <p id="header">
pR0Ps90df6e92013-12-05 15:17:52 -0500136 <a href="{{ SITEURL }}">Home</a>
Justin Montgomeryee5f77c2016-04-04 14:40:32 -0700137
138 {% if DISPLAY_PAGES_ON_MENU %}
Carey Metcalfefa300fd2017-06-19 21:14:49 -0400139 {% for p in pages %}
pR0Ps90df6e92013-12-05 15:17:52 -0500140 {% if p.url != "index.html" %}
141 &#124; <a href="{{ SITEURL }}/{{ p.url }}">{{ p.title }}</a>
142 {% endif %}
143 {% endfor %}
Justin Montgomeryee5f77c2016-04-04 14:40:32 -0700144 {% endif %}
pR0Ps8096f8f2013-12-11 12:56:28 -0500145 {% if INDEX_SAVE_AS and INDEX_SAVE_AS != "index.html" %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000146 &#124; <a href="{{ SITEURL }}/{{ INDEX_LINK_AS }}">Blog</a>
pR0Ps8096f8f2013-12-11 12:56:28 -0500147 {% endif %}
Giulio Fidenteda4d95b2013-04-29 15:59:35 +0200148 {% if FEED_ALL_ATOM %}
149 &#124; <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_ATOM }}">Atom Feed</a>
150 {% endif %}
151 {% if FEED_ALL_RSS %}
152 &#124; <a href="{{ FEED_DOMAIN }}/{{ FEED_ALL_RSS }}">RSS Feed</a>
153 {% endif %}
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000154 {% for title, link in MENUITEMS %}
155 &#124; <a href="{{ SITEURL }}/{{ link }}">{{ title }}</a>
156 {% endfor %}
Giulio Fidentea6c58672013-03-30 14:55:03 +0100157 </p>
Giulio Fidenteda4d95b2013-04-29 15:59:35 +0200158 {% endblock header %}
pR0Psccef5bd2015-01-11 14:33:01 -0500159 {% block subheader %}{% include "modules/blogsubheader.html" %}{% endblock subheader %}
Giulio Fidentea3296652013-03-28 11:30:46 +0100160 </header>
161
Giulio Fidente44ccac72013-03-21 18:51:03 +0100162 {% block content %}
163 {% endblock %}
Giulio Fidentea3296652013-03-28 11:30:46 +0100164
pR0Ps721949b2013-12-11 13:09:22 -0500165 {% block footer %}
166 {% endblock %}
Giulio Fidentea3296652013-03-28 11:30:46 +0100167
Giulio Fidentebc2f70a2013-03-27 15:41:07 +0100168 <div id="ending_message">
Luigi Santivettid93cb0f2020-02-17 22:21:28 +0000169 <p>{{ SITENAME }}. Built using <a href="http://getpelican.com">Pelican</a>. Theme is <a href="https://github.com/pR0Ps/pelican-subtle">subtle</a> by <a href="http://cmetcalfe.ca">Carey Metcalfe</a>. Based on <a href="https://github.com/giulivo/pelican-svbhack">svbhack</a> by Giulio Fidente.</p>
Giulio Fidentebc2f70a2013-03-27 15:41:07 +0100170 </div>
Giulio Fidentefc3b4d02013-03-26 15:23:42 +0100171 </main>
pR0Ps6c173152013-12-11 12:13:15 -0500172
pR0Ps2fd93002015-01-11 13:46:27 -0500173 {% block scripts %}
pR0Ps6c173152013-12-11 12:13:15 -0500174 <script type="text/javascript">
Carey Metcalfeed3a5522016-03-12 14:14:30 -0500175 window.addEventListener('load', skipHeader)
pR0Ps6c173152013-12-11 12:13:15 -0500176 </script>
pR0Ps8c524632013-12-11 13:04:15 -0500177
pR0Ps23cfbaa2013-12-11 13:06:06 -0500178 {% if MANGLE_EMAILS %}
179 <script type="text/javascript">
Carey Metcalfeed3a5522016-03-12 14:14:30 -0500180 window.addEventListener('load', unmangleEmail)
pR0Ps23cfbaa2013-12-11 13:06:06 -0500181 </script>
182 {% endif %}
pR0Ps2fd93002015-01-11 13:46:27 -0500183 {% endblock scripts %}
Giulio Fidente44ccac72013-03-21 18:51:03 +0100184</body>
185</html>