X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-context-properties.scm;h=3b42e08b37d71a229427e9a73c1a7b2a398f78b3;hb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;hp=77ad34698b9f555c92b2b998544a2f3eee27d5bd;hpb=165d5c971da47f0cf5751c9a8c258d05e4d3ebe3;p=lilypond.git diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm index 77ad34698b..3b42e08b37 100644 --- a/scm/define-context-properties.scm +++ b/scm/define-context-properties.scm @@ -2,7 +2,7 @@ ;;;; ;;;; source file of the GNU LilyPond music typesetter ;;;; -;;;; (c) 1998--2007 Han-Wen Nienhuys +;;;; (c) 1998--2008 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen @@ -47,41 +47,43 @@ accidental. For determining when to print an accidental, several different rules are tried. The rule that gives the highest number of accidentals is -used. Each rule consists of +used. + +Each entry in the list is either a symbol or a procedure. @table @var -@item context -In which context is the rule applied. For example, if @var{context} -is @rinternals{Score} then all staves share accidentals, and if -@var{context} is @rinternals{Staff} then all voices in the same staff -share accidentals, but staves do not. +@item symbol +The symbol is the name of the context in which the following rules are to be +applied. For example, if @var{context} is @rinternals{Score} then all +staves share accidentals, and if @var{context} is @rinternals{Staff} then +all voices in the same staff share accidentals, but staves do not. + +@item procedure +The procedure represents an accidental rule to be applied to the previously +specified context. -@item octavation -Whether the accidental changes all octaves or only the current octave. -Valid choices are +The procedure takes the following arguments: @table @code -@item same-octave -This is the default algorithm. Accidentals are typeset if the note -changes the accidental of that note in that octave. Accidentals lasts -to the end of the measure and then as many measures as specified in the -value. This is, @code{1}@tie{}means to the end of next measure, -@code{-1}@tie{}means to the end of previous measure (that is: no -duration at all), etc. @code{#t} means forever. +@item context +The current context to which the rule should be applied. + +@item pitch +The pitch of the note to be evaluated. -@item any-octave -Accidentals are typeset if the note is different from the previous note -on the same pitch in any octave. The value has same meaning as in -@code{same-octave}. +@item barnum +The current bar number. + +@item measurepos +The current measure position. @end table -@item laziness -Over how many bar lines the accidental lasts. If @var{laziness} is -@code{-1} then the accidental is forgotten immediately, and if -@var{laziness} is @code{#t} then the accidental lasts forever. +The procedure returns a pair of booleans. The first states whether an extra +natural should be added. The second states whether an accidental should be +printed. @code{(#t . #f)} does not make sense. @end table") (autoBeamCheck ,procedure? "A procedure taking three @@ -97,11 +99,11 @@ automatically.") but it controls cautionary accidentals rather than normal ones. Both lists are tried, and the one giving the most accidentals wins. In case of draw, a normal accidental is typeset.") - (automaticBars ,boolean? "If set to true then bar lines will not + (automaticBars ,boolean? "If set to false then bar lines will not be printed automatically; they must be explicitly created with a -@code{\\bar} command. Unlike the @code{\\cadenza} keyword, measures -are still counted. Bar generation will resume according to that count -if this property is unset.") +@code{\\bar} command. Unlike the @code{\\cadenzaOn} keyword, measures +are still counted. Bar line generation will resume according to that +count if this property is unset.") (barAlways ,boolean? "If set to true a bar line is drawn after @@ -175,6 +177,8 @@ non-hairpin decrescendo, i.e., @samp{dim.}.") This variable is read by @rinternals{Timing_translator} at @rinternals{Score} level.") + (doubleRepeatType ,string? "Set the default bar line for double +repeats.") (doubleSlurs ,boolean? "If set, two slurs are created for every slurred note, one above and one below the chord.") (drumPitchTable ,hash-table? "A table mapping percussion @@ -234,6 +238,8 @@ for the full staff.") (harmonicAccidentals ,boolean? "If set, harmonic notes in chords get accidentals.") + (harmonicDots ,boolean? "If set, harmonic notes in dotted chords get +dots.") (highStringOne ,boolean? "Whether the first string is the string with highest pitch on the instrument. This used by the automatic string selector for tablature notation.") @@ -345,6 +351,8 @@ the pedal.") sustain pedals: @code{text}, @code{bracket} or @code{mixed} (both).") (pedalUnaCordaStrings ,list? "See @code{pedalSustainStrings}.") (pedalUnaCordaStyle ,symbol? "See @code{pedalSustainStyle}.") + (predefinedDiagramTable ,hash-table? "The hash table of predefined +fret diagrams to use in FretBoards.") (printKeyCancellation ,boolean? "Print restoration alterations before a key signature change.") (printOctaveNames ,boolean? "Print octave marks for the @@ -366,6 +374,10 @@ context.") (repeatCommands ,list? "This property is a list of commands of the form @code{(list 'volta @var{x})}, where @var{x} is a string or @code{#f}. @code{'end-repeat} is also accepted as a command.") + (repeatCountVisibility ,procedure? "A procedure taking as +arguments an integer and context, returning whether the corresponding +percent repeat number should be printed when @code{countPercentRepeats} +is set.") (restNumberThreshold ,number? "If a multimeasure rest has more measures than this, a number is printed.") @@ -426,8 +438,8 @@ the nesting of a start delimiters.") (tablatureFormat ,procedure? "A function formatting a tablature -note head; it takes a string number, a list of string tunings and a -@code{Pitch} object. It returns the text as a string.") +note head. Called with three arguments: string number, context and event. +It returns the text as a string.") (tempoWholesPerMinute ,ly:moment? "The tempo in whole notes per minute.") (tempoUnitCount ,number? "Count for specifying tempo.") @@ -466,8 +478,7 @@ setting this property, you can make brackets last shorter. (useBassFigureExtenders ,boolean? "Whether to use extender lines for repeated bass figures.") - - + (verticallySpacedContexts ,list? "List of symbols, containing context names whose vertical axis groups should be taken into account for vertical spacing of systems.") @@ -545,8 +556,8 @@ instrument name to.") signature change.") (localKeySignature ,list? "The key signature at this point in the measure. The format is the same as for @code{keySignature}, but can -also contain @code{((@var{octave} . @var{name}) . (@var{alter} . -@var{barnumber}))} pairs. It is reset at every bar line.") +also contain @code{((@var{octave} . @var{name}) . (@var{alter} +@var{barnumber} . @var{measureposition}))} pairs.") (melismaBusy ,boolean? "Signifies whether a melisma is active.