# SPDX-License-Identifier: MIT# Copyright 2019 Tan Nhu, Maarten Brakkee## Permission is hereby granted, free of charge, to any person obtaining# a copy of this software and associated documentation files (the# "Software"), to deal in the Software without restriction, including# without limitation the rights to use, copy, modify, merge, publish,# distribute, sublicense, and/or sell copies of the Software, and to# permit persons to whom the Software is furnished to do so, subject to# the following conditions:## The above copyright notice and this permission notice shall be# included in all copies or substantial portions of the Software.## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.# plugin imported from https://github.com/tnhu/jekyll-include-absolute-pluginmodule Jekyllclass IncludeTagError < StandardErrorattr_accessor :pathdef initialize(msg, path)super(msg)@path = pathendendclass IncludeAbsoluteTag < Liquid::TagVARIABLE_SYNTAX = %r!(?<variable>[^{]*(\{\{\s*[\w\-\.]+\s*(\|.*)?\}\}[^\s{}]*)+)(?<params>.*)!xdef initialize(tag_name, markup, tokens)super@file = markup.stripend# Render the variable if required (@see https://goo.gl/N5sMV3)def render_variable(context)Liquid::Template.parse(@file).render(context) if VARIABLE_SYNTAX.match?(@file)enddef render(context)file = render_variable(context) || @filesource = File.expand_path(context.registers[:site].config['source']).freezepath = File.join(source, file)beginpartial = Liquid::Template.parse(read_file(path, context))context.stack docontext['include'] = parse_params(context) if @paramspartial.render!(context)endrescue => eraise IncludeTagError.new e.message, pathendenddef read_file(file, context)File.read(file, **file_read_opts(context))enddef file_read_opts(context)context.registers[:site].file_read_optsendendendLiquid::Template.register_tag('include_absolute', Jekyll::IncludeAbsoluteTag)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。