Dodanie makra generującego spis treści

pull/1/head
Tomasz Karbownicki 2021-09-21 00:52:59 +02:00
rodzic a5f4b214f7
commit 4332aa0f3b
4 zmienionych plików z 32 dodań i 4 usunięć

Wyświetl plik

@ -3,6 +3,8 @@ title = "Dla użytkowników"
template = "section.html"
+++
[TOC]
Zanim przejdziemy do konkretnych platform trzeba wspomnieć o niezwykle ważnym dla serwisów zdecentralizowanych projekcie **Fediwersum** (ang. Fediverse). Sama nazwa powstała ze zlepienia słów **federacja** i **uniwersum**. Celem projektu jest stworzenie rozległej sieci serwerów, które poprzez implementację tych samych protokołów komunikacyjnych mogłyby bez przeszkód wymieniać pomiędzy sobą informacje.
W skład Fediwersum wchodzą różnego rodzaju platformy (m.in. mikroblogowe, społecznościowe, wideo). Posiadając konto na platformnie wchodzącej w skład Fediwersum możemy bez problemu obserwować użytkowników innych platform czy np. używać naszego konta na platformie mikroblogowej aby komentować filmy na platformie wideo. Dzięki temu Fediwersum rozwiązuje problem tożsamości i nie wymusza na nas tworzenia osobnych kont na każdej z tych platform. Dla odpowiedniego porównania wyobraźmy sobie sytuację, w której mamy możliwość użycia naszego konta Facebookowego do skomentowania filmu na YouTube lub konta Twitterowego do śledzenia znajomego na Facebooku. W sieci Fediwersum takie interakcje są możliwe bo wszystkie platformy się ze sobą dogadują.

Wyświetl plik

@ -1,16 +1,41 @@
{%- macro toc(toc, depth, heading=true) %}
{%- if heading %}
<h3>Spis treści</h3>
{%- endif %}
<ol class=toc>
{%- for heading in toc %}
<li>
<a href="{{ heading.permalink | safe }}">{{ heading.title }}</a>
{% if heading.children and depth > 1 -%}
{{ self::toc(toc=heading.children, depth=depth - 1, heading=false) }}
{%- endif %}
</li>
{%- endfor %}
</ol>
<br>
{%- endmacro %}
{%- macro replace_toc(resource) %}
{%- set content = resource.content %}
{%- if content is containing("[TOC]") %}
{%- set content = content | replace(from="[TOC]", to=self::toc(toc=resource.toc, level=1, depth=resource.extra.toc_depth | default(value=6))) %}
{%- endif -%}
{{ content | safe }}
{%- endmacro %}
{%- macro time() -%}
{%- if config.extra.footer.start_year -%}
{%- set start_year = config.extra.footer.start_year -%}
{%- else -%}
{%- set start_year = now() | date(format="%Y") -%}
{%- endif -%}
{%- if config.extra.footer.end_year -%}
{%- set end_year = config.extra.footer.end_year -%}
{%- else -%}
{%- set end_year = now() | date(format="%Y") -%}
{%- endif -%}
{%- if start_year == end_year -%}
{%- set year = start_year -%}
{%- else -%}

Wyświetl plik

@ -38,7 +38,7 @@
{% endif -%}
{% set web_type = "BlogPosting" -%}
{{ macros::seo(title=title, og_title=og_title, author=author, description=description, site_url=site_url, image=image, image_height=image_height, image_width=image_width, web_type=web_type) }}
{%- endblock seo %}

Wyświetl plik

@ -29,10 +29,11 @@
{% block content %}
<div class="post">
<h1 class="post-title">{{ section.title }}</h1>
<div class="post-line"></div>
{{ section.content | safe }}
{{ macros::replace_toc(resource=section) }}
</div>
<div class="pagination">
<a href="#" class="top">Top</a>