]> git.donarmstrong.com Git - lilypond.git/blobdiff - ly/music-functions-init.ly
Clean up the Align_interface API.
[lilypond.git] / ly / music-functions-init.ly
index 0e5093e8a5b8c899ba5ad5eda25d6d9957742027..b96f90272fc8c2c4c8e4764679bcb27f7759e98a 100644 (file)
@@ -360,7 +360,6 @@ label =
                                           'page-label label))))
 
 
-
 makeClusters =
 #(define-music-function (parser location arg) (ly:music?)
    (_i "Display chords in @var{arg} as clusters.")
@@ -599,6 +598,28 @@ that they share a staff.")
    (make-part-combine-music parser
                             (list part1 part2)))
 
+#(define (symbol-or-boolean? x) (or (symbol? x) (boolean? x)))
+partcombineForce =
+#(define-music-function (location parser type once) (symbol-or-boolean? boolean?)
+   (_i "Override the part-combiner.")
+   (make-music 'EventChord
+              'elements (list (make-music 'PartCombineForceEvent
+                                          'forced-type type
+                                          'once once))))
+partcombineApart = \partcombineForce #'apart ##f
+partcombineApartOnce = \partcombineForce #'apart ##t
+partcombineChords = \partcombineForce #'chords ##f
+partcombineChordsOnce = \partcombineForce #'chords ##t
+partcombineUnisono = \partcombineForce #'unisono ##f
+partcombineUnisonoOnce = \partcombineForce #'unisono ##t
+partcombineSoloI = \partcombineForce #'solo1 ##f
+partcombineSoloIOnce = \partcombineForce #'solo1 ##t
+partcombineSoloII = \partcombineForce #'solo2 ##f
+partcombineSoloIIOnce = \partcombineForce #'solo2 ##t
+partcombineAutomatic = \partcombineForce ##f ##f
+partcombineAutomaticOnce = \partcombineForce ##f ##t
+
+
 pitchedTrill =
 #(define-music-function
    (parser location main-note secondary-note)