pandoc: `RawBlock` в фильтре - PullRequest
0 голосов
/ 15 июня 2019

Как правильно использовать функцию RawBlock в фильтрах Pandoc?

#!/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)

1 Ответ

2 голосов
/ 17 июня 2019

Вы пытаетесь заменить значение Inline (Str) значением Block (RawBlock). Можно только заменить элементы на элементы одного типа. Используйте RawInline вместо RawBlock.

...