2024-05-01 23:12:52 +03:00
|
|
|
{%- import "macros.askama" as macros -%}
|
2024-05-02 20:17:46 +03:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="en">
|
|
|
|
<head>
|
2024-06-13 21:52:18 +03:00
|
|
|
<meta charset="UTF-8" />
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
2024-06-29 03:01:48 +03:00
|
|
|
<meta name="author" content="{{ meta.author }}" />
|
2024-08-01 00:25:42 +03:00
|
|
|
<meta name="keywords" content="{{ meta.tags|join_tags_for_meta }}" />
|
2024-06-13 21:52:18 +03:00
|
|
|
<meta name="description" content="{{ meta.title }}" />
|
2024-07-01 02:34:13 +03:00
|
|
|
<!-- you know what I really love? platforms like discord
|
|
|
|
favoring twitter embeds over the open standard. to color
|
|
|
|
your embed or have large images, you have to do _this_. lmao -->
|
2024-06-13 21:52:18 +03:00
|
|
|
<meta property="og:title" content="{{ meta.title }}" />
|
2024-07-01 02:34:13 +03:00
|
|
|
<meta property="twitter:title" content="{{ meta.title }}" />
|
2024-06-13 21:52:18 +03:00
|
|
|
<meta property="og:description" content="{{ meta.description }}" />
|
2024-07-01 02:34:13 +03:00
|
|
|
<meta property="twitter:description" content="{{ meta.description }}" />
|
2024-06-13 21:52:18 +03:00
|
|
|
{% match meta.icon %} {% when Some with (url) %}
|
|
|
|
<meta property="og:image" content="{{ url }}" />
|
2024-07-01 02:34:13 +03:00
|
|
|
<meta name="twitter:card" content="summary_large_image" />
|
|
|
|
<meta property="twitter:image:src" content="{{ url }}" />
|
2024-07-01 03:21:33 +03:00
|
|
|
{% match meta.icon_alt %} {% when Some with (alt) %}
|
|
|
|
<meta property="og:image:alt" content="{{ alt }}" />
|
|
|
|
<meta property="twitter:image:alt" content="{{ alt }}" />
|
|
|
|
{% when None %} {% endmatch %}
|
|
|
|
<!-- prettier-br -->
|
2024-07-01 02:34:13 +03:00
|
|
|
{% when None %} {% endmatch %}
|
|
|
|
<!-- prettier is annoying -->
|
2024-07-01 02:53:04 +03:00
|
|
|
{% match color %} {% when Some with (color) %}
|
2024-07-01 02:34:13 +03:00
|
|
|
<meta name="theme-color" content="{{ color }}" />
|
2024-06-13 21:52:18 +03:00
|
|
|
{% when None %} {% endmatch %}
|
|
|
|
<title>{{ meta.title }}</title>
|
|
|
|
<link rel="stylesheet" href="/static/style.css" />
|
|
|
|
<link rel="stylesheet" href="/static/post.css" />
|
|
|
|
{% if js %}
|
2024-08-01 13:46:03 +03:00
|
|
|
<script src="/static/date.js" defer></script>
|
2024-06-13 21:52:18 +03:00
|
|
|
<script src="/static/main.js" defer></script>
|
|
|
|
{% endif %}
|
2024-05-02 20:17:46 +03:00
|
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<main>
|
|
|
|
<h1 class="post-title">
|
|
|
|
{{ meta.title }}
|
|
|
|
<span class="post-author">- by {{ meta.author }}</span>
|
|
|
|
</h1>
|
|
|
|
<p class="post-desc">{{ meta.description }}</p>
|
2024-06-13 21:52:18 +03:00
|
|
|
<div class="post">
|
2024-05-02 20:17:46 +03:00
|
|
|
<!-- prettier-ignore -->
|
|
|
|
{% call macros::table(meta) %}
|
|
|
|
<a href="/posts/{{ meta.name }}">link</a><br />
|
|
|
|
<a href="/">back to home</a>
|
|
|
|
</div>
|
|
|
|
<hr />
|
|
|
|
{{ rendered|escape("none") }}
|
|
|
|
</main>
|
|
|
|
<!-- prettier-ignore -->
|
|
|
|
<footer>
|
|
|
|
{% match rendered_in %}
|
|
|
|
{% when RenderStats::ParsedAndRendered(total, parsing, rendering) %}
|
|
|
|
<span class="tooltipped" title="parsing took {{ parsing|duration }}">parsed</span> and
|
|
|
|
<span class="tooltipped" title="rendering took {{ rendering|duration }}">rendered</span> in {{ total|duration }}
|
|
|
|
{% when RenderStats::Cached(total) %}
|
|
|
|
retrieved from cache in {{ total|duration }}
|
|
|
|
{% endmatch %}
|
|
|
|
{% if markdown_access %}
|
|
|
|
- <a href="/posts/{{ meta.name }}.md">view raw</a>
|
|
|
|
{% endif %}
|
|
|
|
</footer>
|
|
|
|
</body>
|
|
|
|
</html>
|