Jekyll:是否有添加一些输出 function/templating 的好方法?
Jekyll: is there a good way to add some output function/templating?
我使用 Jekyll 生成一些静态站点,到了需要根据模板和一些参数输出一些信息的地步。最简单的描述方式——输出 font-awesome 标签,写类似 {% fa apple %} 或 @fa-apple 或其他任何东西,而不是 <span class="icon fa fa-apple"></span>
。实现此目标的最佳方法是什么?
- 使用模板:
{% include font-awesome.html icon="fa fa-apple"%}
。并没有短多少。
- 定义您自己的变量。
{% capture fa_apple %}<span class="icon fa fa-apple"></span>{% endcapture %} {{fa_apple }}
。使用时间短,但生成所有捕获很费力。不过,您也许可以将其自动化。
- 使用自定义过滤器为 Jekyll 编写您自己的插件:https://jekyllrb.com/docs/plugins/filters/
- 使用jekyll-octopod, which includes the wanted filter:
{% icon fa-camera-retro %}
. If you don't want to use the whole thing, the filter alone can be found here: https://github.com/jekyll-octopod/jekyll-octopod/blob/master/lib/jekyll/font_awesome.rb
#1 和#2 在无法安装插件的 Github 页面上工作,但它们是具有明显缺点的解决方法。 #3 和#4 只能在可以使用插件的环境中工作,但是是更优雅的解决方案。
就我个人而言,我会选择选项 #4,只使用过滤器。它应该很容易提取。如果您使用 GitHub 页面,在本地构建并推送已构建的页面并不太困难。如果您已经在自己构建网站,那么适应它就更容易了。
顺便说一句,减少样板代码的最好方法可能就是切换到 <i class="far fa-address-card"></i>
。那是 16 个样板字母。 {% icon fa-camera-retro %}
记录 11 个样板字母,甚至 {% fa fa-camera-retro %}
记录 9 个样板字母。
<span class="icon fa fa-apple"></span>
计时 27 个样板字母。更新 bootstrap 并使用 i
而不是 span
可能是减少样板文件的最简单方法。
我使用 Jekyll 生成一些静态站点,到了需要根据模板和一些参数输出一些信息的地步。最简单的描述方式——输出 font-awesome 标签,写类似 {% fa apple %} 或 @fa-apple 或其他任何东西,而不是 <span class="icon fa fa-apple"></span>
。实现此目标的最佳方法是什么?
- 使用模板:
{% include font-awesome.html icon="fa fa-apple"%}
。并没有短多少。 - 定义您自己的变量。
{% capture fa_apple %}<span class="icon fa fa-apple"></span>{% endcapture %} {{fa_apple }}
。使用时间短,但生成所有捕获很费力。不过,您也许可以将其自动化。 - 使用自定义过滤器为 Jekyll 编写您自己的插件:https://jekyllrb.com/docs/plugins/filters/
- 使用jekyll-octopod, which includes the wanted filter:
{% icon fa-camera-retro %}
. If you don't want to use the whole thing, the filter alone can be found here: https://github.com/jekyll-octopod/jekyll-octopod/blob/master/lib/jekyll/font_awesome.rb
#1 和#2 在无法安装插件的 Github 页面上工作,但它们是具有明显缺点的解决方法。 #3 和#4 只能在可以使用插件的环境中工作,但是是更优雅的解决方案。
就我个人而言,我会选择选项 #4,只使用过滤器。它应该很容易提取。如果您使用 GitHub 页面,在本地构建并推送已构建的页面并不太困难。如果您已经在自己构建网站,那么适应它就更容易了。
顺便说一句,减少样板代码的最好方法可能就是切换到 <i class="far fa-address-card"></i>
。那是 16 个样板字母。 {% icon fa-camera-retro %}
记录 11 个样板字母,甚至 {% fa fa-camera-retro %}
记录 9 个样板字母。
<span class="icon fa fa-apple"></span>
计时 27 个样板字母。更新 bootstrap 并使用 i
而不是 span
可能是减少样板文件的最简单方法。