]> git.donarmstrong.com Git - lilypond.git/blobdiff - ly/gregorian-init.ly
The grand \paper -> \layout, \bookpaper -> \paper renaming.
[lilypond.git] / ly / gregorian-init.ly
index 98348df6e46675e2ba0f8715cd415b7d2c924ede..be626b2999b3950088c4999848bbab45c733d98a 100644 (file)
@@ -1,4 +1,4 @@
-\version "1.7.18"
+\version "2.3.16"
 
 %%%%%%%%
 %%%%%%%% shortcuts common for all styles of gregorian chant notation
 % declare head prefix shortcuts
 %
 virga =
-  \once \property Voice.NoteHead \override #'virga = ##t
+  \once \override NoteHead  #'virga = ##t
 stropha =
-  \once \property Voice.NoteHead \override #'stropha = ##t
+  \once \override NoteHead  #'stropha = ##t
 inclinatum =
-  \once \property Voice.NoteHead \override #'inclinatum = ##t
+  \once \override NoteHead  #'inclinatum = ##t
 auctum =
-  \once \property Voice.NoteHead \override #'auctum = ##t
-aucta =
-  \once \property Voice.NoteHead \override #'auctum = ##t
+  \once \override NoteHead  #'auctum = ##t
 descendens =
-  \once \property Voice.NoteHead \override #'descendens = ##t
+  \once \override NoteHead  #'descendens = ##t
 ascendens =
-  \once \property Voice.NoteHead \override #'ascendens = ##t
+  \once \override NoteHead  #'ascendens = ##t
 pes =
-  \once \property Voice.NoteHead \override #'pes-or-flexa = ##t
+  \once \override NoteHead  #'pes-or-flexa = ##t
 flexa =
-  \once \property Voice.NoteHead \override #'pes-or-flexa = ##t
-semivocalis =
-  \once \property Voice.NoteHead \override #'semivocalis = ##t
+  \once \override NoteHead  #'pes-or-flexa = ##t
 oriscus =
-  \once \property Voice.NoteHead \override #'oriscus = ##t
+  \once \override NoteHead  #'oriscus = ##t
 quilisma =
-  \once \property Voice.NoteHead \override #'quilisma = ##t
+  \once \override NoteHead  #'quilisma = ##t
 deminutum =
-  \once \property Voice.NoteHead \override #'deminutum = ##t
+  \once \override NoteHead  #'deminutum = ##t
+linea =
+  \once \override NoteHead  #'linea = ##t
+cavum =
+  \once \override NoteHead  #'cavum = ##t
 
 %
 % declare divisiones shortcuts
 %
 virgula = {
-  \once \property Voice.BreathingSign \override #'text = #"scripts-rcomma"
-  \once \property Voice.BreathingSign \override #'font-relative-size = #-1
+  \once \override BreathingSign  #'text = #(make-musicglyph-markup "scripts-rcomma")
+  \once \override BreathingSign  #'font-size = #-2
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 caesura = {
-  \once \property Voice.BreathingSign \override #'text = #"scripts-rvarcomma"
-  \once \property Voice.BreathingSign \override #'font-relative-size = #-1
+  \once \override BreathingSign  #'text = #(make-musicglyph-markup "scripts-rvarcomma")
+  \once \override BreathingSign  #'font-size = #-2
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 divisioMinima = {
-  \once \property Voice.BreathingSign \override #'molecule-callback = #Breathing_sign::divisio_minima
+  \once \override BreathingSign  #'print-function = #Breathing_sign::divisio_minima
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 divisioMaior = {
-  \once \property Voice.BreathingSign \override #'molecule-callback = #Breathing_sign::divisio_maior
-  \once \property Voice.BreathingSign \override #'Y-offset-callbacks = #'()
+  \once \override BreathingSign  #'print-function = #Breathing_sign::divisio_maior
+  \once \override BreathingSign  #'Y-offset-callbacks = #'()
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 divisioMaxima = {
-  \once \property Voice.BreathingSign \override #'molecule-callback = #Breathing_sign::divisio_maxima
-  \once \property Voice.BreathingSign \override #'Y-offset-callbacks = #'()
+  \once \override BreathingSign  #'print-function = #Breathing_sign::divisio_maxima
+  \once \override BreathingSign  #'Y-offset-callbacks = #'()
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 finalis = {
-  \once \property Voice.BreathingSign \override #'molecule-callback = #Breathing_sign::finalis
-  \once \property Voice.BreathingSign \override #'Y-offset-callbacks = #'()
+  \once \override BreathingSign  #'print-function = #Breathing_sign::finalis
+  \once \override BreathingSign  #'Y-offset-callbacks = #'()
+
+  % Workaround: add padding.  Correct fix would be spacing engine handle this.
+  \once \override BreathingSign  #'extra-X-extent = #'(-1.0 . 0)
+
   \breathe
 }
 
+%
+% declare articulation shortcuts
+%
+accentus = #(make-articulation "accentus")
+ictus = #(make-articulation "ictus")
+semicirculus = #(make-articulation "semicirculus")
+circulus = #(make-articulation "circulus")
 episemInitium = #(make-span-event 'TextSpanEvent START)
-
 episemFinis = #(make-span-event 'TextSpanEvent STOP)
+
+%
+% shortcut music functions for Liber Hymnarius neumes table
+% (experimental)
+%
+%#(define (make-script x)
+%   (make-music 'ArticulationEvent
+%               'articulation-type x))
+%    
+%#(define (add-script m x)
+%   (if
+%     (equal? (ly:music-property m 'name) 'EventChord)
+%     (set! (ly:music-property m 'elements)
+%           (cons (make-script x)
+%                 (ly:music-property m 'elements))))
+%   m)
+%
+%#(define (add-staccato m)
+%   (add-script m "staccato"))
+%
+% % \applymusic #(lambda (x) (music-map add-staccato x)) { c c }
+%
+% % \climacus { x y z ... }:
+% % \[ \virga x \inclinatum y \inclinatum z ... \]
+%
+%#(defmacro def-climacus-function (start stop)
+%  `(def-music-function (location music) (ly:music?)
+%     (make-music 'SequentialMusic
+%        'elements (list 'LigatureStartEvent
+%                      (ly:music-deep-copy ,start)
+%                        music
+%                        (ly:music-deep-copy ,stop)
+%                      'LigatureStopEvent))))
+%climacus = #(def-climacus-function startSequentialMusic stopSequentialMusic)
+
+%
+% example layout block for gregorian chant notation
+%
+
+neumeDemoLayout = \layout {
+    interscoreline = 1
+    \context {
+       \Score
+       \remove "Bar_number_engraver"
+    }
+    \context {
+       \Staff
+       \remove "Clef_engraver"
+       \remove "Key_engraver"
+       \override StaffSymbol #'transparent = ##t
+       \remove "Time_signature_engraver"
+       \remove "Bar_engraver"
+       minimumVerticalExtent = ##f
+    }
+    \context {
+       \Voice
+       \remove Ligature_bracket_engraver
+       \consists Vaticana_ligature_engraver
+       \override NoteHead #'style = #'vaticana_punctum
+       \override Stem #'transparent = ##t
+    }
+}