all repos — zola-bearblog @ 14ecd3b35136baebddeb3bcab390d7afedf13545

Port of bear blog theme to zola

Tera 2 updates fix: use safe navigation for favicon

adidalal
commit

14ecd3b35136baebddeb3bcab390d7afedf13545

parent

17b23b2cc15eeb355d4d8541e4fe02a5983f1e56

M config.tomlconfig.toml
@@ -44,10 +44,11 @@ table_of_contents = "Inhaltsverzeichnis"
language = "Sprache" site = "Site" -[markdown] -# Whether to do syntax highlighting -# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola -highlight_code = false + +# syntax highlighting is disabled by default +# as of Zola 0.23. uncomment the block below to enable +# [markdown.highlighting] +# theme = "gruvbox-dark" [extra] date_format = "%Y-%m-%d"
M templates/base.htmltemplates/base.html
@@ -1,31 +1,31 @@
<!DOCTYPE html> -<html lang="{{ lang | default(value="en-US" ) }}"> +<html lang="{{ lang or config.default_language or "en" }}"> <head> - {%- if config.webserver_sends_csp_headers %} - {%- include "security_tags.html" ignore missing %} + {%- if config.extra?.webserver_sends_csp_headers %} + {%- include "security_tags.html" %} {%- endif %} <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> - {% include "favicon.html" ignore missing -%} + {% include "favicon.html" -%} <title>{%- block title %}{{ config.title }}{%- endblock %}</title> - {% include "seo_tags.html" ignore missing -%} + {% include "seo_tags.html" -%} <meta name="referrer" content="strict-origin-when-cross-origin"> + {% block rss -%} {%- if config.generate_feeds %} - {% block rss -%} {%- for feed_filename in config.feed_filenames %} <link rel="alternate" type={% if feed_filename == "atom.xml" %}"application/atom+xml"{% else %}"application/rss+xml"{% endif %} title="{{ config.title }}" href="{{ get_url(path=feed_filename) | safe }}"> {%- endfor -%} - {%- endblock -%} {%- endif %} + {%- endblock -%} <style> - {% include "style.css.html" ignore missing %} + {% include "style.css.html" %} </style> - {%- include "custom_head.html" ignore missing %} + {%- include "custom_head.html" %} </head> <body> - {% include "header.html" ignore missing %} + {%- include "header.html" %} {%- block main -%}{%- endblock -%} - {%- include "footer.html" ignore missing -%} - {%- include "custom_body.html" ignore missing -%} + {%- include "footer.html" -%} + {%- include "custom_body.html" -%} </body> </html>
A templates/components/toc.html
@@ -0,0 +1,12 @@
+{% component table_of_contents(toc: array, max_level: integer = 6, ...rest) {"doc": "Renders table of contents recursively"} %} +<ul> + {%- for header in toc %} + <li> + <a href="{{ header.permalink | safe }}">{{ header.title }}</a> + {%- if header.children and header.level < max_level %} + {{ <table_of_contents toc={header.children} max_level={max_level} /> }} + {%- endif %} + </li> + {%- endfor %} +</ul> +{% endcomponent table_of_contents %}
A templates/custom_body.html
@@ -0,0 +1,1 @@
+<!-- custom_body -->
A templates/custom_head.html
@@ -0,0 +1,1 @@
+<!-- custom_head -->
M templates/favicon.htmltemplates/favicon.html
@@ -1,3 +1,3 @@
-{% if config.extra.favicon %} - <link rel="shortcut icon" href="{{ config.extra.favicon }}"> +{% if config.extra?.favicon %} + <link rel="shortcut icon" href="{{ config.extra?.favicon }}"> {%- endif -%}
M templates/footer.htmltemplates/footer.html
@@ -1,5 +1,5 @@
<footer> - {%- if not config.extra.hide_made_with_line %} + {%- if not config.extra?.hide_made_with_line %} {{ trans(key="made_with", lang=lang) }} <a href="https://codeberg.org/alinnow/zola-bearblog">Zola ʕ•ᴥ•ʔ Bear</a> {%- endif %} </footer>
M templates/language_switcher.htmltemplates/language_switcher.html
@@ -1,7 +1,7 @@
-{%- if config.extra.language_switcher %} +{%- if config.extra?.language_switcher %} <nav class="lang" aria-label="{{ trans(key="language", lang=lang) }}"> - {%- set language_agnostic_path = current_path | default(value="/") | replace(from='/' ~ lang ~ '/', to = '/') | trim_start_matches(pat = '/') %} - {%- for tr in config.extra.translations %} + {%- set language_agnostic_path = (current_path or "/") | replace(from='/' ~ lang ~ '/', to = '/') | trim_start(pat = '/') %} + {%- for tr in config.extra?.translations %} {%- if tr.code == lang %} <span class="active">{{ tr.name }}</span> {%- else %}
D templates/macros.html
@@ -1,12 +0,0 @@
-{%- macro table_of_contents(toc, max_level) %} -<ul> - {%- for header in toc %} - <li> - <a href="{{ header.permalink | safe }}">{{ header.title }}</a> - {%- if header.children and header.level < max_level %} - {{- self::table_of_contents(toc=header.children, max_level=max_level) | indent() | safe() }} - {%- endif %} - </li> - {%- endfor %} -</ul> -{%- endmacro %}
M templates/nav.htmltemplates/nav.html
@@ -1,18 +1,13 @@
-{%- set current_lang = config.default_language %} -{%- if page %} - {%- set current_lang = page.lang %} -{%- elif section %} - {%- set current_lang = section.lang %} -{%- endif %} -{%- if config.extra.main_menu %} - {%- for item in config.extra.main_menu %} +{%- set current_lang = page?.lang or section?.lang or config.default_language %} +{%- if config.extra?.main_menu %} + {%- for item in config.extra?.main_menu %} {%- if current_lang == config.default_language %} {%- set title = item.name %} {%- else %} {%- set language_key = 'name_' ~ current_lang %} - {%- set title = item[language_key] %} + {%- set title = item?[language_key] or item.name %} {%- endif %} - {%- if item.url is matching("https?://") %} + {%- if item.url is matching(pat="https?://") %} <a href="{{ item.url }}">{{ title }}</a> {%- else %} <a href="{{ get_url(path=item.url, lang=lang )}}">{{ title }}</a>
M templates/page.htmltemplates/page.html
@@ -1,25 +1,25 @@
-{% import "macros.html" as macros %} + {% extends "base.html" %} {% block title %}{{ page.title }} | {{ super() }}{% endblock %} -{% block main %} - {%- if not page.extra.menu -%} +{%- block main -%} + {%- if not page.extra?.menu -%} <h1>{{ page.title }}</h1> {%- if page.date %} <p> <i> - <time datetime="{{ page.date | date(format='%+') }}" pubdate> - {{- page.date | date(format=config.extra.date_format) -}} + <time datetime="{{ page.date | date(format='%Y-%m-%d') }}" pubdate> + {{- page.date | date(format=config.extra?.date_format or "%Y-%m-%d") -}} </time> </i> </p> {%- endif %} {%- endif %} - {%- if config.extra.table_of_contents.show and not page.extra.hide_table_of_contents and page.toc %} - <details {% if config.extra.table_of_contents.visible_on_load %}open{% endif %}> + {%- if config.extra?.table_of_contents?.show and not page.extra?.hide_table_of_contents and page.toc %} + <details {% if config.extra?.table_of_contents?.visible_on_load %}open{% endif %}> <summary>{{ trans(key="table_of_contents", lang=lang) }}</summary> - {{- macros::table_of_contents(toc=page.toc, max_level=config.extra.table_of_contents.max_level) | indent() | safe() }} + {{ <table_of_contents toc={page.toc} max_level={config.extra?.table_of_contents?.max_level or 6} /> }} </details> {%- endif %} <main>
@@ -30,9 +30,9 @@ {%- if page.taxonomies %}
{%- for name, taxon in page.taxonomies %} {{ name | capitalize }}: {%- for item in taxon %} - <a href="{{ get_taxonomy_url(kind=name, name=item, lang=lang) }}">#{{ item }}</a> + <a href="{{ get_taxonomy_url(kind=name, term=item, lang=lang) }}">#{{ item }}</a> {%- endfor %} {%- endfor %} {%- endif %} </p> -{% endblock %} +{%- endblock main -%}
M templates/section.htmltemplates/section.html
@@ -2,7 +2,7 @@ {% extends "base.html" %}
{%- block main -%} <main> - {%- if taxonomy.term %} + {%- if taxonomy?.term %} <h3 class="filter">{{ trans(key="filtering_for",lang=lang)}} "{{ section.title }}"</h3> <small> <a href="{{ get_url(path="@/blog/_index.md", lang=lang) }}">{{ trans(key="remove_filter", lang=lang) }}</a>
@@ -13,8 +13,8 @@ {%- for page in section.pages %}
<li> <span> <i> - <time datetime="{{ page.date | date(format='%+') }}" pubdate> - {{ page.date | date(format=config.extra.date_format) }} + <time datetime="{{ page.date | date(format='%Y-%m-%d') }}" pubdate> + {{ page.date | date(format=config.extra?.date_format or "%Y-%m-%d") }} </time> </i> </span>
@@ -25,11 +25,11 @@ <li>{{ trans(key="no_posts", lang=lang) }}</li>
{%- endfor -%} </ul> <div class="tags"> - {%- set taxonomy_group = section.extra.taxonomy_group | default(value="tags") %} + {%- set taxonomy_group = section.extra?.taxonomy_group or "tags" %} {%- set tags = get_taxonomy(kind=taxonomy_group, lang=lang) %} - {%- for post in tags.items %} + {%- for post in tags?.items or [] %} <a href="{{ post.permalink }}">#{{ post.name }}</a>&nbsp; {%- endfor %} </div> </main> -{% endblock %} +{%- endblock main -%}
M templates/seo_tags.htmltemplates/seo_tags.html
@@ -1,2 +1,2 @@
-<meta name="title" content="{% if page.title %}{{ page.title }}{% else %}{{ config.title }}{% endif %}"> -<meta name="description" content="{{ config.description }}"> +<meta name="title" content="{{ page?.title or config.title }}"> +<meta name="description" content="{{ page?.description or config.description }}">
M templates/taxonomy_list.htmltemplates/taxonomy_list.html
@@ -1,13 +1,13 @@
{% extends "base.html" %} -{% block main %} +{%- block main -%} <main> <h1>{{ taxonomy.name | capitalize }}</h1> <div class="tags"> - {%- set tags = get_taxonomy(kind="tags", lang=lang) %} - {%- for post in tags.items %} + {%- set tags = get_taxonomy(kind=taxonomy?.name or "tags", lang=lang) %} + {%- for post in tags?.items or [] %} <a href="{{ post.permalink }}">#{{ post.name }}</a>&nbsp; {%- endfor %} </div> </main> -{% endblock %} +{%- endblock main -%}
M templates/taxonomy_single.htmltemplates/taxonomy_single.html
@@ -2,7 +2,7 @@ {% extends "base.html" %}
{%- block main -%} <main> - {%- if term %} + {%- if term?.name %} <h3 class="filter">{{ trans(key="filtering_for", lang=lang) }} "{{ term.name }}"</h3> <small> <a href="{{ get_url(path="@/blog/_index.md", lang=lang) }}">{{ trans(key="remove_filter", lang=lang) }}</a>
@@ -13,8 +13,8 @@ {%- for page in term.pages %}
<li> <span> <i> - <time datetime="{{ page.date | date(format='%+') }}" pubdate> - {{ page.date | date(format=config.extra.date_format) }} + <time datetime="{{ page.date | date(format='%Y-%m-%d') }}" pubdate> + {{ page.date | date(format=config.extra?.date_format or "%Y-%m-%d") }} </time> </i> </span>
@@ -27,4 +27,4 @@ </li>
{%- endfor %} </ul> </main> -{%- endblock -%} +{%- endblock main -%}