diff --git a/theme/templates/macros/link.html b/theme/templates/macros/link.html index 33abbadedbada11f6bc445a0ae9cfd646700208b..41172e60056fd9ca45dabbcd723e6f07df8e1a08 100644 --- a/theme/templates/macros/link.html +++ b/theme/templates/macros/link.html @@ -1,6 +1,19 @@ {%- import 'macros/content_renderer.html' as content_renderer with context -%} {%- import 'macros/getters.html' as get with context -%} +{%- macro render_link_span(content) -%} + {%- set contentsplit = content.split('­')-%} + <span> + {%- for s in contentsplit -%} + {%- if not loop.first -%} + ­ + {%- endif -%} + {{ s|e }} + {%- endfor -%} + </span> +{%- endmacro -%} + + {%- macro render(url, content, lang, attr = None, title = None) -%} {%- call(parsedurl, anchor, reflang, is_external, reftype, refid, refpage, tagcattitle, tagcatcolor) parse_url(url, lang) -%} {%- set ns = namespace(relation=None, fullurl=parsedurl) -%} @@ -16,12 +29,12 @@ <a {{ content_renderer.render_attr(attr, lang, extra_classes=[ns.relation], extra={"href": ns.fullurl, "title": {"value":title, "escape": true}, "target": target}) }}> {%- if content is string or content is none -%} {%- if content is string and content|length -%} - <span>{{ content|e }}</span> + {{ render_link_span(content) }} {%- else -%} {%- if reftype == "tag" -%} - <span>{{ tagcattitle|e }}</span> + {{ render_link_span(tagcattitle) }} {%- elif reftype == "slug" -%} - <span>{{ refpage.title|e }}</span> + {{ render_link_span(refpage.title) }} {%- endif -%} {%- endif -%} {%- else -%}