]> git.donarmstrong.com Git - lilypond.git/blobdiff - input/puer-fragment.ly
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / input / puer-fragment.ly
index ead1cbf61b6290ad6c5964aab70da1ba65b3c296..3f3c5aae27a2d567d94e8a59770bc580745669a3 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.7.27"
+\version "2.7.39"
 \header {
     title      = "Puer natus est nobis"
     subtitle   = "Antiphona ad introitum VII"
 
 Demonstrate gregorian chant notation
 
-This file pretty nicely demonstrates what still does
-not work among ligatures: (i) horizontal spacing between ligatures and
-lyrics aligment is broken; (ii) the clef does not show on each line;
-(iii) lily crashes when removing Stem_engraver, but still using
-Slur_engraver (this is useful needed for the \addlyrics feature when
-no slurs are to be typeset); (iv) episem causes a parse error (this
-used to work a while ago); (v) pitches are typeset half a staff space
-too high (the second note is a d, but it appears on the line of the do
-clef; this bug must have been introduced only recently); (vi) support
-for augmentum dots is missing; (vii) accidentals must be placed before
-the ligature (not demonstrated in this example)."
+This file pretty nicely demonstrates what still does not work among
+ligatures: (i) horizontal spacing between ligatures and lyrics
+aligment is broken; (ii) there is no satisfactory support for
+initials; (iii) all scripts are broken as soon as they appear within
+ligatures, and episem is broken also outside of ligatures; (iv)
+augmentum dots is missing; (v) accidentals must be placed before the
+ligature (not demonstrated in this example)."
 
 }
 
-\include "paper26.ly"
+#(set-global-staff-size 26)
 \include "gregorian-init.ly"
 
 %%% N.B.: Yes, I know, the formatting of the following looks awful,
 %%% but this is intentional for editorial purposes (simplifies some
 %%% global search/replace operations in emacs).
 
-cantus = \notes \transpose c c {
-  \[ g4
-    (          %%% Pu-
+cantus = \new VaticanaVoice = "cantus"  {
+  \set Staff.instrument = \markup {
+    \column {
+      " " " " " " " " "VII" " "
+      {
+       \bigger \bigger \bigger \bigger
+       \bigger \bigger \bigger \bigger
+       \bigger \bigger \bigger \bigger
+       "P"
+      }
+    }
+  }
+  \[
+    g4\melisma %%% Pu-
     \pes
-    d'-)
+    d'\melismaEnd
   \]
-  d'           %%% er
-  \[ d'
-    (          %%% na-
+  d'\augmentum %%% er
+  \[
+    d'\melisma %%% na-
     \pes e' \flexa
-    d'-)
+    d'\melismaEnd
   \]
   c'           %%% tus
-  \[ c'
-    (          %%% est
+  \[
+    c'\melisma %%% est
     c'
-    c'-)
+    c'\melismaEnd
   \]
-  \[ d'
-    (          %%% no-
+  \[
+    d'\melisma %%% no-
     \flexa c' e' \flexa
-    d'-)
+    d'\melismaEnd
   \]
-  d'            %%% bis,
+  d'\augmentum  %%% bis,
   \divisioMaior
-  \[ g
-    (          %%% et
-    \pes
-    d'-)
+  \[
+    g\melisma  %%% et
+    \pes \deminutum
+    d'\melismaEnd
   \]
-  \[ d'
-    (          %%% fi-
+  \[
+    d'\melisma %%% fí-
     \pes e' \flexa
-    d'-)
+    d'\melismaEnd
   \]
-  \[ c'
-    (          %%% li-
+  \[
+    c'\melisma %%% li-
     \flexa
-    b-)
+    b\melismaEnd
   \]
   a            %%% us
-  \[ c'
-    (          %%% da-
+  \[
+    c'\melisma %%% da-
     c' \pes
-    d'-)
+    d'\melismaEnd
   \]
   c'           %%% tus-
   c'           %%% est
-  \[ c'
-    (          %%% no-
+  \[
+    c'\melisma %%% no-
     \pes d' \flexa c'
-    c'-)
+    c'\melismaEnd
   \]
-  \[ g
-    (          %%% bis:
+  \[
+    g\melisma  %%% bis:
     \pes a \flexa
-    g-)
+    g\melismaEnd\augmentum
   \]
   \divisioMaxima
   g            %%% cu-
-  a            %%% us
+  a            %%% ius
   c'           %%% im-
-  \[ b
-    (          %%% pe-
-    \pes d' e' \pes
-    f'-)
+  \[
+    b\melisma  %%% pé-
+    \pes d' e'
+    \pes f'\melismaEnd
   \]
-  \[ d'
-    (          %%% ri-
-    \flexa
-    c'-)
+  \[
+    d'\melisma %%% ri-
+    \flexa c'\melismaEnd
+  \]
+  c'\augmentum %%% um
+  \divisioMinima
+  c'           %%% su-
+  c'           %%% per
+  \[
+    d'\melisma %%% hú-
+    \flexa c'
+    e' \flexa
+    d'\melismaEnd
+  \]
+  \[
+    c'\melisma %%% me-
+    \flexa b\melismaEnd
+  \]
+  \[
+    c'\melisma %%% rum
+    c' c'\melismaEnd
+  \]
+  \[
+    c'\melisma %%% e-
+    \flexa a
+    c' \flexa b
+    \virga c' \inclinatum b
+    \inclinatum a\melismaEnd
+  \]
+  \[
+    b\melisma  %%% ius:
+    \augmentum \flexa
+    a\melismaEnd \augmentum
+  \]
+  \divisioMaxima
+  \[
+    c'\melisma %%% et
+    \flexa b\melismaEnd
+  \]
+  c'           %%% vo-
+  \[
+    c'\melisma %%% cá-
+    \pes e' \flexa
+    d'\melismaEnd
+  \]
+  c'           %%% bi-
+  \[
+    c'\melisma %%% tur
+    c' c'\melismaEnd
+  \]
+  c'           %%% no-
+  \[
+    c'\melisma %%% men
+    c' c'\melismaEnd
+  \]
+  \[
+    c'\melisma  %%% e-
+    \pes d' \flexa b
+    \virga c' \inclinatum b
+    \inclinatum a\melismaEnd
+  \]
+  \[
+    b\melisma  %%% ius,
+    \augmentum \flexa
+    a\melismaEnd\augmentum
+  \]
+  \divisioMaior
+  \[
+    c'\melisma %%% ma-
+    \pes e'\melismaEnd
+  \]
+  d'           %%% gni
+  \[
+    g\melisma  %%% con-
+    \pes \deminutum
+    c'\melismaEnd
+  \]
+  c'           %%% sí-
+  \[
+    c'\melisma %%% li-
+    c' c' \flexa a\melismaEnd
+  \]
+  a            %%% i
+  \[
+    a\melisma  %%% An-
+    \pes c' \flexa a
+    \quilisma b \pes
+    c'\melismaEnd
+  \]
+  \[
+    g\melisma  %%% ge-
+    \pes a \flexa
+    g\melismaEnd
+  \]
+  g\augmentum  %%% lus.
+  s_\markup { \italic { "Ps." } }
+  \finalis
+  \[
+    g\melisma  %%% Can-
+    \pes c' \flexa b\melismaEnd
+  \]
+  \[
+    c'\melisma %%% tá-
+    \pes d'\melismaEnd
+  \]
+  d'           %%% te
+  d'           %%% Dó-
+  d'           %%% mi-
+  d'           %%% no
+  \[
+    d'\melisma %%% cán-
+    \pes f'\melismaEnd
+  \]
+  e'           %%% ti-
+  e'           %%% cum
+  \[
+    e'\melisma  %%% no-
+    \flexa d'\melismaEnd
   \]
-  c'           %%% um
+  \[
+    d'\melisma %%% vum:
+    \augmentum \pes
+    e'\melismaEnd \augmentum
+  \]
+  \[
+    d'\melisma %%% qui-
+    \flexa b\melismaEnd
+  \]
+  \[
+    c'\melisma %%% a
+    \pes d'\melismaEnd
+  \]
+  d'           %%% mi-
+  d'           %%% ra-
+  \[
+    d'\melisma %%% bí-
+    \quilisma e'
+    \pes f'\melismaEnd
+  \]
+  d'           %%% li-
+  c'           %%% a
+  \[
+    c'\melisma %%% fe-
+    c' c'\melismaEnd
+  \]
+  \[
+    a\melisma  %%% cit.
+    \augmentum \flexa
+    g\melismaEnd \augmentum
+  \]
+  \finalis
 }
 
-verba = \context Lyrics = verba \lyrics {
-  Pu- er na- tus est no- bis,
-  et fi- li- us da- tus est no- bis:
-  cu- ius im- pe- ri- um
+verba = \new Lyrics = "verba" \lyricmode {
+  U -- ER na -- tus est no -- bis,
+  et fí -- li -- us da -- tus est no -- "bis :"
+  cu -- ius im -- pé -- ri -- um su -- per
+  hú -- me -- rum e -- "ius :" et vo -- cá --
+  bi -- tur no -- men e -- ius, ma -- gni
+  con -- sí -- li -- i An -- ge -- lus.
+  Can -- tá -- te Dó -- mi -- no cán --
+  ti -- cum no -- "vum :" qui -- a mi -- ra --
+  bí -- li -- a fe -- cit.
 }
 
-\score {
-  \context StaffGroup <
-    \context VaticanaStaff <
-      \context VaticanaVoice <
-       \addlyrics
-       \cantus
-       \verba
-      >
-    >
-  >
-  \paper {
-    stafflinethickness = \staffspace / 5.0
-    linewidth = 137.0\mm
-    width = 137.0\mm
-    indent = 0.0
-    raggedright = ##t
-    packed = ##t
-%   width = 15.0 \cm %%% no effect?
-
-    \translator {
-      \VoiceContext
-      \name VaticanaVoice
-      \alias Voice
-
-      % Can not `\remove "Slur_engraver"', since \addlyrics needs
-      % slurs working.  Hence, set slurs transparent instead.
-      Slur \override #'transparent = ##t
-
-      % N.B.: Warnings of the type "Degenerate bow: infinite steepness
-      % reqd" arise from the fact that all noteheads of a ligature are
-      % in the same paper column.  Therefore, the (transparent) slurs
-      % often start and end in the same column, producing the above
-      % warning.  TODO: supress this warning; we need slurs only for
-      % \addlyrics, not for printing.
-
-      % `\remove "Stem_engraver"' currently produces a crash (see
-      % below).  Hence, set stems transparent instead.
-      Stem \set #'transparent = ##t
-      % \remove "Stem_engraver"
-
-%{
-
-FIXME:
-
-When removing Stem_engraver from VoiceContext (but still using
-Slur_engraver), lily will crash while trying to typeset slurs, since
-`()' is not a valid stem:
-
-In unknown file:
-   ?: 0* [Slur::after_line_breaking #<Grob Slur >]
-   ?: 1* [#<procedure #f (slur dir)> #<Grob Slur > -1]
-In /home/reuter/project/lilypond-1.7/share/lilypond/scm/slur.scm:
-  43: 2* [not ...
-  43: 3*  [attached-to-stem #<Grob Slur > -1]
-  10: 4   (let* ((note-columns #) (col #) (stem #)) (and (eq? col #) stem ...))
-    ...
-  16: 5   [ly:get-grob-property () heads]
-
-/home/reuter/project/lilypond-1.7/share/lilypond/scm/slur.scm:16:6: In procedure ly_get_grob_property in expression (ly:get-grob-property stem (quote heads)):
-/home/reuter/project/lilypond-1.7/share/lilypond/scm/slur.scm:16:6: Wrong type argument in position 1 (expecting grob): ()
-
-%}
-
-      \remove Ligature_bracket_engraver
-      \consists Vaticana_ligature_engraver
-      NoteHead \set #'style = #'vaticana_punctum
-      Script \set #'padding = #0.0
-
-      % prepare TextSpanner for \episem{Initium|Finis} use
-      TextSpanner \set #'style = #'line
-      TextSpanner \set #'edge-height = #'(0 . 0)
-      TextSpanner \set #'padding = #0.5
-      TextSpanner \set #'edge-text = #'("" . "")
-    }
-    \translator {
-      \VoiceContext
-      \name GregorianTransciptionVoice
-      \alias Voice
-      Stem \set #'transparent = ##t
-      % \remove "Stem_engraver"
-      % Slur \override #'transparent = ##t
-      \remove "Slur_engraver"
-    }
-    \translator {
-      \StaffContext
-      \name GregorianTranscriptionStaff
-      \alias Staff
-      \accepts GregorianTranscriptionVoice
-      BarLine \override #'transparent = ##t
-    }
-    \translator {
-      \StaffContext
-      \name VaticanaStaff
-      \alias Staff
-      \accepts VaticanaVoice
-      \remove Bar_engraver
-      \consists Custos_engraver
-      clefGlyph = #"clefs-vaticana_do"
-      centralCPosition = #0
-      clefPosition = #1
-      clefOctavation = #0
-      StaffSymbol \set #'line-count = #4
-      StaffSymbol \set #'width = #60.0 % FIXME: unit should be \linewidth
-      TimeSignature \set #'transparent = ##t
-      KeySignature \set #'style = #'vaticana
-      Accidental \set #'style = #'vaticana
-      Custos \set #'style = #'vaticana
-      Custos \set #'neutral-position = #3
-      Custos \set #'neutral-direction = #-1
-      Custos \set #'adjust-if-on-staffline = ##t
-    }
-    \translator {
-      \HaraKiriStaffContext
-      \accepts VaticanaVoice
-      \accepts GregorianTranscriptionVoice
-    }
-    \translator {
-      \ScoreContext
-      \accepts VaticanaStaff
-      \accepts GregorianTranscriptionStaff
-      \remove Bar_number_engraver
-%      SpacingSpanner \set #'spacing-increment = #0.5
-      timing = ##f
+\paper  {
+%    line-thickness = \staff-space / 7.0
+%    line-thickness = \staff-space / 3.0
+}
 
-      % Don't do this except for transcription -- it will produce
-      % additional space
-      barAlways = ##t
-%      skipBars = ##t
-    }
+\score {
+  <<
+    \cantus
+    \lyricsto "cantus" \verba
+  >>
+  \layout {
+    indent = 17.0\mm
   }
 }
+
+%%% Local Variables:
+%%% coding: utf-8
+%%% End: