]> git.donarmstrong.com Git - lilypond.git/commitdiff
* Documentation/user/refman.itely: bugfix: "Chord namess" ->
authorJürgen Reuter <j@web.de>
Sat, 24 May 2003 20:45:21 +0000 (20:45 +0000)
committerJürgen Reuter <j@web.de>
Sat, 24 May 2003 20:45:21 +0000 (20:45 +0000)
"Chord names"; added table with input syntax for solesmes neumes
table; added some words about rationale on input syntax design

* lily/gregorian-ligature-engraver.cc,
lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc,
lily/include/gregorian-ligature.hh: bugfix: horizontal head
alignment of Pes Initio Debilis

ChangeLog
Documentation/user/refman.itely
lily/gregorian-ligature-engraver.cc
lily/include/gregorian-ligature.hh
lily/vaticana-ligature-engraver.cc
lily/vaticana-ligature.cc

index 8e8c83add3f110b8a9cec6500cd1dfcf46060897..2c0c32ece2fa189dd08a164f1fa3a57ba9eacc68 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
 2003-05-24  Juergen Reuter  <reuter@ipd.uka.de>
 
+       * Documentation/user/refman.itely: bugfix: "Chord namess" ->
+       "Chord names"; added table with input syntax for solesmes neumes
+       table; added some words about rationale on input syntax design
+
+       * lily/gregorian-ligature-engraver.cc,
+       lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc,
+       lily/include/gregorian-ligature.hh: bugfix: horizontal head
+       alignment of Pes Initio Debilis
+
        * Documentation/user/refman.itely,
        lily/vaticana-ligature-engraver.cc, lily/vaticana-ligature.cc,
        mf/parmesan-heads.mf: fixed most of the head selection/alignment
index 6859691e9a5f6bc7a740b52bafc7006e33fd533a..80b21c788641f8f4acde54659b42446f38a55c19 100644 (file)
@@ -3315,7 +3315,7 @@ such as bend are not yet supported.
 
 
 @node Chord names
-@section Chord namess
+@section Chord names
 @cindex Chords
 
 LilyPond has support for both entering and printing named chords.
@@ -4603,11 +4603,18 @@ to the following:
 
 Gregorian square neumes notation (following the style of the Editio
 Vaticana) is under heavy development, but not yet really usable for
-production purposes.  The following table contains the extended neumes
-table of the 2nd volume of the Antiphonale Romanum (@emph{Liber
-Hymnarius}), published 1983 by the monks of Solesmes.
+production purposes.  Core ligatures can already be typeset, but
+essentials issues for serious typesetting are still under development,
+such as (among others) horizontal alignment of multiple ligatures,
+lyrics alignment and proper accidentals handling.  Still, this section
+gives a sneak preview of what Gregorian chant may look like once it
+will work.
 
-@multitable @columnfractions  .4 .2 .2 .2
+The following table contains the extended neumes table of the 2nd
+volume of the Antiphonale Romanum (@emph{Liber Hymnarius}), published
+1983 by the monks of Solesmes.
+
+@multitable @columnfractions .4 .2 .2 .2
 
 @item
 @b{Neuma aut@*Neumarum Elementa} @tab
@@ -4620,16 +4627,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @c the time.
 
 @item
-@code{1. Punctum} @tab
+@code{1. Punctum}
+@tab
 @lilypond[noindent, 26pt, nofragment, linewidth=1.5cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Puctum
         \[ b \]
+        \noBreak s^\markup {"a"} \noBreak
 
         % Punctum Inclinatum
         \[ \inclinatum b \]
+        \noBreak s^\markup {"b"}
     }
     \paper {
         interscoreline = 1
@@ -4655,19 +4665,23 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.5cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Punctum Auctum Ascendens
         \[ \auctum \ascendens b \]
+        \noBreak s^\markup {"c"} \noBreak
 
         % Punctum Auctum Descendens
         \[ \auctum \descendens b \]
+        \noBreak s^\markup {"d"} \noBreak
 
-        % Punctum Inclinatum Auctum
-        \[ \inclinatum \auctum b \]
+        % Punctum Auctum Ascendens
+        \[ \auctum \ascendens b \]
+        \noBreak s^\markup {"e"}
     }
     \paper {
         interscoreline = 1
@@ -4693,13 +4707,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Punctum Inclinatum Parvum
         \[ \inclinatum \deminutum b \]
+        \noBreak s^\markup {"f"}
     }
     \paper {
         interscoreline = 1
@@ -4728,13 +4744,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{2. Virga} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{2. Virga}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Virga
         \[ \virga b \]
+        \noBreak s^\markup {"g"}
     }
     \paper {
         interscoreline = 1
@@ -4760,16 +4778,20 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab @tab
+@end lilypond
+@tab
+@tab
 
 @item
-@code{3. Apostropha vel Stropha} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{3. Apostropha vel Stropha}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Stropha
         \[ \stropha b \]
+        \noBreak s^\markup {"h"}
     }
     \paper {
         interscoreline = 1
@@ -4795,13 +4817,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Stropha Aucta
         \[ \stropha \auctum b \]
+        \noBreak s^\markup {"i"}
     }
     \paper {
         interscoreline = 1
@@ -4827,16 +4851,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
+@end lilypond
+@tab
 
 @item
-@code{4. Oriscus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{4. Oriscus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Oriscus
         \[ \oriscus b \]
+        \noBreak s^\markup {"j"}
     }
     \paper {
         interscoreline = 1
@@ -4862,16 +4889,20 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab @tab
+@end lilypond
+@tab
+@tab
 
 @item
-@code{5. Clivis vel Flexa} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{5. Clivis vel Flexa}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Clivis vel Flexa
         \[ b \flexa g \]
+        s^\markup {"k"}
     }
     \paper {
         interscoreline = 1
@@ -4897,16 +4928,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Clivis Aucta Descendens
         \[ b \flexa \auctum \descendens g \]
+        \noBreak s^\markup {"l"} \noBreak
 
         % Clivis Aucta Ascendens
         \[ b \flexa \auctum \ascendens g \]
+        \noBreak s^\markup {"m"}
     }
     \paper {
         interscoreline = 1
@@ -4932,13 +4966,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Cephalicus
         \[ b \flexa \deminutum g \]
+        s^\markup {"n"}
     }
     \paper {
         interscoreline = 1
@@ -4967,13 +5003,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{6. Podatus vel Pes} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{6. Podatus vel Pes}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Podatus vel Pes
         \[ g \pes b \]
+        s^\markup {"o"}
     }
     \paper {
         interscoreline = 1
@@ -4999,16 +5037,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=2.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Pes Auctus Descendens
         \[ g \pes \auctum \descendens b \]
+        \noBreak s^\markup {"p"} \noBreak
 
         % Pes Auctus Ascendens
         \[ g \pes \auctum \ascendens b \]
+        \noBreak s^\markup {"q"}
     }
     \paper {
         interscoreline = 1
@@ -5034,13 +5075,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Epiphonus
         \[ g \pes \deminutum b \]
+        s^\markup {"r"}
     }
     \paper {
         interscoreline = 1
@@ -5069,13 +5112,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{7. Pes Quassus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{7. Pes Quassus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Pes Quassus
         \[ \oriscus g \pes \virga b \]
+        s^\markup {"s"}
     }
     \paper {
         interscoreline = 1
@@ -5101,13 +5146,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Pes Quassus Auctus Descendens
         \[ \oriscus g \pes \auctum \descendens b \]
+        s^\markup {"t"}
     }
     \paper {
         interscoreline = 1
@@ -5133,16 +5180,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
+@end lilypond
+@tab
 
 @item
-@code{8. Quilisma Pes} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{8. Quilisma Pes}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Quilisma Pes
         \[ \quilisma g \pes b \]
+        s^\markup {"u"}
     }
     \paper {
         interscoreline = 1
@@ -5168,13 +5218,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Quilisma Pes Auctus Descendens
         \[ \quilisma g \pes \auctum \descendens b \]
+        s^\markup {"v"}
     }
     \paper {
         interscoreline = 1
@@ -5200,16 +5252,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
+@end lilypond
+@tab
 
 @item
-@code{9. Podatus Initio Debilis} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{9. Podatus Initio Debilis}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Pes Initio Debilis
         \[ \deminutum g \pes b \]
+        s^\markup {"w"}
     }
     \paper {
         interscoreline = 1
@@ -5235,13 +5290,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Pes Auctus Descendens Initio Debilis
         \[ \deminutum g \pes \auctum \descendens b \]
+        s^\markup {"x"}
     }
     \paper {
         interscoreline = 1
@@ -5267,16 +5324,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
+@end lilypond
+@tab
 
 @item
-@code{10. Torculus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{10. Torculus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus
         \[ a \pes b \flexa g \]
+        s^\markup {"y"}
     }
     \paper {
         interscoreline = 1
@@ -5302,13 +5362,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus Auctus Descendens
         \[ a \pes b \flexa \auctum \descendens g \]
+        s^\markup {"z"}
     }
     \paper {
         interscoreline = 1
@@ -5334,13 +5396,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus Deminutus
         \[ a \pes b \flexa \deminutum g \]
+        s^\markup {"A"}
     }
     \paper {
         interscoreline = 1
@@ -5369,13 +5433,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{11. Torculus Initio Debilis} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{11. Torculus Initio Debilis}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus Initio Debilis
         \[ \deminutum a \pes b \flexa g \]
+        s^\markup {"B"}
     }
     \paper {
         interscoreline = 1
@@ -5401,13 +5467,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus Auctus Descendens Initio Debilis
         \[ \deminutum a \pes b \flexa \auctum \descendens g \]
+        s^\markup {"C"}
     }
     \paper {
         interscoreline = 1
@@ -5433,13 +5501,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Torculus Deminutus Initio Debilis
         \[ \deminutum a \pes b \flexa \deminutum g \]
+        s^\markup {"D"}
     }
     \paper {
         interscoreline = 1
@@ -5468,13 +5538,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{12. Porrectus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{12. Porrectus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Porrectus
         \[ a \flexa g \pes b \]
+        s^\markup {"E"}
     }
     \paper {
         interscoreline = 1
@@ -5500,13 +5572,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Porrectus Auctus Descendens
         \[ a \flexa g \pes \auctum \descendens b \]
+        s^\markup {"F"}
     }
     \paper {
         interscoreline = 1
@@ -5532,13 +5606,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Porrectus Deminutus
         \[ a \flexa g \pes \deminutum b \]
+        s^\markup {"G"}
     }
     \paper {
         interscoreline = 1
@@ -5567,13 +5643,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{13. Climacus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{13. Climacus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Climacus
         \[ \virga b \inclinatum a \inclinatum g \]
+        s^\markup {"H"}
     }
     \paper {
         interscoreline = 1
@@ -5599,13 +5677,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Climacus Auctus
         \[ \virga b \inclinatum a \inclinatum \auctum g \]
+        s^\markup {"I"}
     }
     \paper {
         interscoreline = 1
@@ -5631,13 +5711,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Climacus Deminutus
         \[ \virga b \inclinatum a \inclinatum \deminutum g \]
+        s^\markup {"J"}
     }
     \paper {
         interscoreline = 1
@@ -5666,13 +5748,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{14. Scandicus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{14. Scandicus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Scandicus
         \[ g \pes a \virga b \]
+        s^\markup {"K"}
     }
     \paper {
         interscoreline = 1
@@ -5698,13 +5782,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Scandicus Auctus Descendens
         \[ g \pes a \pes \auctum \descendens b \]
+        s^\markup {"L"}
     }
     \paper {
         interscoreline = 1
@@ -5730,13 +5816,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Scandicus Deminutus
         \[ g \pes a \pes \deminutum b \]
+        s^\markup {"M"}
     }
     \paper {
         interscoreline = 1
@@ -5765,13 +5853,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
 @end lilypond
 
 @item
-@code{15. Salicus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{15. Salicus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Salicus
         \[ g \oriscus a \pes \virga b \]
+        s^\markup {"N"}
     }
     \paper {
         interscoreline = 1
@@ -5797,13 +5887,15 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@end lilypond
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Salicus Auctus Descendens
         \[ g \oriscus a \pes \auctum \descendens b \]
+        s^\markup {"O"}
     }
     \paper {
         interscoreline = 1
@@ -5829,16 +5921,19 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab
+@end lilypond
+@tab
 
 @item
-@code{16. Trigomus} @tab
-@lilypond[noindent, 26pt, nofragment, linewidth=3.0cm]
+@code{16. Trigomus}
+@tab
+@lilypond[noindent, 26pt, nofragment, linewidth=1.0cm]
 \include "gregorian-init.ly"
 \score {
     \notes \transpose c c' {
         % Trigonus
         \[ \stropha b \stropha b \stropha a \]
+        s^\markup {"P"}
     }
     \paper {
         interscoreline = 1
@@ -5864,17 +5959,267 @@ Hymnarius}), published 1983 by the monks of Solesmes.
         }
     }
 }
-@end lilypond @tab @tab
+@end lilypond
+@tab
+@tab
 
 @end multitable
 
-@refbugs
 
-Horizontal head alignment is broken in Pes Initio Debilis.
+Unlike most other neumes notation systems, the input language for
+neumes does not necessarily reflect directly the typographical
+appearance, but is designed to solely focuse on musical meaning.  For
+example, @code{\[ a \pes b \flexa g \]} produces a Torculus consisting
+of three Punctum heads, while @code{\[ a \flexa g \pes b \]} produces
+a torculus with a curved flexa shape and only a single Punctum head.
+There is no command to explicitly typeset the curved flexa shape; the
+decision of when to typeset a curved flexa shape is purely taken from
+the musical input.  The idea of this approach is to separate the
+musical aspects of the input from the notation style of the output.
+This way, the same input can be reused to typeset the same music in a
+different style of Gregorian chant notation such as Hufnagel (also
+known as German gothic neumes) or Medicaea (kind of a very simple
+forerunner of the Editio Vaticana).  As soon as Hufnagel ligature
+engraver and Medicaea ligature engraver will have been implemented, it
+will be as simple as replacing the ligature engraver in the
+VoiceContext to get the desired notation style from the same input.
+
+The following table shows the code fragments that produce the
+ligatures in the above neumes table.  The letter in the first column
+in each line of the below table indicates to which ligature in the
+above table it refers.  The second column gives the name of the
+ligature.  The third column shows the code fragment that produces this
+ligature, using @code{g}, @code{a} and @code{b} as example pitches.
+
+@multitable @columnfractions .1 .4 .5
+
+@item
+@b{#} @tab
+@b{Name} @tab
+@b{Input Language} @tab
+
+@item
+a @tab
+Puctum @tab
+@samp{@code{\[ b \]}}
+
+@item
+b @tab
+Punctum Inclinatum @tab
+@samp{@code{\[ \inclinatum b \]}}
+
+@item
+c @tab
+Punctum Auctum Ascendens @tab
+@samp{@code{\[ \auctum \ascendens b \]}}
+
+@item
+d @tab
+Punctum Auctum Descendens @tab
+@samp{@code{\[ \auctum \descendens b \]}}
+
+@item
+e @tab
+Punctum Inclinatum Auctum @tab
+@samp{@code{\[ \inclinatum \auctum b \]}}
+
+@item
+f @tab
+Punctum Inclinatum Parvum @tab
+@samp{@code{\[ \inclinatum \deminutum b \]}}
+
+@item
+g @tab
+Virga @tab
+@samp{@code{\[ \virga b \]}}
+
+@item
+h @tab
+Stropha @tab
+@samp{@code{\[ \stropha b \]}}
+
+@item
+i @tab
+Stropha Aucta @tab
+@samp{@code{\[ \stropha \auctum b \]}}
+
+@item
+j @tab
+Oriscus @tab
+@samp{@code{\[ \oriscus b \]}}
+
+@item
+k @tab
+Clivis vel Flexa @tab
+@samp{@code{\[ b \flexa g \]}}
+
+@item
+l @tab
+Clivis Aucta Descendens @tab
+@samp{@code{\[ b \flexa \auctum \descendens g \]}}
+
+@item
+m @tab
+Clivis Aucta Ascendens @tab
+@samp{@code{\[ b \flexa \auctum \ascendens g \]}}
+
+@item
+n @tab
+Cephalicus @tab
+@samp{@code{\[ b \flexa \deminutum g \]}}
+
+@item
+o @tab
+Podatus vel Pes @tab
+@samp{@code{\[ g \pes b \]}}
+
+@item
+p @tab
+Pes Auctus Descendens @tab
+@samp{@code{\[ g \pes \auctum \descendens b \]}}
+
+@item
+q @tab
+Pes Auctus Ascendens @tab
+@samp{@code{\[ g \pes \auctum \ascendens b \]}}
+
+@item
+r @tab
+Epiphonus @tab
+@samp{@code{\[ g \pes \deminutum b \]}}
+
+@item
+s @tab
+Pes Quassus @tab
+@samp{@code{\[ \oriscus g \pes \virga b \]}}
+
+@item
+t @tab
+Pes Quassus Auctus Descendens @tab
+@samp{@code{\[ \oriscus g \pes \auctum \descendens b \]}}
+
+@item
+u @tab
+Quilisma Pes @tab
+@samp{@code{\[ \quilisma g \pes b \]}}
+
+@item
+v @tab
+Quilisma Pes Auctus Descendens @tab
+@samp{@code{\[ \quilisma g \pes \auctum \descendens b \]}}
+
+@item
+w @tab
+Pes Initio Debilis @tab
+@samp{@code{\[ \deminutum g \pes b \]}}
+
+@item
+x @tab
+Pes Auctus Descendens Initio Debilis @tab
+@samp{@code{\[ \deminutum g \pes \auctum \descendens b \]}}
+
+@item
+y @tab
+Torculus @tab
+@samp{@code{\[ a \pes b \flexa g \]}}
+
+@item
+z @tab
+Torculus Auctus Descendens @tab
+@samp{@code{\[ a \pes b \flexa \auctum \descendens g \]}}
+
+@item
+A @tab
+Torculus Deminutus @tab
+@samp{@code{\[ a \pes b \flexa \deminutum g \]}}
+
+@item
+B @tab
+Torculus Initio Debilis @tab
+@samp{@code{\[ \deminutum a \pes b \flexa g \]}}
+
+@item
+C @tab
+Torculus Auctus Descendens Initio Debilis @tab
+@samp{@code{\[ \deminutum a \pes b \flexa \auctum \descendens g \]}}
+
+@item
+D @tab
+Torculus Deminutus Initio Debilis @tab
+@samp{@code{\[ \deminutum a \pes b \flexa \deminutum g \]}}
+
+@item
+E @tab
+Porrectus @tab
+@samp{@code{\[ a \flexa g \pes b \]}}
+
+@item
+F @tab
+Porrectus Auctus Descendens @tab
+@samp{@code{\[ a \flexa g \pes \auctum \descendens b \]}}
+
+@item
+G @tab
+Porrectus Deminutus @tab
+@samp{@code{\[ a \flexa g \pes \deminutum b \]}}
+
+@item
+H @tab
+Climacus @tab
+@samp{@code{\[ \virga b \inclinatum a \inclinatum g \]}}
+
+@item
+I @tab
+Climacus Auctus @tab
+@samp{@code{\[ \virga b \inclinatum a \inclinatum \auctum g \]}}
+
+@item
+J @tab
+Climacus Deminutus @tab
+@samp{@code{\[ \virga b \inclinatum a \inclinatum \deminutum g \]}}
+
+@item
+K @tab
+Scandicus @tab
+@samp{@code{\[ g \pes a \virga b \]}}
+
+@item
+L @tab
+Scandicus Auctus Descendens @tab
+@samp{@code{\[ g \pes a \pes \auctum \descendens b \]}}
+
+@item
+M @tab
+Scandicus Deminutus @tab
+@samp{@code{\[ g \pes a \pes \deminutum b \]}}
+
+@item
+N @tab
+Salicus @tab
+@samp{@code{\[ g \oriscus a \pes \virga b \]}}
+
+@item
+O @tab
+Salicus Auctus Descendens @tab
+@samp{@code{\[ g \oriscus a \pes \auctum \descendens b \]}}
+
+@item
+P @tab
+Trigonus @tab
+@samp{@code{\[ \stropha b \stropha b \stropha a \]}}
+
+@end multitable
+
+@refbugs
 
 Use special heads for lower/upper head of Pes only when heads are
 stacked.
 
+Scandicus Deminutus: Punctum Auctum Ascendens overlaps with
+Semivocalis head; this looks awful.
+
+Trigonus: apply equal spacing, regardless of pitch.
+
 @node Figured bass
 @subsection Figured bass
 
index 68cc9ceb7c962a338e025896e25718eadc59c9d2..7b79ac258ff373cd2c397e98ccc01aaaeea1604c 100644 (file)
@@ -227,6 +227,10 @@ provide_context_info (Array<Grob_info> primitives)
       {
        context_info |= AFTER_VIRGA;
       }
+    if (prev_prefix_set & DEMINUTUM)
+      {
+       context_info |= AFTER_DEMINUTUM;
+      }
 
     if (prev_primitive)
       prev_primitive->set_grob_property ("context-info",
index 801b34dbf0716e78e20fa30e7c8501055d4eb133..d1811e4d960008c35442dce7d5def6bb73c4a65f 100644 (file)
  * Ligature context info: these attributes are derived from the head
  * prefixes by considering the current and the following head.
  */
-#define PES_LOWER    0x0001 // this is a head before "\~" in an ascending melody
-#define PES_UPPER    0x0002 // this is a head after "\~" in an ascending melody
-#define FLEXA_LEFT   0x0004 // this is a head before "\~" in a descending melody
-#define FLEXA_RIGHT  0x0008 // this is a head after "\~" in a descending melody
-#define AFTER_VIRGA  0x0010 // previous head was a virga
+#define PES_LOWER       0x0001 // this is a head before "\~" in an
+                              // ascending melody
+#define PES_UPPER       0x0002 // this is a head after "\~" in an
+                              // ascending melody
+#define FLEXA_LEFT      0x0004 // this is a head before "\~" in a
+                              // descending melody
+#define FLEXA_RIGHT     0x0008 // this is a head after "\~" in a
+                              // descending melody
+#define AFTER_VIRGA     0x0010 // previous head was a virga
+#define AFTER_DEMINUTUM 0x0020 // previous head was a deminutum
 
 #endif /* GREGORIAN_LIGATURE_HH */
index 3a86732ca9974de107b09e1ac42bfa049c2ac841..2486acaf8b85b6c808b02678d543a9529f3f4fc3 100644 (file)
@@ -84,10 +84,8 @@ Vaticana_ligature_engraver::finish_primitive (Item *first_primitive,
        is_stacked = false;
 
       // ... or the previous note is a semivocalis or inclinatum
-      /* TODO:
-        if (prev_prefix_set & DEMINUTUM)
-          is_stacked = false;
-      */
+      if (context_info & AFTER_DEMINUTUM)
+       is_stacked = false;
 
       // auctum head is never stacked upon preceding note
       if (prefix_set & AUCTUM)
index 6371a78d607ff8b14c31e4e86dcd09f7eaf5764b..2f0cd7bc09deb847a3ce1b7ee20760a24386c691 100644 (file)
@@ -255,8 +255,7 @@ vaticana_brew_primitive (Grob *me, bool ledger_take_space)
       if (!join_left)
        programming_error (_f ("Vaticana_ligature: (join_left == 0)"));
       Real blotdiameter = (me->get_paper ()->get_var ("blotdiameter"));
-      Interval x_extent =
-       Interval (0, thickness);
+      Interval x_extent = Interval (0, thickness);
       Interval y_extent = (join_left > 0) ?
        Interval (-join_left * 0.5 * staff_space, 0) : // ascending join
        Interval (0, -join_left * 0.5 * staff_space); // descending join