From: Jürgen Reuter Date: Sun, 22 Oct 2006 20:19:30 +0000 (+0000) Subject: * Documentation/user/examples.itely (Transcription of mensural X-Git-Tag: release/2.10.0-2~102 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=931465a3c93bd73bdabfcaccb71c37f4b4e5b814;p=lilypond.git * Documentation/user/examples.itely (Transcription of mensural music): Added more comments in .ly source. Suggest to remove Forbid_line_break_engraver to allow line breaking at all bars. * Documentation/user/instrument-notation.itely (Ancient articulations): Updated @refbugs regarding episem. * Documentation/user/instrument-notation.itely (Gregorian square neumes ligatures): Added \augmentum dots. Updated @refbugs regarding \augmentum. * input/test/gregorian-scripts.ly: Removed obsolete TODOs. * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated comment. * lily/vaticana-ligature-engraver.cc: Added TODO comment for \augmentum dots. * ly/gregorian-init.ly: Added \augmentum macro. --- diff --git a/ChangeLog b/ChangeLog index 99425288db..588bf5771f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,26 @@ +2006-10-22 Jürgen Reuter + + * Documentation/user/examples.itely (Transcription of mensural + music): Added more comments in .ly source. Suggest to remove + Forbid_line_break_engraver to allow line breaking at all bars. + + * Documentation/user/instrument-notation.itely (Ancient + articulations): Updated @refbugs regarding episem. + + * Documentation/user/instrument-notation.itely (Gregorian square + neumes ligatures): Added \augmentum dots. Updated @refbugs + regarding \augmentum. + + * input/test/gregorian-scripts.ly: Removed obsolete TODOs. + + * input/test/ligature-vaticana.ly: Added \augmentum dots. Updated + comment. + + * lily/vaticana-ligature-engraver.cc: Added TODO comment for + \augmentum dots. + + * ly/gregorian-init.ly: Added \augmentum macro. + 2006-10-22 Han-Wen Nienhuys * lily/gregorian-ligature-engraver.cc (fix_prefix): const correctness. diff --git a/Documentation/user/examples.itely b/Documentation/user/examples.itely index 015df0e8c4..3e7845709c 100644 --- a/Documentation/user/examples.itely +++ b/Documentation/user/examples.itely @@ -945,12 +945,26 @@ bassusLyrics = \lyricmode { \layout { \context { \Score + + % no bars in staves \override BarLine #'transparent = ##t + + % incipit should not start with a start delimiter \remove "System_start_delimiter_engraver" } \context { \Voice + + % no slurs \override Slur #'transparent = ##t + + % Comment in the below "\remove" command to allow line + % breaking also at those barlines where a note overlaps + % into the next bar. The command is commented out in this + % short example score, but especially for large scores, you + % will typically yield better line breaking and thus improve + % overall spacing if you comment in the following command. + %\remove "Forbid_line_break_engraver" } } } diff --git a/Documentation/user/instrument-notation.itely b/Documentation/user/instrument-notation.itely index fcdd263ac7..e0ace0b371 100644 --- a/Documentation/user/instrument-notation.itely +++ b/Documentation/user/instrument-notation.itely @@ -2990,9 +2990,8 @@ Editio Vaticana style. Some articulations are vertically placed too closely to the correpsonding note heads. -The episem line is not displayed if its length is shorter than the -width of roughly 4 note heads. The right end of the episem line is -often too far to the right. +The episem line is not displayed in many cases. If it is displayed, +the right end of the episem line is often too far to the right. @node Custodes @subsection Custodes @@ -4156,6 +4155,25 @@ ligatures can be created. @c even more Gregorian ligatures, and add a link to this document @c here. +Augmentum dots, also called @emph{morae}, are added with the music +function @code{\augmentum}. Note that @code{\augmentum} is +implemented as a unary music function rather than as head prefix. It +applies to the immediately following music expression only. That is, +@code{\augmentum \virga c} will have no visible effect. Instead, say +@code{\virga \augmentum c} or @code{\augmentum @{\virga c@}}. Also +note that you can say @code{\augmentum @{a g@}} as a shortcut for +@code{\augmentum a \augmentum g}. + +@lilypond[quote,ragged-right,verbatim] +\include "gregorian-init.ly" +\score { + \new VaticanaVoice { + \[ \augmentum a \flexa \augmentum g \] + \augmentum g + } +} +@end lilypond + @refcommands The following head prefixes are supported @@ -4193,7 +4211,19 @@ Two adjacent heads can be tied together with the @code{\pes} and @code{\flexa} infix commands for a rising and falling line of melody, respectively. +@funindex \augmentum +Use the unary music function @code{\augmentum} to add augmentum dots. + +@refbugs + +When an @code{\augmentum} dot appears at the end of the last staff +within a ligature, it is sometimes vertically placed wrong. As a +workaround, add an additional skip note (e.g. @code{s8}) as last note +of the staff. +@code{\augmentum} should be implemented as a head prefix rather than a +unary music function, such that @code{\augmentum} can be intermixed +with head prefixes in arbitrary order. @node Gregorian Chant contexts @subsection Gregorian Chant contexts diff --git a/input/test/gregorian-scripts.ly b/input/test/gregorian-scripts.ly index feeb4d5009..b8ec2c60db 100644 --- a/input/test/gregorian-scripts.ly +++ b/input/test/gregorian-scripts.ly @@ -10,12 +10,6 @@ ictus, circulus, semicirculus, accentus, episem. %{ -TODO: augmentum. Syntax: either as bracket (\augmentumInitium, -\augmentumFinis), or as head prefix with subsequently collecting all -dots and putting them behind the ligature in a vertical row. -Counterexample to the second approach: Graduale Triplex, tempus per -annum, hebdomada septima, alleluia (page 280). - FIXME: horizontal spacing (ragged right mode). FIXME: padding/minimum-distance is fragile. @@ -38,12 +32,6 @@ FIXME: episem stops one notehead too early. a\circulus a\semicirculus a\accentus - - %{ %% TODO: augmentum: - a\augmentum - \[ \augmentumInitium b \flexa a \augmentumFinis \] - %} - \[ a \episemInitium \pes b \flexa a \episemFinis \] } } diff --git a/input/test/ligature-vaticana.ly b/input/test/ligature-vaticana.ly index 2f49a401c2..bd074075c4 100644 --- a/input/test/ligature-vaticana.ly +++ b/input/test/ligature-vaticana.ly @@ -2,7 +2,8 @@ \header { texidoc = "@cindex Ancient Vaticana Vaticana ligature uses four staff lines, special clef, and -calligraphic notes. " +calligraphic notes. Augmentum dots are collected behind +ligatures. " } \include "gregorian-init.ly" @@ -14,7 +15,7 @@ cantus = \new VaticanaVoice = "cantus" { c \pes d \quilisma e \pes f \virga g a \flexa f \pes g \inclinatum f \inclinatum e\melismaEnd \] \[ d\melisma \quilisma e f \flexa e \pes f\melismaEnd \] - \[ e\melisma \flexa d\melismaEnd \] + \[ \augmentum e\melisma \flexa \augmentum d\melismaEnd \] } verba = \new Lyrics = "verba" \lyricmode { diff --git a/lily/vaticana-ligature-engraver.cc b/lily/vaticana-ligature-engraver.cc index 07278d6519..608cb16c66 100644 --- a/lily/vaticana-ligature-engraver.cc +++ b/lily/vaticana-ligature-engraver.cc @@ -39,6 +39,12 @@ * negative impact, since dotted notes appear within a ligature * usually always at the end of the ligature, such that the bug never * should apply for valid ligatures. + * + * TODO: Graduale Triplex, tempus per annum, hebdomada septima, + * alleluia (page 280) shows a counter-example for collecting dots + * always in a single column behind the ligature. Maybe only the last + * two dots in a ligature should be collected and all other dots put + * behind or on top of the head? */ class Vaticana_ligature_engraver : public Gregorian_ligature_engraver { diff --git a/ly/gregorian-init.ly b/ly/gregorian-init.ly index cb584b203d..163116b4f5 100644 --- a/ly/gregorian-init.ly +++ b/ly/gregorian-init.ly @@ -1,6 +1,6 @@ %{ Shortcuts common for all styles of gregorian chant notation. - $Id: gregorian-init.ly,v 1.47 2006/10/09 21:12:26 reuter Exp $ + $Id: gregorian-init.ly,v 1.48 2006/10/22 20:19:31 reuter Exp $ %} \version "2.7.39" @@ -151,11 +151,14 @@ semicirculus = #(make-articulation "semicirculus") circulus = #(make-articulation "circulus") episemInitium = \startTextSpan episemFinis = \stopTextSpan -augmentum = { - %%% TODO: A ligature head postfix that indicates that an - %%% augmentum dot should be appended to the right end of - %%% the surrounding ligature. [Not yet implemented.] -} + +% +% \augmentum increases the dot-count value of all note heads to which +% it is applied by one. +% +augmentum = +#(define-music-function (parser location expr) (ly:music?) + (shift-duration-log expr 0 1)) % % Declare shortcut music functions for Liber Hymnarius neumes @@ -268,6 +271,7 @@ ligature = #(define-music-function %%% causes tons of "programming error: adding reverse spring, %%% setting to unit" messages. %%% + %\override SpacingSpanner #'base-shortest-duration = #(ly:make-moment 1 4) %\override SpacingSpanner #'shortest-duration-space = #0 %\override SpacingSpanner #'average-spacing-wishes = ##f %\override SpacingSpanner #'spacing-increment = #0.0