If I have a callback called just after paragraph has been split into lines, would not be enough to count the number of hboxes in the vbox the paragraph itself is contained ? Cannot say it’s ideal (easier to simply read tex.prevgraf for sure), but might be possible, unless I missed something (totally possible).
In a couple of cases I see \prevgraf being larger than number of lines of previous paragraph, including lines for paragraph before than one as well. Could not create a MWE unfortunately to reproduce this case so far.
I’ll try to amend my dropcaps/lettrine logic then. What are the reasons behind this change in \prevgraf TeX primitive which AFAIK exists since TeX has been written ? I thought that one of the strong points in TeX was overall stability of its behaviour among versions. Here with this semantic change in \prevgraf in recent luatex, this stability is a bit broken IMO.
Joseph
De : Hans Hagen
Envoyé le :lundi 5 mars 2018 10:15
À : ntg-context@ntg.nl
Objet :Re: [NTG-context] prevgraf change if page break occurs in a paragraph
On 3/5/2018 9:43 AM, Joseph Canedo wrote:
> I see. I use prevgraf to get number of lines in most recent paragraph to
> compute eventually hangindent if there is a lettrine in paragraph (in
> case first paragraph has fewer lines than the lettrine itself, of course
> next paragraph needs to setup hangindent properly).
but .. that one is then still on the same page; in fact, you should
check for realpage being changed then
> I guess as an alternative, I could use the callback after paragraph is
> split in N lines to count the number of lines, or is this number can be
> accessed via some other existing variable in tex lua « table » ?
> Currently I access prevgraf value Inside lua. Probably better than
> making things more complicated in luatex itself.
prevgraf is still ok after a 7 line paragraph but ... when you cross a
page, and have say 4 lines moved to the next one, then a 7 line
hangafter would be wrong (you can check if a par is on the same page)
with callbacks after breaking in lines you still don't know ...
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
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
___________________________________________________________________________________