]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/define-music-properties.scm
Add '-dcrop' option to ps and svg backends
[lilypond.git] / scm / define-music-properties.scm
index 61c69248fefd0e66b4dc2f20b46908fe4b311bd0..211af8afb366b1f5cde58fec3c349a0169dc85f1 100644 (file)
@@ -1,6 +1,6 @@
 ;;;; This file is part of LilyPond, the GNU music typesetter.
 ;;;;
 ;;;; This file is part of LilyPond, the GNU music typesetter.
 ;;;;
-;;;; Copyright (C) 1998--2009  Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; Copyright (C) 1998--2015  Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;;
 ;;;; LilyPond is free software: you can redistribute it and/or modify
 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;;
 ;;;; LilyPond is free software: you can redistribute it and/or modify
    (lambda (x) (apply music-property-description x))
    `(
      (absolute-octave ,integer?
    (lambda (x) (apply music-property-description x))
    `(
      (absolute-octave ,integer?
-                     "The absolute octave for a octave check note.")
+                      "The absolute octave for an octave check note.")
      (alteration ,number? "Alteration for figured bass.")
      (alteration ,number? "Alteration for figured bass.")
+     (alternative-dir ,ly:dir? "Indicates if an AlternativeMusic is the
+First (-1), Middle (0), or Last (1) of group of alternate endings.")
+     (alternative-increment ,integer? "The number of times an alternative's
+lettering should be incremented.")
      (articulation-type ,string? "Key for script definitions alist.
 
 TODO: Consider making type into symbol.")
      (articulations ,ly:music-list?
      (articulation-type ,string? "Key for script definitions alist.
 
 TODO: Consider making type into symbol.")
      (articulations ,ly:music-list?
-                   "Articulation events specifically for this note.")
-     (associated-context ,string? "Name of the Voice context associated with
+                    "Articulation events specifically for this note.")
+     (associated-context ,string? "Name of the context associated with
 this @code{\\lyricsto} section.")
 this @code{\\lyricsto} section.")
-     (augmented ,boolean? "This figure is for an augmented figured bass
-(with @code{+} sign).")
-     (augmented-slash ,boolean? "This figure is for an augmented figured bass
-(back-slashed number).")
+     (associated-context-type ,symbol? "Type of the context associated with
+this @code{\\lyricsto} section.")
+     (augmented ,boolean? "This figure is for an augmented figured
+bass (with @code{+} sign).")
+     (augmented-slash ,boolean? "This figure is for an augmented
+figured bass (back-slashed number).")
+     (automatically-numbered ,boolean? "Should a footnote be automatically
+numbered?")
+     (autosplit-end ,boolean? "Duration of event was truncated by automatic
+splitting in @code{Completion_heads_engraver}.")
 
      (bass ,boolean? "Set if this note is a bass note in a chord.")
 
      (bass ,boolean? "Set if this note is a bass note in a chord.")
+     (beat-structure ,list? "A beatStructure to be used in autobeaming.")
      (bracket-start ,boolean? "Start a bracket here.
 
 TODO: Use SpanEvents?")
      (bracket-stop ,boolean? "Stop a bracket here.")
      (break-penalty ,number? "Penalty for line break hint.")
      (break-permission ,symbol?
      (bracket-start ,boolean? "Start a bracket here.
 
 TODO: Use SpanEvents?")
      (bracket-stop ,boolean? "Stop a bracket here.")
      (break-penalty ,number? "Penalty for line break hint.")
      (break-permission ,symbol?
-                      "Whether to allow, forbid or force a line break.")
+                       "Whether to allow, forbid or force a line break.")
 
      (cautionary ,boolean? "If set, this alteration needs a
 cautionary accidental.")
      (change-to-id ,string? "Name of the context to change to.")
      (change-to-type ,symbol? "Type of the context to change to.")
 
      (cautionary ,boolean? "If set, this alteration needs a
 cautionary accidental.")
      (change-to-id ,string? "Name of the context to change to.")
      (change-to-type ,symbol? "Type of the context to change to.")
-     (compress-procedure ,procedure? "Compress this music expression.
-Arg@tie{}1: the music, arg@tie{}2: factor.")
+     (class ,symbol? "The class name of an event class.")
+     (context ,ly:context? "The context to which an event is sent.")
+     (context-change-list ,list? "Context changes for @code{\\autochange} or @code{\\partcombine}.")
      (context-id ,string? "Name of context.")
      (context-type ,symbol?  "Type of context.")
      (create-new ,boolean? "Create a fresh context.")
      (context-id ,string? "Name of context.")
      (context-type ,symbol?  "Type of context.")
      (create-new ,boolean? "Create a fresh context.")
@@ -78,9 +90,10 @@ simultaneous music, or the alternatives of repeated music.")
      (elements-callback ,procedure? "Return a list of children, for use by
 a sequential iterator.  Takes a single music parameter.")
      (error-found ,boolean?
      (elements-callback ,procedure? "Return a list of children, for use by
 a sequential iterator.  Takes a single music parameter.")
      (error-found ,boolean?
-                 "If true, a parsing error was found in this expression.")
+                  "If true, a parsing error was found in this expression.")
 
      (figure ,integer? "A bass figure.")
 
      (figure ,integer? "A bass figure.")
+     (footnote-text ,markup? "Text to appear in a footnote.")
      (force-accidental ,boolean? "If set, a cautionary accidental should
 always be printed on this note.")
 
      (force-accidental ,boolean? "If set, a cautionary accidental should
 always be printed on this note.")
 
@@ -89,12 +102,13 @@ always be printed on this note.")
 property, e.g., @code{(beamed-lengths details)}.")
      (grob-value ,scheme? "The value of the grob property to set.")
 
 property, e.g., @code{(beamed-lengths details)}.")
      (grob-value ,scheme? "The value of the grob property to set.")
 
+     (id ,symbol? "The ID of an event.")
      (input-tag ,scheme? "Arbitrary marker to relate input and output.")
      (inversion ,boolean? "If set, this chord note is inverted.")
      (iterator-ctor ,procedure? "Function to construct a
 @code{music-event-iterator} object for this music.")
 
      (input-tag ,scheme? "Arbitrary marker to relate input and output.")
      (inversion ,boolean? "If set, this chord note is inverted.")
      (iterator-ctor ,procedure? "Function to construct a
 @code{music-event-iterator} object for this music.")
 
-     (label ,markup? "Label of a mark.")
+     (label ,number-or-markup? "Label of a mark.")
      (last-pitch ,ly:pitch? "The last pitch after relativization.")
      (length ,ly:moment? "The duration of this music.")
      (length-callback ,procedure? "How to compute the duration of this music.
      (last-pitch ,ly:pitch? "The last pitch after relativization.")
      (length ,ly:moment? "The duration of this music.")
      (length-callback ,procedure? "How to compute the duration of this music.
@@ -103,7 +117,16 @@ This property can only be defined as initializer in
      (line-break-permission ,symbol? "When the music is at top-level,
 whether to allow, forbid or force a line break.")
 
      (line-break-permission ,symbol? "When the music is at top-level,
 whether to allow, forbid or force a line break.")
 
-     (metronome-count ,number? "How many beats in a minute?")
+     (metronome-count ,number-or-pair? "How many beats in a minute?")
+     (midi-extra-velocity ,integer? "How much louder or softer should
+this note be in MIDI output? The default is 0.")
+     (midi-length ,procedure? "Function to determine how long to play
+a note in MIDI. It should take a moment (the written length of the
+note) and a context, and return a moment (the length to play the
+note).")
+     (moment ,ly:moment? "The moment at which an event happens.")
+     (music-cause ,ly:music? "The music object that is the cause of
+an event.")
 
      (name ,symbol? "Name of this music object.")
      (no-continuation ,boolean? "If set, disallow continuation lines.")
 
      (name ,symbol? "Name of this music object.")
      (no-continuation ,boolean? "If set, disallow continuation lines.")
@@ -112,9 +135,10 @@ whether to allow, forbid or force a line break.")
      (octavation ,integer? "This pitch was octavated by how many octaves?
 For chord inversions, this is negative.")
      (once ,boolean? "Apply this operation only during one time step?")
      (octavation ,integer? "This pitch was octavated by how many octaves?
 For chord inversions, this is negative.")
      (once ,boolean? "Apply this operation only during one time step?")
+     (ops ,scheme? "The operations to apply during the creation of a
+context.")
      (origin ,ly:input-location? "Where was this piece of music defined?")
      (origin ,ly:input-location? "Where was this piece of music defined?")
-     (original-chord ,ly:music? "Original chord of a repeated chord.
-Used by repeated chords in \\relative mode, to determine the first note octave")
+     (ottava-number ,integer? "The octavation for @code{\\ottava}.")
 
      (page-break-permission ,symbol? "When the music is at top-level,
 whether to allow, forbid or force a page break.")
 
      (page-break-permission ,symbol? "When the music is at top-level,
 whether to allow, forbid or force a page break.")
@@ -129,13 +153,13 @@ Options are @code{solo1}, @code{solo2} and @code{unisono}.")
      (pitch ,ly:pitch? "The pitch of this note.")
      (pitch-alist ,list? "A list of pitches jointly forming the scale
 of a key signature.")
      (pitch ,ly:pitch? "The pitch of this note.")
      (pitch-alist ,list? "A list of pitches jointly forming the scale
 of a key signature.")
-     (pop-first ,boolean? "Do a revert before we try to do a override
+     (pop-first ,boolean? "Do a revert before we try to do an override
 on some grob property.")
 on some grob property.")
-     (prob-property ,symbol? "The symbol of the prob property to set.")
      (procedure ,procedure? "The function to run with @code{\\applycontext}.
 It must take a single argument, being the context.")
      (property-operations ,list? "Do these operations for instantiating
 the context.")
      (procedure ,procedure? "The function to run with @code{\\applycontext}.
 It must take a single argument, being the context.")
      (property-operations ,list? "Do these operations for instantiating
 the context.")
+     (property-path ,symbol? "The path of a property.")
 
      (quoted-context-id ,string? "The ID of the context to direct quotes to,
 e.g., @code{cue}.")
 
      (quoted-context-id ,string? "The ID of the context to direct quotes to,
 e.g., @code{cue}.")
@@ -143,6 +167,7 @@ e.g., @code{cue}.")
 direct quotes to, e.g., @code{Voice}.")
      (quoted-events ,vector? "A vector of with @code{moment} and
 @code{event-list} entries.")
 direct quotes to, e.g., @code{Voice}.")
      (quoted-events ,vector? "A vector of with @code{moment} and
 @code{event-list} entries.")
+     (quoted-music-clef ,string? "The clef of the voice to quote.")
      (quoted-music-name ,string? "The name of the voice to quote.")
      (quoted-transposition ,ly:pitch? "The pitch used for the quote,
 overriding @code{\\transposition}.")
      (quoted-music-name ,string? "The name of the voice to quote.")
      (quoted-transposition ,ly:pitch? "The pitch used for the quote,
 overriding @code{\\transposition}.")
@@ -151,13 +176,14 @@ or down-stem?")
 
      (repeat-count ,integer? "Do a @code{\\repeat} how often?")
 
 
      (repeat-count ,integer? "Do a @code{\\repeat} how often?")
 
+     (slash-count ,integer? "The number of slashes in a single-beat repeat.
+If zero, signals a beat containing varying durations.")
      (span-direction ,ly:dir? "Does this start or stop a spanner?")
      (span-direction ,ly:dir? "Does this start or stop a spanner?")
-     (span-type ,string? "What kind of spanner should be created? E.g. ligature
-for ligatures, or text or hairpin for (de-)crescendi.
-
-TODO: Consider making type into symbol.")
-     (span-text ,string? "The displayed text for text spanners (e.g. cresc.)")
-     (split-list ,list? "Splitting moments for part combiner.")
+     (span-type ,symbol? "What kind of dynamic spanner should be created?
+Options are @code{'text} and @code{'hairpin}.")
+     (span-text ,markup? "The displayed text for dynamic text
+spanners (e.g., cresc.)")
+     (spanner-id ,key? "Identifier to distinguish concurrent spanners.")
      (start-callback ,procedure? "Function to compute the negative length
 of starting grace notes.  This property can only be defined as initializer
 in @file{scm/@/define-music-types.scm}.")
      (start-callback ,procedure? "Function to compute the negative length
 of starting grace notes.  This property can only be defined as initializer
 in @file{scm/@/define-music-types.scm}.")
@@ -170,8 +196,6 @@ a @code{StringNumberEvent}.")
 in a part.")
      (tempo-unit ,ly:duration? "The unit for the metronome count.")
      (text ,markup? "Markup expression to be printed.")
 in a part.")
      (tempo-unit ,ly:duration? "The unit for the metronome count.")
      (text ,markup? "Markup expression to be printed.")
-     (text-type ,symbol?
-               "Particular type of text script (e.g., finger, dynamic).")
      (to-relative-callback ,procedure? "How to transform a piece of music
 to relative pitches.")
      (tonic ,ly:pitch? "Base of the scale.")
      (to-relative-callback ,procedure? "How to transform a piece of music
 to relative pitches.")
      (tonic ,ly:pitch? "Base of the scale.")
@@ -189,14 +213,16 @@ engraver this music expression is processed.")
      (value ,scheme? "Assignment value for a translation property.")
      (void ,boolean? "If this property is @code{#t}, then the
 music expression is to be discarded by the toplevel music handler.")
      (value ,scheme? "Assignment value for a translation property.")
      (void ,boolean? "If this property is @code{#t}, then the
 music expression is to be discarded by the toplevel music handler.")
+     (volta-repeats ,list? "A list that is transformed into a volta
+repeat element list.")
 
      (what ,symbol? "What to change for auto-change.
 
 FIXME: Naming.")
 
      (X-offset ,number?
 
      (what ,symbol? "What to change for auto-change.
 
 FIXME: Naming.")
 
      (X-offset ,number?
-              "Offset of resulting grob; only used for balloon texts.")
+               "Offset of resulting grob; only used for balloon texts.")
 
      (Y-offset ,number?
 
      (Y-offset ,number?
-              "Offset of resulting grob; only used for balloon texts.")
-    )))
+               "Offset of resulting grob; only used for balloon texts.")
+     )))