According to the Commonmark playground and the Commonmark spec, the string
should be parsed into
[Start(Paragraph)Code(" ")End(Paragraph)]since newline is normalized as a space.
However, when parsing the string with pulldown-cmark 0.9.3, I get
[Start(Paragraph)Code("")End(Paragraph)]instead. I used this little test program:
use pulldown_cmark::{Event,Parser};fnmain(){let text = "`\n`";eprintln!("{text:?} -> [");for event inParser::new(&text){match event {Event::Code(code) => eprintln!(" Code({:?})",&*code),
_ => eprintln!(" {event:?}"),}}eprintln!("]");}Note that "`foo\n`" and "`\nfoo`" are parsed correctly with a trailing and leading space, respectively.
I found this while trying round-trip strings through pulldown-cmark-to-cmark (Byron/pulldown-cmark-to-cmark#55).
According to the Commonmark playground and the Commonmark spec, the string
"`\n`"should be parsed into
since newline is normalized as a space.
However, when parsing the string with pulldown-cmark 0.9.3, I get
instead. I used this little test program:
Note that
"`foo\n`"and"`\nfoo`"are parsed correctly with a trailing and leading space, respectively.I found this while trying round-trip strings through pulldown-cmark-to-cmark (Byron/pulldown-cmark-to-cmark#55).