Great! Thanks a lot, Wolfgang!
Yet… I have some other questions:

- What about a simplified \page inside the lemma (not really common, but anyway…)? Adding
        \appendtoks\def\page[#1]{}\to\simplifiedcommands
is ignored.

- How can I tweak the note mechanism to put the apparatus notes inside one single paragraph, concatenated by some arbitrary separator (\quad or -- or something similar)? (Eventually I‘d like the lemmatas which appear on the same page to be grouped in a paragraph) - I guess it should be somewhere in strc-not.mkiv but must have missed it…

Thanks again for the effort!
Daniel


minimal example:
\def\doifelsesamepagereference#1#2%
  {\doifelse
     {\doifreferencefoundelse{#1}{\currentreferencepage}{-}}
     {\doifreferencefoundelse{#2}{\currentreferencepage}{+}}
  }
\define[2]\Apparatus
  {\ifdefined\ApparatusCounter
     \doglobal\increment\ApparatusCounter
   \else
     \doglobal\newcounter\ApparatusCounter
   \fi
   \pagereference[apparatus:startpage:\ApparatusCounter]%

\startline[apparatus:line:\ApparatusCounter]{#1}\stopline[apparatus:line:\ApparatusCounter]%
   \pagereference[apparatus:stoppage:\ApparatusCounter]
   \expanded{
                \endnote{
                        {\bf\at[apparatus:startpage:\ApparatusCounter]%
\noexpand\doifelsesamepagereference{apparatus:startpage:\ApparatusCounter}{apparatus:stoppage:\ApparatusCounter}{}{-\at[apparatus:stoppage:\ApparatusCounter]}}%
                        
/\noexpand\inline{{}}[apparatus:line:\ApparatusCounter]~%
                        {\noexpand\simplifycommands #1}]~{#2}
                }
        }%
  }
\setuplinenumbering[
                    method=page,
                    distance=0.3em
]

\appendtoks\def\blackrule[#1]{}\to\simplifiedcommands
\appendtoks         \def\crlf{/}\to\simplifiedcommands
\appendtoks           \def\bf{}\to\simplifiedcommands
\appendtoks                \def\page[#1]{\textbar\textbar}\to\simplifiedcommands

%\setuplabeltext[en][lines=,line=]

\setupnote
  [endnote]
  [textcommand=\gobbleoneargument,
       command=\gobbleoneargument,
                 n=2]

\starttext

\startlinenumbering
That’s a \Apparatus{\bf qui\crlf te \page long lemma}{That’s a variant reading…}.\crlf
And here comes \Apparatus{another one}{the second one}.
\stoplinenumbering
\placenotes[endnote]

\stoptext

Am 19.05.11 23:23, schrieb Wolfgang Schuster:
Am 19.05.2011 um 17:42 schrieb Daniel Schopper:

>  Dear list,
>  I’m fiddling around with a simple apparatus for critical editions with 
endnotes. For now this is working ok - but I’m wondering if somebody could advise 
me on some aspects of it (see below). Here’s a minimal example:
>
>  […]
>
>  Now, this is obviously a really primitive approach (I’m still learning…) 
which I’d like to improve in some ways:
>
>  - How can I get rid of the blackrule in the apparatus?
>    \noexpand\let\blackrule[#1]=\noexpand\relax
>  throws an error (You can't use `macro parameter character #' in vertical 
mode.) while
>    \noexpand\let\blackrule=\noexpand\relax
>  eliminates the rule but simply prints the arguments in the square brackets. 
(Same holds true for every macro with arguments.)
You can use \simplifycommands, see my example below.

>  - What to do if I’d want to gobble \crlf or \par in the lemma while using 
them as separators after each apparatus entry? I tried to \let them to \relax, 
which ends in luatex getting stuck when it tries to import the .en-file.
>
>  - How could I reset gobbled commands like \bf to their original meaning (I’d 
like to ignore \bf inside a lemma but still be able to have bold page numbers at 
the beginning of the apparatus entry)?
>
>  I’m sure there are much more elegant ways to do this (probably in lua?), 
maybe someone could provide me with a hint where to start from?
You can use contexts own note mechanism to collect the data and place them 
later in your document.

\define[2]\Apparatus
   {\ifdefined\ApparatusCounter
      \doglobal\increment\ApparatusCounter
    \else
      \doglobal\newcounter\ApparatusCounter
    \fi
    \pagereference[apparatus:page:\ApparatusCounter]%
    
\startline[apparatus:line:\ApparatusCounter]{#1}\stopline[apparatus:line:\ApparatusCounter]%
    \begingroup\simplifycommands
    
\expanded{\endnote{\at[apparatus:page:\ApparatusCounter]/\noexpand\inline[apparatus:line:\ApparatusCounter]~{#1}]~{#2}}}%
    \endgroup}

\appendtoks\def\blackrule[#1]{}\to\simplifiedcommands
\appendtoks         \def\crlf{}\to\simplifiedcommands
\appendtoks           \def\bf{}\to\simplifiedcommands

\setuplabeltext[en][lines=,line=]

\setupnote
   [endnote]
   [textcommand=\gobbleoneargument,
        command=\gobbleoneargument]

\starttext

\startlinenumbering
That’s a \Apparatus{\bf lemma}{That’s a variant reading…}. \input tufte

But then there’s a blackrule \Apparatus{\blackrule[width=5cm]\crlf and a 
linebreak}{-- which we don’t want to repeat in the apparatus.}.
\stoplinenumbering

\placenotes[endnote]

\stoptext

Wolfgang

___________________________________________________________________________________
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
___________________________________________________________________________________

___________________________________________________________________________________
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
___________________________________________________________________________________

Reply via email to