On 11/18/2013 8:55 PM, Pablo Rodriguez wrote:
Dear Thomas, Luigi and Hans,
my second sample might be related to the first one. But I’m not sure it
is a bug.
Here is the code:
\setuppapersize[A8]
\newcounter\MyCounter
\def\CritApp#1#2{\increment\MyCounter%
\startlinenote[Varia:\MyCounter]{#1] #2}#1%
\prewordbreak\stoplinenote[Varia:\MyCounter]}
\starttext
\startlinenumbering
\startlinenote[one]{hyphenated}this is a test on
\startlinenote[two]{with nested
linenote}hyphenation\prewordbreak\stoplinenote[two]\stoplinenote[one]
\CritApp{this is a test on \CritApp{hyphenation}{nested linenote: bad
line number}}{not hyphenated}
\stoplinenumbering
\stoptext
A command such as \CritApp above is intended to generate all linenote
references automagically.
It works fine, but I cannot nest \CritApp linenotes. The problem is in
within this line:
\startlinenote[Varia:\MyCounter]{#1] #2}#1%
If I replace "{#1] #2}#1" with {#2}#1, nesting \CritApp linenotes,
everything works as expected.
Is this a bug?
you need to separate cases:
(1) some macro that uses grouping with nested notes
(2) hyphenation
here is an example of the first case
\setuppapersize
[A8][A7]
\setuplayout
[location=middle]
\unexpanded\def\doCritApp#1#2#3%
{\startlinenote[#1]{#2 #3}(#2)\stoplinenote[#1]}
\newcounter\MyCounter
\unexpanded\def\CritApp
{\doglobal\increment\MyCounter
\normalexpanded{\doCritApp{Varia:\MyCounter}}}
% \setupnotes[linenote][split=verystrict,scope=page]
\starttext
\startlinenumbering
\startlinenote[one]{note one}
one one one one one one one one one one one one one one one
\startlinenote[two]{note two}
two two two two two two two
\stoplinenote[two]
one one one one one one one one one one one one one one one
\stoplinenote[one]
\par
\CritApp
{(one one one one one one)
\CritApp
{(two two)}
{two two two two two two}
(one one one one one one)}
{one one one one one one}
\stoplinenumbering
\stoptext
so, in your macro you need to make sure that the counter (1) gets
incremented global and (2) gets expanded in time.
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
| 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://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________