diff --git a/nikola/data/themes/base-jinja/templates/feeds_translations_helper.tmpl b/nikola/data/themes/base-jinja/templates/feeds_translations_helper.tmpl index 681726d3e0..edd93dfdee 100644 --- a/nikola/data/themes/base-jinja/templates/feeds_translations_helper.tmpl +++ b/nikola/data/themes/base-jinja/templates/feeds_translations_helper.tmpl @@ -1,20 +1,35 @@ {# -*- coding: utf-8 -*- #} -{% macro _append_language(language) %}{{ " (" + language + ")" if translations|length > 1 else "" }}{% endmacro %} -{% macro _append_name(name, kind) %}{{ (" (" + name + ")" if name and kind != "archive" and kind != "author" else "") | h }}{% endmacro %} -{% macro _append_name_language_proper(language, kind, name) %}{{ (" (" + name + ", " + language + ")" if name and kind != "archive" and kind != "author" else " (" + language + ")") | h }}{% endmacro %} -{% macro _append_name_language(language, kind, name=None) %}{{ _append_name_language_proper(language, kind, name) if translations|length > 1 else _append_name(name, kind) }}{% endmacro %} - {% macro _head_feed_link(link_type, link_name, link_postfix, classification, kind, language) %} - + {% if translations|length > 1 %} + + {% else %} + + {% endif %} {% endmacro %} {% macro _html_feed_link(link_type, link_name, link_postfix, classification, kind, language, name=None) %} - {{ messages(link_name, language) }} {{ _append_name_language(language, kind, name) }} + {% if translations|length > 1 %} + {% if name and kind != "archive" and kind != "author" %} + {{ messages(link_name, language) }} ({{ name|e }}, {{ language }}) + {% else %} + {{ messages(link_name, language) }} ({{ language }}) + {% endif %} + {% else %} + {% if name and kind != "archive" and kind != "author" %} + {{ messages(link_name, language) }} ({{ name|e }}) + {% else %} + {{ messages(link_name, language) }} + {% endif %} + {% endif %} {% endmacro %} {% macro _html_translation_link(classification, kind, language, name=None) %} - {{ messages("LANGUAGE", language) }}{{ _append_name(name, kind) }} + {% if name and kind != "archive" and kind != "author" %} + {{ messages("LANGUAGE", language) }} ({{ name|e }}) + {% else %} + {{ messages("LANGUAGE", language) }} + {% endif %} {% endmacro %} {% macro _head_rss(classification=None, kind='index', rss_override=True) %} @@ -28,7 +43,7 @@ {% endfor %} {% else %} {% for language in translations|sort %} - {% if classification and kind != 'index' %} + {% if (classification or classification == '') and kind != 'index' %} {{ _head_feed_link('application/rss+xml', 'RSS for ' + kind + ' ' + classification, 'rss', classification, kind, language) }} {% else %} {{ _head_feed_link('application/rss+xml', 'RSS', 'rss', classification, 'index', language) }} @@ -46,7 +61,7 @@ {% endfor %} {% else %} {% for language in translations|sort %} - {% if classification and kind != 'index' %} + {% if (classification or classification == '') and kind != 'index' %} {{ _head_feed_link('application/atom+xml', 'Atom for ' + kind + ' ' + classification, 'atom', classification, kind, language) }} {% else %} {{ _head_feed_link('application/atom+xml', 'Atom', 'atom', classification, 'index', language) }}