Skip to content

Delimiter runs with punctuation on both sides are rejected #113

@Gabriella439

Description

@Gabriella439

The minimal reproduction is that the string *.*. fails to parse:

ghci> MMark.parse "" "*.*."
Left (ParseErrorBundle {bundleErrors = FancyError 2 (fromList [ErrorCustom (NonFlankingDelimiterRun ('*' :| ""))]) :| [], bundlePosState = PosState {pstateInput = "*.*.", pstateOffset = 0, pstateSourcePos = SourcePos {sourceName = "", sourceLine = Pos 1, sourceColumn = Pos 1}, pstateTabWidth = Pos 4, pstateLinePrefix = ""}})

A non-minimal reproduction that conveys the actual problem I'm grappling with is that the following markdown fails to parse:

1. **API (Application Programming Interface)**: A set of protocols and tools for building and interacting with software applications.
2. **CI/CD (Continuous Integration/Continuous Deployment)**: Practices that enable developers to frequently integrate code into a shared repository and deploy updates swiftly and safely.
3. **OAuth (Open Authorization)**: An open standard for token-based authentication and authorization on the internet.
4. **UX (User Experience)**: The overall experience a person has when interacting with a product, particularly in terms of how easy and enjoyable it is to use.

The problem is that for each bolded "heading" the end of the heading is )**: which is a delimiter run with punctuation on both sides, which the mmark package rejects.

I wasn't sure if this rejection was intentional (because I know this package tries to reject some things intentionally to avoid common errors) so I wasn't sure whether to report this as a bug I wanted to ask about it just in case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions