From c2d72e09747a2a4abe9602e1ba49a1b4649c9d3c Mon Sep 17 00:00:00 2001 From: Jieiku Date: Fri, 14 Aug 2026 15:10:15 -0700 Subject: Update for Zola 0.23.3 --- templates/components/audio.html | 30 +++ templates/components/components.html | 504 +++++++++++++++++++++++++++++++++++ templates/components/gif.html | 30 +++ templates/components/image.html | 64 +++++ templates/components/img.html | 52 ++++ templates/components/imgswap.html | 103 +++++++ templates/components/katex.html | 3 + templates/components/showdata.html | 9 + templates/components/streamable.html | 5 + templates/components/video.html | 30 +++ templates/components/vimeo.html | 5 + templates/components/youtube.html | 5 + 12 files changed, 840 insertions(+) create mode 100644 templates/components/audio.html create mode 100644 templates/components/components.html create mode 100644 templates/components/gif.html create mode 100644 templates/components/image.html create mode 100644 templates/components/img.html create mode 100644 templates/components/imgswap.html create mode 100644 templates/components/katex.html create mode 100644 templates/components/showdata.html create mode 100644 templates/components/streamable.html create mode 100644 templates/components/video.html create mode 100644 templates/components/vimeo.html create mode 100644 templates/components/youtube.html (limited to 'templates/components') diff --git a/templates/components/audio.html b/templates/components/audio.html new file mode 100644 index 0000000..f31488d --- /dev/null +++ b/templates/components/audio.html @@ -0,0 +1,30 @@ +{% component audio(page, config, sources, caption="", class="", autoplay=false, loop=false, muted=false, playsinline=false) %} +{%- if caption %}
{% endif %} + +{%- if caption %}
{{caption}}
{% endif %} + +{% endcomponent audio %} diff --git a/templates/components/components.html b/templates/components/components.html new file mode 100644 index 0000000..7ce9ef3 --- /dev/null +++ b/templates/components/components.html @@ -0,0 +1,504 @@ +{# Former macro components #} + +{% component translate(key: string, i18n, default="") %} +{{- i18n[key] | default(value=default) | safe -}} +{% endcomponent translate %} + +{%- component page_listing(page, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %} +
+ {{ page.title | markdown(inline=true) | safe }} +
+{%- endcomponent page_listing %} + +{%- component series_link(inner, page, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %} + {%- if inner.content == page.content %} + {{ inner.title }}
+ {%- else %} + {{ inner.title }}
+ {%- endif %} +{%- endcomponent series_link %} + +{%- component title_post(page, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) %} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %} +

{{ page.title | markdown(inline=true) | safe }}

+{%- endcomponent title_post %} + +{%- component meta_post(page, config) -%} +{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#} +{%- set i18n = load_data(path="i18n/" ~ page.lang ~ '.toml', required=false) -%} +{%- if not i18n -%}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ page.lang ~ ".toml", required=false) -%}{%- endif -%} + +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true -%}{%- endif %}{%- endif %} + + + {#- Author #} + {%- if page.taxonomies.authors and config.taxonomies %} + {%- for author in page.taxonomies.authors %} + {%- if author_flag %}, {% endif %} + {{ author }} + {%- set_global author_flag = true %} + {%- endfor %} + {%- elif page.extra.authors and config.extra.meta_post?.author %} + {%- if config.extra.icon_author %} {% endif %} + {%- for author in page.extra.authors %} + {%- if author_flag %}, {% endif %} {{ author }} + {%- set_global author_flag = true %} + {%- endfor %} + {%- elif config.extra.author and config.extra.meta_post?.author %} + {%- if config.extra.icon_author %} {% endif %} {{ config.extra.author }} + {%- endif %} + + {#- divider #} + {%- if config.extra.meta_post?.author %} + {%- if config.extra.meta_post?.readtime or config.extra.meta_post?.date or config.extra.meta_post?.updated or config.extra.meta_post?.categories_tags %} + {%- if config.extra.meta_post?.divider %}{{ config.extra.meta_post?.divider | safe }}{%- else %} {%- endif %} + {%- endif %} + {%- endif %} + + {#- ReadTime #} + {%- if config.extra.meta_post?.readtime %} {%- if config.extra.icon_read %} {% endif %} {{ page.reading_time }} {{ config.extra.meta_post?.readstring | default(value="min") }} + {#- divider #} + {%- if config.extra.meta_post?.date or config.extra.meta_post?.updated or config.extra.meta_post?.categories_tags %} + {%- if config.extra.meta_post?.divider %}{{ config.extra.meta_post?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{%- endif %} + + {#- Date #} + {%- if config.extra.meta_post?.date %} {%- if config.extra.icon_date %} {% endif %} + {%- set lang_locale %}{{}}{% endset %} + {%- set page_date = page.date | date(format="%B %d, %Y", locale=lang_locale) %} + {%- if page_date %} {{ page_date }} {%- else %} {{ page.date | date(format="%B %d, %Y") }} {%- endif %} + {#- divider #} + {%- if config.extra.meta_post?.updated or config.extra.meta_post?.categories_tags %} + {%- if config.extra.meta_post?.divider %}{{ config.extra.meta_post?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{% endif %} + + {#- Updated #} + {%- if config.extra.meta_post?.updated and page.updated %} {%- if config.extra.icon_date %} {% endif %} + {{}}: + {%- set lang_locale %}{{}}{% endset %} + {%- set page_updated = page.updated | date(format="%B %d, %Y", locale=lang_locale) %} + {%- if page_updated %} {{ page_updated }} {%- else %} {{ page.updated | date(format="%B %d, %Y") }} {%- endif %} + {#- divider #} + {%- if config.extra.meta_post?.categories_tags %} + {%- if config.extra.meta_post?.divider %}{{ config.extra.meta_post?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{% endif %} + + {#- Categories #} + {%- if page.taxonomies.categories %} {%- if config.extra.icon_info %} {% endif %} [{% for cat in page.taxonomies.categories %}{{ cat }}{%- if not loop.last %}, {% endif %}{% endfor %}]{% endif %} + + {#- Tags #} + {%- if page.taxonomies.tags %} {%- for tag in page.taxonomies.tags %} #{{ tag }} {% endfor %}{%- endif %} +{%- endcomponent meta_post %} + +{%- component title_index(page, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library -%}{%- if config.extra.search_library == "offline" -%}{%- set uglyurls = true -%}{%- endif -%}{%- endif -%} + {% if config.extra.title_size_index %}{% endif %}{{ page.title | markdown(inline=true) | safe }}{% if config.extra.title_size_index %}{% endif %} +{%- endcomponent title_index -%} + +{%- component meta_index(page, config) %} +{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#} +{%- set i18n = load_data(path="i18n/" ~ page.lang ~ '.toml', required=false) -%} +{%- if not i18n %}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ page.lang ~ ".toml", required=false) %}{%- endif %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true -%}{%- endif -%}{%- endif -%} + + + {#- Author #} + {%- if page.taxonomies.authors and config.taxonomies %} + {%- for author in page.taxonomies.authors %} + {%- if author_flag %}, {% endif %} + {{ author }} + {%- set_global author_flag = true %} + {%- endfor %} + {%- elif page.extra.authors and config.extra.meta_index?.author %} + {%- if config.extra.icon_author %} {% endif %} + {%- for author in page.extra.authors %} + {%- if author_flag %}, {% endif %} {{ author }} + {%- set_global author_flag = true %} + {%- endfor %} + {%- elif config.extra.author and config.extra.meta_index?.author %} + {%- if config.extra.icon_author %} {% endif %} {{ config.extra.author }} + {%- endif %} + + {#- divider #} + {%- if config.extra.meta_index?.author %} + {%- if config.extra.meta_index?.readtime or config.extra.meta_index?.date or config.extra.meta_index?.updated or config.extra.meta_index?.categories_tags %} + {%- if config.extra.meta_index?.divider %}{{ config.extra.meta_index?.divider | safe }}{%- else %} {%- endif %} + {%- endif %} + {%- endif %} + + {#- ReadTime #} + {%- if config.extra.meta_index?.readtime %} {%- if config.extra.icon_read %} {% endif %} {{ page.reading_time }} {{ config.extra.meta_index?.readstring | default(value="min") }} + {#- divider #} + {%- if config.extra.meta_index?.date or config.extra.meta_index?.updated or config.extra.meta_index?.categories_tags %} + {%- if config.extra.meta_index?.divider %}{{ config.extra.meta_index?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{%- endif %} + + {#- Date #} + {%- if config.extra.meta_index?.date %} {%- if config.extra.icon_date %} {% endif %} + {%- set lang_locale %}{{}}{% endset %} + {%- set page_date = page.date | date(format="%B %d, %Y", locale=lang_locale) %} + {%- if page_date %} {{ page_date }} {%- else %} {{ page.date | date(format="%B %d, %Y") }} {%- endif %} + {#- divider #} + {%- if config.extra.meta_index?.updated or config.extra.meta_index?.categories_tags %} + {%- if config.extra.meta_index?.divider %}{{ config.extra.meta_index?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{% endif %} + + {#- Updated #} + {%- if config.extra.meta_index?.updated and page.updated %} {%- if config.extra.icon_date %} {% endif %} + {{}}: + {%- set lang_locale %}{{}}{% endset %} + {%- set page_updated = page.updated | date(format="%B %d, %Y", locale=lang_locale) %} + {%- if page_updated %} {{ page_updated }} {%- else %} {{ page.updated | date(format="%B %d, %Y") }} {%- endif %} + {#- divider #} + {%- if config.extra.meta_index?.categories_tags %} + {%- if config.extra.meta_index?.divider %}{{ config.extra.meta_index?.divider | safe }}{%- else %} {%- endif %}{%- endif %}{% endif %} + + {#- Categories #} + {%- if page.taxonomies.categories %} {%- if config.extra.icon_info %} {% endif %} [{% for cat in page.taxonomies.categories %}{{ cat }}{%- if not loop.last %}, {% endif %}{% endfor %}]{% endif %} + + {#- Tags #} + {%- if page.taxonomies.tags %} {%- for tag in page.taxonomies.tags %} #{{ tag }} {% endfor %}{%- endif %} +{%- endcomponent meta_index -%} + +{%- component footer(page, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) -%} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{%- set uglyurls = true %}{%- endif %}{%- endif %} + {#- prev/next content page nextprev title pagination -#} + {%- if not config.extra.hide_page_nextprev_titles | default(value=false) %} + {%- if page.lower or page.higher %} + + {%- endif %} + {%- endif %} +{%- endcomponent footer %} + +{% component pagination(paginator, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) %} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{% set uglyurls = true %}{% endif %}{% endif %} + {%- if paginator.number_pagers > 1 %} + {%- if paginator.number_pagers <= 5 %} {# 5 or less pager is simple, just display all 5 #} + {%- set start = 1 %} + {%- set end = paginator.number_pagers %} + {%- endif %} + + {%- if paginator.number_pagers > 5 %} + + {%- if paginator.current_index >= 3 %} {# Check if the first number will be 1 or not #} + {%- set start = paginator.current_index - 2 %} {# Set the start number #} + {%- if paginator.number_pagers - paginator.current_index < 2 %} {# the last two pages your no longer centered with equal pages start and end #} + {%- set difference = paginator.number_pagers - paginator.current_index %} + {%- set compensation = 1 - difference %} + {%- set start = paginator.current_index - 3 - compensation %} {# however many pages are missing on the end, add offset to start #} + {%- endif %} + {%- else %} + {%- set start = 1 %} + {%- endif %} + + {%- if paginator.number_pagers >= paginator.current_index + 2 %} {# Check if the last page is beyond our range #} + {%- set end = paginator.current_index + 2 %} {# End is beyond our range so we can safely set it to our range #} + {%- if paginator.current_index <= 3 %} {# check offset start, if on page 1 or 2 then set the end to page 5 #} + {%- set end = 5 %} + {%- endif %} + {%- else %} + {%- set end = paginator.number_pagers %} + {%- endif %} + {%- endif %} + + {%- endif %} +{% endcomponent pagination %} + +{% component numpagination(paginator, config) %} +{%- set uglyurls = config.extra.uglyurls | default(value=false) %} +{%- if config.extra.search_library %}{%- if config.extra.search_library == "offline" %}{% set uglyurls = true %}{% endif %}{% endif %} + {%- if paginator.number_pagers > 1 %} + {%- if paginator.number_pagers <= 5 %} {# 5 or less pager is simple, just display all 5 #} + {%- set start = 1 %} + {%- set end = paginator.number_pagers %} + {%- endif %} + + {%- if paginator.number_pagers > 5 %} + + {%- if paginator.current_index >= 3 %} {# Check if the first number will be 1 or not #} + {%- set start = paginator.current_index - 2 %} {# Set the start number #} + {%- if paginator.number_pagers - paginator.current_index < 2 %} {# the last two pages your no longer centered with equal pages start and end #} + {%- set difference = paginator.number_pagers - paginator.current_index %} + {%- set compensation = 1 - difference %} + {%- set start = paginator.current_index - 3 - compensation %} {# however many pages are missing on the end, add offset to start #} + {%- endif %} + {%- else %} + {%- set start = 1 %} + {%- endif %} + + {%- if paginator.number_pagers >= paginator.current_index + 2 %} {# Check if the last page is beyond our range #} + {%- set end = paginator.current_index + 2 %} {# End is beyond our range so we can safely set it to our range #} + {%- if paginator.current_index <= 3 %} {# check offset start, if on page 1 or 2 then set the end to page 5 #} + {%- set end = 5 %} + {%- endif %} + {%- else %} + {%- set end = paginator.number_pagers %} + {%- endif %} + {%- endif %} + + {%- endif %} +{% endcomponent numpagination %} + +{% component seo( config, title="", title_addition="", description="", type="website", is_home=false, is_404=false, is_page=false, page_images="", page_section="", created_time="2023-05-15T07:07:00-07:00", updated_time="2023-05-15T07:07:00-07:00", page="" ) -%} +{#- Load current language i18n data from .toml files in user's '/i18n' folder, use theme as fallback. -#} +{%- set _lang = page.lang if page else config.default_language -%} +{%- set i18n = load_data(path="i18n/" ~ _lang ~ '.toml', required=false) -%} +{%- if not i18n -%}{%- set i18n = load_data(path="themes/abridge/i18n/" ~ _lang ~ ".toml", required=false) -%}{%- endif -%} +{%- set lang_locale %}{{}}{% endset -%} +{%- if is_404 %} + +{%- else %} + + + +{%- endif %} + +{%- if current_url %} + {%- set page_url = current_url %} +{%- else %} + {%- set page_url = get_url(path="404.html", trailing_slash=true) %} +{%- endif %} + {{ title ~ title_addition }} + +{%- if config.extra?.author %} + +{%- endif %} +{%- if config.extra?.facebook_publisher %} + +{%- endif %} + +{%- if config.extra?.facebook_author %} + +{%- endif %} +{%- if page?.description %} + +{%- else %} + +{%- endif %} + +{%- if page?.extra?.keywords and config.extra?.keywords %} + +{%- elif page?.extra?.keywords %} + +{%- elif config.extra?.keywords %} + +{%- endif %} + +{#- Extra SEO START #} +{%- if config.extra?.seo | default(value=true) %} +{%- if not is_404 %} + +{%- if config.extra?.google %} + +{%- endif %} + +{%- if config.extra?.bing %} + +{%- endif %} + + + +{%- if page?.description %} + + +{%- else %} + + +{%- endif %} + +{%- if page?.title %} + + +{%- else %} + + +{%- endif %} + + +{#- SEO MEDIA START #} +{%- if page?.extra?.thumbnail %} + + + + +{%- elif page?.extra?.static_thumbnail %} + + {%- if page?.extra?.static_thumbnail is matching(pat="^http[s]?://") %} + + + {%- else %} + + + {%- endif %} + +{%- elif config.extra?.banner %} + + + + +{%- else %} + + +{%- endif %} + +{%- if config.extra?.open?.audio %} + +{%- endif %} + +{%- if config.extra?.open?.locale %} + +{%- endif %} + +{%- if config.extra?.open?.videos %} + {%- for video in config.extra?.open?.videos %} + + {%- endfor %} +{%- endif %} + +{#- SEO MEDIA END #} + + + +{%- if page?.updated %} + +{%- elif page?.date %} + +{%- else %} + +{%- endif %} + +{%- if config.extra?.twitter_meta %} + + +{%- endif -%} +{%- endif -%} +{%- endif -%} +{#- Extra SEO END -#} +{% endcomponent seo %} + diff --git a/templates/components/gif.html b/templates/components/gif.html new file mode 100644 index 0000000..cf4d264 --- /dev/null +++ b/templates/components/gif.html @@ -0,0 +1,30 @@ +{% component gif(page, config, sources, caption="", class="", w=0, h=0) %} +{%- if caption %}
{% endif %} + +{%- if caption %}
{{caption}}
{% endif %} + +{% endcomponent gif %} diff --git a/templates/components/image.html b/templates/components/image.html new file mode 100644 index 0000000..c8230e1 --- /dev/null +++ b/templates/components/image.html @@ -0,0 +1,64 @@ +{% component image(page, config, sources, caption="", class="", alt="", w=0, h=0) %} +{%- if caption %}
{% endif %} + + {%- for src in sources %} + + {%- set video = src | split(pat="/") | last %} + {%- set dirtest = src | trim_start(pat="./") %} + {%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %} + {%- if page and page.path %}{%- set pagepath = page.path %}{%- elif section and section.path %}{%- set pagepath = section.path %}{%- endif %} + + {%- if src is starting_with(pat="./") and reldir %}{# Relative Path #} + {%- set path = (src | trim_start(pat="./") | split(pat="/"))[:-1] | join(sep="/") | trim_start(pat="/") -%} + {%- set path = path ~ "/" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ path ~ video) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ path ~ video %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- elif src is starting_with(pat="/") %}{# Root Path #} + {%- set rootpath = (src | split(pat="/"))[:-1] | join(sep="/") -%} + {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %} + {%- if not w or not h %} + {%- set metapath = rootpath ~ "/" ~ video %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- else %}{# Same Directory Path #} + {%- set path = "" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ video) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ video %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- endif %} + + {%- set type = src | split(pat=".") | last %} + {%- if type is matching(pat="^mov$") %}{%- set type = "quicktime" %}{% endif %} + {%- if loop.last %} + {%- if not alt %} + {%- set alt = video | split(pat=".") | first %} + {%- endif %} + {{ alt }} + {%- else %} + + {%- endif %} + {%- endfor %} + +{%- if caption %}
{{caption}}
{% endif %} + +{% endcomponent image %} diff --git a/templates/components/img.html b/templates/components/img.html new file mode 100644 index 0000000..6aa5b2e --- /dev/null +++ b/templates/components/img.html @@ -0,0 +1,52 @@ +{% component img(page, config, src, caption="", class="", alt="", w=0, h=0, link="") %} +{%- set img = src | split(pat="/") | last %} +{%- set dirtest = src | trim_start(pat="./") %} +{%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %} +{%- if page and page.path %}{%- set pagepath = page.path %}{%- elif section and section.path %}{%- set pagepath = section.path %}{%- endif %} + +{%- if src is starting_with(pat="./") and reldir %} {# Relative Path #} + {%- set path = (src | trim_start(pat="./") | split(pat="/"))[:-1] | join(sep="/") | trim_start(pat="/") -%} + {%- set path = path ~ "/" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ path ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ path ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + +{%- elif src is starting_with(pat="/") %} {# Root Path #} + {%- set rootpath = (src | split(pat="/"))[:-1] | join(sep="/") -%} + {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %} + {%- if not w or not h %} + {%- set metapath = rootpath ~ "/" ~ img %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + +{%- else %} {# Same Directory Path #} + {%- set path = "" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} +{%- endif %} + +{%- if not alt %} + {%- set alt = img | split(pat=".") | first %} +{%- endif %} +{%- if caption %}
{% endif %} +{%- if link %}{% endif %}{% if link %}{% endif %} +{%- if caption %}
{{ caption | safe }}
{%- endif %} + +{% endcomponent img %} diff --git a/templates/components/imgswap.html b/templates/components/imgswap.html new file mode 100644 index 0000000..b260615 --- /dev/null +++ b/templates/components/imgswap.html @@ -0,0 +1,103 @@ +{% component imgswap(page, config, main_src, swap_src, caption="", class="", alt="", w=0, h=0) %} +
+ {%- set img = main_src | split(pat="/") | last %} + {%- set dirtest = main_src | trim_start(pat="./") %} + {%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %} + {%- if page and page.path %}{%- set pagepath = page.path %}{%- elif section and section.path %}{%- set pagepath = section.path %}{%- endif %} + + {%- if main_src is starting_with(pat="./") and reldir %} {# Relative Path #} + {%- set path = (main_src | trim_start(pat="./") | split(pat="/"))[:-1] | join(sep="/") | trim_start(pat="/") -%} + {%- set path = path ~ "/" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ path ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ path ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- elif main_src is starting_with(pat="/") %} {# Root Path #} + {%- set rootpath = (main_src | split(pat="/"))[:-1] | join(sep="/") -%} + {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %} + {%- if not w or not h %} + {%- set metapath = rootpath ~ "/" ~ img %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- else %} {# Same Directory Path #} + {%- set path = "" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + {%- endif %} + + {%- if not alt %} + {%- set alt = img | split(pat=".") | first %} + {%- endif %} + {%- if caption %}
{% endif %} + {%- if link %}{% endif %}{% if link %}{% endif %} + {%- if caption %}
{{caption}}
{%- endif %} + + {%- set img = swap_src | split(pat="/") | last %} + {%- set dirtest = swap_src | trim_start(pat="./") %} + {%- if dirtest is containing(pat="/") %} {%- set reldir = true %} {%- endif %} + + {%- if swap_src is starting_with(pat="./") and reldir %} {# Relative Path #} + {%- set path = (swap_src | trim_start(pat="./") | split(pat="/"))[:-1] | join(sep="/") | trim_start(pat="/") -%} + {%- set path = path ~ "/" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ path ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ path ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- elif swap_src is starting_with(pat="/") %} {# Root Path #} + {%- set rootpath = (swap_src | split(pat="/"))[:-1] | join(sep="/") -%} + {%- set path = (config.base_url if config else "") ~ rootpath ~ "/" %} + {%- if not w or not h %} + {%- set metapath = rootpath ~ "/" ~ img %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + + {%- else %} {# Same Directory Path #} + {%- set path = "" %} + {%- if not w or not h %} + {%- if page.lang != config.default_language %} + {%- set metapath = (pagepath ~ img) | replace(from="/" ~ page.lang ~ "/", to="/") %} + {%- else %} + {%- set metapath = pagepath ~ img %} + {%- endif %} + {%- set meta = get_image_metadata(path=metapath) %} + {%- set w = meta.width %} + {%- set h = meta.height %} + {%- endif %} + {%- endif %} + + {%- if not alt %} + {%- set alt = img | split(pat=".") | first %} + {%- endif %} + {%- if caption %}
{% endif %} + {%- if link %}{% endif %}{% if link %}{% endif %} + {%- if caption %}
{{caption}}
{%- endif %} +
+ +{% endcomponent imgswap %} diff --git a/templates/components/katex.html b/templates/components/katex.html new file mode 100644 index 0000000..71e27dd --- /dev/null +++ b/templates/components/katex.html @@ -0,0 +1,3 @@ +{% component katex(block=false) %} + +{% endcomponent katex %} diff --git a/templates/components/showdata.html b/templates/components/showdata.html new file mode 100644 index 0000000..2aba3b1 --- /dev/null +++ b/templates/components/showdata.html @@ -0,0 +1,9 @@ +{%- component showdata(page, config, src, type="", key="") -%} +{%- if src and key and type -%} +{%- if src is matching(pat="^http[s]?://") -%}{%- set data = load_data(url=src, format=type) -%}{%- else -%}{%- set data = load_data(path=src, format=type) -%}{%- endif -%} +{{- data[key] }} +{%- else -%} +{%- if src is matching(pat="^http[s]?://") -%}{%- set data = load_data(url=src) -%}{%- else -%}{%- set data = load_data(path=src) -%}{%- endif -%} +{{- data }} +{%- endif -%} +{%- endcomponent showdata -%} diff --git a/templates/components/streamable.html b/templates/components/streamable.html new file mode 100644 index 0000000..94dfc45 --- /dev/null +++ b/templates/components/streamable.html @@ -0,0 +1,5 @@ +{% component streamable(id, class="", title="") %} +
+ +
+{% endcomponent streamable %} diff --git a/templates/components/video.html b/templates/components/video.html new file mode 100644 index 0000000..ee8130d --- /dev/null +++ b/templates/components/video.html @@ -0,0 +1,30 @@ +{% component video(page, config, sources, caption="", class="", w=0, h=0, autoplay=false, loop=false, muted=false, playsinline=false) %} +{%- if caption %}
{% endif %} + +{%- if caption %}
{{caption}}
{% endif %} + +{% endcomponent video %} diff --git a/templates/components/vimeo.html b/templates/components/vimeo.html new file mode 100644 index 0000000..d5a9e70 --- /dev/null +++ b/templates/components/vimeo.html @@ -0,0 +1,5 @@ +{% component vimeo(id, class="", title="", autoplay=false, loop=false, noautopause=false, cookie=true) %} +
+ +
+{% endcomponent vimeo %} diff --git a/templates/components/youtube.html b/templates/components/youtube.html new file mode 100644 index 0000000..1022825 --- /dev/null +++ b/templates/components/youtube.html @@ -0,0 +1,5 @@ +{% component youtube(id, class="", title="", playlist="", autoplay=false, cookie=false) %} +
+ +
+{% endcomponent youtube %} -- cgit v1.3.1