循环使用液态语言中的字母

时间:2018-12-21 04:26:51

标签: jekyll liquid

我正在使用Jekyll创建一个页面,该页面具有内置的Liquid引擎。我对一些基本的循环很熟悉,但是我无法使其正常工作。

{% for letter in (65..90) %}
<a href="#{{ letter }}">{{ letter }}</a>
{% endfor %}

我想要的是输出看起来像

<a href="#A">A</a>
<a href="#B">B</a>
...
<a href="#Z">Z</a>

但是我看到了

<p><a href="#65">65</a></p>

<p><a href="#66">66</a></p>

...

<p><a href="#90">90</a></p>

我需要的是一种在Liquid中将ASCII数字转换为字母的方法,并且我需要输出在循环产生的每件事物周围没有<p>标签。

如何让Liquid输出类似第二个代码块的内容?

1 个答案:

答案 0 :(得分:0)

好的,我在this的帮助下找到了答案。

我真正需要的是

{% assign alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" | split: "" %}
{% for letter in alphabet %}
<a href="#{{ letter }}">{{ letter }}</a>{% endfor %}

我曾尝试将字母表放入for循环声明中,但似乎仅在先前分配了字母表的情况下才起作用。

使用<p>标签的复杂之处在于,因为我在.md文档中进行了此操作,循环最终在每个链接之间放置了换行符,该链接在markdown中被解释为新段落。将endfor与代码放在同一行即可消除这些换行符。