example = """
* `1 2`
* `3 | 4`
* `5 6`
"""
EarmarkParser.as_ast(example)
#=>
{:ok,
[
{"ul", [],
[
{"li", [], [{"code", [{"class", "inline"}], ["1 2"], %{line: 1}}], %{}},
{"li", [],
[
{"p", [], [{"code", [{"class", "inline"}], ["3 | 4"], %{line: 3}}],
%{}}
], %{}},
{"li", [], [{"code", [{"class", "inline"}], ["5 6"], %{line: 3}}], %{}}
], %{}}
], []}
I noticed this while browsing the docs for Erlang's new json module here; some list items were wrapped in a <p>, while others weren't. I was able to shrink the test case down enough to find that the | was the culprit.