El 17/9/20 a las 1:07, ebohoyod escribió:
El 16/9/20 a las 18:23, Wolfgang Schuster escribió:
ebohoyod schrieb am 16.09.2020 um 17:52:
Hi,
It seems that the Lettrine module is one of those affected:
https://tex.stackexchange.com/questions/562534/does-context-fail-in-the-lmtx-environment-with-the-lettrine-module?noredirect=1#comment1418902_562534
But, honestly, first, I don't know what means "/Of course it might
have other side effects once in lmtx we everywhere expect freezing
to be enabled./"
I suppose that, in order not to be a nuisance (and not to digress
into this real subject of interest), a short answer would be enough
to put me on track to investigate it.
On the other hand, I suppose the best practice, from what I have
just read, would be not to use \forgetparagraphfreezing globaly, but
\forgetparagraphfreezing and \setparagraphfreezing at the beginning
and end of the first paragraph respectively of each chapter. Would
this be the least harmful way? That is, wrapping it up to avoid this
provisional failure of the Lettrine with LMTX module, but at the
same time to avoid affecting that default freezing proposal in the
rest of the document, right?
By the way, and just out of curiosity, how does the recommended
provisional command work? Would it be something like this in the
preamble?:
\definingparagraphs
firstparagraph][n=1]
\setupparagraphs [firstparagraph][1][align={hanging}]
And then this arrangement in the \input files?:
\startfirstparagraph
\lettrine{B}{lah} blah, blah, blah...
\stopfirstparagraph
\blank [overlay] \strut
I know it's a dirty, inelegant solution, but I can't think of a
better one at the moment.
Below is a minimal example which doesn't rely on the module,
the problem is caused by the order of the \noindent and \parshape
command.
When a paragraph starts before the \parshape values are set
the arguments are ignored because the values are already frozen
at this moment, when you set the values before the paragraphs
starts ConTeXt applies them.
\starttext
\hsize 10cm
% lettrine module, \noindent before \parshape
\noindent
\parshape 3 1cm 9cm 1.5cm 8.5cm 0cm 10cm
\input weisman
\blank
% working order, \parshape before \noindent
\parshape 3 1cm 9cm 1.5cm 8.5cm 0cm 10cm
\noindent
\input weisman
\stoptext
Wolfgang
Thank you for this illustrative example, Wolfgang.
So, what \forgetparagraphfreezing does is to reverse the order that lmtx
currently imposes by default, right? In other words,
\forgetparagraphfreezing, recovers the default behaviour of MkIV.
So, I suspect that this will not change; if we want to apply Lettrine to
a paragraph, from now on we must wrap it up with
\forgetparagraphfreezing and \setparagraphfreezing.
Please correct me if I'm wrong.
Eduardo.
___________________________________________________________________________________
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
___________________________________________________________________________________