public inbox archive for pandoc-discuss@googlegroups.com
 help / color / mirror / Atom feed
* How best to determine (in a lua filter) that PDF is being generated?
@ 2023-03-28 17:37 'William Lupton' via pandoc-discuss
       [not found] ` <CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: 'William Lupton' via pandoc-discuss @ 2023-03-28 17:37 UTC (permalink / raw)
  To: pandoc-discuss

[-- Attachment #1: Type: text/plain, Size: 787 bytes --]

Hello,

I'm generating PDF using wkhtmltopdf, so "to" is "html" and I don't see the
PDF engine in any of the globals. Should I just look at the output file
name?

Thanks,
William

PS, My filter adds some JavaScript to header-includes. I'm doing this as a
RawBlock(html) but I think I need to omit it when the HTML will be
converted to PDF (wkhtmltopdf complains).

-- 
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/CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 1225 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How best to determine (in a lua filter) that PDF is being generated?
       [not found] ` <CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2023-03-29  8:49   ` BPJ
       [not found]     ` <CADAJKhDfsFvqD--hJWQ+UGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2023-03-29  9:08   ` Albert Krewinkel
  1 sibling, 1 reply; 4+ messages in thread
From: BPJ @ 2023-03-29  8:49 UTC (permalink / raw)
  To: pandoc-discuss

[-- Attachment #1: Type: text/plain, Size: 2371 bytes --]

Den tis 28 mars 2023 19:38'William Lupton' via pandoc-discuss <
pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> skrev:

> Hello,
>
> I'm generating PDF using wkhtmltopdf, so "to" is "html" and I don't see
> the PDF engine in any of the globals. Should I just look at the output file
> name?
>

As a last resort I set a 'flag' in metadata and inspect that:

``````lua
local make_pdf
local Meta = function(meta)
  -- For use outside this function
  make_pdf = meta['my-filter-pdf']
  if not (make_pdf) then
    local includes = meta['header-includes']
    -- Make sure we have a list
    if 'List' ~= pandoc.utils.type(includes) then
      if nil == includes then
        includes = pandoc.List({ })
      else
        -- Assume the current value makes sense as a meta list item
        includes = pandoc.List({ includes })
      end
    end
    includes:insert(pandoc.RawBlock('html', [=[...]=]))
    meta['header-includes'] = includes
    return meta
  end
  return nil
end
return {
  { Meta = Meta },
  main_filter
}
``````

``````
% pandoc -L my-filter.lua -M my-filter-pdf ...
``````

At least guaranteed surprise free...


> Thanks,
> William
>
> PS, My filter adds some JavaScript to header-includes. I'm doing this as a
> RawBlock(html) but I think I need to omit it when the HTML will be
> converted to PDF (wkhtmltopdf complains).
>
> --
> 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/CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q%40mail.gmail.com
> <https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q%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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhDfsFvqD--hJWQ%2BUGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 4394 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How best to determine (in a lua filter) that PDF is being generated?
       [not found]     ` <CADAJKhDfsFvqD--hJWQ+UGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2023-03-29  9:04       ` 'William Lupton' via pandoc-discuss
  0 siblings, 0 replies; 4+ messages in thread
From: 'William Lupton' via pandoc-discuss @ 2023-03-29  9:04 UTC (permalink / raw)
  To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw

[-- Attachment #1: Type: text/plain, Size: 3238 bytes --]

I'll do that (maybe with a fallback on an output file name check). Thanks!

On Wed, 29 Mar 2023 at 09:49, BPJ <bpj-J3H7GcXPSITLoDKTGw+V6w@public.gmane.org> wrote:

>
>
> Den tis 28 mars 2023 19:38'William Lupton' via pandoc-discuss <
> pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> skrev:
>
>> Hello,
>>
>> I'm generating PDF using wkhtmltopdf, so "to" is "html" and I don't see
>> the PDF engine in any of the globals. Should I just look at the output file
>> name?
>>
>
> As a last resort I set a 'flag' in metadata and inspect that:
>
> ``````lua
> local make_pdf
> local Meta = function(meta)
>   -- For use outside this function
>   make_pdf = meta['my-filter-pdf']
>   if not (make_pdf) then
>     local includes = meta['header-includes']
>     -- Make sure we have a list
>     if 'List' ~= pandoc.utils.type(includes) then
>       if nil == includes then
>         includes = pandoc.List({ })
>       else
>         -- Assume the current value makes sense as a meta list item
>         includes = pandoc.List({ includes })
>       end
>     end
>     includes:insert(pandoc.RawBlock('html', [=[...]=]))
>     meta['header-includes'] = includes
>     return meta
>   end
>   return nil
> end
> return {
>   { Meta = Meta },
>   main_filter
> }
> ``````
>
> ``````
> % pandoc -L my-filter.lua -M my-filter-pdf ...
> ``````
>
> At least guaranteed surprise free...
>
>
>> Thanks,
>> William
>>
>> PS, My filter adds some JavaScript to header-includes. I'm doing this as
>> a RawBlock(html) but I think I need to omit it when the HTML will be
>> converted to PDF (wkhtmltopdf complains).
>>
>> --
>> 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/CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q%40mail.gmail.com
>> <https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q%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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhDfsFvqD--hJWQ%2BUGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/pandoc-discuss/CADAJKhDfsFvqD--hJWQ%2BUGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ%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-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/CAEe_xxgAhVVOFSR_hayo3dP-uvg8yno4P%2B3kef0eGeb82peC3Q%40mail.gmail.com.

[-- Attachment #2: Type: text/html, Size: 5623 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: How best to determine (in a lua filter) that PDF is being generated?
       [not found] ` <CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2023-03-29  8:49   ` BPJ
@ 2023-03-29  9:08   ` Albert Krewinkel
  1 sibling, 0 replies; 4+ messages in thread
From: Albert Krewinkel @ 2023-03-29  9:08 UTC (permalink / raw)
  To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw


"'William Lupton' via pandoc-discuss" <pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org> writes:

> I'm generating PDF using wkhtmltopdf, so "to" is "html" and I don't
> see the PDF engine in any of the globals. Should I just look at the
> output file name?

Pandoc doesn't expose that information, only the main program knows
whether a PDF will be produced. Feel free to open a feature request for
this.


-- 
Albert Krewinkel
GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124

-- 
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/87y1nfyl2n.fsf%40zeitkraut.de.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-03-29  9:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-28 17:37 How best to determine (in a lua filter) that PDF is being generated? 'William Lupton' via pandoc-discuss
     [not found] ` <CAEe_xxhU3eFmbb-XT640STjhrhbeWd75SkRf_ggYYZ3Gx1E79Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2023-03-29  8:49   ` BPJ
     [not found]     ` <CADAJKhDfsFvqD--hJWQ+UGoVibGzHKeZ3qaqKUU1yYk5uxxRHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2023-03-29  9:04       ` 'William Lupton' via pandoc-discuss
2023-03-29  9:08   ` Albert Krewinkel

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