feat: Initial Markdown support #396
No reviewers
Labels
No labels
Compat/Breaking
Kind
Bad merge
Kind
Bug
Kind
Documentation
Kind
Enhancement
Kind
Feature
Kind
New language
Kind
Security
Kind
Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: mergiraf/mergiraf#396
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "wetneb/mergiraf:markdown"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
There isn't much structured merging I could think of here - the potential lies more in the merging inside code blocks via #5.
Sadly it requires to add a lot of atomic nodes, because otherwise the parser analyzes parts of tree like this:
This means that Mergiraf would ignore the text contents of paragraphs and other parts of prose, because it only sees the punctuation signs added as children underneath.
Given that the parser also gives up on creating nodes for inline links or other formatting marks, we also can't do commutative merging of those, but I guess that's not a big deal.
The atomic nodes I added come from parsing the demo markdown file at https://markdown-it.github.io/ and making sure all textual contents appear as they should. It can well be that I have missed some constructs not used in this demo - one could also go through the grammar definition to make sure everything needed is there.
7e301f699a
toc79e4ee4dc
@ada4a any concerns about this one?
Oh, sorry. I was meaning to look at
grammar.js
, but couldn't find the time.. But maybe we could enhance the grammar later on, and merge this one as is, since it looks fine to me.