Hi Thomas,
Am 14.11.2013 um 21:55 schrieb Thomas A. Schmitz
On 11/14/2013 09:40 PM, Philipp Gesang wrote:
What I’d consider the most pressing issue, pertaining both to Context and to TeX as a whole, would be text streams a.k.a. parallel typesetting. It was discussed on the list a couple times already and at one point someone collected examples [1]. Also, I sketched the current state of parallel texts elsewhere [2].
For certain values of "pressing" :-) Two pessimistic remarks about that: (1) I experimented with a mechanism that Hans build for mkii a while ago, and I found it difficult to decide how to define what was expected of parallel typesetting. In the end, I wasn't convinced that an entirely automated version was possible at all. (2) I'm afraid that's not part of the present project and is related neither to critical editions nor to bibliographies.
I have to strongly disagree with you here. A critical edition is only a specialized case of parallel texts! You two or more editions that are contrasted/compared to each other. Naturally, it must be bibliographically annotated and there are the comments of the author of the critical edition. The editions have to be typeset in parallel. There are many ways how an author can lay this out. In the far past it was common just to stack the contrasted versions on top of each other! Very very ugly. Lots of examples in libraries. More recent ways are to use column. Yet, the more editions involved the harder it is to place on one page. For such cases it would be best to spread them across two facing pages. The problem with the two page setup is synchronizing the comments, notes, discussion of the critical edition's author. For a half way pleasing layout these should interplaced between the contrasted editions across the two pages. Yes, not an easy task. I agree that it is hard to automate the synchronization of text passages. The only viable approach would be at the paragraph level. A line level approach can only be achieved by interaction of the author of the critical edition with synchronization marks of some sort inside the editions. Early, in my education in Computer Linguistics, decades ago, we had project where we wrote a program for entry of critical editions. The editions/texts and comments were entered in parallel on the tty-terminal screen and stored in a database. At that time we where no interested in fancy output and used a simple stacked output. As you probably know yourself, it is the entry and synchronization of the editions that is the problem an not as much the layout itself, though that is hard enough by itself. I do not see any way to do this in a normal linear single pass process. The question is in how far ConTeXt can support this task. 1) provide possibilities of laying out the texts synchronized in columns, stacks and two page layouts. Footnotes, under, columns, pages or across either. Another, nice feature would be the availability of marginals in a synchronized way. This should be a generalized module or set of commands as it can be used in many other fields be critical editions. In other words a parallel texts layout package: \defineparalleltextlayout[name][…] \setupparalleltextlayout[name][…]{…} \defineparalleltextpart[name][..] \setupparalleltextpart[name][…]{…} \startparalleltext[name][…] \stopparalleltext . . . 2) providing commands that define which parts belong together I would suggest that this be done mostly on the Lua side as you can then develop a database of sorts and worry about the layout/typesetting of the critical edition later. A package for marking up the editions directly. \defineeditionslayout[name][…] \setupeditionslayout[name][…]{…} \defineedition[name][..] \setupedition[name][…]{…} \starteditionsl[name][…] \stopeditions \starteditiontext{name}{text} \stopeditiontext \startauthorremarks \stopauthorsremarks . . . desired MWE: % definitions and setups \starttext % some text \starteditions[style1] \starteditiontext{edition1} % some text \stopeditiontext \starteditiontext[edition2] % some text \stopeditiontext \starteditiontext[edition3] % some text \stopeditiontext \startauthorremarks % remark \stopauthorremarks \stopeditions % some more text \starteditions[style1] \starteditiontext{edition2} % some text \stopeditiontext \starteditiontext{edition1} % some text \stopeditiontext \startauthorremarks % remark \stopauthorremarks \starteditiontext{edition3} % some text \stopeditiontext \stopeditions % some more text \starteditions[style2] \starteditiontext{edition1} % some text \stopeditiontext \starteditiontext{edition2} % some text \stopeditiontext \starteditiontext{edition3} % some text \stopeditiontext \stopeditions \stoptext 3) Provide Lua Tools to help automate the process of synchronization of large texts. This would provide a database/knowledge base of the texts which can be then integrated into a critical edition typeset in ConTeXt. A package could already integrate the commands from 2 or that can be converted into a file(s) with commands of 2 that then gets edited by the author of the critical edition. I have just a brain stormed possible starting point. It as you can see it has quite some felixiblity as to how the texts is entered and ConTeXt does some rearranging during typesetting. One type of critical edition we have not discussed is when the author whats to work on a word basis. But, that is even a bigger can of worms for collating the data/texts. Most of what I have describe it probably obvious to you, yet Hope this helps regards Keith.
Looking forward to status reports! Will the improvements be directly merged into Context or do you prefer releasing it as a self-contained module?
During development, we need to keep the code separate since we need to document what we do for our funding agency, but it will be part of ConTeXt.
Thomas ___________________________________________________________________________________ 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 ___________________________________________________________________________________