Jekyll模板/剪贴画/快捷方式
我已经和Jekyll玩了几天了,我有一个工作网站,但在很多页面上,我想使用模板/snippits/shortcuts,以便于重复使用常用类型的内容 在MediaWiki中,我会这么做Jekyll模板/剪贴画/快捷方式,jekyll,liquid,jekyll-extensions,Jekyll,Liquid,Jekyll Extensions,我已经和Jekyll玩了几天了,我有一个工作网站,但在很多页面上,我想使用模板/snippits/shortcuts,以便于重复使用常用类型的内容 在MediaWiki中,我会这么做 This is a test {{ iconSmileFace }} 其中,{{iconSmileFace}}显然翻译成类似于 我已经看到Jekyll有include,所以我可以做{{%include iconSmileFace.html%},但是这个语法看起来有点冗长,可能不是Jekyll的做事方式。还有其他更
This is a test {{ iconSmileFace }}
其中,{{iconSmileFace}}
显然翻译成类似于
我已经看到Jekyll有include,所以我可以做
{{%include iconSmileFace.html%}
,但是这个语法看起来有点冗长,可能不是Jekyll的做事方式。还有其他更好的方法吗?一个好主意是定义一个
创建\u plugins
目录和名为smile.rb
的文件,其中包含以下内容:
module Jekyll
class RenderSmileTag < Liquid::Tag
def render(context)
'<img src = "resources/images/smile.png" />'
end
end
end
Liquid::Template.register_tag('smile', Jekyll::RenderSmileTag)
模块杰基尔
类RenderSmileTag
然后每次你想要渲染图像时,只要使用:
{%smile%}
,它就会生成
一个好主意是定义一个
创建\u plugins
目录和名为smile.rb
的文件,其中包含以下内容:
module Jekyll
class RenderSmileTag < Liquid::Tag
def render(context)
'<img src = "resources/images/smile.png" />'
end
end
end
Liquid::Template.register_tag('smile', Jekyll::RenderSmileTag)
模块杰基尔
类RenderSmileTag
然后,每次您想要渲染图像时,只需使用:
{%smile%}
,它将生成
如果您想使用快捷方式输出图像标记,则GitHub Pages支持的插件还有另一种方法:
(尽管我自己还没有测试过)
从插件jemoji
,您可以通过指向\u config.yml
中的自定义源来提供自定义表情:
emoji
src: "/resources/images"
然后在降价文档中引用表情符号:
It's a beautiful day! :smile:
如果您的目的是使用快捷方式输出图像标记,那么GitHub Pages支持的插件还有另一种方法: (尽管我自己还没有测试过) 从插件
jemoji
,您可以通过指向\u config.yml
中的自定义源来提供自定义表情:
emoji
src: "/resources/images"
然后在降价文档中引用表情符号:
It's a beautiful day! :smile:
我将创建一个代码段来保存我的所有图标,无论它们是图像、SVG还是字体图标:
{% case include.icon %}
{% when 'smiley-face' %}
Smiley face
{% when 'heart' %}
Heart
{% when 'close' %}
X
{% when 'next' %}
>
{% endcase %}
然后将其包含在您需要的位置
{%include icon.html icon=“smiley face”%}
我将创建一个代码段来保存我的所有图标,无论它们是图像、SVG还是字体图标:
{% case include.icon %}
{% when 'smiley-face' %}
Smiley face
{% when 'heart' %}
Heart
{% when 'close' %}
X
{% when 'next' %}
>
{% endcase %}
然后在需要的地方包含它
{%include icon.html icon=“smiley face”%}
这是一个优雅的解决方案,但不幸的是,我想做的不仅仅是微笑。这是一个优雅的解决方案,但不幸的是,我想做的不仅仅是微笑。我觉得这个解决方案太过分了——必须为每个实例纠正大量的样板ruby代码对我来说是行不通的。我觉得这个解决方案太过分了——必须为每个实例纠正大量样板ruby代码对我来说是行不通的。这是最接近实际的解决方案我使用的解决方案。我使用了{%include iconSmile.htm%}
类似的语法,因为每次输入都比较短。我犯了一个小小的错误,因为上下文是jekyll,它应该是{%case include.icon%}
@xconspirisist我觉得有你的语法很好,不过我并不喜欢每个图标都有一个文件。因为它们会被频繁使用,我认为减少键入量更重要,这就是为什么理想情况下我会喜欢像{{iconSmileFace}}
这样的东西,这就是我选择上述选项的原因。我考虑过\u includes/
中有大量的小文件,但由于该站点是静态编译的,因此对浏览该站点的用户没有性能影响,这就是为什么我认为它是可以接受的。这与我使用的解决方案最接近。我使用了{%include iconSmile.htm%}
类似的语法,因为每次输入都比较短。我犯了一个小小的错误,因为上下文是jekyll,它应该是{%case include.icon%}
@xconspirisist我觉得有你的语法很好,不过我并不喜欢每个图标都有一个文件。因为它们会被频繁使用,我认为减少键入量更重要,这就是为什么理想情况下我会喜欢像{{iconSmileFace}}
这样的东西,这就是我选择上述选项的原因。我考虑过\u includes/
中有大量的小文件,但由于该站点是静态编译的,因此对浏览该站点的用户没有性能影响,这就是为什么我认为它是可以接受的。