[NTG-context] critical editions in context

h h extern pragma at wxs.nl
Tue Mar 15 23:15:34 CET 2005


Thomas A.Schmitz wrote:
> Sorry, hit the "send" button by accident.
> 
> OK, I feel guilty resurrecting this stale thread, but I can't resist 
> asking again.
> 
> I found this in m-arabtex.tex:
> %    \pushmacro\edmacloaded   \let \edmacloaded   \undefined
> 
> and later
> 
> %    \popmacro\edmacloaded
> 
> Both lines are commented out, so I'm still wondering if edmac will work 
> with ConTeXt "out of the box."
> 
> The absolute basics that are needed for critical editions are:
> 
> 1. Capability to have footnotes with reference to line-number instead of 
> counter. These notes must not end with a newline character (see 
> ASCII-art at end of post), but must provide the possibility to have 
> several on one line. These notes must not flow, they have to stay on the 
> same page as the reference. Horizontal tolerance can be set to very 
> sloppy to achieve this
> 
> 2. Must be possible to apply a format like \bf vel. sim. to the reference.
> 
> 3. Within these notes, it should be possible to refer to other line 
> numbers.
> 
> 4. Nice, but not quite essential: possibility to have notes in more than 
> one column.
> 
> 5. Not absolutely basic, but important for serious work: have more than 
> one set of notes referring to the same passage.
> 
> Is this possible in ConTeXt "out of the box"? If not, I'd be willing to 
> roll up my sleeves and help, but would like to know which would be a 
> good starting point.
> 
> I looked at core-ltn.tex. I'm not sure if core-nnt and page-nnt refer to 
> core-not and page-not; I couldn't find anything appropriate in these files.

the files are in the main distribution for some time; i'm still waiting for 
idris to test them; following is my test file (seems that it has a patch -)

% interface=en

\unprotect

\def\dohandlelinenote#1#2#3%
   {\bgroup
    \expanded{\beforesplitstring#2}\at--\to\linenotelinenumber
    \ifnum\linenotelinenumber=\linenumber\relax
       \def\linenotelinenumber##1{#2}%
       \setupnote[#1]
         [\c!numbercommand=\linenotelinenumber,
          \c!textcommand=\gobbleoneargument]%
       \setnote[#1]{#3}%
    \fi
    \egroup}

\protect

\starttext

\tracelinenotestrue

\setuppapersize[S6][S6]
\setuplayout[width=middle,height=middle,margin=1.5cm,footer=0pt,header=1cm]

\setupcolors[state=start]
\setuptyping[option=color]

\definelinenote[extralinenote][rule=off,frame=on,framecolor=darkgreen]
\setuplinenote [linenote]     [rule=off,frame=on,framecolor=darkred,n=2]

\showframe

\startbuffer[test]
\doglobal\increment\DummyNumber % else dups due to reuse
\startlinenumbering[100]
test \linenote {oeps} test test test test test test
test \startlinenote [well:\DummyNumber] {oeps} test test test test test test
test \linenote {oeps} test test test test test test
test \extralinenote {oeps} test test test test test test
test \linenote {oeps} test test test test test test
test \extralinenote {oeps} test test test test test test
test \stoplinenote [well] test test test test test test
\stoplinenumbering
\stopbuffer

{\typebuffer[test] \getbuffer[test]} \page

\startbuffer[setup]
\setuplinenumbering
   [align=left]
\stopbuffer

{\typebuffer[setup] \getbuffer[setup,test]} \page

\startbuffer[setup]
\setuplinenumbering
   [width=1em,
    align=left]
\stopbuffer

{\typebuffer[setup] \getbuffer[setup,test]} \page

\startbuffer[setup]
\setuplinenumbering
   [width=2em,
    distance=.5em,
    align=left]
\stopbuffer

{\typebuffer[setup] \getbuffer[setup,test]} \page

\startbuffer[setup]
\setuplinenumbering
   [width=2em,
    align=middle]
\stopbuffer

{\typebuffer[setup] \getbuffer[setup,test]} \page

\startbuffer[setup]
\setuplinenumbering
   [conversion=romannumerals,
    start=1,
    step=1,
    location=text,
    style=slanted,
    color=blue,
    width=1.5em]
\stopbuffer

{\typebuffer[setup] \startnarrower\getbuffer[setup,test]\stopnarrower} \page

\startbuffer[setup]
\setuplinenumbering
   [width=4em,
    left=--,
    right=--,
    align=middle]
\stopbuffer

{\typebuffer[setup] \getbuffer[setup,test]} \page

\startbuffer[setup-1]
\setuplinenumbering
   [style=\bfxx,
    command=\WatchThis]
\stopbuffer

\startbuffer[setup-2]
\def\WatchThis#1%
   {\ifodd\linenumber
      \definecolor[linecolor][red]%
    \else
      \definecolor[linecolor][green]%
    \fi
    \inframed
      [offset=1pt,frame=off,background=color,backgroundcolor=linecolor]
      {#1}}
\stopbuffer

{\typebuffer[setup-1,setup-2] \getbuffer[setup-1,setup-2,test]} \page

\startbuffer[setup-1]
\setuplinenumbering
   [location=inright,
    style=\bfxx,
    command=\WatchThis]
\stopbuffer

{\typebuffer[setup-1] \getbuffer[setup-1,setup-2,test]} \page

\stoptext



> Best
> 
> Thomas
> 
> Example what should be possible:
> 
> 1 This manual is about ConTEXt, a system for typesetting documents.
> 2 Central element in this name is the word TEX because the typographical
> 3 programming language TEX is the base for ConTEXt. People who are used
> 4 to TEX will probably identify this manual as a TEX document. They 
> recognise
> 5 the use of \. One may also notice that the way pararaphs are broken 
> into lines
> 6 is often better than in the avarage typesetting system.
> 
> 1 manual A: handbook B     2 name A: concept B,C     typographical A:
> computational B, euphoric C   4 manual A: handbook B (as in l. 1)
> 
> On Sep 23, 2003, at 5:46 PM, Hans Hagen wrote:
> 
>> At 09:12 23/09/2003 -0600, you wrote:
>>
>>> Hi Thomas,
>>>
>>> "Thomas A.Schmitz" wrote:
>>>
>>> > In March/April 2002, Hans and Idris had an interesting exchange about
>>> > the topic "critical editions in context" here in ntg-context; the main
>>> > question was whether the functionality of edmac could be 
>>> implemented in
>>> > context. I'd be curious to know whether anything came out of it, I
>>> > couldn't find any follow-up.
>>>
>>> Hans has already done some preliminary work in this direction. I 
>>> could not
>>> completely test it because the implementations used hooks from e-TeX. 
>>> Now
>>> that eOmega/Aleph is available I will be able to be a bit more 
>>> proactive in
>>> testing/suggesting things.
>>>
>>> I don't remember if Hans added the xperimental stuff for critical 
>>> editions
>>> to the latest beta. But I'm going to have to start testing this stuff 
>>> soon,
>>> because the next issue of our journal is supposed to have a couple of 
>>> small
>>> Arabic critical editions in it.
>>
>>
>> if i'm right, you have somewhere:
>>
>> \input page-nnt
>> \input core-nnt
>> \input core-lnt
>>
>> (multiple footnote classes, arbitrary footnote placement, line refs in 
>> footnotes and so)
>>
>> Hans
> 
> 
> _______________________________________________
> ntg-context mailing list
> ntg-context at ntg.nl
> http://www.ntg.nl/mailman/listinfo/ntg-context
> 
> 
> 


-- 

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
      tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                              | www.pragma-pod.nl
-----------------------------------------------------------------



More information about the ntg-context mailing list