* Shell (zsh) for loop: apply correct suffix based on Pandoc output format?
@ 2023-10-02 13:58 Martin Post
[not found] ` <e8d686ec-e667-4dff-97c3-133af2a6f731n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Martin Post @ 2023-10-02 13:58 UTC (permalink / raw)
To: pandoc-discuss
[-- Attachment #1.1: Type: text/plain, Size: 1046 bytes --]
I used to do this (in macOS / zsh), as seen in the Pandoc FAQ:
for f in *.md;
do pandoc \
--defaults=defaults.yml \
"$f" \
--output="${f%.md}.htm";
done
But I am now changing output formats in defaults.yml (or additional default
files), e.g. “to: docx”, and the target files obviously shouldn’t have
“.htm” then.
How can I modify the for loop so the correct suffix is applied for the
output format set in a defaults file?
(I realize I could manually add a “output-format-suffix” shell variable and
use that in the loop, but I hope there’s something more elegant than that.)
Thank you.
--
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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.com.
[-- Attachment #1.2: Type: text/html, Size: 1383 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Shell (zsh) for loop: apply correct suffix based on Pandoc output format?
[not found] ` <e8d686ec-e667-4dff-97c3-133af2a6f731n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
@ 2023-10-02 14:17 ` Bastien DUMONT
2023-10-02 15:06 ` Martin Post
0 siblings, 1 reply; 4+ messages in thread
From: Bastien DUMONT @ 2023-10-02 14:17 UTC (permalink / raw)
To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw
I would search for the output suffix in the YAML file itself:
export SUFFIX="$(grep -x 'to: .*' defaults.yml | cut -d ' ' -f 2)";
for f in *.md;
do pandoc \
--defaults=defaults.yml \
"$f" \
--output="${f%.md}.$SUFFIX";
done
Instead of "to", you can use a dedicated variable in the YAML file if you export to output formats whose name differ from their file suffix (e.g. latex/tex or commonmark/md).
Le Monday 02 October 2023 à 06:58:57AM, Martin Post a écrit :
> I used to do this (in macOS / zsh), as seen in the Pandoc FAQ:
>
> for f in *.md;
> do pandoc \
> --defaults=defaults.yml \
> "$f" \
> --output="${f%.md}.htm";
> done
>
> But I am now changing output formats in defaults.yml (or additional default
> files), e.g. “to: docx”, and the target files obviously shouldn’t have “.htm”
> then.
>
> How can I modify the for loop so the correct suffix is applied for the output
> format set in a defaults file?
>
> (I realize I could manually add a “output-format-suffix” shell variable and use
> that in the loop, but I hope there’s something more elegant than that.)
>
> Thank you.
>
> --
> 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 [1]pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit [2]https://groups.google.com/d/msgid/
> pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.com.
>
> References:
>
> [1] mailto:pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
> [2] https://groups.google.com/d/msgid/pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/ZRrQ8TfHplqAupSJ%40localhost.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Shell (zsh) for loop: apply correct suffix based on Pandoc output format?
2023-10-02 14:17 ` Bastien DUMONT
@ 2023-10-02 15:06 ` Martin Post
[not found] ` <5843b3a9-e780-4816-8a6d-70277d1295d6n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
0 siblings, 1 reply; 4+ messages in thread
From: Martin Post @ 2023-10-02 15:06 UTC (permalink / raw)
To: pandoc-discuss
[-- Attachment #1.1: Type: text/plain, Size: 2776 bytes --]
Thank you, Bastien. This is a good idea, but the Pandoc output format is
not necessarily the proper generic file suffix. E.g., for to: markdown or
markdown_strict, one would want/expect “.md”, html5 = .html etc. For
chunkedhtml, it would actually (have to) be empty, so Pandoc will create a
folder with HTML files.
Hmm.
Bastien DUMONT schrieb am Montag, 2. Oktober 2023 um 16:17:28 UTC+2:
> I would search for the output suffix in the YAML file itself:
>
> export SUFFIX="$(grep -x 'to: .*' defaults.yml | cut -d ' ' -f 2)";
> for f in *.md;
> do pandoc \
> --defaults=defaults.yml \
> "$f" \
> --output="${f%.md}.$SUFFIX";
> done
>
> Instead of "to", you can use a dedicated variable in the YAML file if you
> export to output formats whose name differ from their file suffix (e.g.
> latex/tex or commonmark/md).
>
> Le Monday 02 October 2023 à 06:58:57AM, Martin Post a écrit :
> > I used to do this (in macOS / zsh), as seen in the Pandoc FAQ:
> >
> > for f in *.md;
> > do pandoc \
> > --defaults=defaults.yml \
> > "$f" \
> > --output="${f%.md}.htm";
> > done
> >
> > But I am now changing output formats in defaults.yml (or additional
> default
> > files), e.g. “to: docx”, and the target files obviously shouldn’t have
> “.htm”
> > then.
> >
> > How can I modify the for loop so the correct suffix is applied for the
> output
> > format set in a defaults file?
> >
> > (I realize I could manually add a “output-format-suffix” shell variable
> and use
> > that in the loop, but I hope there’s something more elegant than that.)
> >
> > Thank you.
> >
> > --
> > 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 [1]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> > To view this discussion on the web visit [2]
> https://groups.google.com/d/msgid/
> > pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.com.
> >
> > References:
> >
> > [1] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
> > [2]
> https://groups.google.com/d/msgid/pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/5843b3a9-e780-4816-8a6d-70277d1295d6n%40googlegroups.com.
[-- Attachment #1.2: Type: text/html, Size: 4571 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Shell (zsh) for loop: apply correct suffix based on Pandoc output format?
[not found] ` <5843b3a9-e780-4816-8a6d-70277d1295d6n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
@ 2023-10-02 15:18 ` Bastien DUMONT
0 siblings, 0 replies; 4+ messages in thread
From: Bastien DUMONT @ 2023-10-02 15:18 UTC (permalink / raw)
To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw
That's why I wrote the last sentence!
Le Monday 02 October 2023 à 08:06:48AM, Martin Post a écrit :
> Thank you, Bastien. This is a good idea, but the Pandoc output format is not
> necessarily the proper generic file suffix. E.g., for to: markdown or
> markdown_strict, one would want/expect “.md”, html5 = .html etc. For
> chunkedhtml, it would actually (have to) be empty, so Pandoc will create a
> folder with HTML files.
>
> Hmm.
>
> Bastien DUMONT schrieb am Montag, 2. Oktober 2023 um 16:17:28 UTC+2:
>
> I would search for the output suffix in the YAML file itself:
>
> export SUFFIX="$(grep -x 'to: .*' defaults.yml | cut -d ' ' -f 2)";
> for f in *.md;
> do pandoc \
> --defaults=defaults.yml \
> "$f" \
> --output="${f%.md}.$SUFFIX";
> done
>
> Instead of "to", you can use a dedicated variable in the YAML file if you
> export to output formats whose name differ from their file suffix (e.g.
> latex/tex or commonmark/md).
>
> Le Monday 02 October 2023 à 06:58:57AM, Martin Post a écrit :
> > I used to do this (in macOS / zsh), as seen in the Pandoc FAQ:
> >
> > for f in *.md;
> > do pandoc \
> > --defaults=defaults.yml \
> > "$f" \
> > --output="${f%.md}.htm";
> > done
> >
> > But I am now changing output formats in defaults.yml (or additional
> default
> > files), e.g. “to: docx”, and the target files obviously shouldn’t have
> “.htm”
> > then.
> >
> > How can I modify the for loop so the correct suffix is applied for the
> output
> > format set in a defaults file?
> >
> > (I realize I could manually add a “output-format-suffix” shell variable
> and use
> > that in the loop, but I hope there’s something more elegant than that.)
> >
> > Thank you.
> >
> > --
> > 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 [1]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> > To view this discussion on the web visit [2][1]https://groups.google.com/
> d/msgid/
> > pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%[2]
> 40googlegroups.com.
> >
> > References:
> >
> > [1] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
> > [2] [3]https://groups.google.com/d/msgid/pandoc-discuss/
> e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.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 [4]pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit [5]https://groups.google.com/d/msgid/
> pandoc-discuss/5843b3a9-e780-4816-8a6d-70277d1295d6n%40googlegroups.com.
>
> References:
>
> [1] https://groups.google.com/d/msgid/
> [2] http://40googlegroups.com/
> [3] https://groups.google.com/d/msgid/pandoc-discuss/e8d686ec-e667-4dff-97c3-133af2a6f731n%40googlegroups.com?utm_medium=email&utm_source=footer
> [4] mailto:pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
> [5] https://groups.google.com/d/msgid/pandoc-discuss/5843b3a9-e780-4816-8a6d-70277d1295d6n%40googlegroups.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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/ZRrfTpqIopvrxPei%40localhost.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-10-02 15:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-02 13:58 Shell (zsh) for loop: apply correct suffix based on Pandoc output format? Martin Post
[not found] ` <e8d686ec-e667-4dff-97c3-133af2a6f731n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-10-02 14:17 ` Bastien DUMONT
2023-10-02 15:06 ` Martin Post
[not found] ` <5843b3a9-e780-4816-8a6d-70277d1295d6n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-10-02 15:18 ` Bastien DUMONT
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).