Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update markdown.kpeg #559

Merged
merged 14 commits into from
Nov 15, 2017
Merged

Update markdown.kpeg #559

merged 14 commits into from
Nov 15, 2017

Conversation

aycabta
Copy link
Member

@aycabta aycabta commented Nov 14, 2017

Disallow blank space between [label] and ( in inline link.

The official markdown syntax description says that a blank
space is allowed between ] and [ in a reference style link,
but it does not say this for an inline link; instead, it says
that the ( must be immediately after the ].  This interpretation
is confirmed by the behavior of Markdown.pl.

This change brings peg-markdown into agreement with Markdown.pl,
PHP markdown, and pandoc.  Note that some markdown implementations
(discount, sundown) do allow the space.  Though something can be
said in favor of allowing the space, it seems best to go with
the spec to resolve such disagreements.

In addition, with short reference style links, it is easy to
do something like

    [my link] (word)

    [my link]: /url

which we wouldn't want to parse as an inline link.
New extension: strike through with two tildes
disable strike-through extension by default
Improved strong/emph parsers to avoid exponential blowup.
Require only one character for setext header lines.

This is explicit in Gruber's syntax description.
Removed unused parser.
Fixed Endline to allow 1 and 2-character setext header lines.
Rewrote Emph/Strong parsers to avoid exponential blowup.
Removed unused disjunct in SourceContents.
Efficiency improvement (!Whitespace instead of &Nonspacechar).
Rewrote Strike parser to avoid exponential blowup.
Treat <head> as block-level HTML tag.
Sp? is redundant…

The definition of Sp is:

    Sp = Spacechar*

so the matching of chars is already optional.
@hsbt hsbt merged commit 9004e90 into ruby:master Nov 15, 2017
@aycabta aycabta deleted the update-markdown.kpeg branch November 15, 2017 17:42
aycabta added a commit to aycabta/rdoc that referenced this pull request Apr 2, 2018
The first comment of markdown.kpeg has the last update to a commit of
the original repository. This was must be updated by ruby#559, but I forgot
it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants