X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scm%2Fdefine-context-properties.scm;h=1da05b637a1e2f5c8215ac2deb21235d9bccb47c;hb=5772b14978ff5573fee304fc8b13663f83fce6b5;hp=24bd6ddf605efc10d269af9009ec3142d53eff00;hpb=fa4cd867ea93884cc094814dda7c04b94e71ccf4;p=lilypond.git diff --git a/scm/define-context-properties.scm b/scm/define-context-properties.scm index 24bd6ddf60..1da05b637a 100644 --- a/scm/define-context-properties.scm +++ b/scm/define-context-properties.scm @@ -1,9 +1,20 @@ -;;;; define-context-properties.scm -- part of backend documentation +;;;; This file is part of LilyPond, the GNU music typesetter. ;;;; -;;;; source file of the GNU LilyPond music typesetter -;;;; -;;;; (c) 1998--2007 Han-Wen Nienhuys +;;;; Copyright (C) 1998--2010 Han-Wen Nienhuys ;;;; Jan Nieuwenhuizen +;;;; +;;;; LilyPond is free software: you can redistribute it and/or modify +;;;; it under the terms of the GNU General Public License as published by +;;;; the Free Software Foundation, either version 3 of the License, or +;;;; (at your option) any later version. +;;;; +;;;; LilyPond is distributed in the hope that it will be useful, +;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;;; GNU General Public License for more details. +;;;; +;;;; You should have received a copy of the GNU General Public License +;;;; along with LilyPond. If not, see . (define-public all-translation-properties '()) @@ -14,11 +25,11 @@ (procedure? type?) (string? description))) (throw 'init-format-error)) - - + + (if (not (equal? #f (object-property symbol 'translation-doc))) (ly:error (_ "symbol ~S redefined" symbol))) - + (set-object-property! symbol 'translation-type? type?) (set-object-property! symbol 'translation-doc description) (set! all-translation-properties (cons symbol all-translation-properties)) @@ -32,14 +43,14 @@ `( ;; TODO FIXME - + (aDueText ,markup? "Text to print at a unisono passage.") - (alignBelowContext ,string? "Where to insert newly created context in -vertiical alignment.") (alignAboveContext ,string? "Where to insert newly created context in -vertiical alignment.") +vertical alignment.") (alignBassFigureAccidentals ,boolean? "If true, then the accidentals are aligned in bass figure context.") + (alignBelowContext ,string? "Where to insert newly created context in +vertical alignment.") (associatedVoice ,string? "Name of the @code{Voice} that has the melody for this @code{Lyrics} line.") (autoAccidentals ,list? "List of different ways to typeset an @@ -90,22 +101,19 @@ printed. @code{(#t . #f)} does not make sense. arguments, @var{context}, @var{dir} [start/stop (-1 or 1)], and @var{test} [shortest note in the beam]. A non-@code{#f} return value starts or stops the auto beam.") - (autoBeamSettings ,list? "Specifies when automatically generated -beams should begin and end. See @ruser{Setting automatic beam -behavior} for more information.") (autoBeaming ,boolean? "If set to true then beams are generated automatically.") (autoCautionaries ,list? "List similar to @code{autoAccidentals}, 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 each note.") (barCheckSynchronize ,boolean? "If true then reset @@ -120,15 +128,15 @@ format.") (bassStaffProperties ,list? "An alist of property settings to apply for the down staff of @code{PianoStaff}. Used by @code{\\autochange}.") + (beamSettings ,list? "Specifies when automatically generated +beams should begin and end, as well as beam subdivision behavior. +See @ruser{Setting automatic beam +behavior} for more information.") (beatLength ,ly:moment? "The length of one beat in this time signature.") - (beatGrouping ,list? "A list of beatgroups, e.g., in 5/8 time -@code{'(2 3)}.") (chordChanges ,boolean? "Only show changes in chords scheme?") - (chordNameFunction ,procedure? "The function that converts lists -of pitches to chord names.") (chordNameExceptions ,list? "An alist of chord exceptions. Contains @code{(@var{chord} . @var{markup})} entries.") (chordNameExceptionsFull ,list? "An alist of full chord @@ -136,6 +144,9 @@ exceptions. Contains @code{(@var{chord} . @var{markup})} entries.") (chordNameExceptionsPartial ,list? "An alist of partial chord exceptions. Contains @code{(@var{chord} . (@var{prefix-markup} @var{suffix-markup}))} entries.") + (chordNameFunction ,procedure? "The function that converts lists +of pitches to chord names.") + (chordNameLowercaseMinor ,boolean? "Downcase roots of minor chords?") (chordNameSeparator ,markup? "The markup object used to separate parts of a chord name.") (chordNoteNamer ,procedure? "A function that converts from a pitch @@ -159,17 +170,18 @@ percent repeats.") the clef is changed.") (createSpacing ,boolean? "Create @code{StaffSpacing} objects? Should be set for staves.") + (crescendoSpanner ,symbol? "The type of spanner to be used for +crescendi. Available values are @samp{hairpin} and @samp{text}. If unset, +a hairpin crescendo is used.") (crescendoText ,markup? "The text to print at start of non-hairpin crescendo, i.e., @samp{cresc.}.") - (crescendoSpanner ,symbol? "The type of spanner to be used for -crescendi. Available values are @samp{hairpin}, @samp{line}, -@samp{dashed-line}, @samp{dotted-line}. If unset, a hairpin crescendo -is used.") (currentBarNumber ,integer? "Contains the current barnumber. This property is incremented at every bar line.") - (decrescendoSpanner ,symbol? "See @code{crescendoSpanner}.") + (decrescendoSpanner ,symbol? "The type of spanner to be used for +decrescendi. Available values are @samp{hairpin} and @samp{text}. If +unset, a hairpin decrescendo is used.") (decrescendoText ,markup? "The text to print at start of non-hairpin decrescendo, i.e., @samp{dim.}.") (defaultBarType ,string? "Set the default type of bar line. See @@ -177,6 +189,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 @@ -228,6 +242,9 @@ at this point.") (forceClef ,boolean? "Show clef symbol, even if it has not changed. Only active for the first clef after the property is set, not for the full staff.") + (fretLabels ,list? "A list of strings or Scheme-formatted markups +containing, in the correct order, the labels to be used for lettered +frets in tablature.") (gridInterval ,ly:moment? "Interval for which to generate @@ -251,14 +268,16 @@ string selector for tablature notation.") printed as numbers, but only as extender lines.") (implicitTimeSignatureVisibility ,vector? "break visibility for the default time signature.") + (includeGraceNotes ,boolean? "Do not ignore grace notes for +@rinternals{Lyrics}.") (instrumentCueName ,markup? "The name to print if another instrument is to be taken.") - (instrumentName ,markup? "The name to print left of a staff. The -@code{instrument} property labels the staff in the first system, and -the @code{instr} property labels following lines.") (instrumentEqualizer ,procedure? "A function taking a string (instrument name), and returning a @code{(@var{min} . @var{max})} pair of numbers for the loudness range of the instrument.") + (instrumentName ,markup? "The name to print left of a staff. The +@code{instrumentName} property labels the staff in the first system, and +the @code{shortInstrumentName} property labels following lines.") ;; the definition is reversed wrt traditional transposition ;; otherwise \transpose { \transposition .. } won't work (instrumentTransposition ,ly:pitch? "Define the transposition of @@ -267,11 +286,11 @@ This is used to transpose the MIDI output, and @code{\\quote}s.") (internalBarNumber ,integer? "Contains the current barnumber. This property is used for internal timekeeping, among others by the @code{Accidental_engraver}.") - + (keepAliveInterfaces ,list? "A list of symbols, signifying grob interfaces that are worth keeping a staff with @code{remove-empty} set -around for.") +around for.") (keyAlterationOrder ,list? "An alist that defines in what order alterations should be printed. The format is @code{(@var{step} . @var{alter})}, where @var{step} is a number from 0 to@tie{}6 and @@ -306,11 +325,6 @@ manual beams are considered. Possible values include @code{beamMelismaBusy}.") (metronomeMarkFormatter ,procedure? "How to produce a metronome markup. Called with four arguments: text, duration, count and context.") - (midiInstrument ,string? "Name of the MIDI instrument to use.") - (midiMaximumVolume ,number? "Analogous to -@code{midiMinimumVolume}.") - (midiMinimumVolume ,number? "Set the minimum loudness for MIDI. -Ranges from 0 to@tie{}1.") (middleCClefPosition ,number? "The position of the middle C, as determined only by the clef. This can be calculated by looking at @code{clefPosition} and @code{clefGlyph}.") @@ -320,6 +334,11 @@ is used for ottava brackets.") (middleCPosition ,number? "The place of the middle C, measured in half staff-spaces. Usually determined by looking at @code{middleCClefPosition} and @code{middleCOffset}.") + (midiInstrument ,string? "Name of the MIDI instrument to use.") + (midiMaximumVolume ,number? "Analogous to +@code{midiMinimumVolume}.") + (midiMinimumVolume ,number? "Set the minimum loudness for MIDI. +Ranges from 0 to@tie{}1.") (minimumFret ,number? "The tablature auto string-selecting mechanism selects the highest string with a fret at least @code{minimumFret}.") @@ -329,8 +348,12 @@ page turn to be allowed.") repeated section for a page turn to be allowed within that section.") - (noteToFretFunction ,procedure? "How to produce a fret diagram. -Parameters: A list of note events and a list of tabstring events.") + (noChordSymbol ,markup? "Markup to be displayed for rests in a +ChordNames context.") + (noteToFretFunction ,procedure? "Convert list of notes and list of +defined strings to full list of strings and fret numbers. +Parameters: The context, a list of note events, a list of +tabstring events, and the fretboard grob if a fretboard is desired.") (ottavation ,markup? "If set, the text for an ottava spanner. @@ -362,23 +385,21 @@ shortest-playing duration. This is used for switching on proportional notation.") - (recordEventSequence ,procedure? "When -@code{Recording_group_engraver} is in this context, then upon -termination of the context, this function is called with current -context and a list of music objects. The list of contains entries with -start times, music objects and whether they are processed in this -context.") (rehearsalMark ,integer? "The last rehearsal mark printed.") (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.") (shapeNoteStyles ,vector? "Vector of symbols, listing style for each note head relative to the tonic (qv.) of the scale.") - (shortInstrumentName ,markup? "See @code{instrument}.") + (shortInstrumentName ,markup? "See @code{instrumentName}.") (shortVocalName ,markup? "Name of a vocal line, short version.") (skipBars ,boolean? "If set to true, then skip the empty bars that are produced by multimeasure notes and rests. These bars will @@ -428,18 +449,21 @@ cautionary suggestions over the note.") of the system/staff? Set to @code{SystemStartBrace}, @code{SystemStartBracket} or @code{SystemStartBar}.") (systemStartDelimiterHierarchy ,pair? "A nested list, indicating -the nesting of a start delimiters.") +the nesting of a start delimiters.") (tablatureFormat ,procedure? "A function formatting a tablature -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.") +note head. Called with three arguments: context, string number and, +fret number. It returns the text as a markup.") + (tabStaffLineLayoutFunction ,procedure? "A function determining the +staff position of a tablature note head. Called with two arguments: +the context and the string.") + (tempoHideNote ,boolean? "Hide the note=count in tempo marks.") + (tempoText ,markup? "Text for tempo marks.") (tempoUnitCount ,number? "Count for specifying tempo.") (tempoUnitDuration ,ly:duration? "Unit for specifying tempo.") - (tempoText ,markup? "Text for tempo marks.") - (tempoHideNote ,boolean? "Hide the note=count in tempo marks.") + (tempoWholesPerMinute ,ly:moment? "The tempo in whole notes per +minute.") (tieWaitForNote ,boolean? "If true, tied notes do not have to follow each other directly. This can be used for writing out arpeggios.") @@ -449,6 +473,9 @@ signifying the time signature. For example, @code{#'(4 . 4)} is a (timing ,boolean? "Keep administration of measure length, position, bar number, etc.? Switch off for cadenzas.") (tonic ,ly:pitch? "The tonic of the current scale.") + (topLevelAlignment ,boolean? "If true, the @var{Vertical_align_engraver} +will create a @var{VerticalAlignment}; otherwise, it will create a +@var{StaffGrouper}") (trebleStaffProperties ,list? "An alist of property settings to apply for the up staff of @code{PianoStaff}. Used by @code{\\autochange}.") @@ -472,7 +499,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.") @@ -513,8 +540,6 @@ are described in @rinternals{bar-line-interface}.") (barCheckLastFail ,ly:moment? "Where in the measure did the last barcheck fail?") (beamMelismaBusy ,boolean? "Signal if a beam is present.") - (breakableSeparationItem ,ly:grob? "The breakable items in this -time step, for this staff.") (busyGrobs ,list? "A queue of @code{(@var{end-moment} . @var{GROB})} cons cells. This is for internal (C++) use only. This property contains the grobs which are still busy (e.g. note heads, @@ -527,7 +552,9 @@ current breakable (clef, key signature, etc.) items.") non-breakable items (note heads, lyrics, etc.).") - (dynamicAbsoluteVolumeFunction ,procedure? "[DOCUMENT-ME]") + (dynamicAbsoluteVolumeFunction ,procedure? "A procedure that takes +one argument, the text value of a dynamic event, and returns the absolute +volume of that dynamic event.") (finalizations ,list? "A list of expressions to evaluate before @@ -542,10 +569,6 @@ should be manipulated through the @code{add-grace-property} function.") @code{CommandColumn} contains items that will affect spacing.") - (instrumentSupport ,grob-list? "A list of grobs to attach the -instrument name to.") - - (lastKeySignature ,list? "Last key signature before a key signature change.") (localKeySignature ,list? "The key signature at this point in the @@ -559,14 +582,12 @@ This can be used to signal melismas on top of those automatically detected.") - (originalMiddleCPosition ,integer? "Used for temporary overriding -middle@tie{}C in octavation brackets.") - - + (quotedCueEventTypes ,list? "A list of symbols, representing the +event types that should be duplicated for @code{\\cueDuring} commands.") (quotedEventTypes ,list? "A list of symbols, representing the -event types that should be duplicated for @code{\\quote} commands.") -; (quotes ,hash-table? "A hash table, mapping names to -;@code{music-event} vectors.") +event types that should be duplicated for @code{\\quoteDuring} commands. +This is also a fallback for @code{\\cueDuring} if @code{quotedCueEventTypes} +is not set") (rootSystem ,ly:grob? "The System object.")