@cindex properties!Thread
@table @samp
- @item @code{noteheadStyle}@indexcode{noteheadStyle} @propertytype{string}
- Selects type of note head. Choices are @code{cross},
- @code{diamond}, @code{harmonic}, @code{transparent}, and @code{""}.
- They are shown in that order below.
+ @item @code{noteHeadStyle}@indexcode{noteHeadStyle} @propertytype{symbol}
+ Selects type of note head. Choices are @code{'cross},
+ @code{'diamond}, @code{'harmonic}, @code{'transparent},
+ @code{'mensural}, @code{'baroque}, and @code{'default}.
+ They are shown in that order below. The @code{'baroque},
+ style gives the default symbols except for brevis and
+ longa notes which are square shaped as in the @code{'mensural}
+ style.
@mudela[center,verbatim]
\score {
\notes {
\property Staff.barNonAuto = 1
- \property Voice.noteHeadStyle = cross
+ \property Voice.noteHeadStyle = #'cross
a'
- \property Voice.noteHeadStyle = diamond
+ \property Voice.noteHeadStyle = #'diamond
a'
- \property Voice.noteHeadStyle = harmonic
+ \property Voice.noteHeadStyle = #'harmonic
a'
- \property Voice.noteHeadStyle = transparent
+ \property Voice.noteHeadStyle = #'transparent
a'
- \property Voice.noteHeadStyle = ""
+ \property Voice.noteHeadStyle = #'mensural
+ a'
+ \property Voice.noteHeadStyle = #'default
a'
}
\paper {
\score { \notes \relative c{
c''4 c2 c8 c16 c16 c1 c\breve
-\property Voice.noteHeadStyle = "diamond"
+\property Voice.noteHeadStyle = #'diamond
c4 c2 c8 c16 c16 c1 c\breve
-\property Voice.noteHeadStyle = "transparent"
+\property Voice.noteHeadStyle = #'transparent
c4 c2 c8 c16 c16 c1 c\breve
-\property Voice.noteHeadStyle = "cross"
+\property Voice.noteHeadStyle = #'cross
c4 c2 c8 c16 c16 c1 c\breve
-\property Voice.noteHeadStyle = "mensural"
+\property Voice.noteHeadStyle = #'mensural
c4 c2 c8 c16 c16 c1 c\breve c\longa
-\property Voice.noteHeadStyle = "harmonic"
+\property Voice.noteHeadStyle = #'harmonic
c4 c2 c8 c16 c16 c1 c\breve
-\property Voice.noteHeadStyle = "baroque"
+\property Voice.noteHeadStyle = #'baroque
c4 c2 c8 c16 c16 c1 c\breve c\longa
\context Voice <
\context Thread = TA
- { \property Thread.noteHeadStyle = "cross"
+ { \property Thread.noteHeadStyle = #'cross
\property Voice.verticalDirection = \up c16}
\context Thread = TB
- { \property Thread.noteHeadStyle = "" a16 }
+ { \property Thread.noteHeadStyle = #'default a16 }
\context Thread = TC
- { \property Thread.noteHeadStyle = "mensural" d16 }
+ { \property Thread.noteHeadStyle = #'mensural d16 }
>
\context Voice <\context Thread = TA {
- \property Thread.noteHeadStyle = #'()
+ \property Thread.noteHeadStyle = #'default
c4 c4 }
\context Thread = TB {
- \property Thread.noteHeadStyle = "mensural"
+ \property Thread.noteHeadStyle = #'mensural
c'4 \stemdown c
} >
--- /dev/null
+
+;
+; 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 'autoKneeGap number? 'auto-knee-gap)
+ (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
+ (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
+ (list 'beamHeight number? 'height-hs)
+ (list 'beamVerticalPosition number? 'y-position-hs)
+ )
+ )
+ )
+
+
+(define generic-stem-properties
+ (cons "Stem"
+ (list
+ (list 'stemVerticalDirection dir? 'direction)
+ (list 'verticalDirection dir? 'direction)
+ (list 'stemLength number? 'length)
+ (list 'flagStyle string? 'flag-style)
+ (list 'stemCentered boolean? 'stem-centered)
+ (list 'noStemExtend boolean? 'no-stem-extend)
+ (list 'stemShorten number? 'shorten)
+ ))
+ )
+
+(define generic-dot-properties
+ (cons "Dots" (list
+ (list 'dotDirection dir? 'direction)
+ (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)
+ (list 'chordNameStyle string? 'style))))
+
+(define generic-crescendo-properties
+ (cons "Crescendo" (list
+ (list 'dynamicDirection dir? 'direction)
+ (list 'verticalDirection dir? 'direction)
+ (list 'dynamicPadding number? 'padding)
+ (list 'dynamicMinimumSpace number? 'minimum-space)
+ )))
+
+(define generic-dynamic-line-spanner-properties
+ (cons "Dynamic_line_spanner" (list
+ (list 'dynamicDirection dir? 'direction)
+ (list 'verticalDirection 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
+ (list 'breathingSignVerticalDirection dir? 'direction)
+ (list 'verticalDirection dir? 'direction)
+ )))
+
+(define generic-clef-properties
+ (cons "Clef_item"
+ (list
+ (list 'clefStyle string? 'style))
+ )
+ )
+
+(define generic-All-properties
+ (cons "all" (list (list 'fontSize number? 'fontsize))))
+
+(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
+ (list 'horizontalNoteShift number? 'horizontal-shift)
+ (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
+ (list 'slurVerticalDirection dir? 'direction)
+ (list 'verticalDirection dir? 'direction)
+ (list 'slurDash number? 'dashed))))
+
+(define generic-timesig-properties
+ (cons "Time_signature"
+ (list
+ (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
+ )
+)