Pandoc 过滤器中 RawBlock
函数的正确用法是什么?
#!/usr/bin/env python
from pandocfilters import toJSONFilter, Str, Para, Emph, Header, RawBlock
import re
def replace(key, value, format, meta):
if key == 'Str':
if value.startswith('Hello'):
#return Str("Hi") # this works
return RawBlock("opendocument", "Hi") # this doesn't
if __name__ == '__main__':
toJSONFilter(replace)
您正在尝试将内联值 ( Str
( 替换为块值 ( RawBlock
(。 只能用相同类型的元素替换元素。使用 RawInline
而不是 RawBlock
。