我想写一本书
panflute
过滤器(从标记到
.docx
)查找所有代码块并将它们包装到自定义
.docx文件
def action(elem, doc):
if type(elem) == pf.CodeBlock:
return pf.Div(elem, attributes={'custom-style': 'Source Code Boxed'})
pf.run_filter(action)
但是,这不起作用-似乎语法高亮显示样式覆盖了我想要的样式
'Source Code Boxed'
风格。我看不出输出有什么不同(与不使用过滤器相比)。我找到了一个解决方法,但它很难看,并且丢失了所有语法突出显示:
def action(elem, doc):
if type(elem) == pf.CodeBlock:
elemStr = pf.stringify(elem)
lines = [pf.LineItem(pf.Str(x)) for x in elemStr.splitlines()]
return pf.Div(pf.LineBlock(*lines),
attributes={ 'custom-style': 'Source Code Boxed'})
pf.run_filter(action)
输出),但所有语法高亮显示都将丢失。
有没有办法达到我想要的结果?
我希望代码被包围在一个盒子里(感谢我的
'源代码装箱'