Split out from #51 (now closed) so it isn't orphaned.
PR #50 registers fancy lists as a parser extension with an off switch — mystParse(content, { extensions: { fancyLists: false } }) — but that option isn't reachable from a project's myst.yml: getMystParserOptions only passes frontmatter and math (packages/myst-cli/src/process/myst.ts), and the settings schema's PARSER_SETTINGS only knows dollarmath (packages/myst-frontmatter/src/settings/validatorsParser.ts).
That matters for the silent-downgrade class of document surfaced in #74: prose that uses literal (a) / (i) as text (not list markers) gets consumed by the fancy-list parser, and the only current escape is escaping every marker (\(a\)). Rendering is fixed as of quantecon-theme v2.2.0, but a project-level opt-out is still the right tool for documents that never want fancy-list parsing.
Proposed: plumb settings.parser.fancyLists: false through, mirroring the existing dollarmath plumbing — add fancyLists to PARSER_SETTINGS / ParserSettings, and have getMystParserOptions forward it into the parser's extensions. Small, self-contained; worth folding into the fancy-lists upstream candidate in quantecon/UPSTREAM-PRS.yml when that PR goes up, since upstream reviewers will reasonably ask for a config off switch on a default-on parser change.
Split out from #51 (now closed) so it isn't orphaned.
PR #50 registers fancy lists as a parser extension with an off switch —
mystParse(content, { extensions: { fancyLists: false } })— but that option isn't reachable from a project'smyst.yml:getMystParserOptionsonly passesfrontmatterandmath(packages/myst-cli/src/process/myst.ts), and the settings schema'sPARSER_SETTINGSonly knowsdollarmath(packages/myst-frontmatter/src/settings/validatorsParser.ts).That matters for the silent-downgrade class of document surfaced in #74: prose that uses literal
(a)/(i)as text (not list markers) gets consumed by the fancy-list parser, and the only current escape is escaping every marker (\(a\)). Rendering is fixed as of quantecon-theme v2.2.0, but a project-level opt-out is still the right tool for documents that never want fancy-list parsing.Proposed: plumb
settings.parser.fancyLists: falsethrough, mirroring the existingdollarmathplumbing — addfancyListstoPARSER_SETTINGS/ParserSettings, and havegetMystParserOptionsforward it into the parser'sextensions. Small, self-contained; worth folding into thefancy-listsupstream candidate inquantecon/UPSTREAM-PRS.ymlwhen that PR goes up, since upstream reviewers will reasonably ask for a config off switch on a default-on parser change.