我正在使用手动安装的 jekyll-swfobject 版本。它包含一个这样呈现的 Liquid 标签:
def render(context)
output = super
<<-HTML.gsub /^\s+/, '' # remove whitespaces from heredocs
<div id="#{@config[:content_id]}-wrapper" style="width: #{@config[:width]}; height: #{@config[:height]}">
<div id="#{@config[:content_id]}" style="width: 100%; height:100%">#{render_alternative_content(output)}</div>
</div>
<script type="text/javascript">
// <![CDATA[
#{render_flashvars()}
#{render_params()}
#{render_attributes()}
swfobject.embedSWF(
'#{@swf_url}',
'#{@config[:content_id]}',
'100%',
'100%',
'#{@config[:version]}',
#{render_express_install_url()},
flashvars,
params,
attributes,
#{render_callback_function()}
);
// ]]>
</script>
HTML
end
但是,由于某种原因,输出 javascript 被转义:
<script>
// <![CDATA[
...
swfobject.embedSWF(
'/url.swf',
'flashcontent',
'100%',
'100%',
...
// ]]>
</script>
我假设我需要 Django 的“mark_safe”的 Jekyll/Liquid 变体?但是怎么做?