public inbox archive for pandoc-discuss@googlegroups.com
 help / color / mirror / Atom feed
From: Bastien DUMONT <bastien.dumont-VwIFZPTo/vqsTnJN9+BGXg@public.gmane.org>
To: pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
Subject: Re: converting links to footnotes... including page number in footnote??
Date: Sun, 27 Nov 2022 15:50:02 +0000	[thread overview]
Message-ID: <Y4OHKqAxAZXbj+vw@localhost> (raw)
In-Reply-To: <e969f1ca-c6bf-4a5e-b53f-86aa0a444db2n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>

My filter only shows how one can inject raw code to get references by page number in LaTeX. Without any example, I don't really understand what you say about footnotes and so on, but the basic mechanism is here, now you can adapt the filter to your needs.

Le Sunday 27 November 2022 à 06:13:53AM, user account a écrit :
> oh a 'filters' subdir! Thanks. So now the pdf gets created w/o error, but there
> are not footnotes.
> 
> neither of these:
>     pandoc -L links-with-page-number.lua -o test.pdf test.html
>     pandoc -V links-as-notes -L links-with-page-number.lua -o test.pdf
> test.html
> ...creates pdf w/ footnotes, so there's no footnote to contain the page number
> of the linked-to page.
> 
> Something undesireable does happen though... I changed the paragraph with the
> link to:
> <p>Here is a link to <a href="#thetarget">important words about the target</a>.
> </p>
> ...and the "important words about the target" get removed altogether. Those
> should not be removed, just the <a> tags around them should be removed.
> 
> Thanks for the help so far. I'm excited to see a lua filter in action for my
> first time. Very curious about the api... I presume pandoc is looking for
> functions with particular names like Link and Span? Would you mind
> confirming... this https://pandoc.org/lua-filters.html#type-link is the proper
> spot in the docs for referencing Link in this context... right?
> 
> I imagine this working example produce footnotes w/ page numbers for you in
> your environment...? Any idea what I could inspect to try to get it working in
> mine?
> On Sunday, November 27, 2022 at 3:57:02 AM UTC-5 Bastien Dumont wrote:
> 
>     Place the file under `~/.local/share/pandoc/filters`. You don't need the
>     executable flag.
> 
>     Le Saturday 26 November 2022 à 02:30:58PM, user account a écrit :
>     > Thanks I wish that worked. I don't know what I'm doing wrong, here's what
>     I've
>     > got…
>     >
>     > `pandoc --version` says user data dir is `~/.local/share/pandoc` so I
>     placed
>     > this file there as `~/.local/share/pandoc/links-with-page-number.lua` and
>     did
>     > (just in case) `chmod +x` on it.
>     >
>     > `pandoc -o test.pdf test.html` produces a 2page pdf as expected with no
>     > footnotes.
>     >
>     > `pandoc -L links-with-page-number.lua -o test.pdf test.html` fails to
>     produce
>     > pdf file with:
>     > ```
>     > Error running filter links-with-page-number.lua:
>     > links-with-page-number.lua: openBinaryFile: does not exist (No such file
>     or
>     > directory)
>     > ```
>     >
>     > There's no typo in my script name or command invocation. Using ~/.pandoc
>     > instead of ~/.local/share/pandoc doesn't make any difference, still get
>     that
>     > same error.
>     >
>     > Any ideas?
>     >
>     > On Saturday, November 26, 2022 at 12:34:15 PM UTC-5 Bastien Dumont wrote:
>     >
>     > Please find attached a basic implementation. As in the attached sample
>     HMTL
>     > file, I suppose that the targets are marked with ids on spans and that
>     you
>     > link to it via empty <a> elements. If you have a LaTeX installation,
>     simply
>     > do `pandoc -L links-with-page-number.lua -o test.pdf test.html` to see
>     the
>     > result.
>     >
>     > Le Saturday 26 November 2022 à 05:21:25AM, user account a écrit :
>     > > Thanks! Yeah injecting html in the intermediary document doesn't sound
>     > very
>     > > promising either (again, because the pages have to be built first
>     before
>     > > footnotes updated with page #s) so maybe I'll abandon weasyprint in
>     this
>     > case,
>     > > if this would be easy to do with a *Tex pdf engine. In that case... how
>     > would
>     > > one go about this? Would a lua filter be more capable with a different
>     > pdf
>     > > engine or would a different mechanism be used?
>     > >
>     > > On Saturday, November 26, 2022 at 5:28:31 AM UTC-5 Bastien Dumont
>     wrote:
>     > >
>     > > The problem is that Pandoc does not produce the PDF document: it
>     produces
>     > > the intermediary HTML document that is processed by weasyprint to
>     produce
>     > > the PDF. So you cannot get page numbers in a Lua filter.
>     > >
>     > > However, you can inject raw HTML code in the intermediary file (or in
>     > your
>     > > CSS) that will make weasyprint print the page numbers. The question is
>     > > whether such HTML code exists. It certainly would be possible to do
>     this
>     > if
>     > > you converted to PDF via LaTeX, ConTeXt or groff, but I don't know if
>     it
>     > is
>     > > possible via weasyprint.
>     > >
>     > > Le Friday 25 November 2022 à 04:33:05PM, user account a écrit :
>     > > > Using pandoc with weasyprint pdf engine to turn the markdown files
>     from
>     > a
>     > > blog
>     > > > (static site generator does the html conversion) into a pdf for
>     print.
>     > > >
>     > > > Would it be possible, perhaps with a custom lua filter or some other
>     > > mechanism,
>     > > > to add the page number of the linked-to page? The page numbers won't
>     be
>     > > known
>     > > > until pandoc has already created the document, and I don't know where
>     > in
>     > > 'the
>     > > > pipeline' the lua filter intervenes compared to when the pages
>     > exist...?
>     > > And
>     > > > If the pages exist with their numbers earlier enough, is there an
>     > object
>     > > or
>     > > > something from which lua can get the page number?
>     > > >
>     > > > I haven't found anything about page numbers in [1][1][1]https://
>     pandoc.org
>     > /
>     > > > lua-filters.html#module-pandoc.utils ...am I looking in the wrong
>     > place?
>     > > Can
>     > > > anyone tell me anything about this?
>     > > >
>     > > > It's an intimidating rabbit hole for me, particularly because I see
>     no
>     > > mention
>     > > > of "page number" there in the docs, which makes it seem kinda
>     hopeless
>     > > > actually. But maybe one of you know the way and could point me in
>     that
>     > > > direction?
>     > > >
>     > > > --
>     > > > 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][2][2]https://
>     > [2]groups.google.com/
>     > > d/msgid/
>     > > > pandoc-discuss/a93afb43-c939-40c1-868f-1db8eded17d8n%[3]
>     > > [3][3]40googlegroups.com.
>     > > >
>     > > > References:
>     > > >
>     > > > [1] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
>     > > > [2] [4][4][4]https://groups.google.com/d/msgid/pandoc-discuss/
>     > > a93afb43-c939-40c1-868f-1db8eded17d8n%[5][5]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 [5]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
>     > > To view this discussion on the web visit [6][6][6]https://
>     groups.google.com/
>     > d/msgid/
>     > > pandoc-discuss/2aec84ad-a750-48f2-a0c2-ad7572dcca11n%[7]
>     > [7]40googlegroups.com.
>     > >
>     > > References:
>     > >
>     > > [1] [8][8]https://pandoc.org/
>     > > [2] [9][9]https://groups.google.com/d/msgid/
>     > > [3] [10][10]http://40googlegroups.com/
>     > > [4] [11][11]https://groups.google.com/d/msgid/pandoc-discuss/
>     > a93afb43-c939-40c1-868f-1db8eded17d8n%[12]40googlegroups.com?utm_medium=
>     email&
>     > utm_source=footer
>     > > [5] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
>     > > [6] [12][13]https://groups.google.com/d/msgid/pandoc-discuss/
>     > 2aec84ad-a750-48f2-a0c2-ad7572dcca11n%[14]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 [13]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
>     > To view this discussion on the web visit [14][15]https://
>     groups.google.com/d/msgid/
>     > pandoc-discuss/480d0274-2324-43d7-9f74-1bbfc08fcbd0n%[16]
>     40googlegroups.com.
>     >
>     > References:
>     >
>     > [1] [17]https://pandoc.org/
>     > [2] [18]https://groups.google.com/
>     > [3] [19]http://40googlegroups.com/
>     > [4] [20]https://groups.google.com/d/msgid/pandoc-discuss/
>     > [5] [21]http://40googlegroups.com/?utm_medium=email&
>     > [6] [22]https://groups.google.com/d/msgid/
>     > [7] [23]http://40googlegroups.com/
>     > [8] [24]https://pandoc.org/
>     > [9] [25]https://groups.google.com/d/msgid/
>     > [10] [26]http://40googlegroups.com/
>     > [11] [27]https://groups.google.com/d/msgid/pandoc-discuss/
>     a93afb43-c939-40c1-868f-1db8eded17d8n%40googlegroups.com?utm_medium=email&
>     utm_source=footer
>     > [12] [28]https://groups.google.com/d/msgid/pandoc-discuss/
>     2aec84ad-a750-48f2-a0c2-ad7572dcca11n%40googlegroups.com?utm_medium=email&
>     utm_source=footer
>     > [13] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
>     > [14] [29]https://groups.google.com/d/msgid/pandoc-discuss/
>     480d0274-2324-43d7-9f74-1bbfc08fcbd0n%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 [30]pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
> To view this discussion on the web visit [31]https://groups.google.com/d/msgid/
> pandoc-discuss/e969f1ca-c6bf-4a5e-b53f-86aa0a444db2n%40googlegroups.com.
> 
> References:
> 
> [1] https://pandoc.org/
> [2] http://groups.google.com/
> [3] http://40googlegroups.com/
> [4] https://groups.google.com/d/msgid/pandoc-discuss/
> [5] http://40googlegroups.com/?utm_medium=
> [6] https://groups.google.com/
> [7] http://40googlegroups.com/
> [8] https://pandoc.org/
> [9] https://groups.google.com/d/msgid/
> [10] http://40googlegroups.com/
> [11] https://groups.google.com/d/msgid/pandoc-discuss/
> [12] http://40googlegroups.com/?utm_medium=email&
> [13] https://groups.google.com/d/msgid/pandoc-discuss/
> [14] http://40googlegroups.com/?utm_medium=email&
> [15] https://groups.google.com/d/msgid/
> [16] http://40googlegroups.com/
> [17] https://pandoc.org/
> [18] https://groups.google.com/
> [19] http://40googlegroups.com/
> [20] https://groups.google.com/d/msgid/pandoc-discuss/
> [21] http://40googlegroups.com/?utm_medium=email&
> [22] https://groups.google.com/d/msgid/
> [23] http://40googlegroups.com/
> [24] https://pandoc.org/
> [25] https://groups.google.com/d/msgid/
> [26] http://40googlegroups.com/
> [27] https://groups.google.com/d/msgid/pandoc-discuss/a93afb43-c939-40c1-868f-1db8eded17d8n%40googlegroups.com?utm_medium=email&utm_source=footer
> [28] https://groups.google.com/d/msgid/pandoc-discuss/2aec84ad-a750-48f2-a0c2-ad7572dcca11n%40googlegroups.com?utm_medium=email&utm_source=footer
> [29] https://groups.google.com/d/msgid/pandoc-discuss/480d0274-2324-43d7-9f74-1bbfc08fcbd0n%40googlegroups.com?utm_medium=email&utm_source=footer
> [30] mailto:pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
> [31] https://groups.google.com/d/msgid/pandoc-discuss/e969f1ca-c6bf-4a5e-b53f-86aa0a444db2n%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/Y4OHKqAxAZXbj%2Bvw%40localhost.


  parent reply	other threads:[~2022-11-27 15:50 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-26  0:33 user account
     [not found] ` <a93afb43-c939-40c1-868f-1db8eded17d8n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-26 10:28   ` Bastien DUMONT
2022-11-26 13:21     ` user account
     [not found]       ` <2aec84ad-a750-48f2-a0c2-ad7572dcca11n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-26 13:52         ` 'Håkon Wium Lie' via pandoc-discuss
     [not found]           ` <25474.6699.105043.345344-4mDQ13Tdud8Jw5R7aSpS0dP8p4LwMBBS@public.gmane.org>
2022-11-26 15:35             ` user account
2022-11-26 17:34         ` Bastien DUMONT
2022-11-26 22:30           ` user account
     [not found]             ` <480d0274-2324-43d7-9f74-1bbfc08fcbd0n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-27  8:56               ` Bastien DUMONT
2022-11-27 14:13                 ` user account
     [not found]                   ` <e969f1ca-c6bf-4a5e-b53f-86aa0a444db2n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-27 15:50                     ` Bastien DUMONT [this message]
2022-11-27 16:24                       ` user account
     [not found]                         ` <858c5a07-89a0-4daa-803f-e0d9d50ca9c6n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-27 17:01                           ` Bastien DUMONT
2022-11-28  4:01                             ` user account
     [not found]                               ` <80adcd1d-bc18-4b38-b3a9-0265d0922790n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2022-11-28 17:04                                 ` Pablo Rodríguez

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y4OHKqAxAZXbj+vw@localhost \
    --to=bastien.dumont-vwifzpto/vqstnjn9+bgxg@public.gmane.org \
    --cc=pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).