]> git.donarmstrong.com Git - lilypond.git/commitdiff
Doc-de: update for engraving essay
authorTill Paala <till.rettig@gmx.de>
Mon, 15 Mar 2010 16:09:12 +0000 (18:09 +0200)
committerTill Paala <till.rettig@gmx.de>
Fri, 19 Mar 2010 10:10:00 +0000 (12:10 +0200)
Documentation/de/essay.tely
Documentation/de/essay/colorado.bib [new file with mode: 0644]
Documentation/de/essay/computer-notation.bib [new file with mode: 0644]
Documentation/de/essay/engraving.itely
Documentation/de/essay/engravingbib.bib [new file with mode: 0644]
Documentation/de/essay/html-long.bst [new file with mode: 0644]
Documentation/de/essay/literature.itely

index dbda6b668f216a2d6b27626d04188d623b2e0410..957f3b53a7b16c72a3285a318e6855a01b3693e9 100644 (file)
@@ -1,6 +1,6 @@
 \input texinfo @c -*- coding: utf-8; mode: texinfo; -*-
 @ignore
-    Translation of GIT committish: 83c1d1a6ee4e89f7f913fab904816e6c033b6b04
+    Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
@@ -55,6 +55,8 @@ Copyright @copyright{} 2002--2010 bei den Autoren.
 
 @contents
 
+@allowcodebreaks false
+
 @include essay/engraving.itely
 @include essay/literature.itely
 
diff --git a/Documentation/de/essay/colorado.bib b/Documentation/de/essay/colorado.bib
new file mode 100644 (file)
index 0000000..8b78dde
--- /dev/null
@@ -0,0 +1,524 @@
+%
+% TITLE=University of Colorado Engraving music bibliography
+% AUTHOR=Alyssa Lamb (edited & converted to bibtex by HWN)
+%
+
+@Book {jacob47:_music,
+       author ={Jacob, Archibald},
+       year=1947,
+       title = {Musical handwriting : or, How to put music on paper : A handbook for all musicians, professional and amateur},
+       address ={London},
+       publisher ={Oxford University Press}, 
+       note = {subject: Musical notation},
+}
+
+@Book{brandt:_stand_chord_symbol_notat,
+       author ={Carl Brandt and Clinton Roemer},
+       title = {Standardized Chord Symbol Notation},
+       address={Sherman Oaks, CA},
+       publisher={Roerick Music Co.},
+       note ={subject: musical notation},
+}
+
+@Book{johnson46:_how,
+       author = {Johnson, Harold M},
+       year = 1946,
+       title = {How to write music manuscript an exercise-method handbook for the  music student, copyist, arranger, composer, teacher},
+       publisher={Carl Fischer, Inc.},
+       address= {New York},
+       note = {subject: Musical notation --Handbooks, manuals},
+}
+
+@Book{sadie90:_music_print_publis,
+       title = {Music Printing & Publishing},
+       author ={Donald W. Krummel \& Stanley Sadie},
+       year = 1990,
+       publisher= {Macmillan Press},
+       note ={subject: musical notation},
+}
+
+@Book{foss:_music_print,
+       author={Foss, Hubert},
+       title = {Music Printing},
+       series = {Practical Printing and Binding},
+       address={London},
+       publisher={Oldhams Press Ltd., Long Acre},
+       note ={subject: musical notation},
+}
+
+@Book{steele03:_earlies_englis_music_print,
+       author = {Steele, Robert},
+       year = 1903,
+       title = {The Earliest English Music Printing},
+       address={London},
+       note= {subject: history of music printing and engraving},
+}
+
+@Book{austin:_story_music_print,
+       author={Austin, Ernest},
+       title = {The Story of Music Printing},
+       address={London},
+       publisher={Lowe and Brydone Printers, Ltd.},
+       note= {subject: history of music printing and engraving},
+
+}
+
+
+
+@Book{unknown_author:_pictor_histor_music_print,
+       author={unknown author},
+       title = {Pictorial History of Music Printing},
+       address={Elhardt, Indiana},
+       publisher={H. and A. Selmer, Inc.},
+       note= {subject: history of music printing and engraving},
+
+}
+
+@Book{wintermitz55:_music_autog_montev_hindem,
+       author = {Wintermitz, Emmanuel},
+       year = 1955,
+       title = {Musical Autographs from Monteverdi to Hindemith},
+       address={Princeton},
+       publisher={Princeton University Press},
+       note= {subject: history of music printing and engraving},
+
+}
+
+
+@Book{novello47:_some_accoun_method_music_print,
+
+       author = {Novello, A},
+       year = 1847,
+       title = {Some Account of the Methods of Musick Printing, with Specimens of the Various Sizes of Moveable Types and of Other Matters},
+       address={London},
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{chrsander18:_sketc_histor_music,
+       author={Chrsander, F.},
+       year={18??},
+       title={A Sketch of the HIstory of Music printing, from the 15th to the 16th century},
+       note={ subject: history of music printing and engraving},
+}
+
+@Article {squire1897,
+       author = {Squire, W},
+       year = 1897,
+       title = {Notes on Early Music Printing},
+       journal = {Bibliographica},
+       volume={iii},
+       number=99,
+       note={ subject: history of music printing and engraving},
+
+}
+
+@Article{meyer35:_print_music,
+       author = {Meyer, K. and O'Meara, J},
+       year = 1935,
+       title = {The Printing of Music, 1473-1934},
+       journal = {The Dolphin},
+       volume={ ii},
+       pages={ 171--207},
+       note={ subject: history of music printing and engraving},
+
+}
+%% 4th ver.,
+@Article{pattison39:_notes_early_music_print,
+       author = {Pattison, B},
+       year = 1939,
+       title = {Notes on Early Music Printing},
+       journal = {The Library},
+       note={subject: history of music printing and engraving},
+       volume={xix},
+       pages={389-421}, 
+}
+
+@Book{king64:_four_hundr_years_music_print,
+       author = {King, H},
+       year = 1964,
+       title = {Four Hundred Years of Music Printing},
+       address={London},
+       note={ subject: history of music printing and engraving},
+}
+
+
+%(Rev.1961).
+@Book{deutsch46:_music_number,
+       author={Deutsch, O.F.},
+       year =1946,
+       title = {Music Publishers' Numbers},
+       address={London},
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{marco62:_earlies_music_print_contin_europ,
+       author = {Marco, G.A},
+       year = 1962,
+       title = {The Earliest Music Printers of Continental Europe: a Checklist of Facsimiles Illustrating Their Work},
+       address={Charlottesville, Virginia},
+       note={ subject: history of music printing and engraving},
+}
+
+@Article{kinkeldey32:_music_and_music_print_incun,
+       author = {Kinkeldey, O},
+       year = 1932,
+       title = {Music And Music Printing in Incunabula},
+       journal = {Papers of the Bibliographical Society of America},
+       volume={ xxvi},
+       pages={89-118},
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{oldman34:_collec_music_first_edition,
+       author = {Oldman, C.B},
+       year = 1934,
+       title = {Collecting Musical First Editions},
+       address={London},
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{carter34:_new_paths_book_collec,
+       author={Carter, J},
+       year=1934,
+       title = {New Paths in Book Collecting},
+       address={London},
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{krummel58:_graph_analy_applic_early_americ_engrav_music,
+       author={Krummel, D.W.},
+       year=1958,
+       month=9,
+       title = {Graphic Analysis in Application to Early American Engraved Music},
+       journal = {Notes},
+       volume={xvi},
+       pages=213,
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{krummel71:_oblon_format_early_music_books,
+       author = {Krummel, D.W},
+       year = 1971,
+       title = {Oblong Format in Early Music Books},
+       journal = {The Library},
+       volume={5th ser., xxvi},
+       pages=312,
+       note={ subject: history of music printing and engraving},
+}
+
+@Book{king73:_anniv_music_print,
+       author = {King, A.H},
+       year = 1973,
+       title = {The 50th Anniversary of Music Printing},
+}
+
+@Book{rastall82:_wester,
+       author={Rastall, Richard},
+       year=1982,
+ title = {The notation of Western music : an introduction},
+       address={New York, N.Y.},
+       publisher={St. Martin's Press},
+       note = {Musical notation},
+
+
+}
+
+@Book{tappolet47:_la_notat_music,
+       author = {Tappolet, Willy},
+       year = 1947,
+       title = {La Notation Musicale},
+       address={Paris},
+       note={subject: general notation},
+       publisher={Neuch\^atel},
+}
+
+@Book{williams03:_story_notat,
+       author = {Williams, C.F. Abdy},
+       year = 1903,
+       title = {The Story of Notation},
+       address={New York},
+       publisher={Charles Scribner's Sons},
+       note={subject: general notation},
+}
+
+@Book{apel53,
+       author={Apel, Willi},
+       year=1953,
+       title = {The notation of polyphonic music, 900-1600},
+       address={Cambridge, Mass},
+       institution={Mediaeval Academy of America},
+       note = {Musical notation},
+}
+
+@Book{berger93:_mensur,
+       author={Berger, Anna Maria Busse},
+       year=1993,
+       title = {Mensuration and proportion signs : origins and evolution},
+       address={Oxford, England},
+       publisher={Clarendon Press},
+       scnd_address={New York},
+       scnd_publisher={Oxford University Press },
+       note={subject: early notation},
+}
+
+@Book{parrish57,
+       author={Parrish, Carl},
+       year=1957,
+ title = {The notation of medieval music},
+       address={New York},
+       publisher={Norton},
+       note = {Musical notation},
+
+
+}
+
+@Book{parrish46:_notat_mediev_music,
+       author = {Parrish, Carl},
+       year = 1946,
+       title = {The Notation of Medieval Music},
+       address={New York},
+       publisher={Carl Fischer, Inc.},
+       note={subject: early notation},
+}
+
+@Book{patch49:_genes_music,
+       author = {Patch, Harry},
+       year = 1949,
+       title = {Genesis of a Music},
+       address={Madison},
+       publisher={University of Wisconsin Press},
+       note={subject: early notation},
+}
+
+@Book{cage69:_notat,
+       author={Cage, John},
+       year=1969,
+  title = {Notations},
+       address={New York},
+       publisher={Something Else Press},
+       note = {Music, Manuscripts, Facsimiles.
+
+       Facsimiles of holographs from the Foundation for Contemporary
+       Performance Arts, with text by 269 composers, but rearranged using
+       chance operations.,V)} },
+
+@Book{gaburo77:_notat,
+       author = {Gaburo, Virginia},
+       year = 1977,
+       title = {Notation},
+       publisher={Lingua Press},
+       address={La Jolla, California},
+       note = {A Lecture about notation, new ideas about},
+}
+
+@Book{risatti75:_new_music_vocab,
+       author = {Risatti, Howard},
+       year = 1975,
+       title = {New Music Vocabulary},
+       address={Urbana, Illinois},
+       publisher={University of Illinois Press},
+       note = {A Guide to Notational Signs for Contemporary Music},
+}
+
+
+
+@Book{cowell30:_new_music_resour,
+       author = {Cowell, Henry},
+       year = 1930,
+       title = {New Musical Resources},
+       address={New York},
+       publisher={Alfred A. Knopf, Inc.},
+       note={subject: 20th century notation},
+}
+
+@Article{cowell27:_our_inadeq_notat,
+       author = {Cowell, Henry},
+       year = 1927,
+       title = {Our Inadequate Notation},
+       journal = {Modern Music},
+       volume=4,
+       number=3,
+       note={subject: 20th century notation},
+
+}
+
+@Book{bowers92:_music_letter,
+       author = {Bowers, Roger},
+       year = 1992,
+       title = {Music & Letters},
+       volume=73,
+       number=3,
+       month={August},
+       pages={347(52)},
+       note={Some reflection upon notation and proportion in Monteverdi's mass and vespers},
+}
+
+@Book{brainard92:_curren_music,
+       author = {Brainard, Paul},
+       year = 1992,
+       title = {Current Musicology},
+       number=50,
+       month={July-Dec},
+       pages={21(26)},
+       note={Proportional notation in the music of Schutz and his contemporaries in the 17th Century},
+}
+
+@Book{monelle89:_compar_liter,
+       author = {Monelle, Raymond},
+       year = 1989,
+       title = {Comparative Literature},
+       volume=41, number=3, 
+       month={Summer},
+       pages={252(18)},
+
+       note={Music notation and the poetic foot},
+}
+
+@Book{pinegar93:_curren_music,
+       author = {Pinegar, Sandra},
+       year = 1993,
+       title = {Current Musicology},
+       number=53,
+       month={July},
+       pages={99(10)},
+       note={The seeds of notation and music paleography.},
+}
+
+@Book{smith90:_curren_music,
+       author = {Smith, Norman E},
+       year = 1990,
+       title = {Current Musicology},
+       number={45-47},
+       month={Jan-Dec},
+       pages={283(22)},
+       note={The notation of fractio modi.},
+}
+
+@Book{treitler92:_journ_music,
+       author = {Treitler, Leo},
+       year = 1992,
+       title = {The Journal of Musicology},
+       volume=10,
+       number=2,
+       month={Spring},
+       pages={131(61)},
+
+       note={ The unwritten and written transmission, of medieval chant
+       and the start-up of musical notation.
+
+       Notational practice developed in medieval music to address the written tradition for chant which interacted with the unwritten vocal tradition.},
+}
+
+@Book{west94:_music_letter,
+       author = {West, M.L},
+       year = 1994,
+       title = {Music & Letters},
+       volume=75,
+       number=2,
+       month={May},
+       pages={161(19)},
+       note={The Babylonian musical notation and the Hurrian melodic texts. 
+
+       A new way of deciphering the ancient Babylonian musical notation. 
+}
+}
+
+@Book{brown86:_music_quart,
+       author = {Brown, Earle},
+       year = 1986,
+       title = {Musical Quarterly},
+       volume=72,
+       month={Spring},
+       pages={180(22)},
+       note={The notation and performance of new music.},
+}
+
+@Book{eggleston94:_notes,
+       author = {Eggleston, Suzanne},
+       year = 1994,
+       title = {Notes},
+       volume=51,
+       number=2,
+       month={Dec},
+       pages={657(7)}, 
+       journal={New periodicals},
+       note={A list of new music periodicals covering the period
+       Jun.-Dec. 1994. Includes aims, formats and a description of the
+       contents of each listed periodical. Includes Music Notation News},
+
+}
+
+@Book{fuller89:_journ_music,
+       author = {Fuller, David},
+       year = 1989,
+       title = {The Journal of Musicology},
+       volume=7,
+       number=1,
+       month={Winter},
+       pages={21(8)},
+       note={
+       Notes and inegales unjoined: defending a definition. (written-out inequalities in music notation).        
+}},
+
+@Book{jones90:_persp_new_music,
+
+       author = {Jones, David Evan},
+       year = 1990,
+       title = {Perspectives of New Music},
+       note={Speech extrapolated. (includes notation)}
+}
+
+@Book{lependorf89,
+       author = {Lependorf, Jeffrey},
+       year = 1989,
+       journal={Perspectives of New Music},
+       volume=27,
+       title = {?},
+ number=2,
+       month={Summer},
+       pages={232(20)},
+       note={Contemporary notation for the shakuhachi: a primer for composers. (Tradition and Renewal in the Music of Japan) },
+
+}
+
+@Book{rastall93:_music_letter,
+       author = {Rastall, Richard},
+       year = 1993,
+       title = {Music & Letters},
+       volume=74, number=4,
+       month={November},
+       pages={639(2)},
+
+       note={Equal Temperament Music Notation: The Ailler-Brennink
+       Chromatic Notation. Results and Conclusions of the Music Notation
+       Refor by the Chroma Foundation (book reviews).  },
+}
+
+@Article {Francois92,
+       author={Francois, Jean-Charles},
+       journal = {Perspectives of New Music},
+       volume={30},
+       number={1}, month={Winter},
+       pages={6(15)},
+       year={1992},
+
+       note={subject: Modern music has outgrown notation. While the
+            computer is used to write down music with accuracy never
+            before achieved, the range of modern sounds has surpassed
+            the relevance of the computer...},
+
+       title={Writing without representation, and unreadable notation.},
+}
+
+@Book{hamel89,
+       author = {Hamel, Keith A},
+       year = 1989,
+       journal = {Perspectives of New Music},
+       volume=27,
+       number=1,
+       month={Winter},
+       pages={70(14)},
+
+       title={A design for music editing and printing software based
+on notational syntax}, }
+
diff --git a/Documentation/de/essay/computer-notation.bib b/Documentation/de/essay/computer-notation.bib
new file mode 100644 (file)
index 0000000..b5887cb
--- /dev/null
@@ -0,0 +1,771 @@
+%
+% TITLE=The music notation with computer bibliography
+% AUTHOR=Han-Wen Nienhuys
+%
+
+@String{CitH = {Computing and the Humanities}}
+@String{CMJ = {Computer Music Journal}}
+
+
+
+@Book {smith73,
+  year =  {1973},
+  title = {Editing and Printing Music by Computer},
+  author = {Leland Smith},
+  totalentry = {Journal of Music Theory},
+  volume={17},
+  pages ={292-309},
+
+  note = {Gourlay\cite{gourlay86} writes: A discussion of Smith's
+music-printing system SCORE}
+
+}
+
+@Article {byrd74,
+  year =  {1974},
+  title = {A System for Music Printing by Computer},
+  author = {Donald Byrd},
+  journal = {Computers and the Humanities},
+  volume ={8},
+  pages ={161-72},
+}
+
+
+@Article{ericson75,
+  author =      {R. F. Ericson},
+  title =       {The DARMS Project: A status report},
+  journal =     {Computing in the humanities},
+  year =        1975,
+  volume =      9,
+  number =      6,
+  pages =       {291--298},
+  note = {Gourlay\cite{gourlay86} writes: A discussion of the design
+  and potential uses of the DARMS music-description language.}
+}
+
+% Gomberg
+@PhdThesis {gomber75,
+  year =  {1975},
+  title = {A Computer-Oriented System for Music Printing},
+  author = {David A. Gomberg},
+  school = {Washington University},
+}
+
+@Book {gomberg,
+  title = {A Computer-oriented System for Music Printing},
+  author = {David A.  Gomberg},
+  journal  = CitH,
+  volume={11},
+  month = {march},
+  year = {1977},
+  pages = {63-80},
+
+  note = {Gourlay \cite{gourlay86} writes: "A discussion of the
+  problems of representing the conventions of musical notation in
+  computer algorithms."}
+}
+
+
+@TechReport{Ornstein83,
+  author={Ornstein, Severo M. and John Turner Maxwell III},
+  title={Mockingbird: A Composer's Amanuensis},
+  institution={Xerox Palo Alto Research Center},
+  address={3333 Coyote Hill Road, Palo Alto, CA, 94304},
+  number={CSL-83-2},
+  month={January},
+  year={1983}
+}
+
+@Article{Ornstein84,
+  author={Ornstein, Severo M. and John Turner Maxwell III},
+  title={Mockingbird: A Composer's Amanuensis},
+  journal= {Byte},
+  volume= 9,
+  month = {January},
+  year= { 1984},
+
+  note={A discussion of an interactive and graphical computer system
+for music composition}
+
+}
+
+% byrd
+@PhdThesis {byrd85,
+  year =  {1985},
+  title = {Music Notation by Computer},
+  author = {Donald Byrd},
+  school = {Indiana University},
+
+  note = {Describes the SMUT (sic) system for automated music printout.}
+}
+
+@InProceedings{assayaag86,
+  author =      {G. Assayaag and D. Timis},
+  title =       {A Toolbox for music notation},
+  booktitle =   {Proceedings of the 1986 International Computer Music Conference},
+  year =       1986
+}
+
+@TechReport{roush88,
+  year = {1988},
+  title = {Music Formatting Guidelines},
+  author = {D. Roush},
+  number = {OSU-CISRC-3/88-TR10}, 
+  institution = {Department of Computer and Information Science, The Ohio State University},
+
+  note = {Rules on formatting music formulated for use in
+  computers. Mainly distilled from [Ross] HWN},
+
+}
+
+
+@Article{byrd94,
+  author =      {Donald Byrd},
+  title =       {Music Notation Software and Intelligence},
+  journal =     {Computer Music Journal},
+year = 1994,
+pages = {17--20},
+  volume =      18,
+  number =      1,
+
+  note = {Byrd (author of Nightinggale) shows four problematic
+fragments of notation, and rants about notation programs that try to
+exhibit intelligent behaviour. HWN}
+}
+
+
+@Article{field-richards93,
+  author =      {H.S. Field-Richards},
+  title =       {Cadenza: A Music Description Language},
+  journal =     CMJ,
+  year =        1993,
+  volume =      17,
+  number =      4,
+
+  note = {A description through examples of a music entry language.
+Apparently it has no formal semantics.  There is also no
+implementation of notation convertor. HWN}
+
+}
+
+@Article{bielawa93,
+  author =      {Herbert Bielawa},
+  title =       {Review of Sibelius 7},
+  journal =     CMJ,
+  year =        {1993?},
+
+  note = {A raving review/tutorial of Sibelius 7 for Acorn.  (And did
+they seriously program a RISC chip in ... assembler ?!) HWN}
+
+
+}
+
+@Article{sloan93,
+  author =      {Donald Sloan},
+  title =       {Aspects of Music Representation in HyTime/SMDL},
+  journal =     CMJ,
+  year =        1993,
+  volume =      17,
+  number =      4,
+
+note = {An introduction into HyTime and its score description variant
+SMDL.  With a short  example that is quite  lengthy in SMDL}
+
+}
+
+@Article{wiggins93,
+  author =      {Geraint Wiggins and Eduardo Miranda and Alaaaan Smaill and Mitch Harris},
+  title =       {A Framework for the evaluation of music representation systems},
+  journal =     CMJ,
+  year =        1993,
+  volume =      17,
+  number =      3,
+
+  note = {A categorisation of music representation systems (languages,
+OO systems etc) splitted into high level and low level expressiveness.
+The discussion of Charm and parallel processing for music
+representation is rather vague. HWN}
+
+}
+
+
+
+@Article{dannenberg93,
+  author =      {Roger B. Dannenberg},
+  title =       {Music Representation: Issues, Techniques, and Systems},
+  journal =     CMJ,
+  year =        1993,
+  volume =      17,
+  number =      3,
+  url = {http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.44.6067},
+
+  note = {This article  points to some problems and solutions with music
+representation. HWN},
+
+}
+
+@Article{rothstein93,
+  author =      {Joseph Rothstein},
+  title =       {Review of Passport Designs' Encore Music Notation Software},
+  journal =     CMJ,
+  year =        {?},
+
+
+}
+
+
+
+@Article{belkin94,
+  author =      {Alan Belkin},
+  title =       {Macintosh Notation Software: Present and Future},
+  journal =     CMJ,
+  year =        1994,
+  volume =      18,
+  number =      1,
+
+  note = {Some music notation systems are analysed for ease of use,
+  MIDI handling.  The article ends with a plea for a standard notation
+  format. HWN},
+
+}
+
+@InProceedings{montel97,
+  author =      {Dominique Montel},
+  title =       {La gravure de la musique, lisibilit\'e esth\'etique, respect de l'oevre},
+  booktitle =   {Musique \& Notations},
+  year =        1997,
+  address={Lyon},
+  editors ={Genevois \& Orlarey}
+}
+
+
+
+
+@Book {CASR,
+  note = {Annual editions since 1985, many containing surveys of music typesetting technology. SP},
+  title = {Directory of Computer Assisted Research in Musicology},
+  author = {Walter B Hewlett and Eleanor Selfridge-Field},
+  totalentry = {Menlo Park, CA: Center for Computer Assisted Research in the Humanities},
+}
+
+
+@Book{selfridge-field97:_beyon_midi,
+  title =       {Beyond MIDI: the handbook of musical codes},
+  editor =      {Eleanor Selfridge-Field},
+  publisher =   {MIT Press},
+  year =        1997,
+
+  note = {A description of various music interchange formats.}
+}
+
+
+@InProceedings{hoos98:_guido_music_notat_format,
+title={The {GUIDO} Music Notation Format---A Novel Approach
+for Adequately Representing Score-level Music},
+author = {H. H. Hoos and K. A. Hamel and K. Renz and J. Kilian},
+booktitle = {Proceedings of International Computer Music Conference},
+year = 1998,
+pages = {451--454},
+}
+
+@Article {blostein91,
+
+  note = {This paper provides a overview of the algorithm used in LIME
+  for spacing individual lines. HWN},
+
+  year =  {1991},
+  title = {Justification of Printed Music},
+  author = {Dorothea Blostein and Lippold Haken},
+  journal   = {Communications of the ACM},
+  volume= {J34},
+  number= {3},
+  month= {March},
+  pages = {88-99},
+}
+
+
+@Article {haken93,
+  year =  {1993},
+  title = {The Tilia Music Representation: Extensibility, Abstraction, and Notation Contexts for the Lime Music Editor},
+  author = {Lippold Haken and Dorothea Blostein},
+  journal = {Computer Music Journal},
+  volume= {17},
+  number={3},
+  pages = {43--58},
+}
+@Article{blostein94,
+  author =      {Dorothea Blostein and Lippold Haken},
+  title =       {The Lime Music Editor: A Diagram Editor Involving Complex
+  Translations},
+  journal =     {Software Practice and Experience},
+  year =        {1994},
+  volume =      {24},
+  number =      {3},
+  month =       {march},
+  pages =       {289--306},
+
+  note = {A description of various conversions, decisions and issues
+relating to this interactive editor HWN},
+
+}
+
+
+
+@InProceedings{haken95,
+  year =  {1995},
+  title = {A New Algorithm for Horizontal Spacing of Printed Music},
+  author = {Lippold Haken and Dorothea Blostein},
+  booktitle = {International Computer Music Conference},
+  address={Banff},
+  month={Sept},
+  pages = {118-119},
+
+  note = {This describes an algorithm which uses springs between
+adjacent columns. }, }
+
+
+@InProceedings{bouzaiene98:_une,
+  author =      {Nabil Bouzaiene and Lo\"ic Le Gall and Emmanuel Saint-James},
+  title =       {Une biblioth\`eque pour la notation  musicale baroque},
+  booktitle =   {EP '98},
+  year =        1998,
+  series =      {LNCS},
+
+  note = {Describes ATYS, an extension to Berlioz, that can mimick
+  handwritten baroque style beams}
+}
+
+
+
+
+@InProceedings{balaban88,
+  author =      {M. Balaban},
+  title =       {A Music Workstation Based on Multiple Hierarchical Views of Music},
+  booktitle =   {Proceedings of the 1988 International Computer Music Conference},
+  year =        1988,
+  address =     {San Francisco},
+  organization = {International Computer Music Association}
+}
+
+%
+% MusiCopy
+%
+@TechReport {gourlay87-spacing,
+annote = {Algorithm for generating spacing in one line of (polyphonic) music, tailored for use with MusiCopy. LilyPond uses a variant of it.},
+  year =  {1987},
+  title = {Spacing a Line of Music,},
+  author = {John S. Gourlay},
+  number = {OSU-CISRC-10/87-TR35},
+  institution ={Department of Computer and Information Science, The Ohio State University},
+}
+
+
+@TechReport {parish87,
+  annote = {A brief overview of {MusiCopy}},
+  year =  {1987},
+  title = {{MusiCopy}: An automated Music Formatting System},
+  author = {Allen Parish and Wael A. Hegazy and John S. Gourlay and Dean K. Roush and F. Javier Sola},
+  totalentry = {OSU-CISRC-10/87-TR29},
+  institution ={Department of Computer and Information Science, The Ohio State University},
+}
+
+@TechReport {gourlay87-formatting,
+  note = {This paper discusses the development of algorithms for the
+formatting of musical scores (from abstract). It also appeared at
+PROTEXT III, Ireland 1986},
+
+  year =  {1987},
+  title = {Computer Formatting of Music},
+  author = {John S. Gourlay and A. Parrish
+and D. Roush and F. Sola and Y. Tien},
+  number = {OSU-CISRC-2/87-TR3},
+  institution ={Department of Computer and Information Science,
+The Ohio State University},
+}
+
+
+@TechReport {hegazy87,
+  year =  {1987},
+  title = {On the Implementation of the {MusiCopy} Language Processor,},
+
+  author = {Wael A. Hegazy},
+  number = {OSU-CISRC-10/87-TR34},
+  institution={Department of Computer and Information Science, The Ohio State University},
+
+  note = {Describes the "parser" which converts {MusiCopy} MDL to
+  MusiCopy Simultaneities and columns.
+
+MDL is short for Music Description Language\cite{gourlay86}. It
+accepts music descriptions that are organised into measures filled
+with voices, which are filled with notes. The measures can be arranged
+simultaneously or sequentially.  To address the 2-dimensionality,
+almost all constructs in MDL must be labeled.
+
+MDL uses begin/end markers for attribute values and spanners.
+Rightfully the author concludes that MusiCopy must administrate a
+"state" variable containing both properties and current spanning symbols.
+
+MusiCopy attaches graphic information to the objects constructed in
+the input: the elements of the input are partially complete graphic
+objects.
+
+},
+
+}
+
+
+@TechReport {hegazy87-breaking-tr,
+
+annote = {This generalizes \TeX's breaking algorithm to music. It also
+appeared in Document Manipulation and Typography, J.C. van Vliet (ed)
+1988},
+
+  year =  {1987},
+
+  title = {Optimal line breaking in music},
+  author = {Wael A. Hegazy and John S. Gourlay},
+  number = {OSU-CISRC-8/87-TR33},
+  institution={Department of Computer and Information Science, The Ohio State University,},
+}
+
+@InProceedings{hegazy88:_optim,
+  author = {Wael A. Hegazy and John S. Gourlay},
+booktitle = {Proceedings of the International Conference on
+Electronic Publishing, Document Manipulation and Typography. Nice (France)},
+month = {April},
+year =1988,
+editor={J. C. van Vliet},
+publisher = {Cambridge University Press},
+ISBN={0-521-36294-6},
+  title = {Optimal line breaking in music},
+}
+
+
+@TechReport {roush87,
+  note = {User manual of MusiCopy. },
+
+  year =  {1987},
+  title = {Using {MusiCopy}},
+  author = {Dean K. Roush},
+  number = {OSU-CISRC-18/87-TR31},
+  institution={Department of Computer and Information Science, The Ohio State University},
+}
+
+
+@TechReport {parrish87-simultaneities,
+
+note = {This note discusses
+  placement of balls, stems, dots which occur at the same moment
+  ("Simultaneity")},
+
+  year =  {1987},
+  title = {Computer Formatting of Musical Simultaneities,},
+  author = {A. Parrish and John S. Gourlay},
+  institution={Department of Computer and Information Science, The Ohio State University},
+  number = {OSU-CISRC-10/87-TR28},
+}
+
+
+@TechReport {sola87,
+  note = {Overview of a procedure for generating slurs},
+  year =  {1987},
+  title = {Computer Design of Musical Slurs, Ties and Phrase Marks,},
+  author = {F. Sola},
+  institution={Department of Computer and Information Science, The Ohio State University},
+  number = {OSU-CISRC-10/87-TR32},
+}
+
+
+@Article {gourlay86,
+  note = {This paper describes the {MusiCopy} musicsetting system and an input language to go with it.},
+
+  year =  {1986},
+  title = {A language for music printing},
+  author = {John. S. Gourlay},
+  journal = {Communications of the ACM},
+   volume= {29},
+  number ={5},
+  pages = {388--401},
+}
+
+
+@TechReport {sola87-beams,
+
+institution={Department of Computer and Information Science, The Ohio
+State University},
+
+  note = {Calculating beam slopes HWN},
+  year =  {1987},
+  title = {Design of Musical Beams,},
+  author = {F. Sola and D. Roush},
+  number = {OSU-CISRC-10/87-TR30},
+}
+
+
+@PhdThesis {page88,
+  note = {Don't ask Stephen for a copy. Write to the Bodleian Library, Oxford, or to the British Library, instead. SP},
+  year =  {1988},
+  title = {Computer Tools for Music Information Retrieval},
+  author = {Stephen Dowland Page},
+  school ={Dissertation University of Oxford},
+}
+
+
+%
+% three part study by John Gr/over
+@TechReport{grover89-symbols,
+  author =      {John Gr\/over},
+  title =       {A computer-oriented description of Music Notation.  Part I. The Symbol Inventory},
+  institution =  {Department of informatics, University of Oslo},
+  year =        1989,
+  number =      133,
+
+note = {The goal of this series of reports is a full description of
+music formatting.  As these largely depend on parameters of fonts, it
+starts with a verbose description of music symbols.
+
+ The subject is treated backwards: from general rules of typesetting
+the author tries to extract dimensions for characters, whereas the
+rules of typesetting (in a particular font) follow from the dimensions
+of the symbols.  His symbols do not match (the stringent) constraints
+formulated by eg. \cite{wanske}} }
+
+@TechReport{grover89-twovoices,
+  author =      {John Gr\/over},
+  title =       {A computer-oriented description of Music Notation. Part II: Two Voice Sharing a Staff, Leger Line Rules, Dot Positioning},
+
+  institution =  {Department of informatics, University of Oslo},
+  year =        1989,
+  number =      134,
+
+  note = {A lot rules for what is in the title are formulated.  The
+descriptions are long and verbose.  The verbosity shows that
+formulating specific rules is not the proper way to approach the
+problem.  Instead, the formulated rules should follow from more
+general rules, similar to\cite{parrish87-simultaneities}},
+}
+
+@TechReport{grover89-accidentals,
+  author =      {John Gr\/over},
+  title =       {A computer-oriented description of Music Notation. Part III: Accidental Positioning},
+  institution =  {Department of informatics, University of Oslo},
+  year =        1989,
+  number =      135,
+
+note = {Placement of accidentals crystallised in an enormous set of
+rules.  Same remarks as for \cite{grover89-twovoices} applies} }
+
+
+@PhdThesis{mueller90:_inter_bearb_musik,
+  author =      {Giovanni M\"uller},
+  title =       {Interaktive Bearbeitung konventioneller Musiknotation},
+  school =      {Eidgen\"ossischen Technischen Hochschule Z\"urich},
+  year =        1990,
+
+note = {This is about engraver-quality typesetting with computers.  It
+accepts the axiom that notation is too difficult to generate
+automatically.  The result is that a notation program should be a
+WYSIWYG editor that allows one to tweak everything.
+}
+
+}
+
+
+
+
+
+@MastersThesis{roelofs91,
+
+note = {This dutch thesis describes a monophonic typesetting system,
+  and focuses on the breaking algorithm, which is taken from Hegazy &
+  Gourlay },
+
+  year =  {1991},
+  title = {Een Geautomatiseerd Systeem voor het Afdrukken van Muziek},
+  author = {Ren\'e Roelofs},
+  school={Erasmus Universiteit Rotterdam},
+  number={45327},
+  translation = {``An automated system for printing music'' Master's Thesis Managerial Computer Science.},
+}
+
+
+@Article {filgueiras93,
+  year =  {1993},
+  title = {Representation and manipulation of music documents in SceX},
+  author = {Miguel Filgueiras and Jos\'e Paulo Leal},
+  journal= {Electronic Publishing},
+  volume={6},
+  number={4}, pages = {507--518},
+  url={http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.17.1480},
+}
+
+
+@Article {foxley87,
+
+note = {A paper on a simple TROFF preprocessor to typeset music. },
+
+  year =  {1987},
+  title = {Music --- A language for typesetting music scores},
+  author = {Eric Foxley},
+  journal = {Software --- Practice and Experience},
+  volume = {17},
+  number = {8},
+  pages = {485-502},
+}
+
+@Article {Langston90,
+
+  note = {This paper deals with some command-line
+  tools for music editing and playback. },
+
+  year =  {1990},
+  title = {Unix music tools at Bellcore},
+  author = {Peter S. Langston},
+  journal={Software --- Practice and Experience},
+  volume={20},
+  number={S1},
+  pages={47--61},
+}
+
+
+@Book {filgueiras96,
+  year = {1996},
+  title = {Implementing a Symbolic Music Processing System},
+  author = {Miguel Filgueiras},
+  totalentry = {LIACC, Universidade do Porto, 1996; submitted},
+}
+
+@Book {filgueiras?,
+  title = {Some Music Typesetting Algorithms},
+  author = {Miguel Filgueiras},
+  totalentry = {Miguel Filgueiras. ``Some Music Typesetting Algorithms''. LIACC, Universidade do Porto, forthcoming},
+}
+
+
+@Article {colorado-web,
+  author ={Alyssa Lamb},
+
+  note = {Webpages about engraving (designed with finale
+users in mind) (sic) HWN},
+
+  institution = {The University of Colorado},
+  title ={The University of Colorado Music Engraving page.},
+  HTML={http://www.cc.colorado.edu/Dept/MU/Musicpress/},
+  year={1996}
+}
+
+@Article {tablature-web,
+  note = {FAQ (with answers) about TAB, the ASCII variant of Tablature. HWN},
+  title = {how to read and write tab: a guide to tab notation},
+  author = {Howard Wright},
+  email={Howard.Wright@ed.ac.uk},
+  url={http://www.guitartabs.cc/tabfaq.shtml},
+}
+
+@Article {niff-web,
+
+  note = {Specs for NIFF, a reasonably comprehensive but binary
+  format for notation HWN},
+
+  year =  {1995},
+  title = {NIFF6a Notation Interchange File Format},
+  author = {Cindy Grande},
+  publisher={Grande Software Inc.},
+  HTML= {http://www.jtauber.com/music/encoding/niff/},
+  ftp = {ftp://blackbox.cartah.washington.edu}
+}
+
+@Article {smdl-web,
+  author = {International Organization for Standardization (ISO)},
+  title = {Information Technology - Document Description and Processing Languages - Standard Music Description Language (SMDL)},
+  pdf= {ftp://ftp.ornl.gov/pub/sgml/wg8/smdl/10743.pdf},
+  number={ISO/IEC DIS 10743},
+  year = {1992},
+  annote = {SGML instance for describing music.  Very comprehensive in music
+definition, but no support for notation / performance whatsoever (They
+basically say: "You can embed a NIFF or MIDI file")}
+}
+
+
+@Article {rader96,
+
+  note = {Describes a system called MusicEase, and explains that it
+  uses "constraints" (which go unexplained) to automatically position
+  various elements. },
+  html={http://mesastate.edu/~grader/ieeeme.pdf}, 
+  year =  {1996},
+  title = {Creating Printed Music Automatically},
+  author = {Gary M. Rader},
+  journal = {Computer},
+  volume={29},
+  number={6},
+  month={June},
+  pages = {61--69},
+}
+
+
+@MastersThesis{gall97:_creat,
+  author =      {Lo\"ic Le Gall},
+  title =       {Cr\'eation d'une police adapt\'ee \`a la notation musicale baroque},
+  school = {\'Ecole Estienne},
+  year = 1997,
+}
+
+@TechReport{droettboom00:_study_notat_descr_languag,
+  author =      {Michael Droettboom},
+  title =       {Study of music Notation Description Languages},
+  year =        2000,
+  url= {http://www.music.mcgill.ca/~ich/research/omr/levy/format.pdf},
+
+  note ={GUIDO and lilypond compared. LilyPond wins on practical
+issues as usability and availability of tools, GUIDO wins on
+implementation simplicity.}  }
+
+@PhdThesis{gieseking01:_code_gener_noten,
+  author =      {Martin Gieseking},
+  title =       {Code-basierte Generierung interaktiver Notengraphik
+
+},
+  school =      {Universit\"at Osnabr\"uck},
+  year =        2001,
+  isbn = {ISBN 3-923486-30-8}
+}
+
+@Book{hewlett01:_virtual_score,
+  editor =      {Walter B. Hewlett and Eleanor Selfridge-Field},
+  title =       {The Virtual Score; representation, retrieval and restoration},
+  publisher =   {MIT Press},
+series = {Computing in Musicology},
+  year =        2001
+}
+
+
+
+@PhdThesis{renz02:_algor_guido,
+  author =      {Kai Renz},
+  title =       {Algorithms and data structures for a music notation system based on GUIDO music notation},
+  school =      {Universit\"at Darmstadt},
+  year =        2002
+}
+
+@InBook{powell02:_music,
+  author =      {Steven Powell},
+  title =       {Music engraving today},
+  publisher =   {Brichtmark},
+  year =        2002,
+
+  note =        {A "How Steven uses Finale" manual.}
+}
+
+
+@InProceedings{nienhuys03:_lilyp,
+  author =      {Han-Wen Nienhuys and Jan Nieuwenhuizen},
+  title =       {LilyPond, a system for automated music engraving},
+  booktitle =   {XIV Colloquium on Musical Informatics},
+  year =        2003,
+  pages = {167--172},
+  address =     {Firenze},
+  month =       {May}
+}
+
index aa33c42a4857864457f276f22e65adeae7fac8c4..8b783ab94daacf1ff153add6b0d51544a463d163 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; -*-
 
 @ignore
-    Translation of GIT committish: 83c1d1a6ee4e89f7f913fab904816e6c033b6b04
+    Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
 
 
     When revising a translation, copy the HEAD committish of the
 @chapter Notensatz
 @translationof Music engraving
 
-Dieser Abschnitt erklärt die Ziele und die Architektur von LilyPond.
+Dieser Aufsatz beschreibt, wie LilyPond entstand und wie es
+benutzt werden kann, um schönen Notensatz zu erstellen.
 
 @menu
 * Die Geschichte von LilyPond::
 * Details des Notensetzens::
 * Automatisierter Notensatz::
-* Welche Symbole?::
-* Die Darstellung der Musik::
-* Beispielanwendung::
-* Anhang::
+* Ein Programm bauen::
+* LilyPond die Arbeit überlassen::
+* Notensatzbeispiele (BWV 861)::
 @end menu
 
 
 @node Die Geschichte von LilyPond
-@unnumberedsec Die Geschichte von LilyPond
+@section Die Geschichte von LilyPond
 @translationof The LilyPond story
 
-Bevor LilyPond eine Gemeinschaft von Benutzern rund um die Welt
-besaß, bevor es benutzt worden war um Noten für Kurse in der Uni
-zu erstellen oder die Partituren von Opern, die ihre erste Premiere
-erleben, bevor es einen Aufsatz über den Notensatz, Computercode
-oder wenigstens ein organisiertes Entwicklerteam gab, begann LilyPond
+Lange bevor LilyPond benutzt werden konnte, um wunderschöne
+Aufführungspartituren zu setzen, bevor es in der Lage war, Noten
+für einen Unversitätskurs oder wenigstens eine einfache Melodie zu
+setzen, bevor es eine Gemeinschaft von Benutzern rund um die Welt oder
+wenigstens einen Aufsatz über den Notensatz gab, begann LilyPond
 mit einer Frage:
 
 @quotation
@@ -53,14 +53,18 @@ ist ein schöner handgestochener Notensatz von 1950, das zweite
 Beispiel eine moderne, computergesetzte Edition.
 
 @ifnottex
+@quotation
 @noindent
 Bärenreiter BA 320, @copyright{}1950:
 
 @sourceimage{baer-suite1-fullpage,,,png}
+@end quotation
 
+@quotation
 @noindent
 Henle Nr. 666, @copyright{}2000:
 @sourceimage{henle-suite1-fullpage,,,png}
+@end quotation
 @end ifnottex
 
 Die Noten sind identisch und stammen aus der ersten Solosuite für
@@ -118,28 +122,24 @@ er die Orientierung auf der Seite verlieren.
 LilyPond wurde geschaffen, um die Probleme zu lösen, die wir in
 existierenden Programmen gefunden haben und um schöne Noten zu
 schaffen, die die besten handgestochenen Partituren imitieren.
-Während unserer Arbeit an dem Programm haben wir sehr viel gelernt
-über die Art und Weise wie ein gut gestochener Notensatz erstellt
-wird.  In diesem Aufsatz beschreiben wir einige der Aspekte, die
-wir versucht haben, mit LilyPond nachzuahmen.
 
 @iftex
 @page
 @noindent
 Bärenreiter BA 320, @copyright{}1950:
 
-@sourceimage{baer-suite1-fullpage,16cm,,}
+@sourceimage{baer-suite1-fullpage-hires,16cm,,}
 @page
 @noindent
 Henle no. 666, @copyright{}2000:
 @sp 3
-@sourceimage{henle-suite1-fullpage,16cm,,}
+@sourceimage{henle-suite1-fullpage-hires,16cm,,}
 @page
 @end iftex
 
 
 @node Details des Notensetzens
-@unnumberedsec Details des Notensetzens
+@section Details des Notensetzens
 @translationof Engraving details
 
 @cindex Notensatz
@@ -187,7 +187,10 @@ inspiriert, die in der ersten Hälfte des 20. Jahrhunderts von
 europäischen Notenverlagen herausgegeben wurden (insbesondere
 Bärenreiter, Duhem, Durand, Hofmeister, Peters und Scott).  Sie
 werden teilweise als der Höhepunkt des traditionellen Notenstichs
-angesehen.
+angesehen.  Beim Studium dieser Editionen haben wir eine Menge
+darüber gelernt, was einen gut gesetzten Musikdruck ausmacht und
+welche Aspekte des handgestochenen Notensatzes wir in LilyPond
+imitieren wollten.
 
 @c Heutzutage wird fast alle gedruckte Musik von Computern erstellt. Das 
 @c hat einige deutliche Vorteile: Drucke sind billiger als die gravierten
@@ -383,34 +386,11 @@ Korrektur gesetzt. Im oberen Beispiel hingegen bilden sich
 für das Auge bei unten/oben-Folgen Notenklumpen.  Ein Notenstechermeister
 hätte die Notenaufteilung angepasst, sodass die angenehm zu lesen ist.
 
-Ein weiteres Beispiel optischen Ausgleichs ist das visualle Zusammenspiel
-von Hälsen und Taktstrichen.  Wenn eine Noten mit Hals nach oben
-vor einem Taktstrich kommt, braucht man etwas mehr Platz, damit
-sich die Aufteilung nicht zu dicht anfühlt:
-
-@lilypond
-\paper {
-  ragged-right = ##t
-}
+Die Algorithmen zur Platzaufteilung von LilyPond berechnen sogar die
+Taktstriche mit ein, weshalb die letzte Noten mit Hals nach oben im
+richtig platzierten Beispiel etwas mehr Platz vor dem Taktstrich
+erhält, damit sie nicht gedrängt wirkt. Ein Hals nach unten würde diesen Ausgleich nicht benötigen.
 
-\score {
-  {
-    c''8 c'' c'' c'' c'' c'' c'' c'' \break
-    a' a' a' a' a' a' a' a'
-  }
-  \layout {
-    \context {
-      \Staff
-      \remove "Time_signature_engraver"
-      \override NoteSpacing #'stem-spacing-correction = #0.7
-    }
-    \context {
-      \Score
-      \remove "Bar_number_engraver"
-    }
-  }
-}
-@end lilypond
 
 @node Hilfslinien
 @unnumberedsubsec Hilfslinien
@@ -590,7 +570,7 @@ und aus denen wir gerne spielen.
 
 
 @node Automatisierter Notensatz
-@unnumberedsubsec Automatisierter Notensatz
+@section Automatisierter Notensatz
 @translationof Automated engraving
 
 @cindex Notensatz, automatisch
@@ -598,16 +578,13 @@ und aus denen wir gerne spielen.
 
 Dieser Abschnitt beschreibt, was benötigt wird um ein Programm zu
 schreiben, welches das Layout von gestochenen Noten nachahmen kann:
-eine Methode, dem Computer gute Layouts zu erklären, detailliertes
-Vergleichen mit echten Notendrucken und genug Flexibilität, um mit
-den vielen Herausforderungen fertig zu werden, die der Notensatz
-mit sich bringt.
+eine Methode, dem Computer gute Layouts zu erklären und detailliertes
+Vergleichen mit echten Notendrucken.
 
 @menu
-* Schönheitswettbewerb::             
-* Verbessern durch Benchmarking::  
-* Alles richtig machen::        
-* Flexible Architektur::       
+* Schönheitswettbewerb::
+* Verbessern durch Benchmarking::
+* Alles richtig machen::     
 @end menu
 
 @node Schönheitswettbewerb
@@ -658,8 +635,8 @@ die Konfiguration aus, die am wenigsten hässlich ist.
 
 Zum Beispiel hier drei mögliche Konfiguration eines Legatobogens,
 und LilyPond hat jeder Konfiguration @qq{Hässlichkeitspunkte}
-verliehen.  Das erste Beispiel erhält 15.39 Punkte, weil eine der
-Noten angeschnitten wird:
+verliehen.  Das erste Beispiel erhält 15.39 Punkte, weil einer der
+Notenköpfe angeschnitten wird:
 
 @lilypond
 \relative c {
@@ -805,7 +782,7 @@ Notensatzprogramme, insbesondere in Nordamerika.  Sibelius ist
 Finales hauptsächlicher Gegenspieler, offensichtlich vor allem in
 Europa verbreitet.
 
-In unserem Vergleich haben wir uns für die Fuge in G-Moll aus
+Für unseren Vergleich haben wir uns für die Fuge in G-Moll aus
 dem Wohltemperierten Clavier 1, BWV 861 von J. S. Bach entschieden,
 mit dem Hauptthema:
 
@@ -823,9 +800,15 @@ In unserem Vergleich setzten wir die letzten sieben Takte des
 Stückes (28--34) in Finale und LilyPond.  Das ist der Punkt, an
 der das Thema als dreistimmige Engführung in den Schlussabschnitt
 überleitet.  In der Finale-Version haben wir der Versuchung
-widerstanden, jedwede Anpassungen abweichend vom Standard vorzunehemn,
+widerstanden, jedwede Anpassungen abweichend vom Standard vorzunehmen,
 weil wir zeigen wollen, welche Dinge von den beiden Programmen
-ohne Hilfeleistung richtig gemacht werden.
+ohne Hilfeleistung richtig gemacht werden.  Die einzigen hauptsächlichen
+Änderungen, die wir vorgenommen haben, war die Anpassung der
+Seitengröße an die Seitengröße dieses Aufsatzes und die Begrenzung
+der Noten auf zwei Systeme, um den Vergleich einfacher zu machen.
+In der Standardeinstellung Finale hätte zwei Zeilen mit je drei
+Takten und schließlich eine letzte Zeile gesetzt, die nur einen einzigen
+Takt enthält.
 
 Viele der Unterschiede zwischen den beiden Sätzen finden sich
 in den Takten 28--29, hier zuerst in Finales Version, dann in der
@@ -903,7 +886,7 @@ Einige der Mängel des nicht editierten Finale-Satzes beinhalten:
 Ein Balken, der zum Zentrum des Systems zeigt, sollte etwa die
 Länge einer Oktave haben, aber Notensetzer verkürzen die Länge,
 wenn der Balken in polyphonen Situationen aus dem System
-herauszeigt.  Die Bebalkung von Finale kann einfach mit dem
+herauszeigt.  Die Bebalkung von Finale kann einfach mit ihrem
 Patterson Beams-Plugin verbessert werden, aber wir haben diesen
 Schritt für dieses Beispiel ausgelassen.
 @item Finale passt die Position von ineinander greifenden Notenköpfen
@@ -937,7 +920,7 @@ Finale ihm gönnt.
 @end itemize
 
 Dieses Beispiel soll nicht suggerieren, dass man mit Finale nicht
-schöne Ausgabe erstellen könnte.  Das Programm ist dazu fähig,
+Notensatz in Publikationsqualität erstellen könnte.  Das Programm ist dazu fähig,
 wenn ein erfahrener Benutzer genug Zeit und Fähigkeit mitbringt.
 Einer der fundamentalen Unterschiede zwischen LilyPond und kommerziellen
 Notensatzprogrammen ist, dass LilyPond versucht, den Aufwand an
@@ -946,7 +929,7 @@ während andere Programme versuchen, ein attraktives Programmfenster
 zu bieten, in dem die Anpassungen vorgenommen werden können.
 
 Z. 859
-Einen besonders hervorstechenden Mangel in dem Finale-Beispiel
+Einen besonders hervorstechenden Mangel von Finale
 ist ein fehlendes b-Vorzeichen in Takt 33:
 
 @quotation
@@ -972,10 +955,11 @@ können Sie den vollen siebentaktigen Ausschnitt am Ende dieses
 Aufsatzes als Notensatz von Finale und LilyPond sowie in vier
 publizierten Editionen finden.  Nähere Betrachtung zeigt, dass
 es einige akzeptable Variationen zwischen den handgestochenen
-Beispielen gibt.  Auch die LilyPond-Ausgabe hat noch ihre
-Fehler: sie ist beispielsweise etwas zu aggressiv bei der Verkürzung
-einiger Hälse -- hier ist also noch Raum für weitere Entwicklung
-und Feineinstellung.
+Beispielen gibt, dass LilyPond aber ziemlich guten Notensatz
+im Rahmen dieser Variationen produziert.  Auch die LilyPond-Ausgabe
+hat noch ihre Fehler: sie ist beispielsweise etwas zu aggressiv
+bei der Verkürzung einiger Hälse -- hier ist also noch Raum für
+weitere Entwicklung und Feineinstellung.
 
 Natürlich hängt Typographie vom menschlichen Urteil der Erscheinung
 ab, sodass Menschen nicht vollständig ersetzt werden können.  Viel
@@ -989,138 +973,206 @@ wurde die Struktur von LilyPond mit Flexibilität im Hinterkopf
 geplant.
 
 
-@node Flexible Architektur
-@unnumberedsubsec Flexible Architektur
-@translationof Flexible architecture
+@node Ein Programm bauen
+@section Ein Programm bauen
+@translationof Building software
 
-Als wir anfingen, haben wir LilyPond vollständig in der Programmiersprache C++
-geschrieben. Das hieß, dass der Funktionsumfang des Programms vollständig durch
-die Programmierer festgelegt war. Das stellte sich aus einer Reihe von Gründen
-als unzureichend heraus:
+Dieser Abschnitt beschreibt einige der Entscheidungen,
+die wir während des Programierens für das Design von LilyPond
+getroffen haben.
 
-@itemize @bullet
-@item Wenn LilyPond Fehler macht, muss der Benutzer die
-Einstellungen ändern können. Er muss also Zugang zur 
-Formatierungsmaschinerie haben.  Deshalb können die Regeln und 
-Einstellungen nicht beim Kompilieren des Programms festgelegt 
-werden, sondern sie müssen zugänglich sein, während das Programm
-aktiv ist.
+@menu
+* Die Darstellung der Musik::
+* Welche Symbole?::
+* Flexible Architektur::
+@end menu
 
-@item Notensatz ist eine Frage des Augenmaßes, und damit auch vom
-Geschmack abhängig.  Benutzer können mit unseren Entscheidungen 
-unzufrieden sein.  Darum müssen also auch die Definitionen des 
-typographischen Stils dem Benutzer zugänglich sein.
+@node Die Darstellung der Musik
+@unnumberedsubsec Die Darstellung der Musik
+@translationof Music representation
 
-@item Schließlich verfeinern wir unseren Formatierungsalgorithmus 
-immer weiter, also müssen die Regeln auch flexibel sein. Die
-Sprache C++ zwingt zu einer bestimmten Gruppierungsmethode, 
-die nicht den Regeln für den Notensatz entspricht.
-@end itemize
+@cindex Syntax
+@cindex rekursive Strukturen
 
-@cindex Scheme-Programmiersprache
+Idealerweise ist das Eingabeformat für ein komplexes Satzsystem die 
+abstrakte Beschreibung des Inhaltes. In diesem Fall wäre das die 
+Musik selber. Das stellt uns aber vor ein ziemlich großes Problem, 
+denn wie können wir definieren, was Musik wirklich ist? Anstatt darauf 
+eine Antwort zu suchen, haben wir die Frage einfach umgedreht. Wir
+schreiben ein Programm, das den Notensatz beherrscht und machen das 
+Format so einfach wie möglich. Wenn es nicht mehr vereinfacht 
+werden kann, haben wir per Definition nur noch den reinen Inhalt. Unser 
+Format dient als die formale Definition eines Musiktextes.
 
-Diese Probleme wurden angegangen, indem ein Übersetzer für 
-die Programmiersprache Scheme integriert wurde und Teile
-von LilyPond in Scheme neu geschrieben wurden.  Die derzeitige 
-Formatierungsarchitektur ist um die Notation von graphischen 
-Objekten herum aufgebaut, die von Scheme-Variablen und -Funktionen
-beschrieben werden.  Diese Architektur umfasst Formatierungsregeln,
-typographische Stile und individuelle Formatierungsentscheidungen. 
-Der Benutzer hat direkten Zugang zu den meisten dieser Einstellungen.
+Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond, 
+darum soll sie einfach zu schreiben sein; z. B. bedeutet
 
-Scheme-Variablen steuern Layout-Entscheidungen.  Zum Beispiel haben 
-viele graphische Objekte eine Richtungsvariable, die zwischen 
-oben und unten (oder rechts und links) wählen kann.  Hier etwa 
-sind zwei Akkorde mit Akzenten und Arpeggien.
-Beim ersten Akkord sind alle Objekte nach unten (oder links)
-ausgerichtet, beim zweiten nach oben (rechts).
+@example
+@{
+  c'4 d'8
+@}
+@end example
 
-@lilypond[quote,ragged-right]
-\new Score \with {
-   \override SpacingSpanner #'spacing-increment = #3
-   \override TimeSignature #'transparent = ##t
-} \relative c' {
-   \stemDown <e g b>4_>-\arpeggio
-   \override Arpeggio #'direction = #RIGHT
-   \stemUp <e g b>4^>-\arpeggio
+@noindent
+dass eine Viertel c' und eine Achtel d' erstellt werden sollen,
+wie in diesem Beispiel:
+
+@lilypond[quote]
+{
+  c'4 d'8
 }
 @end lilypond
 
-@cindex Formatierung einer Partitur
-@cindex Partitur, Formatierung
-@cindex Formatierungsregeln
+In kleinem Rahmen ist diese Syntax sehr einfach zu benutzen.  In
+größeren Zusammenhängen aber brauchen wir Struktur.  Wie sonst kann
+man große Opern oder Symphonien notieren?  Diese Struktur wird
+gewährleistet durch sog. @emph{music expressions} (Musikausdrücke):
+indem kleine Teile zu größeren kombiniert werden, kann komplexere
+Musik dargestellt werden. So etwa hier:
+
+@lilypond[quote,verbatim,fragment,relative=1]
+f4
+@end lilypond
 
 @noindent
-Der Prozess des Notensetzens besteht für das Programm darin,
-die Variablen der graphischen Objekte zu lesen und zu
-schreiben.  Einige Variablen haben festgelegte Werte. So
-ist etwa die Dicke von vielen Linien – ein Charakteristikum
-des typographischen Stils – von vornherein festgelegt.
-Wenn sie geändert werden, ergibt sich ein anderer typographischer Eindruck.
+Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in @code{<<} und @code{>>} einschließt.
 
-@lilypond[quote,ragged-right]
-fragment = {
-   \clef bass f8 as8
-   c'4-~ c'16 as g f e16 g bes c' des'4
-}
+@example
+<<c4 d4 e4>>
+@end example
+
+@lilypond[quote,fragment,relative=1]
+\new Voice { <<c4 d4 e>> }
+@end lilypond
+
+@noindent
+Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst:
+
+@code{@{@tie{}@dots{}@tie{}@}}
+
+@example
+@{ f4 <<c4 d4 e4>> @}
+@end example
+
+@lilypond[quote,relative=1,fragment]
+{ f4 <<c d e4>> }
+@end lilypond
+
+@noindent
+Dieses Gebilde ist in sich wieder ein Ausdruck, und kann
+daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben), wobei @code{<<}, @code{\\}, and @code{>>} eingesetzt wird:
+
+@example
+<< g2 \\ @{ f4 <<c4 d4 e4>> @} >>
+@end example
+
+@lilypond[quote,fragment,relative=2]
+\new Voice { << g2 \\ { f4 <<c d e>> } >> }
+@end lilypond
+
+Solche geschachtelten Strukturen können sehr gut in einer 
+kontextunabhängigen Grammatik beschrieben werden. Der Programmcode 
+für den Satz ist auch mit solch einer Grammatik erstellt. Die Syntax 
+von LilyPond ist also klar und ohne Zweideutigkeiten definiert.
+
+Die Benutzerschnittstelle und die Syntax werden als erstes vom Benutzer 
+wahrgenommen. Teilweise sind sie eine Frage des Geschmackes und werden viel
+diskutiert. Auch wenn Geschmacksfragen ihre Berechtigung 
+haben, sind sie nicht sehr produktiv. Im großen Rahmen von LilyPond 
+spielt die Eingabe-Syntax nur eine geringe Rolle, denn eine logische 
+Syntax zu schreiben ist einfach, guten Formatierungscode aber sehr viel 
+schwieriger. Das kann auch die Zeilenzahl der Programmzeilen zeigen: 
+Analysieren und Darstellen nimmt nur etwa 10% des Codes ein:
+
+Während wir die Strukturen von LilyPond entwickelten, machten wir einige Entscheidungen, die sich von anderen Programmen unterscheiden.
+Nehmen wir etwa die hierarchische Natur der Musiknotation:
+
+@lilypond[quote,fragment]
 <<
-   \new Staff \fragment
-   \new Staff \with {
-      \override Beam #'beam-thickness = #0.3
-      \override Stem #'thickness = #0.5
-      \override Bar #'thickness = #3.6
-      \override Tie #'thickness = #2.2
-      \override StaffSymbol #'thickness = #3.0
-      \override Tie #'extra-offset = #'(0 .  0.3)
-      }
-      \fragment
+\new Staff \relative c'' {
+  \key g \major
+  \time 3/4
+  d4 g,8 a b c d4 g, g
+}
+\new Staff \relative c' {
+  \clef "bass"
+  \key g \major
+  <g b d>2 a4 b2.
+}
 >>
 @end lilypond
 
-Formatierungsregeln sind auch vorbelegte Variablen.  Zu jedem Objekt gehören
-Variablen, die Prozeduren enthalten. Diese Prozeduren machen die eigentliche
-Satzarbeit aus, und wenn man sie durch andere ersetzt, kann die Darstellung
-von Objekten verändert werden.  Im nächsten Beispiel wird die Regel, nach der
-die Notenköpfe gezeichnet werden, während des Ausschnitts verändert.
+In diesem Fall werden Tonhöhen in Akkorde gruppiert, die zu Takten
+gehören, welche wiederum zu Notensystemen gehören.  Das erinnert an
+die saubere Struktur von geschachtelten Kästen:
 
-@lilypond[quote,ragged-right]
-#(set-global-staff-size 30)
+@quotation
+@iftex
+@sourceimage{pdf/nestedboxes,,4cm,}
+@end iftex
+@ifnottex
+@sourceimage{nestedboxes,,,png}
+@end ifnottex
+@end quotation
 
-#(define (mc-squared grob orig current)
-  (let* ((interfaces (ly:grob-interfaces grob))
-         (pos (ly:grob-property grob 'staff-position)))
-    (if (memq 'note-head-interface interfaces)
-        (begin
-          (ly:grob-set-property! grob 'stencil
-            (grob-interpret-markup grob
-              (make-lower-markup 0.5
-                (case pos
-                  ((-5) "m")
-                  ((-3) "c ")
-                  ((-2) (make-smaller-markup (make-bold-markup "2")))
-                  (else "bla")))))))))
+Leider ist die Struktur nur sauber, weil sie auf einige sehr beschränkte
+Annahmen basiert.  Das wird offensichtlich, wenn man ein komplizierteres
+Beispiel heranzieht:
 
-\new Voice \relative c' {
-  \stemUp
-  \set autoBeaming = ##f
-  \time 2/4
-  <d f g>4
-  \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
-  \once \override NoteHead #'font-size = #-7
-  \once \override NoteHead #'font-family = #'sans
-  \once \override NoteHead #'font-series = #'bold
-  <d f g>4
-  \once \override NoteHead #'style = #'cross
-  <d f g>4
-  \applyOutput #'Voice #mc-squared
-  <d f g>4
-  <<
-    { d8[ es-( fis^^ g] fis2-) }
-    \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
-  >>
+@lilypond[quote]
+\layout {
+  \context {
+    \Score
+    \remove "Timing_translator"
+    \remove "Default_bar_line_engraver"
+  }
+  \context {
+    \Staff
+    \consists "Timing_translator"
+    \consists "Default_bar_line_engraver"
+ }
 }
+
+\new PianoStaff <<
+  \new Staff = "RH" <<
+    \new Voice = "I" \relative c''' {
+      \time 3/4
+      \voiceOne
+      \times 6/7 {g8 g g g g g g}
+      \oneVoice
+      r4 <b,, fis' g bes> r4\fermata
+    }
+    \new Voice = "II" \relative c' {
+      \voiceTwo
+      c4
+      \times 4/5 {
+        <c ees>8 f g
+        \change Staff = "LH" \oneVoice
+        \stemUp g,( c}
+      r4
+      \override Stem #'cross-staff = ##t
+      \override Stem #'length = #12
+      <fis, b>) r\fermata
+    }
+  >>
+  \new Staff = "LH" <<
+    \new Voice = "III" \relative c' {
+      \time 2/4
+      \clef "bass"
+      g4 \stopStaff s
+      \startStaff s2*2
+    }
+  >>
+>>
 @end lilypond
 
+In diesem Beispiel beginnen Systeme plötzlich und enden plötzlich,
+Stimmen springen zwischen den Systemen herum und die Systeme haben
+unterschiedliche Taktarten.  Viele Software-Pakte würden sehr damit
+zu kämpfen haben, dieses Beispiel darzustellen, weil sie nach dem
+Prinzip von geschachtelten Kästen aufgebaut sind.  In LilyPond dagegen
+haben wir versucht, die Struktur und das Eingabeformat so flexibel wie
+möglich zu gestalten.
 
 
 @node Welche Symbole?
@@ -1324,10 +1376,6 @@ in einen großen Score-Kontext (Partiturkontext) eingebunden werden.
 Der Score-Kontext ist auf der höchsten Ebene der Kontexte.
 
 
-@seealso
-Programmreferenz: @rinternals{Contexts}.
-
-
 @lilypond[quote,ragged-right]
 \include "engraver-example.ily"
 \score {
@@ -1338,103 +1386,159 @@ Programmreferenz: @rinternals{Contexts}.
 }
 @end lilypond
 
+@seealso
+Referenz der Interna: @rinternals{Contexts}.
 
-@node Die Darstellung der Musik
-@unnumberedsubsec Die Darstellung der Musik
-@translationof Music representation
 
-@cindex Syntax
-@cindex rekursive Strukturen
+@node Flexible Architektur
+@unnumberedsubsec Flexible Architektur
+@translationof Flexible architecture
 
-Idealerweise ist das Eingabeformat für ein komplexes Satzsystem die 
-abstrakte Beschreibung des Inhaltes. In diesem Fall wäre das die 
-Musik selber. Das stellt uns aber vor ein ziemlich großes Problem, 
-denn wie können wir definieren, was Musik wirklich ist? Anstatt darauf 
-eine Antwort zu suchen, haben wir die Frage einfach umgedreht. Wir
-schreiben ein Programm, das den Notensatz beherrscht und machen das 
-Format so einfach wie möglich. Wenn es nicht mehr vereinfacht 
-werden kann, haben wir per Definition nur noch den reinen Inhalt. Unser 
-Format dient als die formale Definition eines Musiktextes.
+Als wir anfingen, haben wir LilyPond vollständig in der Programmiersprache C++
+geschrieben. Das hieß, dass der Funktionsumfang des Programms vollständig durch
+die Programmierer festgelegt war. Das stellte sich aus einer Reihe von Gründen
+als unzureichend heraus:
 
-Die Syntax ist gleichzeitig die Benutzerschnittstelle bei LilyPond, 
-darum soll sie einfach zu schreiben sein; z. B. bedeutet
+@itemize @bullet
+@item Wenn LilyPond Fehler macht, muss der Benutzer die
+Einstellungen ändern können. Er muss also Zugang zur 
+Formatierungsmaschinerie haben.  Deshalb können die Regeln und 
+Einstellungen nicht beim Kompilieren des Programms festgelegt 
+werden, sondern sie müssen zugänglich sein, während das Programm
+aktiv ist.
 
-@example
-@{
-  c'4 d'8
-@}
-@end example
+@item Notensatz ist eine Frage des Augenmaßes, und damit auch vom
+Geschmack abhängig.  Benutzer können mit unseren Entscheidungen 
+unzufrieden sein.  Darum müssen also auch die Definitionen des 
+typographischen Stils dem Benutzer zugänglich sein.
 
-@noindent
-dass eine Viertel c' und eine Achtel d' erstellt werden sollen,
-wie in diesem Beispiel:
+@item Schließlich verfeinern wir unseren Formatierungsalgorithmus 
+immer weiter, also müssen die Regeln auch flexibel sein. Die
+Sprache C++ zwingt zu einer bestimmten Gruppierungsmethode, 
+die nicht den Regeln für den Notensatz entspricht.
+@end itemize
 
-@lilypond[quote]
-{
-  c'4 d'8
+@cindex Scheme-Programmiersprache
+
+Diese Probleme wurden angegangen, indem ein Übersetzer für 
+die Programmiersprache Scheme integriert wurde und Teile
+von LilyPond in Scheme neu geschrieben wurden.  Die derzeitige 
+Formatierungsarchitektur ist um die Notation von graphischen 
+Objekten herum aufgebaut, die von Scheme-Variablen und -Funktionen
+beschrieben werden.  Diese Architektur umfasst Formatierungsregeln,
+typographische Stile und individuelle Formatierungsentscheidungen. 
+Der Benutzer hat direkten Zugang zu den meisten dieser Einstellungen.
+
+Scheme-Variablen steuern Layout-Entscheidungen.  Zum Beispiel haben 
+viele graphische Objekte eine Richtungsvariable, die zwischen 
+oben und unten (oder rechts und links) wählen kann.  Hier etwa 
+sind zwei Akkorde mit Akzenten und Arpeggien.
+Beim ersten Akkord sind alle Objekte nach unten (oder links)
+ausgerichtet, beim zweiten nach oben (rechts).
+
+@lilypond[quote,ragged-right]
+\new Score \with {
+   \override SpacingSpanner #'spacing-increment = #3
+   \override TimeSignature #'transparent = ##t
+} \relative c' {
+   \stemDown <e g b>4_>-\arpeggio
+   \override Arpeggio #'direction = #RIGHT
+   \stemUp <e g b>4^>-\arpeggio
 }
 @end lilypond
 
-In kleinem Rahmen ist diese Syntax sehr einfach zu benutzen.  In
-größeren Zusammenhängen aber brauchen wir Struktur.  Wie sonst kann
-man große Opern oder Symphonien notieren?  Diese Struktur wird
-gewährleistet durch sog. @emph{music expressions} (Musikausdrücke):
-indem kleine Teile zu größeren kombiniert werden, kann komplexere
-Musik dargestellt werden. So etwa hier:
+@cindex Formatierung einer Partitur
+@cindex Partitur, Formatierung
+@cindex Formatierungsregeln
 
-@lilypond[quote,verbatim,fragment,relative=1]
-f4
+@noindent
+Der Prozess des Notensetzens besteht für das Programm darin,
+die Variablen der graphischen Objekte zu lesen und zu
+schreiben.  Einige Variablen haben festgelegte Werte. So
+ist etwa die Dicke von vielen Linien – ein Charakteristikum
+des typographischen Stils – von vornherein festgelegt.
+Wenn sie geändert werden, ergibt sich ein anderer typographischer Eindruck.
+
+@lilypond[quote,ragged-right]
+fragment = {
+   \clef bass f8 as8
+   c'4-~ c'16 as g f e16 g bes c' des'4
+}
+<<
+   \new Staff \fragment
+   \new Staff \with {
+      \override Beam #'beam-thickness = #0.3
+      \override Stem #'thickness = #0.5
+      \override Bar #'thickness = #3.6
+      \override Tie #'thickness = #2.2
+      \override StaffSymbol #'thickness = #3.0
+      \override Tie #'extra-offset = #'(0 .  0.3)
+      }
+      \fragment
+>>
 @end lilypond
 
-@noindent
-Gleichzeitig erklingende Noten werden hinzugefügt, indem man alle in @code{<<} und @code{>>} einschließt.
+Formatierungsregeln sind auch vorbelegte Variablen.  Zu jedem Objekt gehören
+Variablen, die Prozeduren enthalten. Diese Prozeduren machen die eigentliche
+Satzarbeit aus, und wenn man sie durch andere ersetzt, kann die Darstellung
+von Objekten verändert werden.  Im nächsten Beispiel wird die Regel, nach der
+die Notenköpfe gezeichnet werden, während des Ausschnitts verändert.
 
-@example
-<<c4 d4 e4>>
-@end example
+@lilypond[quote,ragged-right]
+#(set-global-staff-size 30)
 
-@lilypond[quote,fragment,relative=1]
-\new Voice { <<c4 d4 e>> }
+#(define (mc-squared grob orig current)
+  (let* ((interfaces (ly:grob-interfaces grob))
+         (pos (ly:grob-property grob 'staff-position)))
+    (if (memq 'note-head-interface interfaces)
+        (begin
+          (ly:grob-set-property! grob 'stencil
+            (grob-interpret-markup grob
+              (make-lower-markup 0.5
+                (case pos
+                  ((-5) "m")
+                  ((-3) "c ")
+                  ((-2) (make-smaller-markup (make-bold-markup "2")))
+                  (else "bla")))))))))
+
+\new Voice \relative c' {
+  \stemUp
+  \set autoBeaming = ##f
+  \time 2/4
+  <d f g>4
+  \once \override NoteHead #'stencil = #note-head::brew-ez-stencil
+  \once \override NoteHead #'font-size = #-7
+  \once \override NoteHead #'font-family = #'sans
+  \once \override NoteHead #'font-series = #'bold
+  <d f g>4
+  \once \override NoteHead #'style = #'cross
+  <d f g>4
+  \applyOutput #'Voice #mc-squared
+  <d f g>4
+  <<
+    { d8[ es-( fis^^ g] fis2-) }
+    \repeat unfold 5 { \applyOutput #'Voice #mc-squared s8 }
+  >>
+}
 @end lilypond
 
-@noindent
-Um aufeinanderfolgende Noten darzustellen, werden sie in geschweifte Klammern gefasst:
 
-@code{@{@tie{}@dots{}@tie{}@}}
+@node LilyPond die Arbeit überlassen
+@section LilyPond die Arbeit überlassen
+@translationof Putting LilyPond to work
+
+
+
+
+
+
 
-@example
-@{ f4 <<c4 d4 e4>> @}
-@end example
 
-@lilypond[quote,relative=1,fragment]
-{ f4 <<c d e4>> }
-@end lilypond
 
-@noindent
-Dieses Gebilde ist in sich wieder ein Ausdruck, und kann
-daher mit einem anderen Ausdruck kombiniert werden (hier mit einer Halben), wobei @code{<<}, @code{\\}, and @code{>>} eingesetzt wird:
 
-@example
-<< g2 \\ @{ f4 <<c4 d4 e4>> @} >>
-@end example
 
-@lilypond[quote,fragment,relative=2]
-\new Voice { << g2 \\ { f4 <<c d e>> } >> }
-@end lilypond
 
-Solche geschachtelten Strukturen können sehr gut in einer 
-kontextunabhängigen Grammatik beschrieben werden. Der Programmcode 
-für den Satz ist auch mit solch einer Grammatik erstellt. Die Syntax 
-von LilyPond ist also klar und ohne Zweideutigkeiten definiert.
 
-Die Benutzerschnittstelle und die Syntax werden als erstes vom Benutzer 
-wahrgenommen. Teilweise sind sie eine Frage des Geschmackes und werden viel
-diskutiert. Auch wenn Geschmacksfragen ihre Berechtigung 
-haben, sind sie nicht sehr produktiv. Im großen Rahmen von LilyPond 
-spielt die Eingabe-Syntax nur eine geringe Rolle, denn eine logische 
-Syntax zu schreiben ist einfach, guten Formatierungscode aber sehr viel 
-schwieriger. Das kann auch die Zeilenzahl der Programmzeilen zeigen: 
-Analysieren und Darstellen nimmt nur etwa 10% des Codes ein:
 
 
 @node Beispielanwendung
@@ -1476,7 +1580,7 @@ ein Liedblatt.
 Mehrstimmige Notation und Klaviermusik kann auch gesetzt werden. Das 
 nächste Beispiel zeigt einige etwas exotischere Konstruktionen:
 
-@lilypond[quote]
+@lilypond[quote,line-width=15.9\cm]
 \header {
   title = "Screech and boink"
   subtitle = "Random complex notation"
@@ -1557,17 +1661,24 @@ in Multimediapräsentation Anwendung finden.
 Dieser Aufsatz zeigt eine weitere Möglichkeit: Die Noten werden als 
 reiner Text eingegeben und können darum sehr einfach integriert werden
 in andere textbasierte Formate wie etwa @LaTeX{}, HTML oder, wie in diesem 
-Fall, Texinfo. Durch ein spezielles Programm werden die Eingabefragmente durch 
-Notenbilder in der resultierenden PDF- oder HTML-Datei ersetzt. Dadurch ist
-es sehr einfach, Noten und Text zu kombinieren.
+Fall, Texinfo. Mithilfe des Programmes @command{lilypond-book},
+das in LilyPond inbegriffen ist, werden die Fragmente mit
+Notenbildern ersetzt und in die produzierte PDF- oder HTML-Datei
+eingefügt.  Ein weiteres Beispiel ist die von LilyPond unabhängige
+Erweiterung OOoLilyPond für OpenOffice.org, mit der es sehr einfach
+ist, Musikbeispiele in Dokumente einzufügen.
+
+Zu mehr Beispielen, wie LilyPond sich in Aktion verhält, für vollständige
+Dokumentation und das Programm LilyPond besuchen Sie unsere
+Webseite: www.lilypond.org.
 
 
 @page
-@node Anhang
-@unnumberedsec Anhang
-@translationof Appendix
+@node Notensatzbeispiele (BWV 861)
+@section Notensatzbeispiele (BWV 861)
+@translationof Engraved examples (BWV 861)
 
-Dieser Anhang enthält vier Referenz-Notenstiche und zwei
+Dieser Abschnitt enthält vier Referenz-Notenstiche und zwei
 computergesetzte Versionen der Fuge G-Moll aus dem Wohltemperierten
 Clavier I (BWV 681) von J. S. Bach (die letzten sieben Takte).
 
diff --git a/Documentation/de/essay/engravingbib.bib b/Documentation/de/essay/engravingbib.bib
new file mode 100644 (file)
index 0000000..73cef39
--- /dev/null
@@ -0,0 +1,360 @@
+% This file cannot be named "engraving.bib" due to a conflict
+% with the existing engraving.itely file.  -gp
+
+%
+% TITLE=The engraving bibliography
+% AUTHOR=Han-Wen Nienhuys
+%
+
+
+@Book{banter,
+  author =     {Harald Banter},
+  title =      {Akkord Lexikon},
+  publisher =  {Schott's S\"ohne},
+  year =       {1987},
+  isbn =       {ISBN 3-7957-2095-8},
+  note =       {Comprehensive overview of commonly used
+  chords.  Suggests (and uses) a unification for all different kinds
+  of chord names.},
+  address =    {Mainz, Germany},
+}
+
+
+
+@Book{rastall,
+  author =      {Richard Rastall},
+  ALTeditor =   {},
+  title =       {The Notation of Western Music: an
+  Introduction},
+  publisher =   {J. M. Dent \& Sons London},
+  year =        {1983},
+  note = {Interesting account of the evolution and origin of common notation starting from neumes, and ending with modern innovations HWN},
+}
+
+
+@Book{ignatzek95:_jazzm_klavier,
+  author =      {Klaus Ignatzek},
+  title =       {Die Jazzmethode f\"ur Klavier 1},
+  publisher =   {Schott},
+  year =        1995,
+  note =        {This book contains a system for denoting chords that is used in LilyPond.}
+}
+
+@Book{mcgrain,
+  author =      {Mark Mc Grain},
+  title =       {Music notation},
+  year =        1991,
+  publisher={Hal Leonard Publishing Corporation},
+isbn ={0793508479},
+note={HWN writes: `Book' edition of lecture notes from XXX school of
+music.  The book looks like it is xeroxed from bad printouts.  The
+content has nothing you won't find in other books like\cite{read} or
+\cite{heussenstamm}.   }
+}
+
+@Book{ross,
+  author =      {Ted Ross},
+  title =       {Teach yourself the art of music engraving and processing},
+  publisher =   {Hansen House},
+  year =        1987,
+annote =        {This is about engraving, i.e.  professional typesetting.  It contains
+  directions on good typesetting, but the sections on reproduction
+  technicalities, how to use pens and history are interesting.
+  Especially the section on Music Typewriters is amusing HWN},
+  address =     {Miami, Florida},
+}
+
+@Book {read78,
+  note = {Sound (boring) review of the various hairy rhythmic notations used by avant-garde composers HWN},
+  year =  {1978},
+  title = {Modern Rhythmic Notation},
+  author = {Gardner Read},
+  publisher = {Indiana University Press},
+}
+
+@Book {read-notation,
+  note = {This is as close to the ``standard''
+  reference work for music notation issues as one is likely to get.},
+
+  title = {Music Notation: a Manual of Modern Practice},
+  author = {Gardner Read},
+  totalentry = {(2nd edition)},
+  year = 1979,
+  publisher ={Taplinger Publishing},
+  address ={New York},
+}
+
+@Book {weaner93,
+  year =  {1993},
+  title = {Standard Music Notation Practice},
+  author = {Maxwell Weaner and Walter Boelke},
+  totalentry = {revised edition by Arnold Broido and Daniel Dorff.},
+  publisher = {Music Publisher's Association of the United States Inc},
+  address = {New York}
+}
+
+
+@Book {wanske,
+
+  annote = {I. A very thorough overview of engraving practices of various
+  craftsmen. It includes detailed specs of characters, dimensions
+  etc. II. a thorough overview of a anonymous (by now antiquated)
+  automated system. EDV Means e(lektronischen) D(aten)v(erarbeitung),
+  electronic data processing HWN.},
+
+  year =  {1988},
+  title = {Musiknotation --- Von der Syntax des
+    Notenstichs zum EDV-gesteuerten Notensatz},
+  author = {Helene Wanske},
+  publisher = {Schott-Verlag},
+  address = {Mainz},
+  isbn = {ISBN 3-7957-2886-x},
+}
+
+
+@Book {hader48,
+  year =  {1948},
+  title = {Aus der Werkstatt eines Notenstechers},
+  author = {Karl Hader},
+  publisher = {Waldheim--Eberle Verlag},
+  address ={Vienna},
+
+  note = {Hader was a chief-engraver in a Viennese engraving
+workshop. This beautiful booklet was intended as an introduction for
+laymen on the art of engraving.  It contains a step by step, in-depth
+explanation of how to cut and stamp music into zinc plates.  It also
+contains a few compactly formulated rules on musical orthography. Out
+of print. }
+
+
+}
+
+@Book{gamble23:_music_engrav,
+  author =      {William Gamble},
+  title =       {Music Engraving and printing.  Historical and Technical Treatise},
+  publisher =   {Sir Isaac Pitman & Sons, ltd.},
+  year =        1923,
+  note = {This pattriotic book was an attempt to promote and help
+  British music engravers.  It is somewhat similar to Hader's
+  book\cite{hader48} in scope and style, but Gamble focuses more on
+  technical details (Which French punch cutters are worth buying from,
+  etc.), and does not treat typographical details, such as optical
+  illusions.  It is available as reprint from Da Capo Press, New York
+  (1971).}
+}
+
+
+@Booklet {mpa96,
+  note = {Pamphlet explaining a few  fine points in music font design HWN},
+  year =  {1996},
+  title = {Standard music notation specifications for computer programming.},
+  month =  {December},
+  author ={mpa},
+  publisher = {MPA},
+}
+
+
+@Book {donato63,
+  year =  {1963},
+  author = {Anthony Donato},
+  title ={Preparing Music Manuscript},
+  address ={Englewood Cliffs, NJ},
+  publisher={Prentice-Hall},
+}
+
+
+@Book {Karkoshka72,
+  year =  {1972},
+  title = {Notation in New Music; a critical guide to interpretation and realisation},
+  author = {Erdhard Karkoshka},
+  translator={Ruth Koenig},
+  publisher={Praeger Publishers},
+  address={New York},
+  note ={(Out of print)},
+}
+
+
+@Book {Roemer84,
+  year =  {1984},
+  title = {The Art of Music Copying},
+  author = {Clinton Roemer},
+  publisher={Roerick music co.},
+  address= {Sherman Oaks (CA)},
+
+  note ={Out of print. Heussenstamm writes: an instructional manual
+    which specializes in methods used in the commercial field. },
+  edition={2nd},
+}
+
+
+@Book {Rosecrans79,
+  year =  {1979},
+  title = {Music Notation Primer},
+  author = {Glen Rosecrans},
+  publisher={Passantino},
+  address={New York},
+  note={Heussenstamm writes: Limited in scope, similar to \cite{Roemer84}}
+}
+
+@Book {donemus1982,
+  year =  {1982},
+  title = {Uitgeven van muziek},
+subtitle = {Handleiding voor componisten en copiisten},
+  author = {Donemus},
+  publisher= {Donemus Amsterdam},
+
+  note = {Manual on copying for composers and copyists at the Dutch
+ publishing house Donemus. Besides general comments on copying, it
+ also contains a lot of hands-on advice for making performance
+ material for modern pieces.}
+
+}
+
+
+@Book{vinci,
+author={Vinci, Albert C.},
+title={Fundamentals of Traditional Music Notation},
+publisher={Kent State University Press},
+year={1989}
+}
+
+@Book{schirmer90,
+  author={{G. Schirmer, Inc.}},
+  title={The G. Schirmer Manual of Style and Usage},
+  address={New York},
+  publisher={The G. Schirmer Publications Department},
+  year={2001},
+note={This is the style guide for Schirmer publications. This manual
+specifically focuses on preparing print for publication by
+Schirmer. It discusses many details that are not in other, normal
+notation books. It als gives a good idea of what is necessary to bring
+printouts to publication quality.
+It can be ordered from the rental department.
+
+
+}
+}
+
+
+@Book {Stone80,
+  year =  {1980},
+  title = {Music Notation in the Twentieth Century},
+  author = {Kurt Stone},
+  publisher= {Norton},
+  address={New York},
+  note ={Heussenstamm writes: The most important book on notation in recent years. },
+
+}
+@Book {Heussenstamm87,
+  year =  {1987},
+  title = {The Norton Manual of Music Notation},
+  author = {George Heussenstamm},
+  address= {New York},
+  publisher={Norton},
+  note={Hands-on instruction book for copying (ie. handwriting) music.  Fairly complete. HWN}
+}
+
+
+@Book {gerou96,
+  note = {A cheap, concise, alphabetically ordered list of typesetting and music (notation) issues with a rather simplistic attitude but in most  cases "good-enough" answers JCN},
+  year =  {1996},
+  title = {Essential Dictionary of Music Notation},
+  author = {Tom Gerou and Linda Lusk},
+  publisher = {Alfred Publishing},
+  address ={Van Nuys CA},
+  isbn ={ISBN 0-88284-768-6},
+}
+
+
+@Book {chlapik87,
+  note = {An clearly written book for the casually interested
+  reader. It shows some of the conventions and difficulties in
+  printing music HWN},
+
+  year =  {1987},
+  title = {Die Praxis des Notengraphikers},
+  author = {Herbert Chlapik},
+  publisher = {Doblinger},
+  isbn ={ISBN 3-9000 035-96-2},
+}
+
+
+
+@Book {barksdale57,
+       author = {Barksdale, A},
+       year = {1957},
+       title = {The Printed Note: 500 Years of Music Printing and Engraving},
+       address={Toledo, Ohio},
+       month = {January},
+       note={`The exhibition "The Printed Note" attempts to show the various processes used since the second of the 15th century for reproducing music mechanically ... '. The illustration mostly feature ancient music},
+       publisher={The Toledo Museum of Art},
+}
+
+
+@Book {wolf19,
+       author = {Wolf, Johannes},
+       year = {1919},
+       title = {Handbuch der Notationskunde},
+       address={Leipzig},
+       publisher={Breitkopf & Hartel},
+       note= {Very thorough treatment (in two volumes) of the history of music notation},
+}
+
+@Book {rosenthal67,
+       author = {Rosenthal, Carl A},
+       year = {1967},
+       title = {A Practical Guide to Music Notation},
+       address={New York},
+       publisher={MCA Music},
+       note={Heussenstamm writes: Informative in terms of traditional notation.  Does not concern score preparation}
+}
+
+
+@Book {Boehm61,
+       author = {Boehm, Laszlo},
+       year = {1961},
+       title={Modern Music Notation},
+       address={New York},
+       publisher={G. Schirmer, Inc.},
+       note ={Heussenstamm writes: A handy compact reference book in basic notation. }
+}
+@Book{button20:_system_music_notat,
+  author =      {Button, H. Elliot},
+  title =       {System in Musical Notation},
+  publisher =   {Novello and co.},
+  year =        1920,
+  address =     {London}
+}
+
+@Book{johnson46:_how,
+  author =      {Johnson, Harold},
+  title =       {How to write music manuscript},
+  publisher =   {Carl Fischer, Inc.},
+  year =        1946,
+  address =     {New York}
+}
+
+
+
+@Book{tyboni94:_noter_handb_i_tradit_noter,
+  author =      {B\"orje Tyboni},
+  title =       {Noter Handbok I Traditionell Notering},
+  publisher =   {Gehrmans Musikf\"orlag},
+  year =        1994,
+  address =     {Stockholm},
+  note =        {Swedish book on music notation.}
+}
+
+@Book{jaschinski00:_notat,
+  editor =      {Andreas Jaschinski},
+  title =       {Notation},
+  publisher =   {Bärenreiter Verlag},
+  year =        2000,
+  number =      {BVK1625},
+
+  annote = {Articles from "Musik in Geschichte und Gegenwart"
+pertaining to notation.  Both "alternative" notation and ancient
+notation is treated in depth, while "common" notation is not.  }
+}
+
+
diff --git a/Documentation/de/essay/html-long.bst b/Documentation/de/essay/html-long.bst
new file mode 100644 (file)
index 0000000..e01f1fa
--- /dev/null
@@ -0,0 +1,1374 @@
+% BibTeX bibliography style `html-long'
+%   spits out HTML-formatted bibliography in place of bbl output
+% by David Kotz dfk@cs.dartmouth.edu
+% $Id: html-long.bst,v 1.4 2005/07/21 21:29:50 hjunes Exp $
+%    modified from
+% BibTeX standard bibliography style `alpha'
+       % version 0.99a for BibTeX versions 0.99a or later, LaTeX version 2.09.
+       % Copyright (C) 1985, all rights reserved.
+       % Copying of this file is authorized only if either
+       % (1) you make absolutely no changes to your copy, including name, or
+       % (2) if you do make changes, you name it something other than
+       % btxbst.doc, plain.bst, unsrt.bst, alpha.bst, and abbrv.bst.
+       % This restriction helps ensure that all standard styles are identical.
+       % The file btxbst.doc has the documentation for this style.
+
+% DFK added abstract, comment, earlier, keyword, later, URL
+ENTRY
+  { abstract
+    address
+    author
+    booktitle
+    chapter
+    comment
+    earlier
+    edition
+    editor
+    howpublished
+    institution
+    journal
+    key
+    keyword
+    later
+    month
+    note
+    number
+    organization
+    pages
+    private
+    publisher
+    school
+    series
+    title
+    type
+    URL
+    volume
+    year
+  }
+  {}
+  { label extra.label sort.label }
+
+INTEGERS { output.state before.all mid.sentence after.sentence after.block }
+
+FUNCTION {init.state.consts}
+{ #0 'before.all :=
+  #1 'mid.sentence :=
+  #2 'after.sentence :=
+  #3 'after.block :=
+}
+
+STRINGS { s t }
+
+FUNCTION {output.nonnull}
+{ 's :=
+  output.state mid.sentence =
+    { ", " * write$ }
+    { output.state after.block =
+       { add.period$ write$
+         newline$
+       }
+       { output.state before.all =
+            'write$
+            { add.period$ " " * write$ }
+           if$
+       }
+      if$
+      mid.sentence 'output.state :=
+    }
+  if$
+  s
+}
+
+FUNCTION {output}
+{ duplicate$ empty$
+    'pop$
+    'output.nonnull
+  if$
+}
+
+FUNCTION {output.check}
+{ 't :=
+  duplicate$ empty$
+    { pop$ "empty " t * " in " * cite$ * warning$ }
+    'output.nonnull
+  if$
+}
+
+% DFK changed to use cite$ for the label
+% DFK changed to HTML, and use URL to make cite key a link
+FUNCTION {output.bibitem}
+{ newline$
+  URL empty$
+    { "<DT> <A NAME=" quote$ * cite$ * quote$ * 
+       "> " * cite$ * ":</A> </DT>" * write$
+    }
+    { "<DT><A NAME=" quote$ * cite$ * quote$ * " HREF=" * quote$ * 
+       URL * quote$ * "> " * cite$ * ":</A></DT>" * write$
+    }
+  if$
+  newline$
+  "<DD>" write$ newline$
+  ""
+  before.all 'output.state :=
+}
+
+% DFK changed to HTML
+FUNCTION {fin.entry}
+{ add.period$
+  write$
+  newline$
+  earlier empty$
+       'skip$
+       { "<br>" write$ newline$
+         "See also earlier version <A HREF=" quote$ * "#" * earlier * quote$ *
+               ">" * earlier * "</A>." * write$ newline$
+       }
+  if$
+  later empty$
+       'skip$
+       { "<br>" write$ newline$
+         "See also later version <A HREF=" quote$ * "#" * later * quote$ *
+               ">" * later * "</A>." * write$ newline$
+       }
+  if$
+  "</DD>" write$ newline$
+}
+
+FUNCTION {new.block}
+{ output.state before.all =
+    'skip$
+    { after.block 'output.state := }
+  if$
+}
+
+FUNCTION {new.sentence}
+{ output.state after.block =
+    'skip$
+    { output.state before.all =
+       'skip$
+       { after.sentence 'output.state := }
+      if$
+    }
+  if$
+}
+
+FUNCTION {not}
+{   { #0 }
+    { #1 }
+  if$
+}
+
+FUNCTION {and}
+{   'skip$
+    { pop$ #0 }
+  if$
+}
+
+FUNCTION {or}
+{   { pop$ #1 }
+    'skip$
+  if$
+}
+
+FUNCTION {new.block.checka}
+{ empty$
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {new.block.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.block
+  if$
+}
+
+FUNCTION {new.sentence.checka}
+{ empty$
+    'skip$
+    'new.sentence
+  if$
+}
+
+FUNCTION {new.sentence.checkb}
+{ empty$
+  swap$ empty$
+  and
+    'skip$
+    'new.sentence
+  if$
+}
+
+FUNCTION {field.or.null}
+{ duplicate$ empty$
+    { pop$ "" }
+    'skip$
+  if$
+}
+
+% DFK changed to HTML
+FUNCTION {emphasize}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "<EM>" swap$ * "</EM>" * }
+  if$
+}
+
+% DFK added for HTML strong emphasis
+FUNCTION {strong}
+{ duplicate$ empty$
+    { pop$ "" }
+    { "<STRONG>" swap$ * "</STRONG>" * }
+  if$
+}
+
+INTEGERS { nameptr namesleft numnames }
+
+% DFK added this, to strip {} and ~ from titles and authors
+% It's not a great idea, because it will screw up in math mode and some
+% special characters... but it makes most things much prettier.
+FUNCTION {author.title.purify}
+{ 't :=
+  ""
+    { t empty$ not }
+    { t #1 #1 substring$ "{" = 
+      t #1 #1 substring$ "}" = or
+       'skip$
+       { t #1 #1 substring$ "~" =
+           { " " * }
+           { t #1 #1 substring$ * }
+       if$
+       }
+      if$
+      t #2 global.max$ substring$ 't :=
+    }
+  while$
+}
+
+FUNCTION {format.names}
+{ 's :=
+  #1 'nameptr :=
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
+      nameptr #1 >
+       { namesleft #1 >
+           { ", " * t * }
+           { numnames #2 >
+               { "," * }
+               'skip$
+             if$
+             t "others" =
+               { " et&nbsp;al." * }
+               { " and " * t * }
+             if$
+           }
+         if$
+       }
+       't
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {format.authors}
+{ author empty$
+    { "" }
+    { author format.names  author.title.purify }
+  if$
+}
+
+FUNCTION {format.editors}
+{ editor empty$
+    { "" }
+    { editor format.names
+      editor num.names$ #1 >
+       { ", editors" * }
+       { ", editor" * }
+      if$
+    }
+  if$
+}
+
+% DFK added strong, so it will be bold.
+FUNCTION {format.title}
+{ title empty$
+    { "" }
+    { title "t" change.case$  author.title.purify strong }
+  if$
+}
+
+FUNCTION {n.dashify}
+{ 't :=
+  ""
+    { t empty$ not }
+    { t #1 #1 substring$ "-" =
+       { t #1 #2 substring$ "--" = not
+           { "--" *
+             t #2 global.max$ substring$ 't :=
+           }
+           {   { t #1 #1 substring$ "-" = }
+               { "-" *
+                 t #2 global.max$ substring$ 't :=
+               }
+             while$
+           }
+         if$
+       }
+       { t #1 #1 substring$ *
+         t #2 global.max$ substring$ 't :=
+       }
+      if$
+    }
+  while$
+}
+
+FUNCTION {format.date}
+{ year empty$
+    { month empty$
+       { "" }
+       { "there's a month but no year in " cite$ * warning$
+         month
+       }
+      if$
+    }
+    { month empty$
+       'year
+       { month " " * year * }
+      if$
+    }
+  if$
+}
+
+% DFK changed emphasize to strong
+FUNCTION {format.btitle}
+{ title author.title.purify strong
+}
+
+FUNCTION {tie.or.space.connect}
+{ duplicate$ text.length$ #3 <
+    { "&nbsp;" }
+    { " " }
+  if$
+  swap$ * *
+}
+
+FUNCTION {either.or.check}
+{ empty$
+    'pop$
+    { "can't use both " swap$ * " fields in " * cite$ * warning$ }
+  if$
+}
+
+FUNCTION {format.bvolume}
+{ volume empty$
+    { "" }
+    { "volume" volume tie.or.space.connect
+      series empty$
+       'skip$
+       { " of " * series emphasize * }
+      if$
+      "volume and number" number either.or.check
+    }
+  if$
+}
+
+FUNCTION {format.number.series}
+{ volume empty$
+    { number empty$
+       { series field.or.null }
+       { output.state mid.sentence =
+           { "number" }
+           { "Number" }
+         if$
+         number tie.or.space.connect
+         series empty$
+           { "there's a number but no series in " cite$ * warning$ }
+           { " in " * series * }
+         if$
+       }
+      if$
+    }
+    { "" }
+  if$
+}
+
+FUNCTION {format.edition}
+{ edition empty$
+    { "" }
+    { output.state mid.sentence =
+       { edition "l" change.case$ " edition" * }
+       { edition "t" change.case$ " edition" * }
+      if$
+    }
+  if$
+}
+
+INTEGERS { multiresult }
+
+FUNCTION {multi.page.check}
+{ 't :=
+  #0 'multiresult :=
+    { multiresult not
+      t empty$ not
+      and
+    }
+    { t #1 #1 substring$
+      duplicate$ "-" =
+      swap$ duplicate$ "," =
+      swap$ "+" =
+      or or
+       { #1 'multiresult := }
+       { t #2 global.max$ substring$ 't := }
+      if$
+    }
+  while$
+  multiresult
+}
+
+FUNCTION {format.pages}
+{ pages empty$
+    { "" }
+    { pages multi.page.check
+       { "pages" pages n.dashify tie.or.space.connect }
+       { "page" pages tie.or.space.connect }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.vol.num.pages}
+{ volume field.or.null
+  number empty$
+    'skip$
+    { "(" number * ")" * *
+      volume empty$
+       { "there's a number but no volume in " cite$ * warning$ }
+       'skip$
+      if$
+    }
+  if$
+  pages empty$
+    'skip$
+    { duplicate$ empty$
+       { pop$ format.pages }
+       { ":" * pages n.dashify * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.chapter.pages}
+{ chapter empty$
+    'format.pages
+    { type empty$
+       { "chapter" }
+       { type "l" change.case$ }
+      if$
+      chapter tie.or.space.connect
+      pages empty$
+       'skip$
+       { ", " * format.pages * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.in.ed.booktitle}
+{ booktitle empty$
+    { "" }
+    { editor empty$
+       { "In " booktitle emphasize * }
+       { "In " format.editors * ", " * booktitle emphasize * }
+      if$
+    }
+  if$
+}
+
+FUNCTION {empty.misc.check}
+{ author empty$ title empty$ howpublished empty$
+  month empty$ year empty$ note empty$
+  and and and and and
+  key empty$ not and
+    { "all relevant fields are empty in " cite$ * warning$ }
+    'skip$
+  if$
+}
+
+FUNCTION {format.thesis.type}
+{ type empty$
+    'skip$
+    { pop$
+      type "t" change.case$
+    }
+  if$
+}
+
+FUNCTION {format.tr.number}
+{ type empty$
+    { "Technical Report" }
+    'type
+  if$
+  number empty$
+    { "t" change.case$ }
+    { number tie.or.space.connect }
+  if$
+}
+
+FUNCTION {format.article.crossref}
+{ key empty$
+    { journal empty$
+       { "need key or journal for " cite$ * " to crossref " * crossref *
+         warning$
+         ""
+       }
+       { "In {\em " journal * "\/}" * }
+      if$
+    }
+    { "In " key * }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.crossref.editor}
+{ editor #1 "{vv~}{ll}" format.name$
+  editor num.names$ duplicate$
+  #2 >
+    { pop$ " et&nbsp;al." * }
+    { #2 <
+       'skip$
+       { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+           { " et&nbsp;al." * }
+           { " and " * editor #2 "{vv~}{ll}" format.name$ * }
+         if$
+       }
+      if$
+    }
+  if$
+}
+
+FUNCTION {format.book.crossref}
+{ volume empty$
+    { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
+      "In "
+    }
+    { "Volume" volume tie.or.space.connect
+      " of " *
+    }
+  if$
+  editor empty$
+  editor field.or.null author field.or.null =
+  or
+    { key empty$
+       { series empty$
+           { "need editor, key, or series for " cite$ * " to crossref " *
+             crossref * warning$
+             "" *
+           }
+           { "{\em " * series * "\/}" * }
+         if$
+       }
+       { key * }
+      if$
+    }
+    { format.crossref.editor * }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+FUNCTION {format.incoll.inproc.crossref}
+{ editor empty$
+  editor field.or.null author field.or.null =
+  or
+    { key empty$
+       { booktitle empty$
+           { "need editor, key, or booktitle for " cite$ * " to crossref " *
+             crossref * warning$
+             ""
+           }
+           { "In {\em " booktitle * "\/}" * }
+         if$
+       }
+       { "In " key * }
+      if$
+    }
+    { "In " format.crossref.editor * }
+  if$
+  " \cite{" * crossref * "}" *
+}
+
+
+% DFK added
+% top of stack is the string we want to be a quoted paragraph
+FUNCTION {format.quotedParagraph}
+{ duplicate$ empty$
+    { skip$ }
+    { "<P><QUOTE> " swap$ * "  </QUOTE></P>" *}
+  if$
+}
+
+
+% DFK added, to support comment, private, keyword, etc
+% next-to-top is field name (eg, "Comment")
+% top is field value (eg, value of comment)
+% both are popped; resulting top is either empty, 
+%    or string describing field
+FUNCTION {format.dfkfield}
+{ duplicate$ empty$
+       { pop$ pop$ "" }
+       { swap$ 
+          "<strong> " swap$ * ":</strong> " * swap$ * }
+  if$
+}
+
+% DFK added
+FUNCTION {dfk.stuff}
+{ new.block
+  "Abstract" abstract format.dfkfield format.quotedParagraph write$ newline$
+  "Keyword" keyword format.dfkfield format.quotedParagraph write$ newline$
+  "Comment" comment format.dfkfield format.quotedParagraph write$ newline$
+}
+
+% DFK: added a call to dfk.stuff in all entry-type functions below
+
+FUNCTION {article}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  crossref missing$
+    { journal emphasize "journal" output.check
+      format.vol.num.pages output
+      format.date "year" output.check
+    }
+    { format.article.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {book}
+{ output.bibitem
+  author empty$
+    { format.editors "author and editor" output.check }
+    { format.authors output.nonnull
+      crossref missing$
+       { "author and editor" editor either.or.check }
+       'skip$
+      if$
+    }
+  if$
+  new.block
+  format.btitle "title" output.check
+  crossref missing$
+    { format.bvolume output
+      new.block
+      format.number.series output
+      new.sentence
+      publisher "publisher" output.check
+      address output
+    }
+    { new.block
+      format.book.crossref output.nonnull
+    }
+  if$
+  format.edition output
+  format.date "year" output.check
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {booklet}
+{ output.bibitem
+  format.authors output
+  new.block
+  format.title "title" output.check
+  howpublished address new.block.checkb
+  howpublished output
+  address output
+  format.date output
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {inbook}
+{ output.bibitem
+  author empty$
+    { format.editors "author and editor" output.check }
+    { format.authors output.nonnull
+      crossref missing$
+       { "author and editor" editor either.or.check }
+       'skip$
+      if$
+    }
+  if$
+  new.block
+  format.btitle "title" output.check
+  crossref missing$
+    { format.bvolume output
+      format.chapter.pages "chapter and pages" output.check
+      new.block
+      format.number.series output
+      new.sentence
+      publisher "publisher" output.check
+      address output
+    }
+    { format.chapter.pages "chapter and pages" output.check
+      new.block
+      format.book.crossref output.nonnull
+    }
+  if$
+  format.edition output
+  format.date "year" output.check
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {incollection}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  crossref missing$
+    { format.in.ed.booktitle "booktitle" output.check
+      format.bvolume output
+      format.number.series output
+      format.chapter.pages output
+      new.sentence
+      publisher "publisher" output.check
+      address output
+      format.edition output
+      format.date "year" output.check
+    }
+    { format.incoll.inproc.crossref output.nonnull
+      format.chapter.pages output
+    }
+  if$
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {inproceedings}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  crossref missing$
+    { format.in.ed.booktitle "booktitle" output.check
+      format.bvolume output
+      format.number.series output
+      format.pages output
+      address empty$
+       { organization publisher new.sentence.checkb
+         organization output
+         publisher output
+         format.date "year" output.check
+       }
+       { address output.nonnull
+         format.date "year" output.check
+         new.sentence
+         organization output
+         publisher output
+       }
+      if$
+    }
+    { format.incoll.inproc.crossref output.nonnull
+      format.pages output
+    }
+  if$
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {conference} { inproceedings }
+
+FUNCTION {manual}
+{ output.bibitem
+  author empty$
+    { organization empty$
+       'skip$
+       { organization output.nonnull
+         address output
+       }
+      if$
+    }
+    { format.authors output.nonnull }
+  if$
+  new.block
+  format.btitle "title" output.check
+  author empty$
+    { organization empty$
+       { address new.block.checka
+         address output
+       }
+       'skip$
+      if$
+    }
+    { organization address new.block.checkb
+      organization output
+      address output
+    }
+  if$
+  format.edition output
+  format.date output
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {mastersthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  "Master's thesis" format.thesis.type output.nonnull
+  school "school" output.check
+  address output
+  format.date "year" output.check
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {misc}
+{ output.bibitem
+  format.authors output
+  title howpublished new.block.checkb
+  format.title output
+  howpublished new.block.checka
+  howpublished output
+  format.date output
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+  empty.misc.check
+}
+
+FUNCTION {phdthesis}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.btitle "title" output.check
+  new.block
+  "PhD thesis" format.thesis.type output.nonnull
+  school "school" output.check
+  address output
+  format.date "year" output.check
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {proceedings}
+{ output.bibitem
+  editor empty$
+    { organization output }
+    { format.editors output.nonnull }
+  if$
+  new.block
+  format.btitle "title" output.check
+  format.bvolume output
+  format.number.series output
+  address empty$
+    { editor empty$
+       { publisher new.sentence.checka }
+       { organization publisher new.sentence.checkb
+         organization output
+       }
+      if$
+      publisher output
+      format.date "year" output.check
+    }
+    { address output.nonnull
+      format.date "year" output.check
+      new.sentence
+      editor empty$
+       'skip$
+       { organization output }
+      if$
+      publisher output
+    }
+  if$
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {techreport}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  format.tr.number output.nonnull
+  institution "institution" output.check
+  address output
+  format.date "year" output.check
+  new.block
+  note output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {unpublished}
+{ output.bibitem
+  format.authors "author" output.check
+  new.block
+  format.title "title" output.check
+  new.block
+  note "note" output.check
+  format.date output
+  fin.entry
+  dfk.stuff
+}
+
+FUNCTION {default.type} { misc }
+
+MACRO {jan} {"January"}
+
+MACRO {feb} {"February"}
+
+MACRO {mar} {"March"}
+
+MACRO {apr} {"April"}
+
+MACRO {may} {"May"}
+
+MACRO {jun} {"June"}
+
+MACRO {jul} {"July"}
+
+MACRO {aug} {"August"}
+
+MACRO {sep} {"September"}
+
+MACRO {oct} {"October"}
+
+MACRO {nov} {"November"}
+
+MACRO {dec} {"December"}
+
+MACRO {acmcs} {"ACM Computing Surveys"}
+
+MACRO {acta} {"Acta Informatica"}
+
+MACRO {cacm} {"Communications of the ACM"}
+
+MACRO {ibmjrd} {"IBM Journal of Research and Development"}
+
+MACRO {ibmsj} {"IBM Systems Journal"}
+
+MACRO {ieeese} {"IEEE Transactions on Software Engineering"}
+
+MACRO {ieeetc} {"IEEE Transactions on Computers"}
+
+MACRO {ieeetcad}
+ {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
+
+MACRO {ipl} {"Information Processing Letters"}
+
+MACRO {jacm} {"Journal of the ACM"}
+
+MACRO {jcss} {"Journal of Computer and System Sciences"}
+
+MACRO {scp} {"Science of Computer Programming"}
+
+MACRO {sicomp} {"SIAM Journal on Computing"}
+
+MACRO {tocs} {"ACM Transactions on Computer Systems"}
+
+MACRO {tods} {"ACM Transactions on Database Systems"}
+
+MACRO {tog} {"ACM Transactions on Graphics"}
+
+MACRO {toms} {"ACM Transactions on Mathematical Software"}
+
+MACRO {toois} {"ACM Transactions on Office Information Systems"}
+
+MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"}
+
+MACRO {tcs} {"Theoretical Computer Science"}
+
+READ
+
+FUNCTION {sortify}
+{ purify$
+  "l" change.case$
+}
+
+INTEGERS { len }
+
+FUNCTION {chop.word}
+{ 's :=
+  'len :=
+  s #1 len substring$ =
+    { s len #1 + global.max$ substring$ }
+    's
+  if$
+}
+
+INTEGERS { et.al.char.used }
+
+FUNCTION {initialize.et.al.char.used}
+{ #0 'et.al.char.used :=
+}
+
+EXECUTE {initialize.et.al.char.used}
+
+FUNCTION {format.lab.names}
+{ 's :=
+  s num.names$ 'numnames :=
+  numnames #1 >
+    { numnames #4 >
+       { #3 'namesleft := }
+       { numnames 'namesleft := }
+      if$
+      #1 'nameptr :=
+      ""
+       { namesleft #0 > }
+       { nameptr numnames =
+           { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" =
+               { "{\etalchar{+}}" *
+                 #1 'et.al.char.used :=
+               }
+               { s nameptr "{v{}}{l{}}" format.name$ * }
+             if$
+           }
+           { s nameptr "{v{}}{l{}}" format.name$ * }
+         if$
+         nameptr #1 + 'nameptr :=
+         namesleft #1 - 'namesleft :=
+       }
+      while$
+      numnames #4 >
+       { "{\etalchar{+}}" *
+         #1 'et.al.char.used :=
+       }
+       'skip$
+      if$
+    }
+    { s #1 "{v{}}{l{}}" format.name$
+      duplicate$ text.length$ #2 <
+       { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ }
+       'skip$
+      if$
+    }
+  if$
+}
+
+FUNCTION {author.key.label}
+{ author empty$
+    { key empty$
+       { cite$ #1 #3 substring$ }
+       { key #3 text.prefix$ }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.editor.key.label}
+{ author empty$
+    { editor empty$
+       { key empty$
+           { cite$ #1 #3 substring$ }
+           { key #3 text.prefix$ }
+         if$
+       }
+       { editor format.lab.names }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {author.key.organization.label}
+{ author empty$
+    { key empty$
+       { organization empty$
+           { cite$ #1 #3 substring$ }
+           { "The " #4 organization chop.word #3 text.prefix$ }
+         if$
+       }
+       { key #3 text.prefix$ }
+      if$
+    }
+    { author format.lab.names }
+  if$
+}
+
+FUNCTION {editor.key.organization.label}
+{ editor empty$
+    { key empty$
+       { organization empty$
+           { cite$ #1 #3 substring$ }
+           { "The " #4 organization chop.word #3 text.prefix$ }
+         if$
+       }
+       { key #3 text.prefix$ }
+      if$
+    }
+    { editor format.lab.names }
+  if$
+}
+
+FUNCTION {calc.label}
+{ type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.key.label
+    { type$ "proceedings" =
+       'editor.key.organization.label
+       { type$ "manual" =
+           'author.key.organization.label
+           'author.key.label
+         if$
+       }
+      if$
+    }
+  if$
+  duplicate$
+  year field.or.null purify$ #-1 #2 substring$
+  *
+  'label :=
+  year field.or.null purify$ #-1 #4 substring$
+  *
+  sortify 'sort.label :=
+}
+
+FUNCTION {sort.format.names}
+{ 's :=
+  #1 'nameptr :=
+  ""
+  s num.names$ 'numnames :=
+  numnames 'namesleft :=
+    { namesleft #0 > }
+    { nameptr #1 >
+       { "   " * }
+       'skip$
+      if$
+      s nameptr "{vv{ } }{ll{ }}{  ff{ }}{  jj{ }}" format.name$ 't :=
+      nameptr numnames = t "others" = and
+       { "et al" * }
+       { t sortify * }
+      if$
+      nameptr #1 + 'nameptr :=
+      namesleft #1 - 'namesleft :=
+    }
+  while$
+}
+
+FUNCTION {sort.format.title}
+{ 't :=
+  "A " #2
+    "An " #3
+      "The " #4 t chop.word
+    chop.word
+  chop.word
+  sortify
+  #1 global.max$ substring$
+}
+
+FUNCTION {author.sort}
+{ author empty$
+    { key empty$
+       { "to sort, need author or key in " cite$ * warning$
+         ""
+       }
+       { key sortify }
+      if$
+    }
+    { author sort.format.names }
+  if$
+}
+
+FUNCTION {author.editor.sort}
+{ author empty$
+    { editor empty$
+       { key empty$
+           { "to sort, need author, editor, or key in " cite$ * warning$
+             ""
+           }
+           { key sortify }
+         if$
+       }
+       { editor sort.format.names }
+      if$
+    }
+    { author sort.format.names }
+  if$
+}
+
+FUNCTION {author.organization.sort}
+{ author empty$
+    { organization empty$
+       { key empty$
+           { "to sort, need author, organization, or key in " cite$ * warning$
+             ""
+           }
+           { key sortify }
+         if$
+       }
+       { "The " #4 organization chop.word sortify }
+      if$
+    }
+    { author sort.format.names }
+  if$
+}
+
+FUNCTION {editor.organization.sort}
+{ editor empty$
+    { organization empty$
+       { key empty$
+           { "to sort, need editor, organization, or key in " cite$ * warning$
+             ""
+           }
+           { key sortify }
+         if$
+       }
+       { "The " #4 organization chop.word sortify }
+      if$
+    }
+    { editor sort.format.names }
+  if$
+}
+
+FUNCTION {presort}
+{ calc.label
+  sort.label
+  "    "
+  *
+  type$ "book" =
+  type$ "inbook" =
+  or
+    'author.editor.sort
+    { type$ "proceedings" =
+       'editor.organization.sort
+       { type$ "manual" =
+           'author.organization.sort
+           'author.sort
+         if$
+       }
+      if$
+    }
+  if$
+  *
+  "    "
+  *
+  year field.or.null sortify
+  *
+  "    "
+  *
+  title field.or.null
+  sort.format.title
+  *
+% DFK throw away stuff above and use cite$ for sort key
+  pop$
+  cite$
+  #1 entry.max$ substring$
+  'sort.key$ :=
+}
+
+ITERATE {presort}
+
+SORT
+
+STRINGS { longest.label last.sort.label next.extra }
+
+INTEGERS { longest.label.width last.extra.num }
+
+FUNCTION {initialize.longest.label}
+{ "" 'longest.label :=
+  #0 int.to.chr$ 'last.sort.label :=
+  "" 'next.extra :=
+  #0 'longest.label.width :=
+  #0 'last.extra.num :=
+}
+
+FUNCTION {forward.pass}
+{ last.sort.label sort.label =
+    { last.extra.num #1 + 'last.extra.num :=
+      last.extra.num int.to.chr$ 'extra.label :=
+    }
+    { "a" chr.to.int$ 'last.extra.num :=
+      "" 'extra.label :=
+      sort.label 'last.sort.label :=
+    }
+  if$
+}
+
+FUNCTION {reverse.pass}
+{ next.extra "b" =
+    { "a" 'extra.label := }
+    'skip$
+  if$
+  label extra.label * 'label :=
+  label width$ longest.label.width >
+    { label 'longest.label :=
+      label width$ 'longest.label.width :=
+    }
+    'skip$
+  if$
+  extra.label 'next.extra :=
+}
+
+EXECUTE {initialize.longest.label}
+
+ITERATE {forward.pass}
+
+REVERSE {reverse.pass}
+
+% DFK removed code about et.al.char
+% DFK changed to HTML
+FUNCTION {begin.bib}
+{ "<HTML>" write$ newline$
+  "<HEAD><TITLE> Bibliography </TITLE>" write$ newline$
+  "</HEAD>" write$ newline$
+  "<BODY BGCOLOR=#EEEEEE>" write$ newline$
+  "<DL>" write$ newline$
+}
+
+EXECUTE {begin.bib}
+
+EXECUTE {init.state.consts}
+
+ITERATE {call.type$}
+
+% DFK changed to HTML
+FUNCTION {end.bib}
+{ newline$
+  "</DL>" write$ newline$
+  "</BODY>" write$ newline$
+  "</HTML>" write$ newline$
+}
+
+EXECUTE {end.bib}
index f37d69840feccb8d1bc2c3af5879c30e4dd8de97..4d3d28073fcb6bc755e8bfec64444d23b7915e0e 100644 (file)
@@ -1,7 +1,7 @@
 @c -*- coding: utf-8; mode: texinfo; documentlanguage: de -*-
 
 @ignore
-    Translation of GIT committish: 83c1d1a6ee4e89f7f913fab904816e6c033b6b04
+    Translation of GIT committish: 0bbabe9eef32b46216a722cc0d49df759227b7be
 
     When revising a translation, copy the HEAD committish of the
     version that you are working on.  For details, see the Contributors'
 @chapter Literatur
 @translationof Literature list
 
+Hier eine Liste der Literatur, die in LilyPond benutzt wurde:
+
+@menu
+* Kurze Literaturliste::
+* Lange Literaturliste::
+@end menu
+
+@node Kurze Literaturliste
+@section Kurze Literaturliste
+@translationof Short literature list
+
 Wenn Sie mehr über Notation und den Notenstich erfahren wollen, sind 
 hier einige interessante Titel gesammelt.
 
@@ -72,17 +83,21 @@ beginnt aber mit einem Überblick über bereits existente Praktiken.
 
 @end table
 
-Das Quellenarchiv enthält eine ausführlichere Bib@TeX{}-Bibliographie mit 
-über 100 Titeln in 
-@ifhtml
-@ifset bigpage
-@uref{../bibliography/index.html, der Bibliographie}.
-@end ifset
-@ifclear bigpage
-@uref{../../bibliography/index.html, der Bibliographie}.
-@end ifclear
-@end ifhtml
-@ifnothtml
-@file{Documentation/@/bibliography/}.
-@end ifnothtml
+
+@node Lange Literaturliste
+@section Lange Literaturliste
+@translationof Long literatur list
+
+@subheading Colorado
+
+@include colorado.itexi
+
+@subheading Computernotation
+
+@include computer-notation.itexi
+
+@subheading Notensatz
+
+@include engravingbib.itexi
+