dcwatson / bbcode

A pure python bbcode parser and formatter.
BSD 2-Clause "Simplified" License
68 stars 17 forks source link

Cosmetic replacement within list tag even when replace_cosmetic=False #38

Open ifly6 opened 9 months ago

ifly6 commented 9 months ago

This should be an MVE:

>>> import bbcode
>>> p = bbcode.Parser(replace_cosmetic=False)
>>> p.format('[list=1][*](c)[/list]')
'<ol style="list-style-type:decimal;"><li>&copy;</li></ol>'

I think that whatever formatter is doing the substitution for list has replace_cosmetic set forced to true?

ifly6 commented 9 months ago

I think it's set through the constructor of TagOptions, which defaults to replace_cosmetic = True, because that keyword isn't set when the formatters are added to the parser in install_default_formatters