It used to work.

Den mån 21 juni 2021 15:44William Lupton <wlupton@broadband-forum.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@berkeley.edu> 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-/JYPxA39Uh4Ykp1iOSErHA@public.gmane.orgm.
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.

--
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.