]> git.donarmstrong.com Git - lilypond.git/commitdiff
Merge branch 'master' into beaming
authorJoe Neeman <joeneeman@gmail.com>
Mon, 9 Jun 2008 06:17:37 +0000 (16:17 +1000)
committerJoe Neeman <joeneeman@gmail.com>
Mon, 9 Jun 2008 06:17:37 +0000 (16:17 +1000)
204 files changed:
Documentation/user/changing-defaults.itely
Documentation/user/editorial.itely
Documentation/user/expressive.itely
Documentation/user/input.itely
Documentation/user/lilypond.tely
Documentation/user/non-music.itely [deleted file]
Documentation/user/rhythms.itely
Documentation/user/spacing.itely
Documentation/user/text.itely
GNUmakefile.in
ROADMAP
buildscripts/output-distance.py
config.hh.in
configure.in
input/lsr/adding-a-figured-bass-above-or-below-the-notes.ly
input/lsr/adding-ambitus-per-voice.ly
input/lsr/adding-an-extra-staff-at-a-line-break.ly
input/lsr/adding-an-extra-staff.ly
input/lsr/adding-bars-to-chordnames.ly
input/lsr/adding-beams,-slurs,-ties-etc.-when-using-tuplet-and-non-tuplet-rythms..ly
input/lsr/adding-drum-parts.ly
input/lsr/adding-parentheses-around-an-expressive-mark-or-chordal-note.ly
input/lsr/adding-the-current-date-to-a-score.ly
input/lsr/adding-volta-brackets-to-additional-staves.ly
input/lsr/adjusting-lyrics-vertical-spacing.ly
input/lsr/adjusting-the-shape-of-falls-and-doits.ly
input/lsr/aligning-and-centering-instrument-names.ly
input/lsr/aligning-lyrics.ly
input/lsr/aligning-marks-with-various-notation-objects.ly
input/lsr/alignment-vertical-spacing.ly
input/lsr/allowing-fingerings-to-be-printed-inside-the-staff.ly
input/lsr/ambitus-with-multiple-voices.ly
input/lsr/ancient-fonts.ly
input/lsr/ancient-notation-template----modern-transcription-of-gregorian-music.ly
input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly
input/lsr/ancient-time-signatures.ly
input/lsr/applying-note-head-styles-depending-on-the-step-of-the-scale.ly
input/lsr/automatic-beam-subdivisions.ly
input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly
input/lsr/bar-counter.ly [new file with mode: 0644]
input/lsr/beams-across-line-breaks.ly
input/lsr/blanking-staff-lines-using-the--whiteout-command.ly
input/lsr/breathing-signs.ly
input/lsr/broken-crescendo-hairpin.ly
input/lsr/caesura-railtracks-with-fermata.ly
input/lsr/center-text-below-hairpin-dynamics.ly
input/lsr/changing--flageolet-mark-size.ly
input/lsr/changing-a-single-notes-size-in-a-chord.ly
input/lsr/changing-form-of-multi--measure-rests.ly
input/lsr/changing-properties-for-individual-grobs.ly
input/lsr/changing-text-and-spanner-styles-for-text-dynamics.ly
input/lsr/changing-the-appearance-of-a-slur-from-solid-to-dotted-or-dashed.ly
input/lsr/changing-the-breath-mark-symbol.ly
input/lsr/changing-the-chord-names-to-german-or-semi-german-notation.ly
input/lsr/changing-the-default-text-font-family.ly
input/lsr/changing-the-number-of-lines-in-a-staff.ly
input/lsr/changing-the-positions-of-figured-bass-alterations.ly [new file with mode: 0644]
input/lsr/changing-the-staff-size.ly
input/lsr/changing-the-tuplet-number.ly
input/lsr/changing-time-signatures-inside-a-polymetric-section-using-scaledurations.ly
input/lsr/chant-or-psalms-notation.ly
input/lsr/chord-name-exceptions.ly
input/lsr/chords.snippet-list
input/lsr/clip-systems.ly
input/lsr/clusters.ly
input/lsr/combining-dynamics-with-markup-texts.ly
input/lsr/combining-two-parts-on-the-same-staff.ly
input/lsr/compound-time-signatures.ly
input/lsr/conducting-signs,-measure-grouping-signs.ly
input/lsr/contemporary-glissando.ly
input/lsr/controlling-the-placement-of-chord-fingerings.ly
input/lsr/controlling-the-vertical-ordering-of-scripts.ly
input/lsr/controlling-tuplet-bracket-visibility.ly
input/lsr/creating-a-sequence-of-notes-on-various-pitches.ly
input/lsr/creating-arpeggios-across-notes-in-different-voices.ly
input/lsr/creating-blank-staves.ly
input/lsr/creating-cross-staff-arpeggios-in-a-piano-staff.ly
input/lsr/creating-cross-staff-arpeggios-in-other-contexts.ly
input/lsr/creating-real-parenthesized-dynamics.ly
input/lsr/creating-simultaneous-rehearsal-marks.ly
input/lsr/creating-slurs-across-voices.ly
input/lsr/creating-text-spanners.ly
input/lsr/custodes.ly
input/lsr/default-direction-of-stems-on-the-center-line-of-the-staff.ly
input/lsr/demo-midiinstruments.ly
input/lsr/demonstrating-all-headers.ly
input/lsr/display-bracket-with-only-one-staff-in-a-system.ly
input/lsr/dodecaphonic-style-accidentals-for-each-note-including-naturals.ly
input/lsr/drawing-boxes-around-grobs.ly
input/lsr/drawing-circles-around-various-objects.ly
input/lsr/editorial-annotations.snippet-list
input/lsr/embedding-native-postscript-in-a--markup-block.ly
input/lsr/engravers-one-by-one.ly
input/lsr/engraving-ties-manually.ly
input/lsr/entering-several-tuplets-using-only-one--times-command.ly
input/lsr/forcing-rehearsal-marks-to-start-from-a-given-letter-or-number.ly
input/lsr/formatting-lyrics-syllables.ly
input/lsr/generating-random-notes.ly
input/lsr/grid-lines--changing-their-appearance.ly
input/lsr/grid-lines--emphasizing-rhythms-and-notes-synchronization.ly
input/lsr/heavily-customized-polymetric-time-signatures.ly
input/lsr/hiding-the-extender-line-for-text-dynamics.ly
input/lsr/how-to-put-ties-between-syllables-in-lyrics.ly
input/lsr/incipit.ly
input/lsr/indicating-cross-staff-chords-with-arpeggio-bracket.ly
input/lsr/inserting-score-fragments-above-a-staff,-as-markups.ly
input/lsr/integrating-text-indications-in-metronome-marks.ly
input/lsr/jazz-combo-template.ly
input/lsr/line-arrows.ly
input/lsr/makam.ly
input/lsr/making-an-object-invisible-with-the-transparent-property.ly
input/lsr/making-some-staff-lines-thicker-than-the-others.ly
input/lsr/manually-controlling-beam-positions.ly
input/lsr/markup-lines.ly
input/lsr/mensurstriche-layout-bar-lines-between-the-staves.ly
input/lsr/merging-multi-measure-rests-in-a-polyphonic-part.ly
input/lsr/modifying-default-values-for-articulation-shorthand-notation.ly
input/lsr/modifying-tuplet-bracket-length.ly
input/lsr/move-specific-text.ly
input/lsr/nesting-staves.ly
input/lsr/non-traditional-key-signatures.ly
input/lsr/ottava-text.ly
input/lsr/outputting-the-version-number.ly
input/lsr/page-label.ly
input/lsr/permitting-line-breaks-within-beamed-tuplets.ly
input/lsr/piano-template-simple.ly
input/lsr/piano-template-with-centered-dynamics.ly
input/lsr/piano-template-with-centered-lyrics.ly
input/lsr/piano-template-with-melody-and-lyrics.ly
input/lsr/positioning-multi--measure-rests.ly
input/lsr/positioning-segno-and-coda-with-line-break.ly
input/lsr/preventing-extra-naturals-from-being-automatically-added.ly
input/lsr/preventing-natural-signs-from-being-printed-when-the-key-signature-changes.ly
input/lsr/printing-hairpins-using-al-niente-notation.ly
input/lsr/printing-marks-at-the-end-of-a-line-or-a-score.ly
input/lsr/printing-marks-on-every-staff.ly
input/lsr/printing-metronome-and-rehearsal-marks-below-the-staff.ly
input/lsr/printing-music-with-different-time-signatures.ly
input/lsr/proportional-strict-notespacing.ly
input/lsr/quoting-another-voice-with-transposition.ly
input/lsr/quoting-another-voice.ly
input/lsr/removing-the-first-empty-line.ly
input/lsr/repeats.snippet-list
input/lsr/rest-styles.ly
input/lsr/rhythmic-slashes.ly
input/lsr/rhythms.snippet-list
input/lsr/score-for-diatonic-accordion.ly
input/lsr/setting-hairpin-behavior-at-bar-lines.ly
input/lsr/setting-the-minimum-length-of-hairpins.ly
input/lsr/shortening-volta-brackets.ly
input/lsr/showing-chords-at-changes.ly [new file with mode: 0644]
input/lsr/simple-lead-sheet.ly [new file with mode: 0644]
input/lsr/single-staff-template-with-notes,-lyrics,-and-chords.ly
input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly [new file with mode: 0644]
input/lsr/single-staff-template-with-notes-and-chords.ly
input/lsr/single-staff-template-with-notes-and-lyrics.ly
input/lsr/single-staff-template-with-only-notes.ly
input/lsr/skips-in-lyric-mode-2.ly
input/lsr/skips-in-lyric-mode.ly
input/lsr/staff-notation.snippet-list
input/lsr/string-quartet-template-simple.ly
input/lsr/string-quartet-template-with-separate-parts.ly
input/lsr/suppressing-compiler-warnings-when-two-glissandos-intersect.ly
input/lsr/table-of-contents.ly
input/lsr/template.snippet-list
input/lsr/three-sided-box.ly
input/lsr/time-signature-in-parentheses.ly
input/lsr/transcription-of-ancient-music-with-incipit.ly
input/lsr/transposing-pitches-with-minimum-accidentals-smart-transpose.ly
input/lsr/tweaking-clef-properties.ly
input/lsr/tweaks-and-overrides.snippet-list
input/lsr/use-square-bracket-at-the-start-of-a-staff-group.ly
input/lsr/using-double-slurs-for-legato-chords.ly
input/lsr/using-the--tweak-command-to-tweak-individual-grobs.ly
input/lsr/using-ties-with-arpeggios.ly
input/lsr/utf-8.ly
input/lsr/vertically-aligning-dynamics-across-multiple-notes.ly
input/lsr/vertically-aligning-ossias-and-lyrics.ly
input/lsr/vertically-centered-dynamics-and-textscripts.ly
input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly
input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
input/lsr/vocal-ensemble-template.ly
input/lsr/vocal-music.snippet-list
input/lsr/volta-below-chords.ly
input/lsr/volta-multi-staff.ly
input/lsr/volta-text-markup-using-repeatcommands.ly [new file with mode: 0644]
input/new/makam.ly
lily/bend-engraver.cc
lily/context-def.cc
lily/context-property.cc
lily/context.cc
lily/engraver-group.cc
lily/include/context.hh
lily/main.cc
lily/nested-property.cc
lily/relocate.cc
lily/stem.cc
scm/define-grobs.scm
stepmake/stepmake/debian-rules.make [deleted file]
stepmake/stepmake/debian-targets.make [deleted file]
stepmake/stepmake/debian-vars.make [deleted file]
stepmake/stepmake/intlrules.make [deleted file]
stepmake/stepmake/pod-rules.make [deleted file]
stepmake/stepmake/pod-vars.make [deleted file]

index d3ea39769c6f7a2f1cadfd1d210c179729dae52c..a6876f470d73864c4457d503ca53b463602f9dcb 100644 (file)
@@ -58,7 +58,7 @@ notation.  For example, giving each staff a separate time signature.
 @item
 Page layout: changing the appearance of the spacing, line
 breaks, and page dimensions.  These modifications are discussed
-in @ref{Non-musical notation}, and @ref{Spacing issues}.
+@c in @ref{notation}, and @ref{Spacing issues}.
 @end itemize
 
 Internally, LilyPond uses Scheme (a LISP dialect) to provide
index 23286185c7e0c22ada6da46fafbd53937d262904..3f04aff558f9347e5836345dc8efe680debd80d3 100644 (file)
@@ -164,7 +164,7 @@ chord by adding them after the pitches.
 @end lilypond
 
 Fingering instructions may be manually placed above or below the
-staff, see @ref{Controlling direction and placement}.
+staff, see @ref{Direction and placement}.
 
 @snippets
 
@@ -175,7 +175,7 @@ staff, see @ref{Controlling direction and placement}.
 @seealso
 
 Notation Reference:
-@ref{Controlling direction and placement}
+@ref{Direction and placement}
 
 Snippets:
 @rlsr{Editorial annotations}.
@@ -403,7 +403,7 @@ made invisible.
 
 @seealso
 Notation Reference:
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Snippets:
 @rlsr{Editorial annotations}.
index c8c2feeaeca35f9348d75afe76358b3612b4f5b3..78e83fc526cd33568e66726fab66a553c5d60761 100644 (file)
@@ -99,7 +99,7 @@ c->   c-.  c-_
 The rules for the default placement of articulations are defined
 in @file{scm/@/script@/.scm}.  Articulations and ornamentations
 may be manually placed above or below the staff, see
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 
 @snippets
@@ -120,7 +120,7 @@ Music Glossary:
 @rglos{portato}.
 
 Notation Reference:
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Installed Files:
 @file{scm/@/script@/.scm}.
@@ -170,8 +170,8 @@ such as @code{c4\ff}.  The available dynamic marks are
 @code{\mp}, @code{\mf}, @code{\f}, @code{\ff}, @code{\fff},
 @code{\ffff}, @code{\fp}, @code{\sf}, @code{\sff}, @code{\sp},
 @code{\spp}, @code{\sfz}, and @code{\rfz}.  The dynamic marks may
-be manually placed above or below the staff, see @ref{Controlling
-direction and placement}.
+be manually placed above or below the staff, see 
+@ref{Direction and placement}.
 
 @lilypond[verbatim,quote,relative=2]
 c2\ppp c\mp
@@ -336,7 +336,7 @@ Learning Manual:
 @rlearning{Articulation and dynamics}.
 
 Notation Reference:
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Snippets:
 @rlsr{Expressive marks}.
@@ -423,7 +423,7 @@ Just as with ties, the direction of a slur can be specified with
 @code{\slur@emph{DIR}}, where @code{@emph{DIR}} is either
 @code{Up}, @code{Down}, or @code{Neutral} (@code{Neutral} is the
 default).  Slurs may be manually placed above or below the staff,
-see @ref{Controlling direction and placement}.
+see @ref{Direction and placement}.
 
 @lilypond[verbatim,quote,relative=2]
 c4_( c) c^( c)
@@ -461,7 +461,7 @@ Music Glossary:
 @rglos{slur}.
 
 Notation Reference:
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Snippets:
 @rlsr{Expressive marks}.
@@ -491,7 +491,7 @@ normal slur.  However, they are treated as different objects.  A
 @code{\slurUp} will have no effect on a phrasing slur; instead,
 use @code{\phrasingSlurUp}, @code{\phrasingSlurDown}, and
 @code{\phrasingSlurNeutral}.  Phrasing slurs may be manually
-placed above or below the staff, see @ref{Controlling direction
+placed above or below the staff, see @ref{Direction
 and placement}.
 
 You cannot have simultaneous phrasing slurs.
@@ -510,7 +510,7 @@ You cannot have simultaneous phrasing slurs.
 @seealso
 
 Notation Reference:
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Snippets:
 @rlsr{Expressive marks}.
index 3cd37ae70cb201042dd962411b1a4547326a0f8b..5e77708f3d8e3642f4cbac4253f87da3d7dde157 100644 (file)
@@ -19,11 +19,12 @@ FIXME: don't complain about anything in this chapter.  It's still
 under heavy development.
 
 @menu
-* Input structure::
-* Useful concepts and properties::
-* Titles and headers::
-* Working with input files::
-* Controlling output::
+* Input structure::             
+* Useful concepts and properties::  
+* Titles and headers::          
+* Working with input files::    
+* Controlling output::          
+* MIDI output::                 
 @end menu
 
 
@@ -34,9 +35,9 @@ The main format of input for LilyPond are text files.  By convention,
 these files end with @code{.ly}.
 
 @menu
-* Structure of a score::
-* Multiple scores in a book::
-* File structure::
+* Structure of a score::        
+* Multiple scores in a book::   
+* File structure::              
 @end menu
 
 
@@ -108,7 +109,7 @@ Learning Manual:
 
 @rlearning{Working on input files},
 @rlearning{Music expressions explained},
-@rlearning{Score is a single (compound) music expression}.
+@rlearning{Score is a single (compound) musical expression}.
 
 
 @node Multiple scores in a book
@@ -338,10 +339,10 @@ Learning Manual:
 
 
 @menu
-* Input modes::
-* Controlling direction and placement::
-* Distances and measurements::
-* Spanners::
+* Input modes::                 
+* Direction and placement::     
+* Distances and measurements::  
+* Spanners::                    
 @end menu
 
 @node Input modes
@@ -446,10 +447,8 @@ the markings:
 
 
 
-@node Controlling direction and placement
-@subsection Controlling direction and placement
-
-TODO: Maybe rename section to "directions".
+@node Direction and placement
+@subsection Direction and placement
 
 In typesetting music the direction and placement of many items is
 a matter of choice.  For example, the stems of notes can
@@ -546,6 +545,12 @@ TODO: staff spaces.  Maybe move into tweaks?
 @node Spanners
 @subsection Spanners
 
+Many objects of musical notation extend over several notes or even
+several bars.  Examples are crescendi, trills, tuplet brackets, and
+volta repeat brackets.  Such objects are called @qq{spanners}, and
+have special properties to control their appearance and behaviour.
+Some of these properties are common to all spanners; others are
+restricted to a sub-set of the spanners.
 
 @node Titles and headers
 @section Titles and headers
@@ -554,10 +559,10 @@ Almost all printed music includes a title and the composer's name;
 some pieces include a lot more information.
 
 @menu
-* Creating titles::
-* Custom titles::
-* Reference to page numbers::
-* Table of contents::
+* Creating titles::             
+* Custom titles::               
+* Reference to page numbers::   
+* Table of contents::           
 @end menu
 
 
@@ -1184,12 +1189,12 @@ lilypond file.ly >display.txt
 @section Controlling output
 
 @menu
-* Extracting fragments of notation::  
+* Extracting fragments of music::  
 * Skipping corrected music::    
 @end menu
 
-@node Extracting fragments of notation
-@subsection Extracting fragments of notation
+@node Extracting fragments of music
+@subsection Extracting fragments of music
 
 It is possible to quote small fragments of a large score directly from
 the output.  This can be compared to clipping a piece of a paper score
@@ -1268,3 +1273,246 @@ In polyphonic music, @code{Score.skipTypesetting} will affect all
 voices and staves, saving even more time.
 
 
+
+@node MIDI output
+@section MIDI output
+
+@cindex Sound
+@cindex MIDI
+
+MIDI (Musical Instrument Digital Interface) is a standard for
+connecting and controlling digital instruments.  A MIDI file is a
+series of notes in a number of tracks.  It is not an actual
+sound file; you need special software to translate between the
+series of notes and actual sounds.
+
+Pieces of music can be converted to MIDI files, so you can listen to
+what was entered.  This is convenient for checking the music; octaves
+that are off or accidentals that were mistyped stand out very much
+when listening to the MIDI output.
+
+@knownissues
+
+Many musically interesting effects, such as swing, articulation,
+slurring, etc., are not translated to midi.
+
+The midi output allocates a channel for each staff, and one for global
+settings.  Therefore the midi file should not have more than 15 staves
+(or 14 if you do not use drums).  Other staves will remain silent.
+
+Not all midi players correctly handle tempo changes in the midi
+output.  Players that are known to work include
+@uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
+
+@menu
+* Creating MIDI files::         
+* MIDI block::                  
+* MIDI instrument names::       
+* What goes into the MIDI?  FIXME::  
+* other midi::                  
+@end menu
+
+@node Creating MIDI files
+@subsection Creating MIDI files
+
+To create a MIDI from a music piece of music, add a @code{\midi} block
+to a score, for example,
+
+@example
+\score @{
+  @var{...music...}
+   \midi @{
+     \context @{
+       \Score
+       tempoWholesPerMinute = #(ly:make-moment 72 4)
+       @}
+     @}
+@}
+@end example
+
+The tempo can be specified using the @code{\tempo} command within the 
+actual music, see @ref{Metronome marks}.  An alternative, which does not
+result in a metronome mark in the printed score, is shown in the example
+above.  In this example the tempo of quarter notes is set to 72 beats per
+minute. 
+This kind of tempo
+specification can not take dotted note lengths as an argument.  In this
+case, break the dotted notes into smaller units.  For example, a tempo
+of 90 dotted quarter notes per minute can be specified as 270 eighth
+notes per minute
+
+@example
+tempoWholesPerMinute = #(ly:make-moment 270 8)
+@end example
+
+If there is a @code{\midi} command in a @code{\score}, only MIDI will
+be produced.  When notation is needed too, a @code{\layout} block must
+be added
+
+@example
+\score @{
+  @var{...music...}
+  \midi @{ @}
+  \layout @{ @}
+@}
+@end example
+@cindex layout block
+
+
+
+Ties, dynamics, and tempo changes are interpreted.  Dynamic marks,
+crescendi and decrescendi translate into MIDI volume levels.  Dynamic
+marks translate to a fixed fraction of the available MIDI volume
+range, crescendi and decrescendi make the volume vary linearly between
+their two extremes.  The fractions can be adjusted by
+@code{dynamicAbsoluteVolumeFunction} in @rinternals{Voice} context.
+For each type of MIDI instrument, a volume range can be defined.  This
+gives a basic equalizer control, which can enhance the quality of
+the MIDI output remarkably.  The equalizer can be controlled by
+setting @code{instrumentEqualizer}, or by setting
+
+@example
+\set Staff.midiMinimumVolume = #0.2
+\set Staff.midiMaximumVolume = #0.8
+@end example
+
+To remove dynamics from the MIDI output, insert the following lines
+in the @code{\midi@{@}} section.
+
+@example
+\midi @{
+  ...
+  \context @{
+    \Voice
+    \remove "Dynamic_performer"
+  @}
+@}
+@end example
+
+
+@knownissues
+
+Unterminated (de)crescendos will not render properly in the midi file,
+resulting in silent passages of music.  The workaround is to explicitly
+terminate the (de)crescendo.  For example,
+
+@example
+@{ a\< b c d\f @}
+@end example
+
+@noindent
+will not work properly but
+
+@example
+@{ a\< b c d\!\f @}
+@end example
+
+@noindent
+will.
+
+
+MIDI output is only created when the @code{\midi} command is within
+a @code{\score} block.  If you put it within an explicitly instantiated
+context ( i.e. @code{\new Score} ) the file will fail.  To solve this,
+enclose the @code{\new Score} and the @code{\midi} in a @code{\score} block.
+
+@example
+\score @{
+  \new Score @{ @dots{}notes@dots{} @}
+  \midi
+@}
+@end example
+
+
+@node MIDI block
+@subsection MIDI block
+@cindex MIDI block
+
+
+The MIDI block is analogous to the layout block, but it is somewhat
+simpler.  The @code{\midi} block is similar to @code{\layout}.  It can contain
+context definitions.
+
+
+@cindex context definition
+
+Context definitions follow precisely the same syntax as within the
+\layout block.  Translation modules for sound are called performers.
+The contexts for MIDI output are defined in @file{ly/@/performer@/-init@/.ly}.
+
+
+@node MIDI instrument names
+@subsection MIDI instrument names
+
+@cindex instrument names
+@funindex Staff.midiInstrument
+
+The MIDI instrument name is set by the @code{Staff.midiInstrument}
+property.  The instrument name should be chosen from the list in
+@ref{MIDI instruments}.
+
+@example
+\set Staff.midiInstrument = "glockenspiel"
+@var{...notes...}
+@end example
+
+If the selected instrument does not exactly match an instrument from
+the list of MIDI instruments, the Grand Piano (@code{"acoustic grand"})
+instrument is used.
+
+
+@node What goes into the MIDI?  FIXME
+@subsection What goes into the MIDI?  FIXME
+
+@menu
+* Repeats and MIDI::            
+@end menu
+
+@node Repeats and MIDI
+@subsubsection Repeats and MIDI
+
+@cindex expanding repeats
+@funindex \unfoldRepeats
+
+With a little bit of tweaking, all types of repeats can be present
+in the MIDI output.  This is achieved by applying the
+@code{\unfoldRepeats} music function.  This function changes all
+repeats to unfold repeats.
+
+@lilypond[quote,verbatim,fragment,line-width=8.0\cm]
+\unfoldRepeats {
+  \repeat tremolo 8 {c'32 e' }
+  \repeat percent 2 { c''8 d'' }
+  \repeat volta 2 {c'4 d' e' f'}
+  \alternative {
+    { g' a' a' g' }
+    {f' e' d' c' }
+  }
+}
+\bar "|."
+@end lilypond
+
+When creating a score file using @code{\unfoldRepeats} for MIDI,
+it is necessary to make two @code{\score} blocks: one for MIDI
+(with unfolded repeats) and one for notation (with volta, tremolo,
+and percent repeats).  For example,
+
+@example
+\score @{
+  @var{..music..}
+  \layout @{ .. @}
+@}
+\score @{
+  \unfoldRepeats @var{..music..}
+  \midi @{ .. @}
+@}
+@end example
+
+
+@node other midi
+@subsection other midi
+
+Micro tones are also exported to the MIDI file.
+
+Figured bass has no effect on MIDI.
+
index e18ae8371d68156f07cb273098a34b05d4c0a2fd..9b3ef5a500f12046e35c87bc68b23740d135f62b 100644 (file)
@@ -155,7 +155,6 @@ of this and other documentation.
     specific purposes.
 * Input syntax::                   General information about
     lilypond input files.
-* Non-musical notation::           Output that is not musical notation.
 * Spacing issues::                 Display of output on paper.
 * Changing defaults::              Tuning output.
 * Interfaces for programmers::     Expert usage.
@@ -178,7 +177,6 @@ Appendices
 @include specialist.itely
 
 @include input.itely
-@include non-music.itely
 @include spacing.itely
 
 @include changing-defaults.itely
diff --git a/Documentation/user/non-music.itely b/Documentation/user/non-music.itely
deleted file mode 100644 (file)
index 15afed5..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-@c -*- coding: utf-8; mode: texinfo; -*-
-@c This file is part of lilypond.tely
-@ignore
-    Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
-
-    When revising a translation, copy the HEAD committish of the
-    version that you are working on.  See TRANSLATION for details.
-@end ignore
-
-@c \version "2.11.38"
-
-@c A menu is needed before every deeper *section nesting of @node's; run
-@c     M-x texinfo-all-menus-update
-@c to automatically fill in these menus before saving changes
-
-@node Non-musical notation
-@chapter Non-musical notation
-
-This section deals with general LilyPond issues, rather than
-specific notation.
-
-@menu
-* MIDI output::                 
-* other midi::                  
-@end menu
-
-
-@node MIDI output
-@section MIDI output
-
-@cindex Sound
-@cindex MIDI
-
-MIDI (Musical Instrument Digital Interface) is a standard for
-connecting and controlling digital instruments.  A MIDI file is a
-series of notes in a number of tracks.  It is not an actual
-sound file; you need special software to translate between the
-series of notes and actual sounds.
-
-Pieces of music can be converted to MIDI files, so you can listen to
-what was entered.  This is convenient for checking the music; octaves
-that are off or accidentals that were mistyped stand out very much
-when listening to the MIDI output.
-
-@knownissues
-
-Many musically interesting effects, such as swing, articulation,
-slurring, etc., are not translated to midi.
-
-The midi output allocates a channel for each staff, and one for global
-settings.  Therefore the midi file should not have more than 15 staves
-(or 14 if you do not use drums).  Other staves will remain silent.
-
-Not all midi players correctly handle tempo changes in the midi
-output.  Players that are known to work include
-@uref{http://@/timidity@/.sourceforge@/.net/,timidity}.
-
-@menu
-* Creating MIDI files::         
-* MIDI block::                  
-* MIDI instrument names::       
-* What goes into the MIDI?  FIXME::  
-@end menu
-
-@node Creating MIDI files
-@subsection Creating MIDI files
-
-To create a MIDI from a music piece of music, add a @code{\midi} block
-to a score, for example,
-
-@example
-\score @{
-  @var{...music...}
-   \midi @{
-     \context @{
-       \Score
-       tempoWholesPerMinute = #(ly:make-moment 72 4)
-       @}
-     @}
-@}
-@end example
-
-The tempo can be specified using the @code{\tempo} command within the 
-actual music, see @ref{Metronome marks}.  An alternative, which does not
-result in a metronome mark in the printed score, is shown in the example
-above.  In this example the tempo of quarter notes is set to 72 beats per
-minute. 
-This kind of tempo
-specification can not take dotted note lengths as an argument.  In this
-case, break the dotted notes into smaller units.  For example, a tempo
-of 90 dotted quarter notes per minute can be specified as 270 eighth
-notes per minute
-
-@example
-tempoWholesPerMinute = #(ly:make-moment 270 8)
-@end example
-
-If there is a @code{\midi} command in a @code{\score}, only MIDI will
-be produced.  When notation is needed too, a @code{\layout} block must
-be added
-
-@example
-\score @{
-  @var{...music...}
-  \midi @{ @}
-  \layout @{ @}
-@}
-@end example
-@cindex layout block
-
-
-
-Ties, dynamics, and tempo changes are interpreted.  Dynamic marks,
-crescendi and decrescendi translate into MIDI volume levels.  Dynamic
-marks translate to a fixed fraction of the available MIDI volume
-range, crescendi and decrescendi make the volume vary linearly between
-their two extremes.  The fractions can be adjusted by
-@code{dynamicAbsoluteVolumeFunction} in @rinternals{Voice} context.
-For each type of MIDI instrument, a volume range can be defined.  This
-gives a basic equalizer control, which can enhance the quality of
-the MIDI output remarkably.  The equalizer can be controlled by
-setting @code{instrumentEqualizer}, or by setting
-
-@example
-\set Staff.midiMinimumVolume = #0.2
-\set Staff.midiMaximumVolume = #0.8
-@end example
-
-To remove dynamics from the MIDI output, insert the following lines
-in the @code{\midi@{@}} section.
-
-@example
-\midi @{
-  ...
-  \context @{
-    \Voice
-    \remove "Dynamic_performer"
-  @}
-@}
-@end example
-
-
-@knownissues
-
-Unterminated (de)crescendos will not render properly in the midi file,
-resulting in silent passages of music.  The workaround is to explicitly
-terminate the (de)crescendo.  For example,
-
-@example
-@{ a\< b c d\f @}
-@end example
-
-@noindent
-will not work properly but
-
-@example
-@{ a\< b c d\!\f @}
-@end example
-
-@noindent
-will.
-
-
-MIDI output is only created when the @code{\midi} command is within
-a @code{\score} block.  If you put it within an explicitly instantiated
-context ( i.e. @code{\new Score} ) the file will fail.  To solve this,
-enclose the @code{\new Score} and the @code{\midi} in a @code{\score} block.
-
-@example
-\score @{
-  \new Score @{ @dots{}notes@dots{} @}
-  \midi
-@}
-@end example
-
-
-@node MIDI block
-@subsection MIDI block
-@cindex MIDI block
-
-
-The MIDI block is analogous to the layout block, but it is somewhat
-simpler.  The @code{\midi} block is similar to @code{\layout}.  It can contain
-context definitions.
-
-
-@cindex context definition
-
-Context definitions follow precisely the same syntax as within the
-\layout block.  Translation modules for sound are called performers.
-The contexts for MIDI output are defined in @file{ly/@/performer@/-init@/.ly}.
-
-
-@node MIDI instrument names
-@subsection MIDI instrument names
-
-@cindex instrument names
-@funindex Staff.midiInstrument
-
-The MIDI instrument name is set by the @code{Staff.midiInstrument}
-property.  The instrument name should be chosen from the list in
-@ref{MIDI instruments}.
-
-@example
-\set Staff.midiInstrument = "glockenspiel"
-@var{...notes...}
-@end example
-
-If the selected instrument does not exactly match an instrument from
-the list of MIDI instruments, the Grand Piano (@code{"acoustic grand"})
-instrument is used.
-
-
-@node What goes into the MIDI?  FIXME
-@subsection What goes into the MIDI?  FIXME
-
-@menu
-* Repeats and MIDI::            
-@end menu
-
-@node Repeats and MIDI
-@subsubsection Repeats and MIDI
-
-@cindex expanding repeats
-@funindex \unfoldRepeats
-
-With a little bit of tweaking, all types of repeats can be present
-in the MIDI output.  This is achieved by applying the
-@code{\unfoldRepeats} music function.  This function changes all
-repeats to unfold repeats.
-
-@lilypond[quote,verbatim,fragment,line-width=8.0\cm]
-\unfoldRepeats {
-  \repeat tremolo 8 {c'32 e' }
-  \repeat percent 2 { c''8 d'' }
-  \repeat volta 2 {c'4 d' e' f'}
-  \alternative {
-    { g' a' a' g' }
-    {f' e' d' c' }
-  }
-}
-\bar "|."
-@end lilypond
-
-When creating a score file using @code{\unfoldRepeats} for MIDI,
-it is necessary to make two @code{\score} blocks: one for MIDI
-(with unfolded repeats) and one for notation (with volta, tremolo,
-and percent repeats).  For example,
-
-@example
-\score @{
-  @var{..music..}
-  \layout @{ .. @}
-@}
-\score @{
-  \unfoldRepeats @var{..music..}
-  \midi @{ .. @}
-@}
-@end example
-
-
-@node other midi
-@section other midi
-
-Micro tones are also exported to the MIDI file.
-
-Figured bass has no effect on MIDI.
-
index f2365278cc47700acf4a6bd8ae7b21c24a277359..da68dada9592e25e93f936e60470d1c6adf1fcc0 100644 (file)
@@ -139,7 +139,7 @@ proportional notation, see @ref{Proportional notation}.
 Dots are normally moved up to avoid staff lines, except in
 polyphonic situations.  Predefined commands are available to
 force a particular direction manually, for details
-see @ref{Controlling direction and placement}.
+see @ref{Direction and placement}.
 
 @predefined
 
@@ -214,7 +214,7 @@ c4 c \times 2/3 { b4 a g }
 
 The automatic placement of the tuplet bracket above or below the
 notes may be overridden manually with predefined commands, for
-details see @ref{Controlling direction and placement}.
+details see @ref{Direction and placement}.
 
 Tuplets may be nested:
 
@@ -449,7 +449,7 @@ be entered as follows:
 
 The vertical placement of ties may be controlled, see
 Predefined commands, or for details, see
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 @cindex ties, appearance
 @funindex \tieDotted
index 3cfd80ce65efbb730d3bec0cc4269a7994d785e0..7aa0dd62645c3822d48e8f967d812f5b06ded703 100644 (file)
@@ -46,6 +46,10 @@ help, but it is in turn explained by x-space which again is
 missing from the list. Who has the
 knowledge to fix this?
 
+
+Clarify
+http://code.google.com/p/lilypond/issues/detail?id=68
+
 @end ignore
 
 @node Spacing issues
index 40830f2050dabe35be85189f29e3b720b74b4be7..a2daa9837f0d1e7bce66826d008e8b8be2a67d60 100644 (file)
@@ -58,7 +58,7 @@ It is possible to add arbitrary text indications
 to a score, as demonstrated in the following example.
 Such indications can also be manually placed
 above or below the staff, using the
-simple syntax described in @ref{Controlling direction and
+simple syntax described in @ref{Direction and
 placement}.
 
 @lilypond[quote,fragment,ragged-right,verbatim,relative=1]
@@ -95,7 +95,7 @@ d8^"pizz." e f g \textLengthOn a4_"scherzando" f
 @seealso
 
 Notation Reference: @ref{Formatting text},
-@ref{Controlling direction and placement}.
+@ref{Direction and placement}.
 
 Snippets:
 @rlsr{Text}.
index 6da515c15dcfea28f0acb83641ce100b54a124d2..0cd13623ca424b7f24121594cd3421f89585107b 100644 (file)
@@ -217,7 +217,7 @@ test-baseline:
        $(MAKE) test
        $(MAKE) out=test -C input/regression/ local-test-baseline
        $(MAKE) out=test -C input/regression/musicxml local-test-baseline
-       rm -rf out/lybook-testdb/
+       $(MAKE) test-snippets-clean
 
 
 local-check: test
@@ -234,8 +234,11 @@ test-redo:
        done
        $(MAKE) check
 
-test-clean: snippets-clean
+test-clean: test-snippets-clean
        $(MAKE) -C input/regression/ out=test clean
 
 snippets-clean:
        rm -rf out/lybook-db
+
+test-snippets-clean:
+       rm -rf out/lybook-testdb
diff --git a/ROADMAP b/ROADMAP
index 0450cbd9f11e5b439fd5ab822354e8b1f91232f1..59a4fbecbd2c0b2d612a2665a4c133b7b3da226d 100644 (file)
--- a/ROADMAP
+++ b/ROADMAP
@@ -19,10 +19,8 @@ source files.
                        (README.txt, INSTALL.txt, NEWS.txt etc.)
        user/           User manuals
        po/              translated manual node names
-       fr/              docs translated to French.
+       fr/ es/ de/      docs translated to French, Spanish, German resp.
    buildscripts/       Scripts for the build process
-   cygwin/             Cygwin (Windows) package support
-   debian/             Debian package support
    elisp/              Emacs LilyPond mode and syntax coloring
    flower/             A simple c++ library
        include/
@@ -33,6 +31,8 @@ source files.
        mutopia/                Real music, more at www.mutopiaproject.org
        new/         Snippets which are too new for LSR
        regression/     Testing of features, one test per file
+       texidocs/    Translations of texidoc and doctitle fields
+                    (for input/lsr)
        tutorial/       Examples from the tutorial 
    lily/               C++ sources for LilyPond (lilypond-bin)
      include/
index fed9aafcbe1b81a39e7f0f1b08e0f43eed4c8f7e..8586d2481ab9cb9beb45bcd06c4b64685eee63b7 100644 (file)
@@ -611,8 +611,8 @@ class SignatureFileLink (FileLink):
                 outfile = (dest_dir + '/' + f).replace ('.eps', '.png')
                 data_option = ''
                 if options.local_data_dir:
-                    data_option = ('-slilypond-datadir=%s/share/lilypond/current '
-                                   % os.path.split(infile)[0])
+                    data_option = ('-slilypond-datadir=%s/../share/lilypond/current '
+                                   % os.path.dirname(infile))
                 
                 mkdir (os.path.split (outfile)[0])
                 cmd = ('gs -sDEVICE=png16m -dGraphicsAlphaBits=4 -dTextAlphaBits=4 '
index d7aca8f1f2834d57fcd5ebea560156ad6284813d..034e123d7843c32a95721aa85d3f36a52393a02c 100644 (file)
@@ -83,6 +83,9 @@
 /* define if you have sys/stat.h */
 #define HAVE_SYS_STAT_H 0
 
+/* define if you have fpu_control.h */
+#define HAVE_FPU_CONTROL_H 0
+
 /* define if you have sys/stat.h */
 #define STAT_MACROS_BROKEN 0
 
index 38a7957081b7e1eb7e8e82dac502c9613cfc8340..8a193d0c6acd519224e459eb167abe840f1db303 100644 (file)
@@ -133,7 +133,7 @@ STEPMAKE_PATH_PROG(GHOSTSCRIPT, gs, OPTIONAL, 8.15)
 
 STEPMAKE_PATH_PROG(FONTFORGE, fontforge, REQUIRED, 20050624)
 
-AC_CHECK_HEADERS([assert.h grp.h libio.h pwd.h sys/stat.h wchar.h])
+AC_CHECK_HEADERS([assert.h grp.h libio.h pwd.h sys/stat.h wchar.h fpu_control.h])
 AC_LANG_PUSH(C++)
 AC_CHECK_HEADERS([sstream boost/lambda/lambda.hpp])
 AC_LANG_POP(C++)
index 66b38f461a64003f80db0cfb783f7e4cfe4b7e5b..e603616729c4046658fe01b5622aaeb0cc3f7eb1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "chords, ancient-notation, contexts-and-engravers"
index 7d1c0e123a53ace06d5a27ea17335037aa3181ac..66d04fe8628c4c75415c22f3fd5f6d2d1a641614 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, staff-notation, vocal-music"
index c9ae07a9e3cc1997e9c1388a6b011cb8728f426f..5dd38aec97610232ac6fdecb97e9339683d56ba5 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, contexts-and-engravers, breaks"
index fbebf90553012a961dbbe7c2c8c6ea95fda80648..324545efd558ad148686f4eb8a572993024c1149 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, contexts-and-engravers"
index dffd3b150c3069dbdfa15204647319e59fca9a87..eb303fa72e0f37184b4e10544cef4149d55a03f1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "chords"
index 55b358ae472d7df6bdf897d38df646b5c8632602..9b7306352067a86c520c625a519037a134656f63 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, expressive-marks"
index eca1307fc40dc4e71757e446292465faa669ede6..149bb31e31abe2acc6d3ba8d8cf4ce8c422cc37f 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, percussion"
@@ -27,11 +27,11 @@ timb = \drummode { timh4 ssh timl8 ssh r timh r4 ssh8 timl r4 cb8 cb }
       \override StaffSymbol #'line-count = #2
       \override BarLine #'bar-size = #2
     } <<
-      \set Staff.instrumentName = "timbales"
+      \set Staff.instrumentName = #"timbales"
       \timb
     >>
     \new DrumStaff <<
-      \set Staff.instrumentName = "drums"
+      \set Staff.instrumentName = #"drums"
       \new DrumVoice { \stemUp \drh }
       \new DrumVoice { \stemDown \drl }
     >>
index 32276fff42c78c323fd204b0dcb97ffb972ae06c..a666a6d380318aafa9145840e6e51534517a1a7a 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index b3ee589826c31cdbc6f4a95b143de3d27f4c2a8e..c60ad80efa437b80c35755d7e19993f751359fb4 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "titles"
@@ -27,7 +27,7 @@ details on this format string: Formatting Calendar Time.
 "
   doctitle = "Adding the current date to a score"
 } % begin verbatim
-\version "2.11.46"
+\version "2.11.48"
 % first, define a variable to hold the formatted date:
 date = #(strftime "%d-%m-%Y" (localtime (current-time)))
 
index 45e433c72182ba9c6fce306ed85905ddb9819e9d..32c3843224ee38448c91a7f48dfa02df7c59f526 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "repeats"
index 5bda716c77d68f5e0ee853d2a5a0972a0cfb6797..8920e6b8fbc298178f2f74af84c01f14f5866448 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, vocal-music, spacing"
index 288c58ea71d5552c9e8e6b0f8742327c09291fb5..f05c94274078bd9328049c5e9fb4fa7d4de28343 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 93b903c324222428702f1fc520b2fc89faa3c389..86e931e16e656817a9e6e38511c14b3e853fae77 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, paper-and-layout, titles"
index 47659547c634326b5d137aae68fa242d3780a308..15ec5b6b26e5491d46407c4d1c426ebdae925d30 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, vocal-music"
index 961e683fd1e96d6cd1ba08b1d2f149ab9cbc79fd..f0a56d43f867466a190c322266b6a6a6260a0dc9 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text"
index 14dff606b2841d310f9a422a5aae0f118c5f6de3..701298908763b07a747702cc631f0752576b2272 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "tweaks-and-overrides, paper-and-layout, spacing"
index e60352a290267d06e6c35dd9076c5ade3aaefed6..63d0a3dc567774188eb184c93f157d75d1bdf302 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations, spacing"
index 906ac3ef8dcaae39c42dc73245c71fc50af5618f..e93e9bec05ee39ab1fdf3193863c409fb77045ff 100644 (file)
@@ -1,13 +1,13 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, vocal-music"
 
   texidoc = "
-Adding the @code{Ambitus_engraver} to the @code{Staff} context create a
-single ambitus per staff, even in the case of staves with multiple
+Adding the @code{Ambitus_engraver} to the @code{Staff} context creates
+single ambitus per staff, even in the case of staves with multiple
 voices. 
 
 "
index 66425043f79e9fb497968e580e04704423d1f202..e679141c28d6b7d59e856c52e3b9c7235de715f3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation"
index e387b5b4549f64dc6a76b7f7f84e6bc4bc745604..b611e1449303502d2507548f5201ff83c76a3a40 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation, template"
index 928bb0ad09d8e42d48fe66854286e237df1e4c8d..7e579dd5f29453ef37c9f13e559956b0767126f1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation, template"
index 419a0f546320dadc9bd3fd8ee0e9ac51f339daaf..9119840e2f20489690fcd50c15876c6aa12948cb 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation"
index 8a675dee15fd96328895705768ada968174089b4..49653156b04ded4bd92bc16c91011caeadc4ec51 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, editorial-annotations"
index 6640a02adfed5895dd0d28fb976565d64bdfab83..0fd6d775c60bcb468929a6f5282cd0f7ca45a122 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 07d34abfc8817e61683646a8cc809c6c7be19556..246d5a1bb281ab85d025fe5227ac6bf023467ae7 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
@@ -21,8 +21,6 @@ changes the beaming to quarter note beats.
 %              _   _
 % Required    | | | |
 
-% The good way adapted from David Bobroff
-
 % macro for beamed two per two in 2/2 and 4/4 time signature
 qBeam = {
   #(override-auto-beam-setting '(end 1 8 * *) 1 4 'Staff)
@@ -34,15 +32,15 @@ qBeam = {
   <<
     \new Staff \relative c'' {
       \time 4/4
-      g8^\markup { without the macro } g g g g g g g |
-      g8 g g g4 g8 g g |
+      g8^\markup { without the macro } g g g g g g g
+      g8 g g g4 g8 g g
     }
     %Use the macro
     \new Staff \relative c'' {
       \time 4/4
       \qBeam
-      g8^\markup { with the macro } g g g g g g g |
-      g8 g g g4 g8 g g |
+      g8^\markup { with the macro } g g g g g g g
+      g8 g g g4 g8 g g
     }
   >>
   \layout {
diff --git a/input/lsr/bar-counter.ly b/input/lsr/bar-counter.ly
new file mode 100644 (file)
index 0000000..dead05b
--- /dev/null
@@ -0,0 +1,29 @@
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "repeats, staff-notation, editorial-annotations"
+
+  texidoc = "
+This snippet provides an example how to emit bar counters which
+LilyPond doesn't provide currently. 
+
+"
+  doctitle = "Bar counter"
+} % begin verbatim
+
+<<
+ \context Voice = "foo" {
+   \clef bass
+   c4 r g r |
+   c4 r g r |
+   c4 r g r |
+   c4 r g r |
+ }
+ \context Voice = "foo" {
+   \set countPercentRepeats = ##t
+   \override PercentRepeat #'transparent = ##t
+   \repeat percent 4 { s1 }
+ }
+>>
index 84cc7d8d5f85392e2299ea082828d36873d3a6e3..74d6e22e8aebf4276fd14924a470e44136b481d1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, breaks"
index ead6733afa004dc15899ba45dc4220bb6c6f3798..96c70ce6e105c036176e4e0b552020e831985357 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations, text"
index 036e43838d8592947784755f0c2deda8945669fa..259d7c527d25c0f3903a9cbd59d47ba14233f41f 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "winds"
index dc1ab53a07d733884a179167ca1e7f82c9deef69..77b48c498917da2626ceefa1fe146565c2367716 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 3a5c6eb2a0dacfc2b08775e3f243919e4e3f05ea..bd677ab75a9cb189ac0d209fe13f08d34d1de32c 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
index 7ed4e7b3de82f4c98d4f08e0f6dfc0be4fdf9379..134360333ccdf3e45099d7e50fa9461f3f714fc8 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, text"
index b91c78cf3cf2f0558d625f35d0afcba0ebad818b..f3b58c1a4cf55c5b1d46d570affbb92214629a02 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, unfretted-strings"
index 3e955c36c852bd978130e19271f1e01bdb5ca084..11d481cc205fc7c4b69494df75f31fd3bb1220e1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "simultaneous-notes, editorial-annotations, tweaks-and-overrides"
index 8c436c0c3233fa9826aa386d8c2aa4c8e984d3dc..dc14142adf57cff9f555886e4b89b34087744739 100644 (file)
@@ -1,7 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
-\layout { ragged-right = ##t }
+\version "2.11.48"
 \header {
   lsrtags = "rhythms,tweaks-and-overrides"
   texidoc = "
index 29956ca2bdc1b78b66fca838dc2a2974cc88ac12..250e003e1d3721b5727833ae5af05f4f2c033c53 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "tweaks-and-overrides"
index 9d88a957049c98805d6d77a1775f25cf60c5db4f..50d0faf711b3be2fc83e57464be23ab8f3837f61 100644 (file)
@@ -1,25 +1,25 @@
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
-
+\version "2.11.48"
 \header {
-  lsrtags = "expressive-marks"
-
+  lsrtags = "rhythms,tweaks-and-overrides"
   texidoc = "
-The text used for crescendos and decrescendos can be changed by
-modifying the context properties @code{crescendoText} and
-@code{decrescendoText}.  The style of the spanner line can be changed
-by modifying the context properties @code{crescendoSpanner} and
-@code{decrescendoSpanner}.  Available values for the spanner properties
-are @code{'hairpin}, @code{'line}, @code{'dashed-line}, and
-@code{'dotted-line}. If unset, a hairpin crescendo is used: 
-
+The text used for crescendos and decrescendos can be
+changed by modifying the context properties @code{crescendoText}
+and @code{decrescendoText}.  The style of the spanner line can
+be changed by modifying the @code{'style} property of
+@code{DynamicTextSpanner}.  The default value is
+@code{'hairpin}, and other possible values include
+@code{'line}, @code{'dashed-line}, and
+@code{'dotted-line}:
 "
   doctitle = "Changing text and spanner styles for text dynamics"
 } % begin verbatim
+
 \relative c'' {
   \set crescendoText = \markup { \italic { cresc. poco } }
-  \set crescendoSpanner = #'dotted-line
+  \set crescendoSpanner = #'text
+  \override DynamicTextSpanner #'style = #'dotted-line
   a2\< a
   a2 a
   a2 a
index 60826803dbe5f432cf73ae0c8d6f6c09aa2fe496..0624b624c1268d4a70fcfdd9f30c79aa07e03fab 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, editorial-annotations"
index 462fea5d3279d0f0d456b3808ba4fdb3af9028fb..8a1141b0db5ccf02a54000ca1e1709da5431ca54 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 8b31d059fc9e2fbc137e20f7394b984712882f29..600df9c62c4d2ceed89e1862f69bdd38bece7391 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "chords"
index 060ac75a389a3e088c86e6ce2420eb7783847cd1..9992a6a21ca346c187ef1c676293cef182b38282 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, tweaks-and-overrides"
index 1c64e1e6581ebe3b139bc44fd65d9a0301e51e3b..631a5c79a15b783bbc7987ef8f80c05703a7b5a7 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation"
diff --git a/input/lsr/changing-the-positions-of-figured-bass-alterations.ly b/input/lsr/changing-the-positions-of-figured-bass-alterations.ly
new file mode 100644 (file)
index 0000000..cae3288
--- /dev/null
@@ -0,0 +1,24 @@
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "chords"
+
+  texidoc = "
+Accidentals and plus signs can appear before or after the numbers,
+depending on the @code{figuredBassAlterationDirection} and
+@code{figuredBassPlusDirection} properties.
+
+"
+  doctitle = "Changing the positions of figured bass alterations"
+} % begin verbatim
+\figures {
+  <6\+> <5+> <6 4-> r
+  \set figuredBassAlterationDirection = #RIGHT
+  <6\+> <5+> <6 4-> r
+  \set figuredBassPlusDirection = #LEFT
+  <6\+> <5+> <6 4-> r
+  \set figuredBassAlterationDirection = #LEFT
+  <6\+> <5+> <6 4-> r
+}
index 68548625c43ca2dcde44439ea05944ae93a219a0..44dd4b03d37d64408c82058e0ec30d8d7e18521d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides, paper-and-layout"
index 7a8f8e58faef9fcd675d31cd3c5e09d354aa2f03..5778397266e2e6630be0497a701bd69d96ca1532 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 09dfad965d9ff88c3053087a5bd04d3a82f5b668..1c96d98fa7f538060b2fbb05be34be664a2ea3e2 100644 (file)
@@ -4,12 +4,12 @@
 \header {
   lsrtags = "rhythms,contexts-and-engravers"
   texidoc = "The @code{measureLength} property, together with
-@code{measurePosition}, determines when a bar line is needed. However,
+@code{measurePosition}, determines when a bar line is needed.  However,
 when using @code{\\scaleDurations}, the scaling of durations makes it
-difficult to change time signatures without making a mess of it.
-Therefore, @code{measureLength} has to be set manually, using the
-@code{ly:make-moment} callback. The second argument must be the same as
-the second argument of @code{\\scaleDurations}."
+difficult to change time signatures.  In this case, @code{measureLength}
+should be set manually, using the @code{ly:make-moment} callback.  The
+second argument must be the same as the second argument of
+@code{\\scaleDurations}."
   doctitle = "Changing time signatures inside a polymetric section using @code{\\scaleDurations}"
 } % begin verbatim
 
index 123289c27fa4bb362a4f12b1d1f5d0d753263c68..86740012f265518402236d35810e99e23a06f76b 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, vocal-music, ancient-notation, contexts-and-engravers"
index e9944046ec74885094d9248ee69710084dc0ac39..be815077a75889379ca5aae99cfc6a2c64a23b2e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "chords"
index 9451f28f736aeec3b8817416b5667494f3ccad71..0742ed134c949a1776dee2578e3c4b4f39fa262e 100644 (file)
@@ -1,9 +1,13 @@
+changing-the-positions-of-figured-bass-alterations.ly
 changing-the-chord-names-to-german-or-semi-german-notation.ly
 adding-a-figured-bass-above-or-below-the-notes.ly
+single-staff-template-with-notes,-lyrics,-chords-and-frets.ly
+showing-chords-at-changes.ly
 single-staff-template-with-notes-and-chords.ly
 controlling-the-placement-of-chord-fingerings.ly
 clusters.ly
 single-staff-template-with-notes,-lyrics,-and-chords.ly
+adding-bars-to-chordnames.ly
 chord-name-exceptions.ly
 volta-below-chords.ly
-adding-bars-to-chordnames.ly
+simple-lead-sheet.ly
index 3bd07ac06bf9f9ada6ca37dff4cc5a44e8391192..f5690c8b4990f6fa6ed411e6398b59ec9943615f 100644 (file)
@@ -1,7 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
-\layout { ragged-right= ##t }
+\version "2.11.48"
 \header {
   lsrtags = "paper-and-layout"  % a new tag like "Mixing text and music" or
 % "Special output" might be more adequate -jm
@@ -38,13 +37,13 @@ origScore = \score {
   \relative c' {
     \set Staff.instrumentName = #"bla"
     c1
-    d
+    d1
     \grace c16 e1
     \key d \major
-    f \break
+    f1 \break
     \clef bass
-    g,
-    fis
+    g,1
+    fis1
   }
 }
 
index b264c4787dde5916fef194cc56496ae4131d928e..b2384d3d2fbaad955f2f1c9f8c9b3b297d42686f 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "simultaneous-notes, chords, keyboards"
index 17451c4b2e3f73488cbe7103fa677673946b9369..642661c1894e5dbd7a1df370d78ac440a8ba542b 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, text"
index fc200d6578886b2b8ae0ec7576bfb1d33dd8eb2e..3032f926afc835c45c99255e23f38857ca0c46b3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "simultaneous-notes, text"
index e4cb4f3e71dbe931339699baf6da0fb169c5aa1d..42d0d98b035764c49fcf037dd7af29620f447669 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
@@ -28,6 +28,6 @@ database.)
   \time 5/8
   #(override-auto-beam-setting '(end 1 8 5 8) 1 4)
   c8 d e fis gis
-  c fis, gis e d
+  c8 fis, gis e d
   c8 d e4 gis8
 }
index 504fe41d1524e2ecae46239b873c93b37f953b64..73bb5eea668df1152a251e8d8ab5cc619bbda960 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 4e71e4d351e1da4520a5c1e64d1463a4c7dc6908..471f343552d4f55f0064bdcfa7b67eb864f3c92e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 55b703ca6e6b6e035777027391690f16a3b67db5..abfae576c286cc1c7406e5b29e59bb3e8d1f1f39 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations, chords, keyboards"
index 71a8a7febe57ea65d2ab650b05dd5549eb0f7ac4..3e2affaf446c2074a93b5fc25541b005ad351bde 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, tweaks-and-overrides"
index 85aa4bc23c950666372994103954643cbf97e509..02adca504be1194684a8e9f59d145ba7fdd071a2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
index 787d4c22c74e4d5d669e4b44cee17bd8d0aa5521..ae2761b521b3273032b18a858a491ebc4ca3a5aa 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches"
index 6d3a09f3112f735ae71b4eb6ca0e3fc792c54cbf..342d791db46e2ee489006d36f90a5a657f20929d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 38e35daf0ebd338add666a463243e4c80e6af52d..b2bfab4d055c33ec5a94d99f16a796647a07c99e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, editorial-annotations, contexts-and-engravers, paper-and-layout"
index 9d74ca01ac515ae4896fe9b6ef481a13eb510971..8dc06abaad6cd9fa237e0fb25d5870439feac0de 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 97557da5f79354cf16f5140e32bd0d229612d8f9..8447bb1a785215a687571b9ac6615fec89e95b90 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index a94dd4b2852ea2fc27a87b42f92848074b885c7e..720fd87191e7b1fa38a68d83307d7a42cff515a1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, text"
index bfbb3ed8a8b403ebaa33c0abea3699e98886cace..a6946d50df601bb96aa52c268bdc7da1e137a3a8 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "expressive-marks,text,tweaks-and-overrides"
   texidoc = "
@@ -15,15 +15,13 @@ end of one system and the start of the following system.
   doctitle = "Creating simultaneous rehearsal marks"
 } % begin verbatim
 
-% Thanks to Risto Vääräniemi for this snippet
-
 {
   \key a \major
   \set Score.markFormatter = #format-mark-box-letters
   \once \override Score.RehearsalMark #'outside-staff-priority = #5000
   \once \override Score.RehearsalMark #'self-alignment-X = #LEFT
   \once \override Score.RehearsalMark #'break-align-symbols = #'(key-signature)
-  \mark \markup { \bold "Senza denti" }
+  \mark \markup { \bold { Senza denti } }
   
   % the hidden measure and bar line
   \once \override Score.TimeSignature #'stencil = ##f
@@ -33,7 +31,7 @@ end of one system and the start of the following system.
   \time 4/4
   \once \override Score.RehearsalMark #'self-alignment-X = #LEFT
   \once \override Score.RehearsalMark #'break-align-symbols = #'(bar-line)
-  \mark \markup { \box \bold "Intro" }
+  \mark \markup { \box \bold Intro }
   d'1
   \mark \default
   d'1
index 034926d38d8d11c5d0507357ae266ef7f47ef128..dd6a5cb14f191b8210f23bf4e52318c8b6fc2455 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, keyboards, unfretted-strings"
index 5a75db0d0e2ddf06c0f3ac4f3f08fc631cf20c9b..b0cb6638b093f3d7800d30ce581d803907f7292a 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks, text, tweaks-and-overrides"
index ccf24dcee4796d7c1db4cc1d6bc4f8eed2cde927..eb4839c81407e607c8d3fac92864cf4058721d4a 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation, tweaks-and-overrides"
index 45b068e83812104931088bc95bbe10a22e3ae43d..6d21338bbe007c938e07d304d0124162697995ae 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations"
index 11a013596ed472fc227f4e5b94a51bbf9b411051..1b7debba9d6f23ba41bd8a08892117dcbc990cb0 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, keyboards, unfretted-strings, midi"
index 2e02e1a8f5a04f4301207db9b75cc40195095cab..69c968a18677474ebc48a859e041d7acd0d4bb0c 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, paper-and-layout, titles"
index 2fab8a77c6596de4041ec27c2bb95671fae32c1c..7ccb1fbd468ff491750c514dc98b1a571b2c0b5d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "staff-notation,tweaks-and-overrides"
   texidoc = "If there is only one staff in one of the staff types
@@ -26,7 +26,7 @@ property has to be set, as shown on the second system in the example.
         c'1
       }
     >>
-    \layout {}
+    \layout { }
   }
   \score {
     \new PianoStaff <<
@@ -36,6 +36,6 @@ property has to be set, as shown on the second system in the example.
         c'1
       }
     >>
-    \layout {}
+    \layout { }
   }
 }
index ae1aa4de8b4ef746d0fd79e673538d4d905b43de..19b1f73538d98bcc3c4d20ea5bdc45afc8f7bb91 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches"
index c8c95c3c3de5e29b741d683bb237a40c4d8f90c3..acba6f9469bedfe296aae836afdd44c62fe4df32 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "tweaks-and-overrides"
   texidoc = "
index 7aae0d3b41b160928c4d2e2f577ab804758c3195..672b2317526582d815ee6ba6177b7630e3b0cea4 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "tweaks-and-overrides"
   texidoc = "
index 028db73cf728bcf053787aa8957df11e34ec6b25..050ea6c42d662282591dbd75b85ed406796b40bd 100644 (file)
@@ -3,10 +3,11 @@ making-some-staff-lines-thicker-than-the-others.ly
 applying-note-head-styles-depending-on-the-step-of-the-scale.ly
 embedding-native-postscript-in-a--markup-block.ly
 changing-the-appearance-of-a-slur-from-solid-to-dotted-or-dashed.ly
-grid-lines--emphasizing-rhythms-and-notes-synchronization.ly
+default-direction-of-stems-on-the-center-line-of-the-staff.ly
 changing-a-single-notes-size-in-a-chord.ly
+grid-lines--emphasizing-rhythms-and-notes-synchronization.ly
 grid-lines--changing-their-appearance.ly
 controlling-the-placement-of-chord-fingerings.ly
 allowing-fingerings-to-be-printed-inside-the-staff.ly
 blanking-staff-lines-using-the--whiteout-command.ly
-default-direction-of-stems-on-the-center-line-of-the-staff.ly
+bar-counter.ly
index 0ab90c7728b5b8dac68379dc232da06390793b5e..ef255e75b3d22bcba805e00fa51983a73c157fea 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations, text"
index 89b4341847d535953e0f320a41f8d9704ab51057..c082b73ae9c218ea2acfac47007cd3e691af4279 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "contexts-and-engravers"
index efc41bcdb2373d925f9eef70d9bae50326bb1e05..b7bdb5877642dcf69f87888f60cfcf124bfcffab 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
@@ -15,8 +15,8 @@ number indicates the direction (1 = up, -1 = down).
   doctitle = "Engraving ties manually"
 } % begin verbatim
 \relative c' {
-  <c e g>2 ~ <c e g> |
+  <c e g>2 ~ <c e g>
   \override TieColumn #'tie-configuration =
     #'((0.0 . 1) (-2.0 . 1) (-4.0 . 1))
-  <c e g> ~ <c e g> |
+  <c e g> ~ <c e g>
 }
index ef3e7befa7f200ce4aac2b3be13fa4679e400cf8..708737267914171c87b3dc81a53b3e878c3af512 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index b0ea9ca4bcb81ea080f54a15982a55a5c547965e..f484267f4443f1a317c166ae04d84f8adee0f88c 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 682860b608e7702bc0063dd058ee492d9af842a2..ce31b038d6dee46b2fa497255eb9081fa0d0c708 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, vocal-music"
index b28ecef0d84832e38f13965f0df8522643c3a821..f7fd39321a60611d4e7e1a43e88adae8afc04a37 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches"
index 49488741c75f993381cd377bda193ae67abd3662..c5910712e1ad37d69647f70de7ccb071b01abec0 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations"
index 3cfb92f9680c39c2cbf88987136313ceba7d0abf..ba7916782f980c791d0448660c2ba69275ca3f96 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "editorial-annotations"
index 3bcaa25db06e02ae95b7e43f4aacfcc0a195df76..02cbbd21d560ebf88eb17af68264e13fcd30a5b4 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, percussion"
index f4afd0089fd4ef52abce99206aaf79d82fb762eb..bf690e2db6bf45dce34d64035318ce74bb2a73d1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 7ebc8b8932033545dfeab7347d33c9261a4b439d..d2af614d8ad1595e2c34d43561ae91bfc22f8fc2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, vocal-music"
index 718c48ed11e9e6bbd790d96749706daaebde3bc3..7f7e6b87aa19feb759d0198b9210cc5dde169c76 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "staff-notation,ancient-notation"
   texidoc = "Incipits can be added using the instrument name grob, but
index dc25bbd58e502f1d8b60958235a4e8cb7183c52e..f1ae7d024672c29704f0abeb1465a198fa254ad8 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "keyboards"
index 4260799b7e13bdb55e5857fdd3142ff93225e564..a87efa6e9ed7dac5491e45989f960e8548a0de63 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation"
index 78b69b9148504cd8504db196733f9cf178533e59..437240562407f14755b9dd122baa23be9f03c57f 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, text"
index 20d9370ac39f3cd8aff25f014ed666a7b9a9e228..45fc0651025cec8dcf0dbbec4588ccd8819f1027 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "keyboards, percussion, template"
index 9550264445db9094935ef2499a466b6228bd7a6b..5e1772af5ddefea2e55e3e9c81eb3483d24b0144 100644 (file)
@@ -1,10 +1,10 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "expressive-marks"
   texidoc = "Arrows can be applied to text-spanners and line-spanners
-(such as the Glissando)"
+(such as the Glissando)."
   doctitle = "Line arrows"
 } % begin verbatim
 
index f7784135bc18390e3dc52a56305ddf81475dd9f2..513f23aeea314e8a9cf3ea91e5a09c21f5cea2d0 100644 (file)
@@ -1,13 +1,13 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "pitches"
   texidoc = "Makam is a type of melody from Turkey using 1/9th-tone
 microtonal alterations.  Consult the initialization file
-@code{makam-init.ly} (in @code{/usr/share/lilypond/current/ly})
-for details of pitch names and alterations.
-"
+@code{makam-init.ly} (see the `Learning Manual @version{},
+4.6.3 Other sources of information' for the location of this file)
+for details of pitch names and alterations."
   doctitle = "Makam"
 } % begin verbatim
 
index dc38e325c52cd0b7e5095c503aced13b9258ed92..17a7c3a9c9d5816cff39ddf8187b701f8bed1fab 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "rhythms,tweaks-and-overrides"
   texidoc = "
index 9b245e603b3d3e38b252047e2d79572b191702f6..169e03a45add5c67125fb70fbda477736f799528 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, editorial-annotations"
index af520baa4e4ace6caf9ade246bf540eb938cf8d4..a848443245b7811c688efdc6b73b023387255d7d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
index 95fd0e22346b0b7c840bc93d1e5fae667b147718..093614921df1ecd00849943452a699c694eb14be 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text"
index 04d014e25e38ef84967ca7fe7907503997a7bb5c..3b3f43aad77c1444a80ad7be1c5a83b826297f80 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, ancient-notation, contexts-and-engravers, tweaks-and-overrides"
index 0708f2308cd78a760226c2de1ad8cb00943240fd..30eb0e806b24bc441a091383868c2b604c215edc 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index d9b68fee340c3de07afc1965628728169410acdd..82480c9b00199adf10a9eedb3898354e413f9d2d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 6284916b289219a1d92e9e534c2e548d137d813a..cf3eb9050e207e0b599a61c78ef4568835b97bb3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 76bc3d69bcecfce52e20b10f6b71bdb731bc211f..38e74bec65b6bce61e0564734b5fac53a82e7a7f 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 % possible rename to scheme- or something like that.  -gp
 \header {
   lsrtags = "tweaks-and-overrides"
@@ -22,5 +22,5 @@ Objects of the same type, like text, can be moved around by using some Scheme co
       'extra-offset '(-3.5 . -4.5))
     a^2^"m.d."
   }
-  \layout { ragged-right = ##t}
+  \layout { }
 }
index 48f6926dc95a78521a1be16086e9d5d3ffd32448..514de0c6fed029ca4365b795c84fb6fb8bed29a3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, contexts-and-engravers, tweaks-and-overrides"
index f27b5673f45c0f3e6fb12a58ca81eb71c61c2e7f..0d614ba8d14856e3b11e0fc7989a71766d52870e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, staff-notation"
index c848203d4159a07a6cdfde78aa3f1c2fcfd67242..41c4eb96804cf4eb336b9e5c142f90a02eacf965 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, text"
index 61192b369f7904a3618fb950698e465334d3ac80..11279877ff2a93cd78e5e85cd0ecf60ee6aa8408 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text"
@@ -13,7 +13,7 @@ a score, or in a document generated with @code{lilypond-book}.
 } % begin verbatim
 
 \score {
-  \context Lyrics {
+  \new Lyrics {
     \override Score.RehearsalMark #'self-alignment-X = #LEFT
     \mark #(ly:export (string-append "Processed with LilyPond version "
                        (lilypond-version)))
index b376adfac2b16f19dd66641fe5755149c0f7943d..86bb42aeb7adc60a2394b748d1efa23ba0933814 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "spacing"
   texidoc = "Page labels may be placed inside music or at top-level,
index 0b2fb510e97a7c3b54a2735b6560cc4ac3cfb72b..107d4e68dbdbc6503d6948a7be2841e24decebe1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index b4bccc8e8f8f4e8b120ae2d32f32464eef14eca7..b0aa26cb6bfba28b2ca09fb82314982dba258de5 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "keyboards, template"
index 316cb4da94c03e387c0b6c664af47a185b7d438f..c42ca6fe200de06042d34aa8efc22f331afddcc5 100644 (file)
@@ -1,15 +1,13 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks,keyboards,template"
   texidoc = "
 Many piano scores have the dynamics centered between the two staves.
 This requires a bit of tweaking to implement, but since the template is
-right here, you don't have to do the tweaking yourself.  Note that
-the two piano staves will move closer together in any system that
-does not contain at least one dynamic marking.
+right here, you don't have to do the tweaking yourself.
 "
   doctitle = "Piano template with centered dynamics"
 } % begin verbatim
@@ -18,7 +16,7 @@ upper = \relative c'' {
   \clef treble
   \key c \major
   \time 4/4
-
+  
   a4 b c d
 }
 
@@ -26,7 +24,7 @@ lower = \relative c {
   \clef bass
   \key c \major
   \time 4/4
-
+  
   a2 c
 }
 
@@ -55,22 +53,22 @@ pedal = {
       % So that \cresc works, for example.
       \alias Voice
       \consists "Output_property_engraver"
-
+      
       \override VerticalAxisGroup #'minimum-Y-extent = #'(-1 . 1)
       \override DynamicLineSpanner #'Y-offset = #0
       pedalSustainStrings = #'("Ped." "*Ped." "*")
       pedalUnaCordaStrings = #'("una corda" "" "tre corde")
-
+      
       \consists "Piano_pedal_engraver"
       \consists "Script_engraver"
       \consists "Dynamic_engraver"
       \consists "Text_engraver"
-
+      
       \override TextScript #'font-size = #2
       \override TextScript #'font-shape = #'italic
-
+      
       \consists "Skip_event_swallow_translator"
-
+      
       \consists "Axis_group_engraver"
     }
     \context {
@@ -80,11 +78,9 @@ pedal = {
   }
 }
 \score {
-  \unfoldRepeats {
-    \new PianoStaff <<
-      \new Staff = "upper" << \upper \dynamics \pedal >>
-      \new Staff = "lower" << \lower \dynamics \pedal >>
-    >>
-  }
-  \midi {}
+  \new PianoStaff <<
+    \new Staff = "upper" << \upper \dynamics \pedal >>
+    \new Staff = "lower" << \lower \dynamics \pedal >>
+  >>
+  \midi { }
 }
index 53d1fb551b493d3efbdee5fdd84e689770497548..2dba0eaba1b7f8c9fc6da54c04f28b4f3e71151e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, keyboards, template"
index efb47ae36c209d29ab7dadf5405e1f73b5212a7e..0b81f57e9d730e88f3bfe5d7efbc26a04b5940a2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, keyboards, template"
index 616b47574fb8bc90a219af9c0984b938f3c0887e..6f39e1d23fb4d9a2d7adcb3a677962f77af6fbac 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "rhythms,tweaks-and-overrides"
   texidoc = "
index 5ae2a185d266d4580a0c698b78ffe64544abd2a8..e2f74c81d7330b8684219b549800093fc9df16f9 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "repeats, breaks"
index f2d56592dd6055428bea75cb02466d120e3722f8..9aa18b1408ca479ca8fe706b29efc4f8de7c5d4d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches"
index 443c362822f1c49fbc08835ad36539a6c649009b..cd7e4ea2ae52088fb2c46a02c9481a40f01811b9 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches"
index c7ad090b7f1a93e7fefec19b849df40598dadd09..32ab7d5e33483a3b65d23daf37fd4f5f5a3f6804 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 95f3b034a1862d866c02b6f7d1701b04be0c643f..4e21abef39a760257bffa17d44d0288659baf58e 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text"
index 22a3e84058a310eafcc2cff7579ddeb378e33a74..468c1189fa52729f9d0da86200491f29a9d9105c 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text"
index ea429db83c9911160f69694b623d800fe17b994c..98718283cb4281e811063eb21744c658f760bbf2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, expressive-marks, staff-notation, tweaks-and-overrides"
index 5fa330703af498fe3c077077ea1d7e193fb64397..14fda53293d85072964676e0602ed42ab075fae4 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, percussion"
index 952e6dfe1b1f629466747accb792b7955f2ca9b2..6d6746ca32c5ddf283cbaffad74a9418abb759d2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "tweaks-and-overrides, spacing"
index 4fa8974460cd260e80b9bd910a02cfe19904542e..9640483b56f3f7d738d585ea64905d05b21bd700 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "pitches,staff-notation"
   texidoc = "Quotations take into account the transposition of both
@@ -14,7 +14,7 @@ transposed using @code{\\transpose}.  In this case, all the pitches
 
 \addQuote clarinet {
   \transposition bes
-  \repeat unfold 8 { d'16 d'16 d'8 }
+  \repeat unfold 8 { d'16 d' d'8 }
 }
 
 \addQuote sax {
index c822b72618fb66e70f309b0b00f12c266d96bc52..9c3139e9a28e6a06c7e49363d48afbc5d74b8a02 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "staff-notation"
   texidoc = "With @code{\\quote}, fragments of previously entered
@@ -21,15 +21,15 @@ original = \relative c'' {
 
 <<
   \new Staff {
-    \set Staff.instrumentName = "quoteMe"
+    \set Staff.instrumentName = #"quoteMe"
     \quoteMe
   }
   \new Staff {
-    \set Staff.instrumentName = "orig"
+    \set Staff.instrumentName = #"orig"
     \original
   }
   \new Staff \relative c'' <<
-    \set Staff.instrumentName = "orig+quote"
+    \set Staff.instrumentName = #"orig+quote"
     \set Staff.quotedEventTypes = #'(note-event articulation-event)
     \original
     \new Voice {
index e2e6f8a01d85d9e7608a4177f1261eddd09d876f..e7b58832b5018fc96cc7dc5152274872f41976d9 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides, breaks"
index a04d57124b71be3540a86a2a4bb2cfa9c5fbf2f7..01c31d2f09cf3fec34ff3f8049a69fa7776e08d7 100644 (file)
@@ -2,4 +2,6 @@ positioning-segno-and-coda-with-line-break.ly
 volta-below-chords.ly
 adding-volta-brackets-to-additional-staves.ly
 volta-multi-staff.ly
+bar-counter.ly
+volta-text-markup-using-repeatcommands.ly
 shortening-volta-brackets.ly
index 11630a1bbec9ace734a1005223e053a4acebb5aa..32f610aae8af648ef23a542aa6a1e1536a8acebf 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, ancient-notation, tweaks-and-overrides"
index 225b4a101f111299442f298851c15252b7243588..9926048d31ac699ef49ac1906f689c7271b47e4a 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, tweaks-and-overrides"
index d36a0ea57559751a7802980d6ec9f71d932902dc..d0697943fa279e0022211a82fa144f3470af66ac 100644 (file)
@@ -8,6 +8,7 @@ controlling-tuplet-bracket-visibility.ly
 heavily-customized-polymetric-time-signatures.ly
 positioning-multi--measure-rests.ly
 using-ties-with-arpeggios.ly
+changing-text-and-spanner-styles-for-text-dynamics.ly
 forcing-rehearsal-marks-to-start-from-a-given-letter-or-number.ly
 integrating-text-indications-in-metronome-marks.ly
 compound-time-signatures.ly
index 25185b6989db5f66104f601f67ab113341d84c2f..bd49c1cb31258f51a5a90fb65691c40310a06420 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "template"
index 8d10683a42d29f852b2e88484d7a5268a5046f20..af7f832e857d4b80ba65bdb267ba753edd9c7777 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "expressive-marks"
   texidoc = "If the note which ends a hairpin falls on a downbeat,
index 0384a4892b7cfc5acc9e3ae388708e7eb32d67a0..227d9aafac735d93ce96496f3e8c26335d1db1c1 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 571a2a8562c1f7487beb8a87fcd27e6886a3ab88..5807294460da982dc6dc03754dae28a2edbd0c02 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "repeats"
diff --git a/input/lsr/showing-chords-at-changes.ly b/input/lsr/showing-chords-at-changes.ly
new file mode 100644 (file)
index 0000000..3752059
--- /dev/null
@@ -0,0 +1,26 @@
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "chords"
+
+  texidoc = "
+Chord names can be displayed only at the start of lines and when the
+chord changes.
+
+"
+  doctitle = "Showing chords at changes"
+} % begin verbatim
+harmonies = \chordmode {
+  c1:m c:m \break c:m c:m d
+}
+<<
+  \new ChordNames {
+    \set chordChanges = ##t
+    \harmonies
+  }
+  \new Staff {
+    \relative c' { \harmonies }
+  }
+>>
diff --git a/input/lsr/simple-lead-sheet.ly b/input/lsr/simple-lead-sheet.ly
new file mode 100644 (file)
index 0000000..fdb0e31
--- /dev/null
@@ -0,0 +1,21 @@
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "chords"
+
+  texidoc = "
+When put together, chord names, a melody, and lyrics form a lead sheet:
+
+"
+  doctitle = "Simple lead sheet"
+} % begin verbatim
+<<
+  \chords { c2 g:sus4 f e }
+  \relative c'' {
+    a4 e c8 e r4
+    b2 c4( d)
+  }
+  \addlyrics { One day this shall be free __ }
+>>
index 42321ef976c0d61535857fe18117093fcef5b6c4..4b323fd3cc535635b5260a9b61b6ace930f5fa04 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, chords, template"
diff --git a/input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly b/input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly
new file mode 100644 (file)
index 0000000..ab5c0d1
--- /dev/null
@@ -0,0 +1,66 @@
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "vocal-music, chords, template"
+
+  texidoc = "
+Here is a simple lead sheet template with melody, lyrics, chords and
+fret diagrams.
+
+"
+  doctitle = "Single staff template with notes, lyrics, chords and frets"
+} % begin verbatim
+% Define the fret diagrams to be used
+cFretDiagram = \markup {
+  \fret-diagram #"5-3-3;4-2-2;3-o;2-1-1;1-o"
+}
+
+gFretDiagram = \markup {
+  \fret-diagram #"6-3-2;5-2-1;4-o;3-o;2-o;1-3-3"
+}
+
+verseI = \lyricmode {
+  \set stanza = #"1."
+  This is the first verse
+}
+
+verseII = \lyricmode {
+  \set stanza = #"2."
+  This is the second verse.
+}
+
+theChords = \new ChordNames {
+  \chordmode {
+    % insert the chords for chordnames here
+    c2 g4 c
+  }
+}
+
+staffMelody = \new Staff  {
+ \context Voice = "voiceMelody" {
+   \key c \major
+   \clef treble
+   \relative c' {
+     % Type notes and fret diagram markups here
+     c4^\cFretDiagram d8 e f4^\gFretDiagram g^\cFretDiagram
+     \bar "|."
+   }
+ }
+}
+
+\score {
+  <<
+    \theChords
+    \staffMelody
+    \new Lyrics = "lyricsI" \lyricmode {
+      \lyricsto "voiceMelody" \verseI
+    }
+    \new Lyrics = "lyricsII" \lyricmode {
+      \lyricsto "voiceMelody" \verseII
+    }
+  >>
+  \layout { }
+  \midi { }
+}
index c266220cb1dcd39b4013fc168b1191fa5e8d6b42..bf3852205820893d8f5304504929d9e6914c2564 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "chords, template"
index 4c0c72487850e53519b1e93acc1988385d007f71..fb959ecdac5f295443d56c9c79f7ac1c827c678a 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, template"
index fdaabce9ebdfae8d98bd987760b513f356fd7f73..2ff4813222492fd159ee7d6fc7074fcbb7af6767 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "template"
index 01a42d3ad35574fdad2f60d6b9b0f344b428c0c3..4041a179f349928db8d5d35a4864fa9f46936db2 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, vocal-music"
index c777c76c2210df0ff48ba5c03298a2c55a856ff6..4317bac90dc109eda3a70f4bdbd97879bf1e10af 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, vocal-music"
index bed61d8a90f67209568d543ed30a09535795827e..4bc85e9b9ba2a293dc64be6f8a82f97ea407c660 100644 (file)
@@ -8,6 +8,7 @@ printing-metronome-and-rehearsal-marks-below-the-staff.ly
 tweaking-clef-properties.ly
 quoting-another-voice.ly
 volta-multi-staff.ly
+bar-counter.ly
 non-traditional-key-signatures.ly
 creating-blank-staves.ly
 adding-ambitus-per-voice.ly
index 29f2c71dcf1a2b7542e830c83df770aeb514f3c9..d0e18bd5d88c6d6393dab363a660178f936e8292 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "unfretted-strings, template"
index 0091bfc2df294d62e1edc6a2e42ada275c918529..32718de9c22dad897f8a81fc1c6b7e05a18ecc5c 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "unfretted-strings, template"
index a4e37c48ef720359f572cfc8b8abaaa3a63d9766..700975c7cd87ff72386aeaca6b3a8a9cf971d305 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index abab3fffc7bc43ed65ae56295107a84e408f022c..1a643dd07d76e99f6000f558be58b82eaa9275c3 100644 (file)
@@ -1,11 +1,11 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "paper-and-layout"
   texidoc = "A table of contents is included using
-@code{\\markuplines \\table-of-contents}.  The TOC items are added with
-the @code{\\tocItem} command."
+@w{@code{\\markuplines \\table-of-contents}}.  The TOC items are
+added with the @code{\\tocItem} command."
   doctitle = "Table of contents"
 } % begin verbatim
 
index 869448422f5991a1bd19b9a55f79b75ccd36fb36..a1604d79feb235dd31afc50dc497d192fca9c930 100644 (file)
@@ -1,5 +1,6 @@
 vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
 single-staff-template-with-notes-and-lyrics.ly
+single-staff-template-with-notes,-lyrics,-chords-and-frets.ly
 single-staff-template-with-only-notes.ly
 piano-template-with-centered-lyrics.ly
 vocal-ensemble-template-with-automatic-piano-reduction.ly
index 44525eec0b1b6eda96195f38d054170af61347c4..a815c6e089a78f6f8e84f5edc88f1225f22f5f25 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms, text"
index 869190be8b20cbdc6cc16435b4d2608f538a45fc..e79f93f666f4a931245224bbdd05c758ffde2f1d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, tweaks-and-overrides"
index 37361f436c7c6ca6ac08188533989d711f138035..efb5932726e03828d0c083d3fc65ea5b32780ba3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "ancient-notation, tweaks-and-overrides"
index b0a42bf21892df0256b65083962bb166f4e8e208..9deef1dc06fd9a8c6548688f6c1582402e1da131 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
 texidoces = "
 Este ejemplo utiliza código de Scheme para forzar las
@@ -99,7 +99,7 @@ naturalizeMusic =
                                        (ly:music?)
                        (naturalize m))
 
-music =  \relative c' { c4 d e g }
+music = \relative c' { c4 d e g }
 
 \score {
   \new Staff {
@@ -108,5 +108,5 @@ music =  \relative c' { c4 d e g }
     \transpose c deses \music
     \naturalizeMusic \transpose c deses \music
   }
-  \layout {}
+  \layout { }
 }
index 8f0e651fa07f32d36b97560989f035ccf8ec1948..5cebde96dfb896d790094f6dbd231201201210e3 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "pitches, staff-notation, tweaks-and-overrides"
index 097eeee195bb87d203d96f743d9bb04e44e61af5..20bcff63c35c3b8bf8a512164328b3c8a3e81053 100644 (file)
@@ -10,6 +10,7 @@ using-the--tweak-command-to-tweak-individual-grobs.ly
 controlling-tuplet-bracket-visibility.ly
 positioning-multi--measure-rests.ly
 changing-the-staff-size.ly
+changing-text-and-spanner-styles-for-text-dynamics.ly
 controlling-the-vertical-ordering-of-scripts.ly
 vertically-aligning-ossias-and-lyrics.ly
 changing-properties-for-individual-grobs.ly
index f1522176a2f74262aafe1df5fad27edde036b72e..bed6e6a6b19bad5902a81195d4939ec16f9a29cb 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "staff-notation, contexts-and-engravers"
index 922d96dcdea5943c270cf6453db267a44f1a19aa..ac1b15b9123e98cd349bd710e90411113e2db3f9 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 65b5c8e48faa2943d29736015dfc2c15f32ad054..f286c4310cb7bef29a8ba24329b6860805bbe2ed 100644 (file)
@@ -1,14 +1,13 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
-\layout { ragged-right= ##t }
+\version "2.11.48"
 \header {
   lsrtags = "tweaks-and-overrides"
   texidoc = "
 With the @code{\\tweak} command, every grob can be tuned directly.  Here
 are some examples of available tweaks.
 "
-  doctitle = "Using the @code{\tweak} command to tweak individual grobs"
+  doctitle = "Using the @code{\\tweak} command to tweak individual grobs"
 } % begin verbatim
 
 \relative c' {
index ba037df42b65d92e49e98cae30e0c1e03d5f00e0..98836130ba80c9cc87cdc62c879ceaa6dbd9220d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "rhythms"
index 479bbe5ed884d9695cc801b0ef303e01e23b304a..35198baae5c852a0aae73e9a3821fff2c973f583 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 %% Edit this file using a Unicode aware editor, such as GVIM, GEDIT, Emacs
 
index 84925b1e39e71e7150849f90a1092f5ff8466302..558d484027a9289c35de244741392195f1d845a5 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "expressive-marks"
index 6a6164951c862b7b5cb91e148f27fda3d196aed8..db2261c836a1afc4ad5814a62228b135872bef08 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, tweaks-and-overrides, spacing"
index 63b83a8c2dd59d6e5e02a97c0efe6823ef2f4436..a4f4fab4f475ecfe4de66f0386aa32a0ecad1d6d 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "tweaks-and-overrides, spacing"
index 1371cf4459c54a63722a6df4492f34576498aeed..083ccd08dbee146a765f273773bf851e3b5f3674 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, keyboards, template"
index 366a74507d0b8c0cfee2ea75fd10f9200a34c43f..8dd8df2b3d8cccd3aa410e999ceb55d8ed0662f6 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "text, vocal-music, contexts-and-engravers, template"
index 4703bd637e660995aab604d9ea6c783d618db160..6cdc68c61413cd9c4831ed836aff05273e62d552 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 
 \header {
   lsrtags = "vocal-music, template"
index adf492d73c0a69e0783ee1fceb4fa1fc8d99c71f..14754e6d084ccea5e014e488fbf8d4a81567853c 100644 (file)
@@ -1,6 +1,7 @@
 vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly
 single-staff-template-with-notes-and-lyrics.ly
 adding-ambitus-per-voice.ly
+single-staff-template-with-notes,-lyrics,-chords-and-frets.ly
 skips-in-lyric-mode-2.ly
 skips-in-lyric-mode.ly
 vocal-ensemble-template-with-automatic-piano-reduction.ly
index 1c714a20088f227dc7161ce8507091d96362e562..f8e04795d6b3d869c84520fb413c4f421a8771b3 100644 (file)
@@ -1,7 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
-\layout { ragged-right= ##t }
+\version "2.11.48"
 \header {
   lsrtags = "repeats,staff-notation,chords"
   texidoc = "By adding the @code{Volta_engraver} to the relevant
@@ -9,23 +8,21 @@ staff, volte can be put under chords."
   doctitle = "Volta under chords"
 } % begin verbatim
 
-% chords above volta
 \score {
   <<
     \chords {
       c1
-       c
-  }
-  \new Staff \with { \consists Volta_engraver } {
-     \repeat volta 2 { c'1 }
-     \alternative { c' }
-     }
+      c1
+    }
+    \new Staff \with { \consists "Volta_engraver" } {
+      \repeat volta 2 { c'1 }
+      \alternative { c' }
+    }
   >>
   \layout {
     \context {
       \Score
-      \remove Volta_engraver
+      \remove "Volta_engraver"
     }
   }
 }
-
index 2f89351c259b6d307cb695017f8e284024b21838..270704d54e92876a289b943f1a25d641ca0b23f4 100644 (file)
@@ -1,6 +1,6 @@
 %% Do not edit this file; it is auto-generated from input/new
 %% This file is in the public domain.
-\version "2.11.46"
+\version "2.11.48"
 \header {
   lsrtags = "repeats,staff-notation,fretted-strings"
   texidoc = "By adding the @code{Volta_engraver} to the relevant
@@ -10,12 +10,13 @@ one in a score."
 } % begin verbatim
 
 voltaMusic = \relative c'' {
-  \repeat volta 2
+  \repeat volta 2 {
     c1
-    \alternative {
+  }
+  \alternative {
     d1
     e
-   }
+  }
 }
 
 <<
diff --git a/input/lsr/volta-text-markup-using-repeatcommands.ly b/input/lsr/volta-text-markup-using-repeatcommands.ly
new file mode 100644 (file)
index 0000000..32de134
--- /dev/null
@@ -0,0 +1,29 @@
+%% Do not edit this file; it is auto-generated from input/new
+%% This file is in the public domain.
+\version "2.11.48"
+
+\header {
+  lsrtags = "repeats"
+  texidoc = "Though volte are best specified using
+@code{\\repeat volta}, the context property @code{repeatCommands}
+must be used in cases where the volta text needs more advanced
+formatting with @code{\\markup}.
+
+Since @code{repeatCommands} takes a list, the simplest method of
+including markup is to use an identifier for the text and embed
+it in the command list using the Scheme syntax
+@w{@code{#(list (list 'volta textIdentifier))}}. Start- and end-repeat commands
+can be added as separate list elements:"
+doctitle = "Volta text markup using @code{\\repeatCommands}"
+} % begin verbatim
+
+voltaAdLib = \markup { 1. 2. 3... \text \italic { ad lib. } }
+
+\relative c'' {
+  c1
+  \set Score.repeatCommands = #(list (list 'volta voltaAdLib) 'start-repeat)
+  c4 b d e
+  \set Score.repeatCommands = #'((volta #f) (volta "4.") end-repeat)
+  f1
+  \set Score.repeatCommands = #'((volta #f))
+}
index 4e4d9c3a86c3fd436e6482f83f7bba7bb0868293..de1a6ace439e5a3810f01be185de10ff034fa43d 100644 (file)
@@ -3,7 +3,7 @@
   lsrtags = "pitches"
   texidoc = "Makam is a type of melody from Turkey using 1/9th-tone
 microtonal alterations.  Consult the initialization file
-@code{makam-init.ly) (see the `Learning Manual @version{},
+@code{makam-init.ly} (see the `Learning Manual @version{},
 4.6.3 Other sources of information' for the location of this file)
 for details of pitch names and alterations."
   doctitle = "Makam"
index 9f5602fef096ccde37a9a10fedb01aeb5116c0ab..99115e9a52e10f0329578c24044ba65e22e3279f 100644 (file)
@@ -22,6 +22,7 @@ public:
 
 protected:
   DECLARE_TRANSLATOR_LISTENER (bend_after);
+  void finalize ();
   void process_music ();
   void stop_translation_timestep ();
   void start_translation_timestep ();
@@ -31,9 +32,19 @@ private:
   Moment stop_moment_;
   Stream_event *fall_event_;
   Spanner *fall_;
+  Spanner *last_fall_;
   Grob *note_head_;
 };
 
+void
+Bend_engraver::finalize ()
+{
+  // We shouldn't end a spanner on the last musical column of a piece because then
+  // it would extend past the last breakable column of the piece.
+  if (last_fall_)
+    last_fall_->set_bound (RIGHT, unsmob_grob (get_property ("currentCommandColumn")));
+}
+
 void
 Bend_engraver::stop_fall ()
 {
@@ -43,6 +54,7 @@ Bend_engraver::stop_fall ()
   fall_->set_bound (RIGHT, unsmob_grob (bar
                                        ? get_property ("currentCommandColumn")
                                        : get_property ("currentMusicalColumn")));
+  last_fall_ = fall_;
   fall_ = 0;
   note_head_ = 0;
   fall_event_ = 0;
@@ -61,6 +73,8 @@ Bend_engraver::stop_translation_timestep ()
 void
 Bend_engraver::start_translation_timestep ()
 {
+  last_fall_ = 0;
+
   if (fall_ && now_mom ().main_part_ >= stop_moment_.main_part_)
     {
       stop_fall ();
@@ -86,6 +100,7 @@ Bend_engraver::acknowledge_note_head (Grob_info info)
 Bend_engraver::Bend_engraver ()
 {
   fall_ = 0;
+  last_fall_ = 0;
   note_head_ = 0;
   fall_event_ = 0;
 }
index 2d7cace9bf9ba3b04b2ebe537529fd6f12a5f387..a810159aa326d601cb75f950f9f7e4e3c0e0a3a3 100644 (file)
@@ -203,7 +203,7 @@ Context_def::get_default_child (SCM user_mod) const
    - the last element in the list defines a context with the given name
 
   The ADDITIONAL_ACCEPTS parameter is a list of additional contexts that this
-  specific output def (but not and of the child output defs) should accept.
+  specific context def (but not any of the child context defs) should accept.
 */
 vector<Context_def*>
 Context_def::path_to_acceptable_context (SCM type_sym, Output_def *odef, SCM additional_accepts) const
index 5234d1113fccc00ccd1b9421697609bb72ea5f13..492c846629348a4bbc90d9af47afa558ea342867 100644 (file)
 #include "spanner.hh"
 #include "warn.hh"
 
-
+/*
+  like execute_general_pushpop_property(), but typecheck
+  grob_property_path and context_property.
+*/
 void
 general_pushpop_property (Context *context,
                          SCM context_property,
                          SCM grob_property_path,
-                         SCM new_value                   
-                         )
+                         SCM new_value)
 {
   if (!scm_is_symbol (context_property)
       || !scm_is_symbol (scm_car (grob_property_path)))
@@ -32,13 +34,12 @@ general_pushpop_property (Context *context,
        assert (false);
     }
 
-  execute_general_pushpop_property (context, context_property,
+  sloppy_general_pushpop_property (context, context_property,
                                    grob_property_path, new_value);
 }
 
 
 /*
-  
   Grob descriptions (ie. alists with layout properties) are
   represented as a (ALIST . BASED-ON) pair, where BASED-ON is the
   alist defined in a parent context. BASED-ON should always be a tail
@@ -49,8 +50,6 @@ general_pushpop_property (Context *context,
   indicates nested alists, eg. '(beamed-stem-lengths details)
   
 */
-
-
 void
 execute_override_property (Context *context,
                           SCM context_property,
@@ -92,10 +91,10 @@ execute_override_property (Context *context,
                                         new_value);
     }
 
-  // it's tempting to replace the head of the list if it's the same
-  // property. However, we have to keep this info around, in case we have to
-  // \revert back to it.
-  
+  /* it's tempting to replace the head of the list if it's the same
+   property. However, we have to keep this info around, in case we have to
+   \revert back to it.
+  */
   target_alist = scm_acons (symbol, new_value, target_alist);
 
   bool ok = true;
@@ -115,37 +114,35 @@ execute_override_property (Context *context,
     }
 }
 
+/*
+  do a pop (indicated by new_value==SCM_UNDEFINED) or push
+ */
 void
-execute_revert_property (Context *context,
-                        SCM context_property,
-                        SCM grob_property_path);
-
-void
-execute_general_pushpop_property (Context *context,
-                                 SCM context_property,
-                                 SCM grob_property_path,
-                                 SCM new_value
-                                 )
+sloppy_general_pushpop_property (Context *context,
+                                SCM context_property,
+                                SCM grob_property_path,
+                                SCM new_value)
 {
-  if (new_value != SCM_UNDEFINED)
+  if (new_value == SCM_UNDEFINED)
+    execute_revert_property (context, context_property,
+                            grob_property_path);
+  else
     execute_override_property (context, context_property,
                               grob_property_path,
                               new_value);
-  else
-    execute_revert_property (context, context_property,
-                            grob_property_path);
 }
 
+/*
+  Revert the property given by property_path.
+*/
 void
 execute_revert_property (Context *context,
                         SCM context_property,
                         SCM grob_property_path)
 {
-  /*
-    revert.
-  */
   SCM current_context_val = SCM_EOL;
-  if (context->where_defined (context_property, &current_context_val) == context)
+  if (context->where_defined (context_property, &current_context_val)
+      == context)
     {
       SCM current_alist = scm_car (current_context_val);
       SCM daddy = scm_cdr (current_context_val);
@@ -158,11 +155,12 @@ execute_revert_property (Context *context,
        }
       
       SCM symbol = scm_car (grob_property_path);
-
       if (scm_is_pair (scm_cdr (grob_property_path)))
        {
          SCM current_sub_alist = ly_assoc_get (symbol, current_alist, SCM_EOL);
-         SCM new_val = nested_property_revert_alist (current_sub_alist, scm_cdr (grob_property_path));
+         SCM new_val
+           = nested_property_revert_alist (current_sub_alist,
+                                           scm_cdr (grob_property_path));
            
          if (scm_is_pair (current_alist)
              && scm_caar (current_alist) == symbol
@@ -179,17 +177,20 @@ execute_revert_property (Context *context,
          if (new_alist == daddy)
            context->unset_property (context_property);
          else
-           context->set_property (context_property, scm_cons (new_alist, daddy));
+           context->set_property (context_property,
+                                  scm_cons (new_alist, daddy));
        }
     }
 }
-
+/*
+  Convenience: a push/pop grob property using a single grob_property
+  as argument.
+*/
 void
 execute_pushpop_property (Context *context,
                          SCM context_property,
                          SCM grob_property,
-                         SCM new_value
-                         )
+                         SCM new_value)
 {
   general_pushpop_property (context, context_property,
                            scm_list_1 (grob_property),
@@ -214,14 +215,14 @@ apply_property_operations (Context *tg, SCM pre_init_ops)
          SCM context_prop = scm_car (entry);
          SCM val = scm_cadr (entry);
          SCM grob_prop_path = scm_cddr (entry);
-         execute_general_pushpop_property (tg, context_prop, grob_prop_path, val);
+         sloppy_general_pushpop_property (tg, context_prop, grob_prop_path, val);
        }
       else if (type == ly_symbol2scm ("pop"))
        {
          SCM context_prop = scm_car (entry);
          SCM val = SCM_UNDEFINED;
          SCM grob_prop_path = scm_cdr (entry);
-         execute_general_pushpop_property (tg, context_prop, grob_prop_path, val);
+         sloppy_general_pushpop_property (tg, context_prop, grob_prop_path, val);
        }
       else if (type == ly_symbol2scm ("assign"))
        tg->set_property (scm_car (entry), scm_cadr (entry));
index dc6216403fe3caaf42aaf8f1dac54272627293d5..ba3809e69a18d20f4c697562e54d84177bfa616a 100644 (file)
@@ -162,9 +162,6 @@ Context::find_create_context (SCM n, string id, SCM operations)
       return tg;
     }
 
-  /*
-    TODO: use accepts_list_.
-  */
   vector<Context_def*> path = path_to_acceptable_context (n);
 
   if (path.size ())
@@ -309,8 +306,8 @@ Context::create_context_from_event (SCM sev)
 vector<Context_def*>
 Context::path_to_acceptable_context (SCM name) const
 {
-  // definition_mods_ is a list of (symbol string), but the Context_def expects
-  // to see a list of (symbol symbol).
+  // The 'accepts elements in definition_mods_ is a list of ('accepts string),
+  // but the Context_def expects to see elements of the form ('accepts symbol).
   SCM accepts = SCM_EOL;
   for (SCM s = scm_reverse (definition_mods_); scm_is_pair (s); s = scm_cdr (s))
     if (scm_caar (s) == ly_symbol2scm ("accepts"))
index eaa025dd174517e2b9ed8d30162ee6ee0aaa3f02..54358b8fe5c18453129bf11f0d30c9b1c64648dd 100644 (file)
@@ -20,10 +20,10 @@ Engraver_group::override (SCM sev)
 {
   Stream_event *ev = unsmob_stream_event (sev);
   
-  execute_general_pushpop_property (context (),
-                                   ev->get_property ("symbol"),
-                                   ev->get_property ("property-path"),
-                                   ev->get_property ("value"));
+  sloppy_general_pushpop_property (context (),
+                                  ev->get_property ("symbol"),
+                                  ev->get_property ("property-path"),
+                                  ev->get_property ("value"));
 }
 
 IMPLEMENT_LISTENER (Engraver_group, revert);
@@ -32,10 +32,10 @@ Engraver_group::revert (SCM sev)
 {
   Stream_event *ev = unsmob_stream_event (sev);
   
-  execute_general_pushpop_property (context (),
-                                   ev->get_property ("symbol"),
-                                   ev->get_property ("property-path"),
-                                   SCM_UNDEFINED);
+  sloppy_general_pushpop_property (context (),
+                                  ev->get_property ("symbol"),
+                                  ev->get_property ("property-path"),
+                                  SCM_UNDEFINED);
 }
 
 void
index 648a52ae3b7f089a2f9d6248ca1c1507f7660464..33e8f8c9a03e6257dfc9326bf856c436c8423a67 100644 (file)
@@ -122,8 +122,11 @@ public:
 */
 
 void apply_property_operations (Context *tg, SCM pre_init_ops);
+void execute_revert_property (Context *context,
+                             SCM context_property,
+                             SCM grob_property_path);
 void execute_pushpop_property (Context *trg, SCM prop, SCM eltprop, SCM val);
-void execute_general_pushpop_property (Context *context,
+void sloppy_general_pushpop_property (Context *context,
                                       SCM context_property, SCM grob_property_path, SCM val);
 SCM updated_grob_properties (Context *tg, SCM sym);
 Context *find_context_below (Context *where,
index 6cb7f5e253f4fb26483f89b7492bb1bf3a714aa4..e0f5dda1a2d93a34a3a06b4834b60954a6fa4dbb 100644 (file)
@@ -172,7 +172,8 @@ char const *LILYPOND_DATADIR = PACKAGE_DATADIR "/" TOPLEVEL_VERSION;
    unpredictable places. To get around this, we tell the x87 FPU to use only
    double precision. Note that this is not needed for x86_64 because that uses
    the SSE unit by default instead of the x87 FPU. */
-#if defined(__x86__) || defined(__i386__)
+#if ((defined(__x86__) || defined(__i386__)) \
+  && defined(HAVE_FPU_CONTROL_H) && (HAVE_FPU_CONTROL_H == 1))
 
 #include <fpu_control.h>
 static void configure_fpu() {
index c1174b174d5a1bb156e59373b351e539090c7266..fb62c7d80ad08196313ad8c2a4d6509369037524 100644 (file)
@@ -1,10 +1,12 @@
 #include "context.hh"
 #include "grob.hh"
 
+
+/*
+  Drop symbol from the list alist..alist_end.
+ */
 SCM
-evict_from_alist (SCM symbol,
-                 SCM alist,
-                 SCM alist_end)
+evict_from_alist (SCM symbol, SCM alist, SCM alist_end)
 {
   SCM new_alist = SCM_EOL;
   SCM *tail = &new_alist;
@@ -40,28 +42,64 @@ nested_property_alist (SCM alist, SCM prop_path, SCM value)
     }
   else
     {
-       new_value = value;
+      new_value = value;
     }
 
   return scm_acons (scm_car (prop_path), new_value, alist);
 }
 
+/*
+  Recursively purge alist of prop_path:
+
+  revert ((sym, val) : L, [sym]) = L
+  revert ((sym, val) : L, sym : props) = 
+    (sym, revert (val, rest-props)) ++ L
+  revert ((sym, val) : L, p ++ rest-props) =
+    (sym, val) : revert (L, p ++ rest-props)
+
+ */
 SCM 
 nested_property_revert_alist (SCM alist, SCM prop_path)
 {
-  SCM new_sub_alist = SCM_EOL;
-  SCM sym = scm_car (prop_path);
-  if (scm_is_pair (scm_cdr (prop_path)))
-    {
-      SCM sub_alist = ly_assoc_get (sym, alist, SCM_EOL);
-      new_sub_alist = nested_property_revert_alist (sub_alist, scm_cdr (prop_path));
-    }
-  else
+  assert(scm_is_pair (prop_path));
+  
+  SCM wanted_sym = scm_car (prop_path);
+
+  SCM new_list = SCM_EOL;
+  SCM *tail = &new_list;
+  for (SCM s = alist; scm_is_pair (s); s = scm_cdr (s))
     {
-      new_sub_alist = evict_from_alist (sym, alist, SCM_EOL);
+      SCM sub_sym = scm_caar (s);
+      SCM old_val = scm_cdar (s);
+
+      if (sub_sym == wanted_sym)
+       {
+         if (scm_is_pair (scm_cdr (prop_path)))
+           {
+             SCM new_val = nested_property_revert_alist (old_val, scm_cdr (prop_path));
+
+             /* nothing changed: drop newly constructed list. */
+             if (old_val == new_val)
+               return alist;
+             
+             *tail = scm_acons (sub_sym, new_val, SCM_EOL);
+             tail = SCM_CDRLOC(*tail);
+           }
+         else
+           {
+             /* old value is dropped. */
+           }
+         
+         *tail = scm_cdr (s);
+         return new_list;
+       }
+
+      *tail = scm_acons (sub_sym, old_val, SCM_EOL);
+      tail = SCM_CDRLOC (*tail);
     }
 
-  return scm_acons (sym, new_sub_alist, alist);
+  /* Wanted symbol not found: drop newly constructed list. */
+  return alist;
 }
 
 
@@ -72,7 +110,6 @@ set_nested_property (Grob *me, SCM big_to_small, SCM value)
 
   alist = nested_property_alist (alist, scm_cdr (big_to_small), value);
   
-  me->set_property (scm_car (big_to_small),
-                   alist);
+  me->set_property (scm_car (big_to_small), alist);
 }
 
index 42c54a65ff3863bf3d9635b9a21b3956f46698ed..9c8e464d32856c65129928bc11e4208216efb0a8 100644 (file)
@@ -336,7 +336,7 @@ expand_environment_variables (string orig)
   return out;
 }
 
-
+// Ugh - very inefficient, but safer than fgets.
 static string
 read_line (FILE *f)
 {
@@ -344,7 +344,7 @@ read_line (FILE *f)
   
   int c = 0;
   while ((c = fgetc (f)) != EOF && c != '\n')
-    out += c;
+    out += char(c);
 
   return out;
 }
index e63b96019ae4adadf54fc6812d53be95c9a139ff..b517b6ec9f69f323dfa97fdea5a52f1781187b92 100644 (file)
@@ -313,7 +313,7 @@ Stem::calc_length (SCM smob)
 
   Real ss = Staff_symbol_referencer::staff_space (me);
   Real length = 7;
-  SCM s = scm_cdr (scm_assq (ly_symbol2scm ("lengths"), details));
+  SCM s = ly_assoc_get (ly_symbol2scm ("lengths"), details, SCM_EOL);
   if (scm_is_pair (s))
     length = 2 * scm_to_double (robust_list_ref (durlog - 2, s));
 
@@ -324,7 +324,7 @@ Stem::calc_length (SCM smob)
   Interval hp = head_positions (me);
   if (dir && dir * hp[dir] >= 0)
     {
-      SCM sshorten = scm_cdr (scm_assq (ly_symbol2scm ("stem-shorten"), details));
+      SCM sshorten = ly_assoc_get (ly_symbol2scm ("stem-shorten"), details, SCM_EOL);
       SCM scm_shorten = scm_is_pair (sshorten)
        ? robust_list_ref (max (duration_log (me) - 2, 0), sshorten) : SCM_EOL;
       Real shorten = 2* robust_scm2double (scm_shorten, 0);
@@ -868,7 +868,7 @@ Stem::calc_stem_info (SCM smob)
 
   /* Simple standard stem length */
   SCM details = me->get_property ("details");
-  SCM lengths = scm_cdr (scm_assq (ly_symbol2scm ("beamed-lengths"), details));
+  SCM lengths = ly_assoc_get (ly_symbol2scm ("beamed-lengths"), details, SCM_EOL);
   
   Real ideal_length
     = scm_to_double (robust_list_ref (beam_count - 1, lengths))
@@ -880,7 +880,7 @@ Stem::calc_stem_info (SCM smob)
     - 0.5 * beam_thickness;
 
   /* Condition: sane minimum free stem length (chord to beams) */
-  lengths = scm_cdr (scm_assq (ly_symbol2scm ("beamed-minimum-free-lengths"), details));
+  lengths = ly_assoc_get (ly_symbol2scm ("beamed-minimum-free-lengths"), details, SCM_EOL);
 
   Real ideal_minimum_free
     = scm_to_double (robust_list_ref (beam_count - 1, lengths))
@@ -952,8 +952,8 @@ Stem::calc_stem_info (SCM smob)
 
   ideal_y -= robust_scm2double (beam->get_property ("shorten"), 0);
 
-  SCM bemfl = scm_cdr (scm_assq (ly_symbol2scm ("beamed-extreme-minimum-free-lengths"),
-                                details));
+  SCM bemfl = ly_assoc_get (ly_symbol2scm ("beamed-extreme-minimum-free-lengths"),
+                           details, SCM_EOL);
   
   Real minimum_free
     = scm_to_double (robust_list_ref (beam_count - 1, bemfl))
index e75c1b4042653dca5d64662a3c5ef88f72c3a15d..bb45f4acaae8a16d5d4cef0f920e3c49c0408295 100644 (file)
     (TabNoteHead
      . (
        (stencil . ,ly:text-interface::print)
+       (duration-log . ,note-head::calc-duration-log)
        (Y-offset . ,ly:staff-symbol-referencer::callback)
        (X-offset . ,ly:self-alignment-interface::x-aligned-on-self)
        (direction . ,CENTER)
diff --git a/stepmake/stepmake/debian-rules.make b/stepmake/stepmake/debian-rules.make
deleted file mode 100644 (file)
index 11638b9..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-$(outdir)/%: %
-       rm -f $@
-       ln $< $@
-
-$(outdir)/%: $(doc-dir)/%.in
-       rm -f $@
-       cat $< | sed 's%^% %' > $@
diff --git a/stepmake/stepmake/debian-targets.make b/stepmake/stepmake/debian-targets.make
deleted file mode 100644 (file)
index 73d27e6..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-
-default: $(OUTCONF_FILES)
-
-
-# local-dist: default
diff --git a/stepmake/stepmake/debian-vars.make b/stepmake/stepmake/debian-vars.make
deleted file mode 100644 (file)
index e032d7e..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# empty
-
diff --git a/stepmake/stepmake/intlrules.make b/stepmake/stepmake/intlrules.make
deleted file mode 100644 (file)
index 8a44f88..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-
-LIBINTL=$(outdir)/libintl.a
-check-lib-intl:
-       $(MAKE) -C $(depth)/intl lib
-
-include $(stepdir)/c.make
-
diff --git a/stepmake/stepmake/pod-rules.make b/stepmake/stepmake/pod-rules.make
deleted file mode 100644 (file)
index 8842736..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-
-.SUFFIXES: .1 .5 .html .pod .txt
-
-pod2html=pod2html
-pod2groff=pod2man --center="$(PACKAGE_NAME) documentation" --section="0"\
-       --release="$(PACKAGE_NAME) $(VERSION)" $< > $@
-
-
-# perl 5.003/4
-POD2HTML_5003=$(POD2HTML) $< ; mv $(notdir $@) $(outdir)/ || true
-# urg, broken.  if you must have perl 5004, better install pod2html from 5003
-POD2HTML_5004=$(POD2HTML) --noindex --infile $< --outfile=$@;  sh $(depth)/bin/add-URLs.sh $@
-
-do_pod2html=$($(POD2HTML_VERSION))
-
-$(outdir)/%.html: $(outdir)/%.pod
-       $(do_pod2html)
-
-$(outdir)/%.pod: %.pod
-       cp $< $@
-
-$(outdir)/%.5: %.pod
-       $(pod2groff)
-
-$(outdir)/%.1: %.pod
-       $(pod2groff)
-
-$(outdir)/%.1: $(outdir)/%.pod
-       -$(pod2groff)
-
diff --git a/stepmake/stepmake/pod-vars.make b/stepmake/stepmake/pod-vars.make
deleted file mode 100644 (file)
index af195dc..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-POD_FILES := $(call src-wildcard,*.pod)
-
-OUTPOD_FILES = $(addprefix $(outdir)/,$(POD_FILES))