]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/generic-property.scm
patch::: 1.3.45.jcn1
[lilypond.git] / scm / generic-property.scm
index de341d58cecf191f8b5544cae8973d3903cd2f70..3f9e26304e111c4887b46ad2c56732aabbb092bd 100644 (file)
@@ -1,12 +1,28 @@
 
+;
+; Format: 
+; (cons "Type name"
+;    (list PROPERTYDESCRIPTIONS))
+; 
+; where
+; PROPERTYDESCRIPTION
+; is
+;
+;  (list 'translatorPropertySymbol type-predicate backend-property-symbol)
+;
+; Descriptions earlier in the list take precedence over later descriptions.
+;
+
+
 (define generic-beam-properties
   (cons "Beam"
        (list
-        (list 'beamslopedamping number? 'damping)
+        (list 'beamSlopeDamping number? 'damping)
         (list 'autoKneeGap number? 'auto-knee-gap)
         (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
-        (list 'beamQuantisation symbol? 'slope-quantisation)
         (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
+        (list 'beamHeight number? 'height-hs)
+        (list 'beamVerticalPosition number? 'y-position-hs)
         )
        )
   )
         (list 'stemVerticalDirection dir? 'direction)
         (list 'verticalDirection dir? 'direction)       
         (list 'stemLength number? 'length)
-        (list 'stemStyle string? 'style)
+        (list 'flagStyle string? 'flag-style)
+        (list 'stemCentered boolean? 'stem-centered)
         (list 'noStemExtend boolean? 'no-stem-extend)
+        (list 'stemShorten number? 'shorten)
         ))
   )
 
                (list 'verticalDirection dir? 'direction)
                )
        ))
-  
+
+(define generic-script-properties
+  (cons "Script" (list
+                 (list 'articulationScriptVerticalDirection dir? 'direction)
+                 (list 'articulationScriptPadding number? 'padding)
+
+                 ))
+  )
+
+
+
 (define generic-text-properties
   (cons "Text_item" (list
                     (list 'textStyle string? 'style)
                     (list 'textScriptPadding number? 'padding)
+                    (list 'textVerticalAlignment dir? 'self-alignment-Y)
+                    (list 'textHorizontalAlignment dir? 'self-alignment-X)
+                    (list 'textScriptWordSpace number? 'word-space)
                     )
        ))
 
+(define generic-sustain-pedal-properties
+  (cons "Sustain_pedal" (list
+                        (list 'textScriptPadding number? 'padding)
+                        (list 'sustainPedalPadding number? 'padding))))
+
+(define generic-chord-name-properties
+  (cons "Chord_name" (list
+                     (list 'textScriptWordSpace number? 'word-space)
+                     (list 'chordNameWordSpace number? 'word-space))))
+
+(define generic-crescendo-properties
+  (cons "Crescendo" (list
+                    (list 'verticalDirection dir? 'direction)
+                    (list 'dynamicDirection dir? 'direction)
+                    (list 'dynamicPadding number? 'padding) 
+                    (list 'dynamicMinimumSpace number? 'minimum-space) 
+                    )))
+  
+(define generic-dynamic-line-spanner-properties
+  (cons "Dynamic_line_spanner" (list
+                    (list 'verticalDirection dir? 'direction)
+                    (list 'dynamicDirection dir? 'direction)
+                    (list 'dynamicPadding number? 'padding) 
+                    (list 'dynamicMinimumSpace number? 'minimum-space) 
+                    )))
+  
+(define generic-volta-spanner-properties
+  (cons "Volta_spanner" (list
+                    (list 'voltaVerticalDirection dir? 'direction)
+                    (list 'voltaPadding number? 'padding) 
+                    (list 'voltaMinimumSpace number? 'minimum-space) 
+                    )))
+  
 (define generic-bar-properties
   (cons "Staff_bar" (list
                     (list 'barSize number? 'bar-size))
        )
   )    
+
+; don't do this yet. Depends on whennn the staff is really announced
+(define generic-staff-symbol-properties
+  (cons "Staff_symbol" (list
+                       )
+       )
+  )
+
 (define generic-breathing-sign-properties
   (cons "Breathing_sign"
        (list
 (define generic-rest-properties
   (cons "Rest" (list (list 'restStyle string? 'reststyle))))
 
+(define generic-rest-collision-properties
+  (cons "Rest_collision" (list (list 'maximumRestCount number? 'maximum-rest-count))))
+
 (define generic-tie-properties
   (cons "Tie" (list
               (list 'tieVerticalDirection dir? 'direction)
               (list 'verticalDirection dir? 'direction)
+(list 'tieDash number? 'dashed)
   )))
 
+(define generic-tie-column-properties
+  (cons "Tie_column" (list
+                     (list 'tieVerticalDirection dir? 'direction)
+                     (list 'verticalDirection dir? 'direction)
+  )))
 
 (define generic-note-column-properties
   (cons "Note_column"
         (list 'forceHorizontalShift number? 'force-hshift)
         )))
 
+(define generic-collision-properties
+  (cons "Collision"
+       (list
+        (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
+        )
+       )
+  )
+  
 (define generic-slur-properties
   (cons "Slur"
        (list
 (define generic-timesig-properties
   (cons "Time_signature"
        (list
-        (list 'timeSignatureStyle string? 'sigstyle))))
+        (list 'timeSignatureStyle string? 'style))))
+
+(define (symbol-or-boolean? s)
+  (or (boolean? s) (symbol? s)))
+
+(define generic-tuplet-spanner-properties
+  (cons "Tuplet_spanner"
+       (list
+        (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
+        (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
+       ))
+)
+
+
+
+
+
+;;;;;;;;;;
+;; don't forget to add these to the Generic_property_list property in
+;; engraver.ly
 
 (define generic-voice-properties
   (list
    generic-stem-properties
    generic-breathing-sign-properties
+   generic-crescendo-properties
+   generic-dynamic-line-spanner-properties
    generic-tie-properties
+   generic-tie-column-properties   
+   generic-tuplet-spanner-properties
    generic-rest-properties
    generic-slur-properties
    generic-beam-properties
    generic-text-properties
+   generic-sustain-pedal-properties
    generic-note-column-properties
+   generic-script-properties
    generic-All-properties
    ))
 
 (define generic-grace-properties generic-voice-properties)
 (define generic-staff-properties
   (list
+   generic-text-properties   
    generic-bar-properties
    generic-timesig-properties
    generic-clef-properties
+   generic-collision-properties
+   generic-sustain-pedal-properties
+   generic-rest-collision-properties
+   generic-volta-spanner-properties
+;   generic-staff-symbol-properties
    generic-All-properties      
    )
   )
+(define generic-grand-staff-properties
+  (list
+   generic-text-properties   
+   generic-bar-properties
+   ))
 
 (define generic-thread-properties
   (list generic-All-properties
        generic-dot-properties
-
        )
 
   )
    
+(define generic-lyrics-properties
+  (list generic-text-properties
+  )
+)
+
+(define generic-chord-staff-properties
+  (list generic-chord-name-properties
+  )
+)