Thanks. https://github.com/jgm/pandoc/issues/7400

On Mon, 21 Jun 2021 at 23:01, John MacFarlane <jgm@berkeley.edu> wrote:

Yes, this definitely used to work.  Maybe due to the change to
HsYAML? I will look into it, but an issue on the tracker will
help ensure it doesn't get forgotten.

BPJ <bpj-J3H7GcXPSITLoDKTGw+V6w@public.gmane.org> writes:

> It used to work.
>
> Den mån 21 juni 2021 15:44William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.org>
> skrev:
>
>> All,
>>
>> I don't know how I missed this before, but I have noticed that this isn't
>> treated as a valid YAML block (at least not with pandoc 2.11.4).
>>
>> *% *cat comment.md
>>
>> ---
>>
>> # comment
>>
>> ...
>>
>> *% *pandoc comment.md
>>
>> <hr />
>>
>> <h1 id="comment">comment</h1>
>>
>> <p>…</p>
>>
>> Inserting some YAML works:
>>
>> *% *cat comment-plus-variable.md
>>
>> ---
>>
>> # comment
>>
>> variable: 42
>>
>> ...
>>
>> *% *pandoc comment-plus-variable.md
>>
>>
>>
>> I realise that this is an abuse, and that I could have used an HTML
>> comment (for example), but I believe that this is valid YAML, so should it
>> have worked?
>>
>> *% *yq eval comment.md
>>
>>
>>
>> # comment
>>
>>
>>
>> *% *yq eval comment-plus-variable.md
>>
>> # comment
>>
>> variable: 42
>>
>> Apologies if this behaviour has changed in the latest pandoc...
>>
>> Thanks,
>> William
>>
>> On Thu, 3 Jun 2021 at 09:10, William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.org>
>> wrote:
>>
>>> Thanks!
>>>
>>> On Thu, 3 Jun 2021 at 05:49, John MacFarlane <jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org> wrote:
>>>
>>>>
>>>> These are good suggestions.  I've revised the manual accordingly.
>>>>
>>>> BPJ <melroch-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:
>>>>
>>>> > Perhaps it should be pointed out that the body of YAML block scalars
>>>> must
>>>> > be indented relative to the line with the `|` or `>`. Not doing so is
>>>> > indeed a YAML syntax error, so Pandoc does the right thing when not
>>>> > considering it valid YAML, however unfortunate it is that Pandoc may
>>>> think
>>>> > it is something else.
>>>> >
>>>> > The overview of YAML syntax on Wikipedia is quite good. Perhaps the
>>>> manual
>>>> > could link to (some specific version of) it.
>>>> >
>>>> > https://en.m.wikipedia.org/wiki/YAML#Syntax
>>>> >
>>>> > Den ons 2 juni 2021 21:21John MacFarlane <jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org> skrev:
>>>> >
>>>> >>
>>>> >> The problem is that basically anything is valid Markdown,
>>>> >> it's just a matter of how it is interpreted.  It does seem
>>>> >> to me that in the second case we might want to at least emit
>>>> >> a warning -- if not downright fail.  It's just so unlikely
>>>> >> that someone would write a block beginning with `---`
>>>> >> and ending with `...` and intend it to be something other
>>>> >> than YAML metadata.  If you'd like, you could submit an
>>>> >> issue for this.  I'd rather not suggest avoiding complex
>>>> >> YAML blocks -- sometimes they're fine, if the syntax is
>>>> >> correct!
>>>> >>
>>>> >> William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.org> writes:
>>>> >>
>>>> >> > Thanks. Yes, I guess I realised it had something to do with
>>>> ambiguous
>>>> >> > grammars, but I hadn't really considered that my input was a valid
>>>> table
>>>> >> > (mea culpa).
>>>> >> >
>>>> >> > So I thought aha! I'll change the terminating "---" to "..." (in
>>>> the hope
>>>> >> > of an error), but this of course gives the output shown below.
>>>> >> >
>>>> >> > I wonder whether there could be a warning in the manual (or maybe
>>>> there
>>>> >> is
>>>> >> > and I've missed it?) and/or perhaps a suggestion that it might be a
>>>> good
>>>> >> > idea to avoid complex YAML metadata blocks (in favour of metadata
>>>> files)?
>>>> >> > I'd be happy to create an issue and/or a MANUAL.md pull request.
>>>> >> >
>>>> >> > % cat bad.md
>>>> >> > ---
>>>> >> > history:
>>>> >> > - number: Release 1.2
>>>> >> >   changes: |
>>>> >> >   - TBD
>>>> >> > ...
>>>> >> >
>>>> >> > % pandoc bad.md
>>>> >> > <hr />
>>>> >> > <p>history: - number: Release 1.2 changes: | - TBD …</p>
>>>> >> >
>>>> >> >
>>>> >> > On Wed, 2 Jun 2021 at 17:47, John MacFarlane <jgm-TVLZxgkOlNX2fBVCVOL8/A@public.gmane.org>
>>>> wrote:
>>>> >> >
>>>> >> >>
>>>> >> >> Well, this actually IS a valid "simple table".  So how is
>>>> >> >> pandoc to know that you intended it as a YAML metadata block?
>>>> >> >> Pandoc tries first to parse things as YAML blocks, and then as
>>>> >> >> tables, if either works, the parse succeeds with no error.
>>>> >> >>
>>>> >> >> William Lupton <wlupton-QSt+ys/nuMyEUIsrzH9SikB+6BGkLq7r@public.gmane.org> writes:
>>>> >> >>
>>>> >> >> > Should I expect syntax errors in YAML blocks to be detected and
>>>> >> reported?
>>>> >> >> >
>>>> >> >> > This has a syntax error in the YAML block:
>>>> >> >> >
>>>> >> >> > % cat bad.md
>>>> >> >> > ---
>>>> >> >> > history:
>>>> >> >> > - number: Release 1.2
>>>> >> >> >   changes: |
>>>> >> >> >   - TBD
>>>> >> >> > ---
>>>> >> >> >
>>>> >> >> > This fixes it:
>>>> >> >> >
>>>> >> >> > % diff bad.md good.md
>>>> >> >> > 5c5
>>>> >> >> > <   - TBD
>>>> >> >> > ---
>>>> >> >> >>     - TBD
>>>> >> >> >
>>>> >> >> > The latest pandoc:
>>>> >> >> >
>>>> >> >> > % ~/Downloads/pandoc-2.14.0.1/bin/pandoc -v
>>>> >> >> > pandoc 2.14.0.1
>>>> >> >> > ...
>>>> >> >> >
>>>> >> >> > Pandoc thinks the bad YAML is a table:
>>>> >> >> >
>>>> >> >> > % ~/Downloads/pandoc-2.14.0.1/bin/pandoc bad.md
>>>> >> >> > <table>
>>>> >> >> > <tbody>
>>>> >> >> > <tr class="odd">
>>>> >> >> > <td>history:</td>
>>>> >> >> > </tr>
>>>> >> >> > <tr class="even">
>>>> >> >> > <td>- number: Release 1.2</td>
>>>> >> >> > </tr>
>>>> >> >> > <tr class="odd">
>>>> >> >> > <td>changes: |</td>
>>>> >> >> > </tr>
>>>> >> >> > <tr class="even">
>>>> >> >> > <td>- TBD</td>
>>>> >> >> > </tr>
>>>> >> >> > </tbody>
>>>> >> >> > </table>
>>>> >> >> >
>>>> >> >> > But it's OK with the good YAML:
>>>> >> >> >
>>>> >> >> > % ~/Downloads/pandoc-2.14.0.1/bin/pandoc good.md
>>>> >> >> >
>>>> >> >> > Parsing the file as YAML reports the error:
>>>> >> >> >
>>>> >> >> > % ~/Downloads/pandoc-2.14.0.1/bin/pandoc --metadata-file bad.md
>>>> >> >> > Error at "bad.md" (line 5, column 0):
>>>> >> >> > Unexpected ' '
>>>> >> >> >
>>>> >> >> > % ~/Downloads/pandoc-2.14.0.1/bin/pandoc --metadata-file good.md
>>>> >> >> > ^C
>>>> >> >> >
>>>> >> >> > --
>>>> >> >> > You received this message because you are subscribed to the
>>>> Google
>>>> >> >> Groups "pandoc-discuss" group.
>>>> >> >> > To unsubscribe from this group and stop receiving emails from
>>>> it, send
>>>> >> >> an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
>>>> >> >> > To view this discussion on the web visit
>>>> >> >>
>>>> >>
>>>> https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxjF3Un2J-xg5UOs7uReZ5cO27TATA%2BfDY%2BAtghAsVhShA%40mail.gmail.com
>>>> >> >> .
>>>> >> >>
>>>> >>
>>>> >> --
>>>> >> You received this message because you are subscribed to the Google
>>>> Groups
>>>> >> "pandoc-discuss" group.
>>>> >> To unsubscribe from this group and stop receiving emails from it,
>>>> send an
>>>> >> email to pandoc-discuss+unsubscribe@googlegroups.com.
>>>> >> To view this discussion on the web visit
>>>> >>
>>>> https://groups.google.com/d/msgid/pandoc-discuss/m2a6o8ul91.fsf%40johnmacfarlane.net
>>>> >> .
>>>> >>
>>>> >
>>>> > --
>>>> > You received this message because you are subscribed to the Google
>>>> Groups "pandoc-discuss" group.
>>>> > To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to pandoc-discuss+unsubscribe@googlegroups.com.
>>>> > To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhC2g4z_H%2BK%2BVtGoVd1T2nmYeMuRrnUquhDPpoYfuxSwWw%40mail.gmail.com
>>>> .
>>>>
>>> --
>> You received this message because you are subscribed to the Google Groups
>> "pandoc-discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxj-bHpfTLDhz5QRz51x-zcs%2BVW5dgWbmRTRaNL%2Bx6Y31Q%40mail.gmail.com
>> <https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxj-bHpfTLDhz5QRz51x-zcs%2BVW5dgWbmRTRaNL%2Bx6Y31Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>
> --
> You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
> To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhAr3Q_FR8FaubSDUxj692uSwAhKgdVV8mDRw5eU7HmO0g%40mail.gmail.com.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/m27dimg9nv.fsf%40Johns-Air.hsd1.ca.comcast.net.

--
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxh-geLJmwn4cuYftHAVzA6UZKq9wUkE7s5hPvsUw88%3DEw%40mail.gmail.com.