ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: jbf via ntg-context <ntg-context@ntg.nl>
To: Hans Hagen <j.hagen@xs4all.nl>
Cc: jbf <roma83537@gmail.com>,
	mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: footnote not appearing
Date: Thu, 29 Jul 2021 09:02:10 +1000	[thread overview]
Message-ID: <76949f4a-ddd1-d53c-9d84-a5b3973f2502@gmail.com> (raw)
In-Reply-To: <7d13bdc0-f084-32af-4c1b-6c1c4d90300a@xs4all.nl>

You are correct Hans, I was using Mk IV luatex as the engine, though I 
could use lmtx. It's just that in a production environment I need to be 
absolutely sure things work (printers deadlines and that sort of thing!) 
and I know that the MkIV luatex scene always works. But I'll give the 
lmtx a run on this particular text without postponing and see how it 
goes, since I already have a working result from the other.

Julian

On 28/7/21 5:32 pm, Hans Hagen wrote:
> On 7/27/2021 11:46 PM, jbf via ntg-context wrote:
>> No, in fact I discovered that \startpostponingnotes is what is 
>> needed. localfootnotes does work but places the footnote immediately 
>> below the framed text, and I wanted it to appear in the usual 
>> footnote location, which is achieved with startpostponingnotes
>
> I assume that you use(d) mkiv/luatex and not lmtx/luametatex.
>
> Footnotes are in tex speak 'inserts' and at some point they are 
> filtered and added to the datastructure (list) that is taken into 
> account when breaking a page.
>
> When tex was written, the main application was books like those of Don 
> Knuth where inserts like notes occur at the outer level. However, a 
> macro package like context has all kind of complex deeply nested 
> elements and there these notes just disappear. The main (and valid) 
> reason is that it becomes kind of unpredictable what inserts are and 
> where they have to go. (This is one reason why as soon as a macro 
> package provides more functionality and control it also becomes much 
> larger deep down.)
>
> For this footnote-text-getting-lost problem, in mkii a solution became 
> local notes and postponing.
>
> In mmkiv it became a bit more clever and there is also an 
> automigration features although in some cases that gives other side 
> effects so it's not turned on by default.
>
> In lmtx we use some new insert related features in luametatex so 
> that's what I'll discuss next. (One can quit reading if not interested.)
>
> Although it is still not trivial to deal with these things (keep in 
> mind that users combine all mechanism which means that all mechanisms 
> should be able to cooperate) in luametatex the inserts can bubble up 
> which means that footnotes eventually will end up at the outer level.
>
> So, if you use lmtx, ideally there is no need to use postponing (you 
> can try your exapmle in lmtx without postponing).
>
> For the curious ... the low level mechanisms involved in this can also 
> be used for other purposes although currently this is not done. There 
> is plenty of relative new functionality that can/will be applied some 
> day.
>
> Here is an example:
>
> \setbox0\hbox{\strut this is just a test}
>
> \setprelistbox 0\hbox{\strut \quad before}
> \setpostlistbox0\hbox{\strut \quad after}
>
> test \par \box0 \par test
>
> Here \setprelistbox and \setpostlistbox are macros that (ab)use these 
> hooks into lists. They will stay but keep in mind that when you use 
> them they can interfere with for instance already present inserts.
>
> Take this:
>
> \starttext
>
> \setbox0\hbox{\strut this is just a\footnote{oeps} test}
> \setbox2\hbox{\strut this is just a\footnote{oeps} test}
>
> \setprelistbox 0\hbox{\strut \quad before: \prelistbox0}
> \setpostlistbox0\hbox{\strut \quad after: \postlistbox0}
>
> \setprelistbox 2\hbox{\strut \quad before}
> \setpostlistbox2\hbox{\strut \quad after}
>
> test \par \box0 \par \box2 \par test
>
> \stoptext
>
> If you look carefully you'll see / can deduce what happens with 
> inserts in luamatetatex.
>
> Boxes are a major thing in tex, paragraphs are too, so here's another 
> (already described elsewhere) trick with hooks,
>
> (\wrapuppar{)}some text and some more text and ...
>
> (\wrapuppar{\removeunwantedspaces)}some text and some more text and ...
>
> test\wrapuppar{\crlf\ignorepars}
>
> test
>
> test\wrapuppar{\ignorepars}
>
> test
>
> test\wrapuppar{\removeunwantedspaces\ignorepars}
>
> test
>
> These are actually features that are already around and (so far) have 
> proven to work ok. Especially the last examples are real tricky 
> because you don't know if other mechanisms also use these (some 
> already do) but all this box and pas stuff might eventually come with 
> more high level interfaces (there is already one for the par stuff, 
> not yet for the box stuff). But as with other such mechanism, one 
> cannot rely on a naive approach and just assume the single case usage, 
> only the user knows where it might interfere. On the other hand, low 
> level box magick like the above will work ok because it's just that box.
>
> Welcome to the world of (new) low level context trickery, which is and 
> eventually will be described in the lowlevel-* manuals (after all I 
> need topics for occasional presentations and those need to be new and 
> if possible challenging.)
>
> Hans
>
>> Julian
>>
>> On 27/7/21 7:42 pm, Henning Hraban Ramm via ntg-context wrote:
>>>> Am 27.07.2021 um 06:07 schrieb jbf via ntg-context 
>>>> <ntg-context@ntg.nl>:
>>>>
>>>> Is there any reason why the following MWE does not produce the 
>>>> footnote at the bottom of the page? It seems like the use of 
>>>> framedtext is preventing it, but am not sure why. Can I get around 
>>>> this problem and still have framed text?
>>>>
>>>> Julian
>>>>
>>>> \setupframed[location=middle]
>>>>
>>>> \startframedtext[width=.77\makeupwidth,corner=round]
>>>> The poems of St John of the Cross have been important for me in 
>>>> recent years. This is John’s prayer from a verse in his Spiritual 
>>>> Canticle:\footnote{John of the Cross, {\em Spiritual Canticle}, 
>>>> stanza 32.  }
>>>>
>>>> \startblockquote
>>>> You looked with love upon me, and deep within, your eyes imprinted 
>>>> grace. This mercy set me free, held in your love’s embrace, to lift 
>>>> my eyes adoring to your face.
>>>> \stopblockquote
>>>>
>>>> I wonder how often John prayed that prayer.
>>>> \stopframedtext
>>> Maybe localfootnotes are the solution (didn’t try):
>>> https://wiki.contextgarden.net/Footnotes#Footnotes_in_Floats
>>>
>>> Hraban
>>> ___________________________________________________________________________________ 
>>>
>>> If your question is of interest to others as well, please add an 
>>> entry to the Wiki!
>>>
>>> maillist : ntg-context@ntg.nl / 
>>> http://www.ntg.nl/mailman/listinfo/ntg-context
>>> webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
>>> archive  : https://bitbucket.org/phg/context-mirror/commits/
>>> wiki     : http://contextgarden.net
>>> ___________________________________________________________________________________ 
>>>
>> ___________________________________________________________________________________ 
>>
>> If your question is of interest to others as well, please add an 
>> entry to the Wiki!
>>
>> maillist : ntg-context@ntg.nl / 
>> http://www.ntg.nl/mailman/listinfo/ntg-context
>> webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
>> archive  : https://bitbucket.org/phg/context-mirror/commits/
>> wiki     : http://contextgarden.net
>> ___________________________________________________________________________________ 
>>
>
>
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  reply	other threads:[~2021-07-28 23:02 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-27  4:07 jbf via ntg-context
2021-07-27  9:42 ` Henning Hraban Ramm via ntg-context
2021-07-27 21:46   ` jbf via ntg-context
2021-07-28  7:32     ` Hans Hagen via ntg-context
2021-07-28 23:02       ` jbf via ntg-context [this message]
2021-07-28  8:34     ` Henning Hraban Ramm via ntg-context

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=76949f4a-ddd1-d53c-9d84-a5b3973f2502@gmail.com \
    --to=ntg-context@ntg.nl \
    --cc=j.hagen@xs4all.nl \
    --cc=roma83537@gmail.com \
    /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).