From ecaf73bb03e974018c17e3051b3ac3a805dd1653 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Wed, 3 Mar 2004 20:25:39 +0000
Subject: [PATCH] *** empty log message ***

---
 ChangeLog                                     |  16 ++-
 Documentation/user/refman.itely               |   8 +-
 input/example-1.ly                            |   2 +-
 input/example-2.ly                            |   2 +-
 input/example-3.ly                            |   2 +-
 input/les-nereides.ly                         |   2 +-
 input/mutopia-header.ly                       |   2 +-
 .../E.Satie/petite-ouverture-a-danser.ly      |   2 +-
 input/mutopia/F.Schubert/morgenlied.ly        |   2 +-
 input/mutopia/F.Schubert/standchen.ly         |   2 +-
 .../J.S.Bach/baerenreiter-sarabande.ly        |   2 +-
 input/mutopia/J.S.Bach/bwv940.ly              |   2 +-
 input/mutopia/J.S.Bach/wtk1-fugue2.ly         |   2 +-
 input/mutopia/W.A.Mozart/mozart-hrn-3.ly      |   2 +-
 .../mutopia/W.A.Mozart/mozart-hrn3-allegro.ly |   2 +-
 input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly  |   2 +-
 .../mutopia/W.A.Mozart/mozart-hrn3-romanze.ly |   2 +-
 input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly |   2 +-
 input/no-notation/bar-check.ly                |   2 +-
 input/no-notation/beam-warn.ly                |   2 +-
 input/no-notation/denneboom.ly                |   2 +-
 input/no-notation/die-staff.ly                |   2 +-
 input/no-notation/dos-guile.ly                |   2 +-
 input/no-notation/dos-ps.ly                   |   2 +-
 input/no-notation/dos-tex.ly                  |   2 +-
 input/no-notation/midi-grace.ly               |   2 +-
 input/no-notation/midi-lyric-barcheck.ly      |   2 +-
 input/no-notation/midi-transposing.ly         |   2 +-
 input/no-notation/midi-tuplets.ly             |   2 +-
 input/no-notation/midi-volume-equaliser.ly    |   2 +-
 input/no-notation/parse.ly                    |   2 +-
 input/no-notation/parse2.ly                   |   2 +-
 input/no-notation/parse3.ly                   |   2 +-
 input/no-notation/parse4.ly                   |   2 +-
 input/no-notation/parse5.ly                   |   2 +-
 input/no-notation/recording.ly                |   2 +-
 input/no-notation/safe-guile.ly               |   2 +-
 input/no-notation/safe-include.ly             |   2 +-
 input/no-notation/safe-ps.ly                  |   2 +-
 input/no-notation/safe-tex.ly                 |   2 +-
 input/no-notation/textcresc.ly                |   2 +-
 input/puer-fragment.ly                        |   2 +-
 input/regression/+.ly                         |   2 +-
 input/regression/accidental-cautionary.ly     |   2 +-
 input/regression/accidental-double.ly         |   2 +-
 input/regression/accidental-ledger.ly         |   2 +-
 input/regression/accidental-octave.ly         |   2 +-
 input/regression/accidental-placement.ly      |   2 +-
 input/regression/accidental-quarter.ly        |   2 +-
 input/regression/accidental-single-double.ly  |   2 +-
 input/regression/accidental-tie.ly            |   2 +-
 .../accidental-unbroken-tie-spacing.ly        |   2 +-
 input/regression/accidental-voice.ly          |   2 +-
 input/regression/accidental.ly                |   2 +-
 input/regression/accidentals.ly               |   2 +-
 input/regression/ambitus.ly                   |   2 +-
 input/regression/apply-context.ly             |   2 +-
 input/regression/arpeggio-collision.ly        |   2 +-
 input/regression/arpeggio.ly                  |   2 +-
 input/regression/auto-beam-bar.ly             |   2 +-
 input/regression/auto-beam-no-beam.ly         |   2 +-
 input/regression/auto-beam-triplet.ly         |   2 +-
 input/regression/auto-beam-tuplets.ly         |   2 +-
 input/regression/auto-beam.ly                 |   2 +-
 input/regression/auto-change.ly               |   2 +-
 input/regression/balloon.ly                   |   2 +-
 input/regression/bar-number.ly                |   2 +-
 input/regression/bar-scripts.ly               |   2 +-
 input/regression/beam-auto-knee.ly            |   2 +-
 input/regression/beam-break.ly                |   2 +-
 input/regression/beam-center-slope.ly         |   2 +-
 input/regression/beam-concave.ly              |   2 +-
 .../regression/beam-cross-staff-auto-knee.ly  |   2 +-
 input/regression/beam-cross-staff-slope.ly    |   2 +-
 input/regression/beam-cross-staff.ly          |   2 +-
 input/regression/beam-damp.ly                 |   2 +-
 input/regression/beam-default-lengths.ly      |   2 +-
 input/regression/beam-extreme.ly              |   2 +-
 input/regression/beam-french.ly               |   2 +-
 input/regression/beam-funky-beamlet.ly        |   2 +-
 input/regression/beam-funky.ly                |   2 +-
 input/regression/beam-knee-symmetry.ly        |   2 +-
 input/regression/beam-length.ly               |   2 +-
 input/regression/beam-manual-beaming.ly       |   2 +-
 input/regression/beam-multiple-cross-staff.ly |   2 +-
 input/regression/beam-over-barline.ly         |   2 +-
 input/regression/beam-position.ly             |   2 +-
 input/regression/beam-postfix-notation.ly     |   2 +-
 input/regression/beam-quanting-32nd.ly        |   2 +-
 input/regression/beam-quanting-horizontal.ly  |   2 +-
 input/regression/beam-quarter.ly              |   2 +-
 input/regression/beam-rest.ly                 |   2 +-
 input/regression/beam-second.ly               |   2 +-
 input/regression/beam-shortened-lengths.ly    |   2 +-
 input/regression/beamed-chord.ly              |   2 +-
 input/regression/beaming-ternary-metrum.ly    |   2 +-
 input/regression/beaming.ly                   |   2 +-
 input/regression/beams.ly                     |   2 +-
 input/regression/between-systems.ly           |   2 +-
 input/regression/break.ly                     |   2 +-
 input/regression/breathing-sign-ancient.ly    |   2 +-
 input/regression/breathing-sign.ly            |   2 +-
 input/regression/chord-changes.ly             |   2 +-
 input/regression/chord-name-entry-11.ly       |   2 +-
 input/regression/chord-name-entry.ly          |   2 +-
 input/regression/chord-name-exceptions.ly     |   2 +-
 input/regression/chord-name-major7.ly         |   2 +-
 input/regression/chord-names-bass.ly          |   2 +-
 input/regression/chord-scripts.ly             |   2 +-
 input/regression/chord-tremolo-short.ly       |   2 +-
 input/regression/chord-tremolo.ly             |   2 +-
 input/regression/chords-funky-ignatzek.ly     |   2 +-
 input/regression/clef-oct.ly                  |   2 +-
 input/regression/clefs.ly                     |   2 +-
 input/regression/cluster.ly                   |   2 +-
 input/regression/collision-2.ly               |   2 +-
 input/regression/collision-dots-invert.ly     |   2 +-
 input/regression/collision-dots-move.ly       |   2 +-
 input/regression/collision-dots.ly            |   2 +-
 input/regression/collision-head-chords.ly     |   2 +-
 input/regression/collision-heads.ly           |   2 +-
 .../collision-merge-differently-dotted.ly     |   2 +-
 input/regression/collision-merge-dots.ly      |   2 +-
 input/regression/collision-mesh.ly            |   2 +-
 input/regression/collisions.ly                |   2 +-
 .../regression/completion-heads-polyphony.ly  |   2 +-
 input/regression/completion-heads.ly          |   2 +-
 input/regression/custos.ly                    |   2 +-
 input/regression/dot-flag-collision.ly        |   2 +-
 input/regression/dots.ly                      |   2 +-
 input/regression/drums.ly                     |   2 +-
 input/regression/dynamics-broken-hairpin.ly   |   2 +-
 input/regression/dynamics-glyphs.ly           |   2 +-
 input/regression/dynamics-line.ly             |   2 +-
 input/regression/dynamics-unbound-hairpin.ly  |   2 +-
 input/regression/easy-notation.ly             |   2 +-
 input/regression/figured-bass.ly              |   2 +-
 input/regression/finger-chords.ly             |   2 +-
 input/regression/fingering.ly                 |   2 +-
 input/regression/follow-voice-break.ly        |   2 +-
 input/regression/font-magnification.ly        |   2 +-
 input/regression/font-name.ly                 |   2 +-
 input/regression/glissando.ly                 |   2 +-
 input/regression/grace-auto-beam.ly           |   2 +-
 input/regression/grace-bar-line.ly            |   2 +-
 input/regression/grace-bar-number.ly          |   2 +-
 input/regression/grace-beam.ly                |   2 +-
 input/regression/grace-end.ly                 |   2 +-
 input/regression/grace-nest.ly                |   2 +-
 input/regression/grace-nest1.ly               |   2 +-
 input/regression/grace-nest2.ly               |   2 +-
 input/regression/grace-nest3.ly               |   2 +-
 input/regression/grace-nest4.ly               |   2 +-
 input/regression/grace-nest5.ly               |   2 +-
 input/regression/grace-part-combine.ly        |   2 +-
 input/regression/grace-staff-length.ly        |   2 +-
 input/regression/grace-start.ly               |   2 +-
 input/regression/grace-stems.ly               |   2 +-
 input/regression/grace-sync.ly                |   2 +-
 input/regression/grace-types.ly               |   2 +-
 input/regression/grace-unfold-repeat.ly       |   2 +-
 input/regression/grace-volta-repeat-2.ly      |   2 +-
 input/regression/grace-volta-repeat.ly        |   2 +-
 input/regression/grace.ly                     |   2 +-
 input/regression/hairpin-dashed.ly            |   2 +-
 input/regression/hairpin-ending.ly            |   2 +-
 input/regression/hara-kiri-pianostaff.ly      |   2 +-
 input/regression/instrument-name-markup.ly    |   2 +-
 input/regression/instrument-name-partial.ly   |   2 +-
 input/regression/instrument-name.ly           |   2 +-
 input/regression/key-clefs.ly                 |   2 +-
 input/regression/key-signature-scordatura.ly  |   2 +-
 input/regression/keys.ly                      |   2 +-
 input/regression/lyric-combine-new.ly         |   2 +-
 input/regression/lyric-combine-polyphonic.ly  |   2 +-
 input/regression/lyric-combine.ly             |   2 +-
 input/regression/lyric-extender-broken.ly     |   2 +-
 input/regression/lyric-extender.ly            |   2 +-
 input/regression/lyric-hyphen-break.ly        |   2 +-
 input/regression/lyric-hyphen.ly              |   2 +-
 input/regression/lyric-phrasing.ly            |   2 +-
 input/regression/lyrics-bar.ly                |   2 +-
 input/regression/lyrics-melisma-beam.ly       |   2 +-
 input/regression/markup-note.ly               |   2 +-
 input/regression/markup-stack.ly              |   2 +-
 input/regression/markup-user.ly               |   2 +-
 input/regression/measure-grouping.ly          |   2 +-
 input/regression/mensural.ly                  |   2 +-
 input/regression/metronome-marking.ly         |   2 +-
 input/regression/mm-rests2.ly                 |   2 +-
 input/regression/molecule-hacking.ly          |   2 +-
 input/regression/multi-measure-rest-center.ly |   2 +-
 input/regression/multi-measure-rest-grace.ly  |   2 +-
 .../multi-measure-rest-instr-name.ly          |   2 +-
 .../multi-measure-rest-multi-staff-center.ly  |   2 +-
 .../regression/multi-measure-rest-spacing.ly  |   2 +-
 input/regression/multi-measure-rest-text.ly   |   4 +-
 input/regression/multi-measure-rest.ly        |   2 +-
 input/regression/music-map.ly                 |   2 +-
 input/regression/new-markup-scheme.ly         |   4 +-
 input/regression/new-markup-syntax.ly         |   2 +-
 input/regression/non-empty-text.ly            |   2 +-
 input/regression/note-group-bracket.ly        |   2 +-
 input/regression/note-head-chord.ly           |   2 +-
 input/regression/note-head-harmonic.ly        |   2 +-
 input/regression/note-head-style.ly           |   2 +-
 input/regression/note-line.ly                 |   2 +-
 input/regression/number-staff-lines.ly        |   2 +-
 input/regression/ottava-broken.ly             |   2 +-
 input/regression/ottava.ly                    |   2 +-
 input/regression/part-combine-a2.ly           |   2 +-
 input/regression/part-combine-global.ly       |   2 +-
 input/regression/part-combine-solo-global.ly  |   2 +-
 input/regression/part-combine-solo.ly         |   2 +-
 input/regression/part-combine-text.ly         |   2 +-
 input/regression/part-combine.ly              |   2 +-
 input/regression/pedal-bracket.ly             |   2 +-
 input/regression/pedal-ped.ly                 |   2 +-
 input/regression/phrasing-slur.ly             |   2 +-
 input/regression/prefatory-empty-spacing.ly   |   2 +-
 input/regression/prefatory-spacing-matter.ly  |   2 +-
 input/regression/property-once.ly             |   2 +-
 input/regression/quote-transposition.ly       |   2 +-
 input/regression/quote.ly                     |   2 +-
 input/regression/rehearsal-mark-letter.ly     |   2 +-
 input/regression/rehearsal-mark-number.ly     |   2 +-
 input/regression/repeat-fold.ly               |   2 +-
 input/regression/repeat-line-break.ly         |   2 +-
 input/regression/repeat-percent-skipbars.ly   |   2 +-
 input/regression/repeat-percent.ly            |   2 +-
 input/regression/repeat-slash.ly              |   2 +-
 input/regression/repeat-unfold-all.ly         |   2 +-
 input/regression/repeat-unfold.ly             |   2 +-
 .../repeat-volta-skip-alternatives.ly         |   2 +-
 input/regression/repeat-volta.ly              |   2 +-
 input/regression/rest-collision-beam.ly       |   2 +-
 input/regression/rest-collision.ly            |   2 +-
 input/regression/rest-ledger.ly               |   2 +-
 input/regression/rest-pitch.ly                |   2 +-
 input/regression/rest-polyphonic.ly           |   2 +-
 input/regression/rest.ly                      |   2 +-
 input/regression/rhythmic-staff.ly            |   2 +-
 input/regression/script-collision.ly          |   2 +-
 input/regression/script-stack-order.ly        |   2 +-
 input/regression/script-stacked.ly            |   2 +-
 input/regression/size11.ly                    |   2 +-
 input/regression/size13.ly                    |   2 +-
 input/regression/size16.ly                    |   2 +-
 input/regression/size20.ly                    |   2 +-
 input/regression/size23.ly                    |   2 +-
 input/regression/size26.ly                    |   2 +-
 input/regression/slur-area.ly                 |   2 +-
 input/regression/slur-attachment.ly           |   2 +-
 input/regression/slur-broken-trend.ly         |   2 +-
 input/regression/slur-cross-staff.ly          |   2 +-
 input/regression/slur-dots.ly                 |   2 +-
 input/regression/slur-nice.ly                 |   2 +-
 input/regression/slur-rest.ly                 |   2 +-
 input/regression/slur-staccato.ly             |   2 +-
 input/regression/slur-stem-broken.ly          |   2 +-
 input/regression/slur-symmetry-1.ly           |   2 +-
 input/regression/slur-symmetry.ly             |   2 +-
 input/regression/spacing-accidental-staffs.ly |   2 +-
 .../regression/spacing-accidental-stretch.ly  |   2 +-
 input/regression/spacing-accidental.ly        |   2 +-
 input/regression/spacing-bar-stem.ly          |   2 +-
 input/regression/spacing-clef-first-note.ly   |   2 +-
 input/regression/spacing-end-of-line.ly       |   2 +-
 input/regression/spacing-ended-voice.ly       |   2 +-
 input/regression/spacing-folded-clef.ly       |   2 +-
 input/regression/spacing-folded-clef2.ly      |   2 +-
 input/regression/spacing-grace-duration.ly    |   2 +-
 input/regression/spacing-grace.ly             |   2 +-
 input/regression/spacing-knee.ly              |   2 +-
 input/regression/spacing-multi-tuplet.ly      |   2 +-
 input/regression/spacing-note-flags.ly        |   2 +-
 input/regression/spacing-rest.ly              |   2 +-
 input/regression/spacing-short-notes.ly       |   2 +-
 input/regression/spacing-stem-bar.ly          |   2 +-
 input/regression/spacing-stem-direction.ly    |   2 +-
 .../regression/spacing-stem-same-direction.ly |   2 +-
 input/regression/spacing-to-grace.ly          |   2 +-
 input/regression/spacing-very-tight.ly        |   2 +-
 input/regression/span-bar.ly                  |   2 +-
 input/regression/staccato-pos.ly              |   2 +-
 input/regression/staff-mixed-size.ly          |   2 +-
 input/regression/staff-tweak.ly               |   2 +-
 input/regression/stanza-number.ly             |   2 +-
 input/regression/stem-direction.ly            |   2 +-
 input/regression/stem-shorten.ly              |   2 +-
 input/regression/stem-spacing.ly              |   2 +-
 input/regression/stem-tremolo.ly              |   2 +-
 input/regression/system-extents.ly            |   2 +-
 input/regression/system-start-bracket.ly      |   2 +-
 input/regression/tablature-string-tunings.ly  |   2 +-
 input/regression/tablature.ly                 |   2 +-
 input/regression/tag-filter.ly                |   2 +-
 input/regression/text-spanner.ly              |   2 +-
 input/regression/tie-busy-grobs.ly            |   2 +-
 input/regression/tie-chord.ly                 |   2 +-
 input/regression/tie-dots.ly                  |   2 +-
 input/regression/tie-grace.ly                 |   2 +-
 input/regression/tie.ly                       |   2 +-
 input/regression/tuplet-beam.ly               |   2 +-
 input/regression/tuplet-nest.ly               |   2 +-
 input/regression/tuplet-properties.ly         |   2 +-
 input/regression/tuplet-rest.ly               |   2 +-
 input/regression/tuplet-slope.ly              |   2 +-
 .../regression/tuplet-staffline-collision.ly  |   2 +-
 input/regression/tuplets.ly                   |   2 +-
 input/regression/voice-follower.ly            |   2 +-
 input/regression/volta-broken-left-edge.ly    |   2 +-
 input/regression/volta-multi-staff.ly         |   2 +-
 input/screech-boink.ly                        |   2 +-
 input/template/gregorian-transcription.ly     |   2 +-
 input/template/header.ly                      |   2 +-
 input/template/jazz-combo.ly                  |   2 +-
 input/template/melody-chords.ly               |   2 +-
 input/template/melody-lyrics-chords.ly        |   2 +-
 input/template/melody-lyrics.ly               |   2 +-
 input/template/melody.ly                      |   2 +-
 input/template/piano-4-voices.ly              |   2 +-
 input/template/piano-dynamics.ly              |   2 +-
 input/template/piano-lyrics.ly                |   2 +-
 input/template/piano-melody-lyrics.ly         |   2 +-
 input/template/piano.ly                       |   2 +-
 input/template/satb.ly                        |   2 +-
 input/test/+.ly                               |   2 +-
 input/test/add-staccato.ly                    |   2 +-
 input/test/add-text-script.ly                 |   2 +-
 input/test/ambitus-mixed.ly                   |   2 +-
 input/test/ancient-accidentals.ly             |   2 +-
 input/test/ancient-font.ly                    |   2 +-
 input/test/ancient-time.ly                    |   2 +-
 input/test/bagpipe.ly                         |   2 +-
 input/test/bar-always.ly                      |   2 +-
 input/test/bar-lines-lyric-only.ly            |   2 +-
 input/test/bar-lines.ly                       |   2 +-
 input/test/bar-number-every-five-reset.ly     |   2 +-
 input/test/bar-number-regular-interval.ly     |   2 +-
 input/test/bar-number-show-all.ly             |   2 +-
 input/test/beam-alternate.ly                  |   2 +-
 input/test/beam-auto-4-8.ly                   |   2 +-
 input/test/beam-auto-override.ly              |   2 +-
 input/test/beam-auto.ly                       |   2 +-
 input/test/beam-control.ly                    |   2 +-
 input/test/beam-count.ly                      |   2 +-
 input/test/beam-dir-functions.ly              |   2 +-
 input/test/beam-isknee.ly                     |   2 +-
 input/test/beam-neutral-direction.ly          |   2 +-
 input/test/beam-rest.ly                       |   2 +-
 input/test/blank-notes.ly                     |   2 +-
 input/test/blank-paper-tab.ly                 |   2 +-
 input/test/blank-paper.ly                     |   2 +-
 input/test/boxed-molecule.ly                  |   2 +-
 input/test/caps.ly                            |   2 +-
 input/test/cautionaries.ly                    |   2 +-
 input/test/chord-names-german.ly              |   2 +-
 input/test/chord-names-jazz.ly                |   2 +-
 input/test/chord-names-no-inversions.ly       |   2 +-
 input/test/clef-8-syntax.ly                   |   2 +-
 input/test/clef-end-of-line.ly                |   2 +-
 input/test/clef-manual-control.ly             |   2 +-
 input/test/coriolan-margin.ly                 |   2 +-
 input/test/count-systems.ly                   |   2 +-
 input/test/crescendi.ly                       |   2 +-
 input/test/cue-notes.ly                       |   2 +-
 input/test/divisiones.ly                      |   2 +-
 input/test/drarn-slurs.ly                     |   2 +-
 input/test/drarn.ly                           |   2 +-
 input/test/dynamic-absolute-volume.ly         |   2 +-
 input/test/dynamic-extra.ly                   |   2 +-
 input/test/embedded-postscript.ly             |   2 +-
 input/test/embedded-scm.ly                    |   2 +-
 input/test/embedded-tex.ly                    |   2 +-
 input/test/engraver-contexts.ly               |   2 +-
 input/test/engraver-one-by-one.ly             |   2 +-
 input/test/extra-staff.ly                     |   2 +-
 input/test/figured-bass-alternate.ly          |   2 +-
 input/test/fill-a4.ly                         |   2 +-
 input/test/follow-voice.ly                    |   2 +-
 input/test/force-hshift.ly                    |   2 +-
 input/test/gourlay.ly                         |   2 +-
 input/test/gregorian-scripts.ly               |   2 +-
 input/test/harmonic.ly                        |   2 +-
 input/test/header-ifelse.ly                   |   2 +-
 input/test/hshift.ly                          |   2 +-
 input/test/hymn.ly                            |   2 +-
 input/test/improv.ly                          |   2 +-
 input/test/incipit.ly                         |   2 +-
 input/test/instrument-name-grandstaff.ly      |   2 +-
 input/test/ligature-vaticana.ly               |   2 +-
 input/test/lilypond-testpage.ly               |   2 +-
 input/test/lyric-hyphen-retain.ly             |   2 +-
 input/test/lyrics-skip-notes.ly               |   2 +-
 input/test/mensural-ligatures.ly              |   2 +-
 input/test/mensural-note-heads.ly             |   2 +-
 input/test/midi-scales.ly                     |   2 +-
 input/test/move-accidentals.ly                |   2 +-
 input/test/move-specific-text.ly              |   2 +-
 input/test/music-box.ly                       |   4 +-
 input/test/music-creation.ly                  |   2 +-
 input/test/no-bar-lines.ly                    |   2 +-
 input/test/no-staff.ly                        |   2 +-
 input/test/ossia.ly                           |   2 +-
 input/test/part-combine.ly                    |   2 +-
 input/test/partial-blank.ly                   |   2 +-
 input/test/phrasing-slur-height.ly            |   2 +-
 input/test/piano-staff-distance.ly            |   2 +-
 input/test/polymetric-differing-notes.ly      |   2 +-
 input/test/polymetric.ly                      |   2 +-
 input/test/preset-extent.ly                   |   2 +-
 input/test/repeat-manual.ly                   |   2 +-
 input/test/repeat-shorter-bracket.ly          |   2 +-
 input/test/repeat.ly                          |   2 +-
 input/test/rest-dot-positions.ly              |   2 +-
 input/test/rests.ly                           |   2 +-
 input/test/reverse-music.ly                   |   2 +-
 input/test/rhythm-excercise.ly                |   2 +-
 input/test/scales-greek.ly                    |   2 +-
 input/test/scheme-interactions.ly             |   2 +-
 input/test/script-abbreviations.ly            |   2 +-
 input/test/script-chart.ly                    |   2 +-
 input/test/script-priority.ly                 |   2 +-
 input/test/script-stack.ly                    |   2 +-
 input/test/separate-staccato.ly               |   2 +-
 input/test/slur-attachment-override.ly        |   2 +-
 input/test/slur-beautiful.ly                  |   2 +-
 input/test/slur-dash.ly                       |   2 +-
 input/test/slur-manual.ly                     |   2 +-
 input/test/slur-minimum-length.ly             |   2 +-
 input/test/slur-ugly.ly                       |   2 +-
 input/test/smart-transpose.ly                 |   2 +-
 input/test/spacing-2.ly                       |   2 +-
 input/test/spanner-after-break-tweak.ly       |   2 +-
 input/test/staff-bracket.ly                   |   2 +-
 input/test/staff-container.ly                 |   2 +-
 input/test/staff-lines.ly                     |   2 +-
 input/test/staff-size.ly                      |   2 +-
 input/test/staff-space.ly                     |   2 +-
 input/test/stem-cross-staff.ly                |   2 +-
 input/test/stem-extend.ly                     |   2 +-
 input/test/stem-length.ly                     |   2 +-
 input/test/tablature-hammer.ly                |   2 +-
 input/test/tablature.ly                       |   2 +-
 input/test/temporary-stave.ly                 |   2 +-
 input/test/text-rotate.ly                     |   2 +-
 input/test/text-spanner.ly                    |   2 +-
 input/test/textscript.ly                      |   2 +-
 input/test/tie-cross-voice.ly                 |   2 +-
 input/test/tie-sparse.ly                      |   2 +-
 input/test/time-signature-double.ly           |   2 +-
 input/test/time.ly                            |   2 +-
 input/test/timing.ly                          |   2 +-
 input/test/title-markup.ly                    |  95 ++++++++++-------
 input/test/title.ly                           |   2 +-
 input/test/to-xml.ly                          |   2 +-
 input/test/transposition.ly                   |   2 +-
 input/test/trill.ly                           |   2 +-
 input/test/trills.ly                          |   2 +-
 input/test/unfold-all-repeats.ly              |   2 +-
 input/test/vertical-extent.ly                 |   2 +-
 input/tutorial/brahms-original.ly             |   2 +-
 input/tutorial/brahms-tweaked.ly              |   2 +-
 input/twinkle-pop.ly                          |   2 +-
 lily/font-select.cc                           |  20 ++--
 lily/paper-def.cc                             |   2 -
 ly/a3-init.ly                                 |   2 +-
 ly/a4-init.ly                                 |   2 +-
 ly/accordion-defs-init.ly                     |   2 +-
 ly/book-init-init.ly                          |   2 +-
 ly/catalan.ly                                 |   2 +-
 ly/center-init.ly                             |   2 +-
 ly/chord-modifiers-init.ly                    |   2 +-
 ly/declarations-init.ly                       |   2 +-
 ly/deutsch.ly                                 |   2 +-
 ly/drumpitch-init.ly                          |   2 +-
 ly/dynamic-scripts-init.ly                    |   2 +-
 ly/english.ly                                 |   2 +-
 ly/engraver-init.ly                           |   2 +-
 ly/espanol.ly                                 |   2 +-
 ly/generate-documentation.ly                  |   2 +-
 ly/generate-interface-doc-init.ly             |   2 +-
 ly/grace-init.ly                              |   2 +-
 ly/gregorian-init.ly                          |   2 +-
 ly/init.ly                                    |   2 +-
 ly/italiano.ly                                |   2 +-
 ly/legal-init.ly                              |   2 +-
 ly/letter-init.ly                             |   2 +-
 ly/midi-init.ly                               |   2 +-
 ly/nederlands.ly                              |   2 +-
 ly/norsk.ly                                   |   2 +-
 ly/params-init.ly                             |   2 +-
 ly/part-paper-init.ly                         |   2 +-
 ly/performer-init.ly                          |   2 +-
 ly/property-init.ly                           |   2 +-
 ly/scale-definitions-init.ly                  |   2 +-
 ly/script-init.ly                             |   2 +-
 ly/spanners-init.ly                           |   2 +-
 ly/suomi.ly                                   |   2 +-
 ly/svenska.ly                                 |   2 +-
 ly/tabloid-init.ly                            |   2 +-
 ps/lilyponddefs.ps                            |  10 +-
 scm/define-markup-commands.scm                |  50 ++++++---
 scm/font.scm                                  |   3 +-
 scm/new-markup.scm                            |   2 +-
 scm/output-ps.scm                             | 100 +++++++++++++-----
 scripts/convert-ly.py                         |   7 ++
 508 files changed, 712 insertions(+), 601 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index be55b78dcb..590c07ba65 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2004-03-03  Jan Nieuwenhuizen  <janneke@gnu.org>
+
+	* scm/define-markup-commands.scm (fill-line): New markup.
+
+	* scm/output-ps.scm (ps-encoding): Add simplistic encoding.
+	(output-paper-def): Fix alignment.
+	(make-title): Fix height/width scaling.
+
+	* ps/lilyponddefs.ps (base-line-skip): Bugfix.
+
+	* input/test/title-markup.ly: Add remaining titles.  Layout and
+	font size fixes.  Add simplistic latin1 test.
+
 2004-03-03  Heikki Junes <hjunes@cc.hut.fi>
 
 	* input/test/nested-groups.ly: remove. move content (to next). 
@@ -7,7 +20,8 @@
 2004-03-03  Jan Nieuwenhuizen  <janneke@gnu.org>
 
 	* stepmake/autogen.sh: Only issue warning about running configure
-	without arguments when configure will actually running configure.
+	without arguments when autogen.sh will actually be running
+	configure.
 
 2004-03-03  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely
index 32cb35c32e..edbe18ab2b 100644
--- a/Documentation/user/refman.itely
+++ b/Documentation/user/refman.itely
@@ -8088,12 +8088,12 @@ In markup mode you can compose expressions, similar to mathematical
 expressions, XML documents and music expressions.  The braces group
 notes into horizontal lines. Other types of lists also exist: you can
 stack expressions grouped with @code{<}, and @code{>} vertically with
-the command @code{\column}. Similarly, @code{\center} aligns texts by
-their center lines:
+the command @code{\column}. Similarly, @code{\center-align} aligns
+texts by their center lines:
 
 @lilypond[verbatim,fragment,relative=1]
  c1^\markup { \column < a bbbb c > }
- c1^\markup { \center < a bbbb c > }
+ c1^\markup { \center-align < a bbbb c > }
  c1^\markup { \line < a b c > }
 @end lilypond
 
@@ -8174,7 +8174,7 @@ is this table:
 @item @code{\command} @tab @code{#:command}
 @item @code{\variable} @tab @code{variable}
 @item @code{@{ ... @}} @tab @code{#:line ( ... )}
-@item @code{\center < ... >} @tab @code{#:center ( ... )}
+@item @code{\center-align < ... >} @tab @code{#:center ( ... )}
 @item @code{string} @tab @code{"string"}
 @item @code{#scheme-arg} @tab @code{scheme-arg}
 @end multitable
diff --git a/input/example-1.ly b/input/example-1.ly
index f636adeed6..3e84a09de9 100644
--- a/input/example-1.ly
+++ b/input/example-1.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 % A simple scale in LilyPond
 %
diff --git a/input/example-2.ly b/input/example-2.ly
index 694483050f..4f394bcb64 100644
--- a/input/example-2.ly
+++ b/input/example-2.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 % Some beamed and slurred notes of different taste in LilyPond
 %
 % Type:
diff --git a/input/example-3.ly b/input/example-3.ly
index 7fa347f7e6..d85a2ef5d1 100644
--- a/input/example-3.ly
+++ b/input/example-3.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 
 one = \notes\relative c{
 	c'' d e f
diff --git a/input/les-nereides.ly b/input/les-nereides.ly
index e27d168ba0..255710e664 100644
--- a/input/les-nereides.ly
+++ b/input/les-nereides.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.25"
+\version "2.1.28"
 
 \header {
     composer = "ARTHUR GRAY"
diff --git a/input/mutopia-header.ly b/input/mutopia-header.ly
index 67558b4b89..80724680f7 100644
--- a/input/mutopia-header.ly
+++ b/input/mutopia-header.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header {
   title =	"Title"
   subtitle =	"Subtitle"
diff --git a/input/mutopia/E.Satie/petite-ouverture-a-danser.ly b/input/mutopia/E.Satie/petite-ouverture-a-danser.ly
index f0806ec3f1..df15e6e7c8 100644
--- a/input/mutopia/E.Satie/petite-ouverture-a-danser.ly
+++ b/input/mutopia/E.Satie/petite-ouverture-a-danser.ly
@@ -7,7 +7,7 @@
   copyright = "Public Domain"
 }
 
-\version "2.1.23"
+\version "2.1.28"
 
 \include "nederlands.ly"
 
diff --git a/input/mutopia/F.Schubert/morgenlied.ly b/input/mutopia/F.Schubert/morgenlied.ly
index 50409a78ea..a3de838949 100644
--- a/input/mutopia/F.Schubert/morgenlied.ly
+++ b/input/mutopia/F.Schubert/morgenlied.ly
@@ -27,7 +27,7 @@ been lowered
 
 }
 
-\version "2.1.25"
+\version "2.1.28"
 manuscriptBreak = { \break }
 
 
diff --git a/input/mutopia/F.Schubert/standchen.ly b/input/mutopia/F.Schubert/standchen.ly
index c744adc3b0..f91fb2d6e8 100644
--- a/input/mutopia/F.Schubert/standchen.ly
+++ b/input/mutopia/F.Schubert/standchen.ly
@@ -42,7 +42,7 @@ instrument = "Piano"
  footer = "Mutopia-2001/04/27-xx"
 } 
 
-\version "2.1.23"
+\version "2.1.28"
 
 dynamicUp = \override DynamicLineSpanner  #'direction = #1
 dynamicRevert = \revert DynamicLineSpanner #'direction
diff --git a/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly b/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
index b80bb0b971..9b01d60b8c 100644
--- a/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
+++ b/input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
@@ -1,4 +1,4 @@
-\version "2.1.25"
+\version "2.1.28"
 
 % #(ly:set-point-and-click 'line-column)
 
diff --git a/input/mutopia/J.S.Bach/bwv940.ly b/input/mutopia/J.S.Bach/bwv940.ly
index 4d2b7bb74a..40366a419c 100644
--- a/input/mutopia/J.S.Bach/bwv940.ly
+++ b/input/mutopia/J.S.Bach/bwv940.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.23"
+\version "2.1.28"
 
 %{
  Header for Petites Preludes.
diff --git a/input/mutopia/J.S.Bach/wtk1-fugue2.ly b/input/mutopia/J.S.Bach/wtk1-fugue2.ly
index da9e01a695..fe332dfa19 100644
--- a/input/mutopia/J.S.Bach/wtk1-fugue2.ly
+++ b/input/mutopia/J.S.Bach/wtk1-fugue2.ly
@@ -36,7 +36,7 @@
 %}
 
 
-\version "2.1.23"
+\version "2.1.28"
 
 
 
diff --git a/input/mutopia/W.A.Mozart/mozart-hrn-3.ly b/input/mutopia/W.A.Mozart/mozart-hrn-3.ly
index f0eb95dc35..ee04c99579 100644
--- a/input/mutopia/W.A.Mozart/mozart-hrn-3.ly
+++ b/input/mutopia/W.A.Mozart/mozart-hrn-3.ly
@@ -30,7 +30,7 @@ virtuoso that taught in Geneva.
 
 %}
 
-\version "2.1.22"
+\version "2.1.28"
 
 \include "mozart-hrn3-defs.ly"
 \include "mozart-hrn3-allegro.ly"
diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly
index d8799725a3..6317f5bff7 100644
--- a/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly
+++ b/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \include  "mozart-hrn3-defs.ly"
 
 allegro =
diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly
index 3075cb59db..3b4f3ce45d 100644
--- a/input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly
+++ b/input/mutopia/W.A.Mozart/mozart-hrn3-defs.ly
@@ -4,7 +4,7 @@ longgrace = \override Stem  #'stroke-style = #'()
 endlonggrace = \revert Stem #'stroke-style
 ritenuto = \markup { \italic  "rit." }
 
-\version "2.1.23"
+\version "2.1.28"
   
 cresc = \notes {
     #(ly:export (make-event-chord (list (make-span-event 'CrescendoEvent START)))) 
diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly
index d0f1c64488..ab01380ac0 100644
--- a/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly
+++ b/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly
@@ -1,6 +1,6 @@
 #(ly:set-option 'old-relative)
 
-\version "2.1.22"
+\version "2.1.28"
 \include  "mozart-hrn3-defs.ly"
 
 romanze = \notes \relative c' {
diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly
index e6db7e0634..1b5be8b0c1 100644
--- a/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly
+++ b/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 
 % \include "mozart-hrn3-defs.ly"
 
diff --git a/input/no-notation/bar-check.ly b/input/no-notation/bar-check.ly
index 29d7f82dde..cb6dca74eb 100644
--- a/input/no-notation/bar-check.ly
+++ b/input/no-notation/bar-check.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/no-notation/beam-warn.ly b/input/no-notation/beam-warn.ly
index db56837581..3167773d10 100644
--- a/input/no-notation/beam-warn.ly
+++ b/input/no-notation/beam-warn.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header	{
 
diff --git a/input/no-notation/denneboom.ly b/input/no-notation/denneboom.ly
index 752f33f9ce..be15701738 100644
--- a/input/no-notation/denneboom.ly
+++ b/input/no-notation/denneboom.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header{
 filename = 	 "denneboom.ly"
 enteredby = 	 "jcn"
diff --git a/input/no-notation/die-staff.ly b/input/no-notation/die-staff.ly
index fb5690febc..3f6d5b4a0a 100644
--- a/input/no-notation/die-staff.ly
+++ b/input/no-notation/die-staff.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header  {
 texidoc = "a staff should really die, if no one's referencing it."
diff --git a/input/no-notation/dos-guile.ly b/input/no-notation/dos-guile.ly
index d51436b8c1..a2bb9fbd9e 100644
--- a/input/no-notation/dos-guile.ly
+++ b/input/no-notation/dos-guile.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     
diff --git a/input/no-notation/dos-ps.ly b/input/no-notation/dos-ps.ly
index 366e5e967a..27f6e3de44 100644
--- a/input/no-notation/dos-ps.ly
+++ b/input/no-notation/dos-ps.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/no-notation/dos-tex.ly b/input/no-notation/dos-tex.ly
index 63ed2f40a4..8c9689d790 100644
--- a/input/no-notation/dos-tex.ly
+++ b/input/no-notation/dos-tex.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     
diff --git a/input/no-notation/midi-grace.ly b/input/no-notation/midi-grace.ly
index 0485863277..d17f73a162 100644
--- a/input/no-notation/midi-grace.ly
+++ b/input/no-notation/midi-grace.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \header{ texidoc = "Tests MIDI output with grace notes. " }
 
 \score { 
diff --git a/input/no-notation/midi-lyric-barcheck.ly b/input/no-notation/midi-lyric-barcheck.ly
index b7a3101996..c581549901 100644
--- a/input/no-notation/midi-lyric-barcheck.ly
+++ b/input/no-notation/midi-lyric-barcheck.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header {
 
     texidoc = "Lyrics in MIDI are aligned to ties and beams:
diff --git a/input/no-notation/midi-transposing.ly b/input/no-notation/midi-transposing.ly
index 2f3dbbaf4e..983ce0074f 100644
--- a/input/no-notation/midi-transposing.ly
+++ b/input/no-notation/midi-transposing.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Transposing
 The transposing property leaves output invariant, but has effect on MIDI. "
diff --git a/input/no-notation/midi-tuplets.ly b/input/no-notation/midi-tuplets.ly
index 1021805d2f..5083bb005c 100644
--- a/input/no-notation/midi-tuplets.ly
+++ b/input/no-notation/midi-tuplets.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \header {
 texidoc = "
 
diff --git a/input/no-notation/midi-volume-equaliser.ly b/input/no-notation/midi-volume-equaliser.ly
index 458d08dfad..a9e35c61c3 100644
--- a/input/no-notation/midi-volume-equaliser.ly
+++ b/input/no-notation/midi-volume-equaliser.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.23"
+\version "2.1.28"
 \header {
 texidoc = "@cindex Midi Volume Equaliser
 The full orchestra plays a notes, where groups stop one after
diff --git a/input/no-notation/parse.ly b/input/no-notation/parse.ly
index bf779c76d2..194af12f83 100644
--- a/input/no-notation/parse.ly
+++ b/input/no-notation/parse.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 % Test parser error
 
diff --git a/input/no-notation/parse2.ly b/input/no-notation/parse2.ly
index 9031faf45b..6092d7649f 100644
--- a/input/no-notation/parse2.ly
+++ b/input/no-notation/parse2.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 % Test parser error
 
diff --git a/input/no-notation/parse3.ly b/input/no-notation/parse3.ly
index 2ee734c4fa..2f5a243b5c 100644
--- a/input/no-notation/parse3.ly
+++ b/input/no-notation/parse3.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 % Test parser error
 
diff --git a/input/no-notation/parse4.ly b/input/no-notation/parse4.ly
index 523b47ccde..ef5ba4bde9 100644
--- a/input/no-notation/parse4.ly
+++ b/input/no-notation/parse4.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 % Test parser error
 
diff --git a/input/no-notation/parse5.ly b/input/no-notation/parse5.ly
index eadea3267f..fa8075033d 100644
--- a/input/no-notation/parse5.ly
+++ b/input/no-notation/parse5.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 %If you specify two different key sigs at one point, a
 %warning is printed.
 
diff --git a/input/no-notation/recording.ly b/input/no-notation/recording.ly
index 9b96a992fa..077836dafc 100644
--- a/input/no-notation/recording.ly
+++ b/input/no-notation/recording.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
 
 texidoc = "The @code{Recording_group_engraver} will record events
diff --git a/input/no-notation/safe-guile.ly b/input/no-notation/safe-guile.ly
index f771965e61..edab8bcce1 100644
--- a/input/no-notation/safe-guile.ly
+++ b/input/no-notation/safe-guile.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     
diff --git a/input/no-notation/safe-include.ly b/input/no-notation/safe-include.ly
index be9d33d7fa..5b51ef3168 100644
--- a/input/no-notation/safe-include.ly
+++ b/input/no-notation/safe-include.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     
diff --git a/input/no-notation/safe-ps.ly b/input/no-notation/safe-ps.ly
index 1dee263640..0f84bb35b5 100644
--- a/input/no-notation/safe-ps.ly
+++ b/input/no-notation/safe-ps.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     texidoc = "This should not survive lilypond --safe-mode
diff --git a/input/no-notation/safe-tex.ly b/input/no-notation/safe-tex.ly
index bdced0db3a..7506f4ede3 100644
--- a/input/no-notation/safe-tex.ly
+++ b/input/no-notation/safe-tex.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header{
     
diff --git a/input/no-notation/textcresc.ly b/input/no-notation/textcresc.ly
index 9c86ec96cf..5584bfed2e 100644
--- a/input/no-notation/textcresc.ly
+++ b/input/no-notation/textcresc.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header{
 texidoc="crashes lily"
 }
diff --git a/input/puer-fragment.ly b/input/puer-fragment.ly
index 4e1d21b64e..008ff0bca0 100644
--- a/input/puer-fragment.ly
+++ b/input/puer-fragment.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
     title	= "Puer natus est nobis (excerptum)"
     subtitle	= "Antiphona ad introitum VII"
diff --git a/input/regression/+.ly b/input/regression/+.ly
index 471d2edd94..e762cf15d1 100644
--- a/input/regression/+.ly
+++ b/input/regression/+.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 %% +.ly: Be the first .ly file for lys-to-tely.py.
 %% Better to make lys-to-tely.py include "introduction.texi" or
 %% other .texi documents too?
diff --git a/input/regression/accidental-cautionary.ly b/input/regression/accidental-cautionary.ly
index d307932f48..6decf9823d 100644
--- a/input/regression/accidental-cautionary.ly
+++ b/input/regression/accidental-cautionary.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Cautionary accidentals are indicated using either
diff --git a/input/regression/accidental-double.ly b/input/regression/accidental-double.ly
index ebf23a11ee..597b3ba828 100644
--- a/input/regression/accidental-double.ly
+++ b/input/regression/accidental-double.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 	texidoc = "If two forced accidentals happen at the same time, only one
 	sharp sign is printed."
diff --git a/input/regression/accidental-ledger.ly b/input/regression/accidental-ledger.ly
index fe4e4cea74..61ed78768f 100644
--- a/input/regression/accidental-ledger.ly
+++ b/input/regression/accidental-ledger.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/accidental-octave.ly b/input/regression/accidental-octave.ly
index 3ab330850d..70ea5a5190 100644
--- a/input/regression/accidental-octave.ly
+++ b/input/regression/accidental-octave.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc="
diff --git a/input/regression/accidental-placement.ly b/input/regression/accidental-placement.ly
index 6691195a00..3e3dbaf2f6 100644
--- a/input/regression/accidental-placement.ly
+++ b/input/regression/accidental-placement.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/accidental-quarter.ly b/input/regression/accidental-quarter.ly
index 1d82eb3830..7a196365bf 100644
--- a/input/regression/accidental-quarter.ly
+++ b/input/regression/accidental-quarter.ly
@@ -3,7 +3,7 @@
     texidoc = "Quarter tone notation is supported, including
     threequarters flat."
     }
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \notes \relative c'' {
diff --git a/input/regression/accidental-single-double.ly b/input/regression/accidental-single-double.ly
index e5982e29f5..6ec1ebb685 100644
--- a/input/regression/accidental-single-double.ly
+++ b/input/regression/accidental-single-double.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 A sharp sign after a double sharp sign, as well as a flat sign
diff --git a/input/regression/accidental-tie.ly b/input/regression/accidental-tie.ly
index 6922dc0d65..03bcefe395 100644
--- a/input/regression/accidental-tie.ly
+++ b/input/regression/accidental-tie.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/accidental-unbroken-tie-spacing.ly b/input/regression/accidental-unbroken-tie-spacing.ly
index 9df9763ef2..d0259bdff9 100644
--- a/input/regression/accidental-unbroken-tie-spacing.ly
+++ b/input/regression/accidental-unbroken-tie-spacing.ly
@@ -4,7 +4,7 @@ texidoc = "Tied accidentaled notes (which cause reminder accidentals) do not
 wreak havoc in the spacing when unbroken."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 rechts = \notes \relative c' {
   \clef treble
diff --git a/input/regression/accidental-voice.ly b/input/regression/accidental-voice.ly
index c27b5ccffd..634d3cefd2 100644
--- a/input/regression/accidental-voice.ly
+++ b/input/regression/accidental-voice.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/accidental.ly b/input/regression/accidental.ly
index 68fc320a53..5d58737fac 100644
--- a/input/regression/accidental.ly
+++ b/input/regression/accidental.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/accidentals.ly b/input/regression/accidentals.ly
index 49f1ddf8ba..b866661ece 100644
--- a/input/regression/accidentals.ly
+++ b/input/regression/accidentals.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/ambitus.ly b/input/regression/ambitus.ly
index 3eda9c745a..3de1981e8a 100644
--- a/input/regression/ambitus.ly
+++ b/input/regression/ambitus.ly
@@ -52,7 +52,7 @@ paper block:
 
 
  %}
-\version "2.1.26"
+\version "2.1.28"
 
 upper = \notes \relative c {
 	\clef "treble"
diff --git a/input/regression/apply-context.ly b/input/regression/apply-context.ly
index 92679d1400..f2ef0c2f4c 100644
--- a/input/regression/apply-context.ly
+++ b/input/regression/apply-context.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/arpeggio-collision.ly b/input/regression/arpeggio-collision.ly
index 075ba9832c..345d169ef3 100644
--- a/input/regression/arpeggio-collision.ly
+++ b/input/regression/arpeggio-collision.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header  {
 texidoc = "Arpeggio stays clear of accidentals and flipped note heads."
diff --git a/input/regression/arpeggio.ly b/input/regression/arpeggio.ly
index a5dadb3214..8f1b620507 100644
--- a/input/regression/arpeggio.ly
+++ b/input/regression/arpeggio.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Arpeggios are supported, both cross-staff and broken single staff.
diff --git a/input/regression/auto-beam-bar.ly b/input/regression/auto-beam-bar.ly
index 3e26e72c40..ff267079ef 100644
--- a/input/regression/auto-beam-bar.ly
+++ b/input/regression/auto-beam-bar.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="No auto beams will be put over (manual) repeat bars."
diff --git a/input/regression/auto-beam-no-beam.ly b/input/regression/auto-beam-no-beam.ly
index ac2a83cda2..ec8130a400 100644
--- a/input/regression/auto-beam-no-beam.ly
+++ b/input/regression/auto-beam-no-beam.ly
@@ -5,7 +5,7 @@
 
 
     }
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \notes { c8 c-\noBeam c c }
diff --git a/input/regression/auto-beam-triplet.ly b/input/regression/auto-beam-triplet.ly
index e445b5b967..65d1213b48 100644
--- a/input/regression/auto-beam-triplet.ly
+++ b/input/regression/auto-beam-triplet.ly
@@ -4,7 +4,7 @@
 texidoc = "Automatic beaming is also done on tuplets."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score{
 	\notes\relative c''{
diff --git a/input/regression/auto-beam-tuplets.ly b/input/regression/auto-beam-tuplets.ly
index 00ce832aab..c0569aa3bf 100644
--- a/input/regression/auto-beam-tuplets.ly
+++ b/input/regression/auto-beam-tuplets.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "Tuplet-spanner should not put (visible) brackets on
diff --git a/input/regression/auto-beam.ly b/input/regression/auto-beam.ly
index 6e1a816660..c393f4dd2e 100644
--- a/input/regression/auto-beam.ly
+++ b/input/regression/auto-beam.ly
@@ -6,7 +6,7 @@ beam."
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 
diff --git a/input/regression/auto-change.ly b/input/regression/auto-change.ly
index 959941f651..c5965b2e7d 100644
--- a/input/regression/auto-change.ly
+++ b/input/regression/auto-change.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/balloon.ly b/input/regression/balloon.ly
index e63bc0176f..f1f167f5d9 100644
--- a/input/regression/balloon.ly
+++ b/input/regression/balloon.ly
@@ -3,7 +3,7 @@
     texidoc = "With balloon texts, objects in the output can be marked,
 with lines and explanatory text added."
     }
-\version "2.1.26"
+\version "2.1.28"
 
 \score  {
  \notes {
diff --git a/input/regression/bar-number.ly b/input/regression/bar-number.ly
index 6b752e352f..d516ed3644 100644
--- a/input/regression/bar-number.ly
+++ b/input/regression/bar-number.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/bar-scripts.ly b/input/regression/bar-scripts.ly
index 9c2331b67d..00d3a5f1a4 100644
--- a/input/regression/bar-scripts.ly
+++ b/input/regression/bar-scripts.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 
diff --git a/input/regression/beam-auto-knee.ly b/input/regression/beam-auto-knee.ly
index aadfe8e403..8680d751e6 100644
--- a/input/regression/beam-auto-knee.ly
+++ b/input/regression/beam-auto-knee.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc="A knee is made automatically when a horizontal
 beam fits in a gap between note heads that is larger than a predefined
diff --git a/input/regression/beam-break.ly b/input/regression/beam-break.ly
index 3fd4efa438..314a73d840 100644
--- a/input/regression/beam-break.ly
+++ b/input/regression/beam-break.ly
@@ -4,7 +4,7 @@
 "
 
 }
-\version "2.1.26"
+\version "2.1.28"
 \paper { raggedright= ##t }
 
 \score { \notes \relative c''  {
diff --git a/input/regression/beam-center-slope.ly b/input/regression/beam-center-slope.ly
index 6e89829609..8be74c82bf 100644
--- a/input/regression/beam-center-slope.ly
+++ b/input/regression/beam-center-slope.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 
     texidoc="Simple beams on middle staffline are allowed to be
diff --git a/input/regression/beam-concave.ly b/input/regression/beam-concave.ly
index 921b42b25f..eb5eed8548 100644
--- a/input/regression/beam-concave.ly
+++ b/input/regression/beam-concave.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 
 texidoc = "Concave beams should be horizontal. Informally spoken,
diff --git a/input/regression/beam-cross-staff-auto-knee.ly b/input/regression/beam-cross-staff-auto-knee.ly
index 566eaf05c3..d56936c03f 100644
--- a/input/regression/beam-cross-staff-auto-knee.ly
+++ b/input/regression/beam-cross-staff-auto-knee.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/regression/beam-cross-staff-slope.ly b/input/regression/beam-cross-staff-slope.ly
index 10a9cf1774..d177fd0abb 100644
--- a/input/regression/beam-cross-staff-slope.ly
+++ b/input/regression/beam-cross-staff-slope.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Cross staff  (kneed) beams do not cause extreme slopes."
 }
diff --git a/input/regression/beam-cross-staff.ly b/input/regression/beam-cross-staff.ly
index 97ecb57053..07b9fea3ef 100644
--- a/input/regression/beam-cross-staff.ly
+++ b/input/regression/beam-cross-staff.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Beams can be typeset over fixed distance aligned staves, beam
diff --git a/input/regression/beam-damp.ly b/input/regression/beam-damp.ly
index d2ef1859a3..1fc45b09d1 100644
--- a/input/regression/beam-damp.ly
+++ b/input/regression/beam-damp.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Beam Damp
 Beams are less steep than the notes they encompass. " }
 
diff --git a/input/regression/beam-default-lengths.ly b/input/regression/beam-default-lengths.ly
index 6df4cc10f8..8d1ae03868 100644
--- a/input/regression/beam-default-lengths.ly
+++ b/input/regression/beam-default-lengths.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
     texidoc="Beamed stems have standard lengths if possible. Quantization is switched off in this example."
diff --git a/input/regression/beam-extreme.ly b/input/regression/beam-extreme.ly
index 4206bc14e5..bdf66ef28e 100644
--- a/input/regression/beam-extreme.ly
+++ b/input/regression/beam-extreme.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Beams should behave reasonably well, even under extreme circumstances.
diff --git a/input/regression/beam-french.ly b/input/regression/beam-french.ly
index ac05fe28e0..317d065c72 100644
--- a/input/regression/beam-french.ly
+++ b/input/regression/beam-french.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/beam-funky-beamlet.ly b/input/regression/beam-funky-beamlet.ly
index db2e825c2e..46af01a90d 100644
--- a/input/regression/beam-funky-beamlet.ly
+++ b/input/regression/beam-funky-beamlet.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc=" Funky kneed beams with beamlets also work. The beamlets
diff --git a/input/regression/beam-funky.ly b/input/regression/beam-funky.ly
index cd09efd095..77bf1c7102 100644
--- a/input/regression/beam-funky.ly
+++ b/input/regression/beam-funky.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc = "In complex configurations of knee beaming, according to
diff --git a/input/regression/beam-knee-symmetry.ly b/input/regression/beam-knee-symmetry.ly
index 19664633a8..9bf09e08f9 100644
--- a/input/regression/beam-knee-symmetry.ly
+++ b/input/regression/beam-knee-symmetry.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Point-symmetric beams should receive the same
diff --git a/input/regression/beam-length.ly b/input/regression/beam-length.ly
index 4b6f567da3..f9c7d5ffbf 100644
--- a/input/regression/beam-length.ly
+++ b/input/regression/beam-length.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/beam-manual-beaming.ly b/input/regression/beam-manual-beaming.ly
index 61c86ca6b2..0c1db79f3e 100644
--- a/input/regression/beam-manual-beaming.ly
+++ b/input/regression/beam-manual-beaming.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/beam-multiple-cross-staff.ly b/input/regression/beam-multiple-cross-staff.ly
index 976b150623..5e925cac78 100644
--- a/input/regression/beam-multiple-cross-staff.ly
+++ b/input/regression/beam-multiple-cross-staff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Kneed beams (often happens with cross-staff beams)
diff --git a/input/regression/beam-over-barline.ly b/input/regression/beam-over-barline.ly
index 715a13d5e4..3880005b73 100644
--- a/input/regression/beam-over-barline.ly
+++ b/input/regression/beam-over-barline.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Explicit beams may cross barlines. "
 }
diff --git a/input/regression/beam-position.ly b/input/regression/beam-position.ly
index d37d625d5d..d93d30a156 100644
--- a/input/regression/beam-position.ly
+++ b/input/regression/beam-position.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 
 texidoc=" Beams on ledgered notes should always reach the middle staff
diff --git a/input/regression/beam-postfix-notation.ly b/input/regression/beam-postfix-notation.ly
index be4beb168e..ac4679865a 100644
--- a/input/regression/beam-postfix-notation.ly
+++ b/input/regression/beam-postfix-notation.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Beams and ties may be entered in postfix notation, separating the
diff --git a/input/regression/beam-quanting-32nd.ly b/input/regression/beam-quanting-32nd.ly
index 673ded0745..076a974d45 100644
--- a/input/regression/beam-quanting-32nd.ly
+++ b/input/regression/beam-quanting-32nd.ly
@@ -8,7 +8,7 @@ texidoc = "Stem lengths take precedence over beam quants: `forbidden'
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \notes \relative c''{ 
diff --git a/input/regression/beam-quanting-horizontal.ly b/input/regression/beam-quanting-horizontal.ly
index 79a236351d..7bd096bbff 100644
--- a/input/regression/beam-quanting-horizontal.ly
+++ b/input/regression/beam-quanting-horizontal.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/regression/beam-quarter.ly b/input/regression/beam-quarter.ly
index b176f26f69..f5e30ca877 100644
--- a/input/regression/beam-quarter.ly
+++ b/input/regression/beam-quarter.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc= "Quarter notes may be beamed: the beam is halted momentarily."
diff --git a/input/regression/beam-rest.ly b/input/regression/beam-rest.ly
index c8040105f9..0cd2f3afeb 100644
--- a/input/regression/beam-rest.ly
+++ b/input/regression/beam-rest.ly
@@ -3,7 +3,7 @@
  texidoc = "The number of beams does not change on a rest."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score { \notes \relative c, {
   \clef bass	 
diff --git a/input/regression/beam-second.ly b/input/regression/beam-second.ly
index 87afee66bb..119b264356 100644
--- a/input/regression/beam-second.ly
+++ b/input/regression/beam-second.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
   texidoc="
 Engraving second intervals is tricky.  We used to have problems with seconds 
diff --git a/input/regression/beam-shortened-lengths.ly b/input/regression/beam-shortened-lengths.ly
index 0a15ad3cd3..a11b9a694f 100644
--- a/input/regression/beam-shortened-lengths.ly
+++ b/input/regression/beam-shortened-lengths.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
     texidoc="Beams in unnatural direction, have shortened stems, but do not look too short."
diff --git a/input/regression/beamed-chord.ly b/input/regression/beamed-chord.ly
index c53f92ae88..fe6c214549 100644
--- a/input/regression/beamed-chord.ly
+++ b/input/regression/beamed-chord.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc = "Hairy case for beam, chord, and automatic knees."
diff --git a/input/regression/beaming-ternary-metrum.ly b/input/regression/beaming-ternary-metrum.ly
index 6909d1035b..a57c46a9d9 100644
--- a/input/regression/beaming-ternary-metrum.ly
+++ b/input/regression/beaming-ternary-metrum.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Automatic beaming works also in ternary time sigs."
 }
diff --git a/input/regression/beaming.ly b/input/regression/beaming.ly
index 7b7e8cdf0c..e4af9ad761 100644
--- a/input/regression/beaming.ly
+++ b/input/regression/beaming.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/beams.ly b/input/regression/beams.ly
index 40b61c0094..036f7ce613 100644
--- a/input/regression/beams.ly
+++ b/input/regression/beams.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Beaming can be also given explicitly."
 }
diff --git a/input/regression/between-systems.ly b/input/regression/between-systems.ly
index 1454f66eec..517da342e9 100644
--- a/input/regression/between-systems.ly
+++ b/input/regression/between-systems.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/break.ly b/input/regression/break.ly
index c273fd2e32..1dfaa7319a 100644
--- a/input/regression/break.ly
+++ b/input/regression/break.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/breathing-sign-ancient.ly b/input/regression/breathing-sign-ancient.ly
index 6a8bf73190..0dec7c8c7b 100644
--- a/input/regression/breathing-sign-ancient.ly
+++ b/input/regression/breathing-sign-ancient.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/breathing-sign.ly b/input/regression/breathing-sign.ly
index d82d73aa73..e34f2dd1b6 100644
--- a/input/regression/breathing-sign.ly
+++ b/input/regression/breathing-sign.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Breathing signs are available in different tastes: commas (default),
diff --git a/input/regression/chord-changes.ly b/input/regression/chord-changes.ly
index 7390d9b8fa..b5a25de2d2 100644
--- a/input/regression/chord-changes.ly
+++ b/input/regression/chord-changes.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="Property chordChanges: display chord names only when
diff --git a/input/regression/chord-name-entry-11.ly b/input/regression/chord-name-entry-11.ly
index 470d8932f7..8aeab058a4 100644
--- a/input/regression/chord-name-entry-11.ly
+++ b/input/regression/chord-name-entry-11.ly
@@ -1,4 +1,4 @@
-\version "2.1.26" 
+\version "2.1.28" 
 
 \header {
 
diff --git a/input/regression/chord-name-entry.ly b/input/regression/chord-name-entry.ly
index f7cd047a75..74a0038697 100644
--- a/input/regression/chord-name-entry.ly
+++ b/input/regression/chord-name-entry.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/chord-name-exceptions.ly b/input/regression/chord-name-exceptions.ly
index be972400e6..6bb65d5fe0 100644
--- a/input/regression/chord-name-exceptions.ly
+++ b/input/regression/chord-name-exceptions.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "The property @code{chordNameExceptions} can used
     to store a list of special notations for specific chords.
 
diff --git a/input/regression/chord-name-major7.ly b/input/regression/chord-name-major7.ly
index 4b1633bf8c..5034339deb 100644
--- a/input/regression/chord-name-major7.ly
+++ b/input/regression/chord-name-major7.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "The layout of the major 7 can be tuned with
 @code{majorSevenSymbol}."
diff --git a/input/regression/chord-names-bass.ly b/input/regression/chord-names-bass.ly
index c65748df31..b8d385a7ab 100644
--- a/input/regression/chord-names-bass.ly
+++ b/input/regression/chord-names-bass.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/chord-scripts.ly b/input/regression/chord-scripts.ly
index 7e74988915..510f8b365a 100644
--- a/input/regression/chord-scripts.ly
+++ b/input/regression/chord-scripts.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Scripts can also be attached to chord elements."
diff --git a/input/regression/chord-tremolo-short.ly b/input/regression/chord-tremolo-short.ly
index 3886ec310c..290e546a92 100644
--- a/input/regression/chord-tremolo-short.ly
+++ b/input/regression/chord-tremolo-short.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc = "
   Tremolo repeats can be constructed for short tremolos (total duration smaller than 1/4) too. Only some of the beams are connected to the stems. 
diff --git a/input/regression/chord-tremolo.ly b/input/regression/chord-tremolo.ly
index 52d5725658..4850ac873e 100644
--- a/input/regression/chord-tremolo.ly
+++ b/input/regression/chord-tremolo.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/chords-funky-ignatzek.ly b/input/regression/chords-funky-ignatzek.ly
index b95145ac87..0c689a809f 100644
--- a/input/regression/chords-funky-ignatzek.ly
+++ b/input/regression/chords-funky-ignatzek.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/clef-oct.ly b/input/regression/clef-oct.ly
index ea2b10fc31..4b0fa673a5 100644
--- a/input/regression/clef-oct.ly
+++ b/input/regression/clef-oct.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26" \header {
+\version "2.1.28" \header {
 
     texidoc = "Octavation signs may be added to clefs.  These
 octavation signs may be placed below or above (meaning an octave
diff --git a/input/regression/clefs.ly b/input/regression/clefs.ly
index 6ab1e1f52b..527d2ab663 100644
--- a/input/regression/clefs.ly
+++ b/input/regression/clefs.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/regression/cluster.ly b/input/regression/cluster.ly
index e3999f03ca..ea295e529a 100644
--- a/input/regression/cluster.ly
+++ b/input/regression/cluster.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Clusters are a device to denote that a complete range of
 notes is to be played."
diff --git a/input/regression/collision-2.ly b/input/regression/collision-2.ly
index 63d0b872cb..7e0ff15196 100644
--- a/input/regression/collision-2.ly
+++ b/input/regression/collision-2.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Single head notes may collide. "
 }
diff --git a/input/regression/collision-dots-invert.ly b/input/regression/collision-dots-invert.ly
index 7319b94566..1a2e8fdfb0 100644
--- a/input/regression/collision-dots-invert.ly
+++ b/input/regression/collision-dots-invert.ly
@@ -4,7 +4,7 @@
     dots: notes with dots should go to the right, if there could be
     confusion to which notes the dots belong."
 }
-\version "2.1.26"
+\version "2.1.28"
 \score { 
   \notes \relative c'' { 
     << <a c>2\\ { <b d>4 <b d>4 }   >>
diff --git a/input/regression/collision-dots-move.ly b/input/regression/collision-dots-move.ly
index badf9cd8bb..0e69b3f13a 100644
--- a/input/regression/collision-dots-move.ly
+++ b/input/regression/collision-dots-move.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc = "If collision resolution finds dotted note head must
diff --git a/input/regression/collision-dots.ly b/input/regression/collision-dots.ly
index 238fe88fb8..eec6e3448a 100644
--- a/input/regression/collision-dots.ly
+++ b/input/regression/collision-dots.ly
@@ -5,7 +5,7 @@
   on the right side."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 \paper { raggedright= ##t }
 
 % todo: b2 (up) + b8 down looks strange compared to c2up + b8. (down)
diff --git a/input/regression/collision-head-chords.ly b/input/regression/collision-head-chords.ly
index 2ec400adb7..1b44530531 100644
--- a/input/regression/collision-head-chords.ly
+++ b/input/regression/collision-head-chords.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Note heads in collisions should be merged if
 they have the same positions in the extreme note heads.  
diff --git a/input/regression/collision-heads.ly b/input/regression/collision-heads.ly
index 16ee356840..6f882df221 100644
--- a/input/regression/collision-heads.ly
+++ b/input/regression/collision-heads.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc =
 
diff --git a/input/regression/collision-merge-differently-dotted.ly b/input/regression/collision-merge-differently-dotted.ly
index 90e3859fcb..e571e5d6d2 100644
--- a/input/regression/collision-merge-differently-dotted.ly
+++ b/input/regression/collision-merge-differently-dotted.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc = "If NoteCollision has merge-differently-dotted = ##t note
diff --git a/input/regression/collision-merge-dots.ly b/input/regression/collision-merge-dots.ly
index db5039855d..cb91baf7c3 100644
--- a/input/regression/collision-merge-dots.ly
+++ b/input/regression/collision-merge-dots.ly
@@ -2,7 +2,7 @@
 
     texidoc = "When merging heads, the dots are merged too."
     }
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
 \notes {
diff --git a/input/regression/collision-mesh.ly b/input/regression/collision-mesh.ly
index d8fdc2d6f8..868a48fa25 100644
--- a/input/regression/collision-mesh.ly
+++ b/input/regression/collision-mesh.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Oppositely stemmed chords,  meshing into each other,
 are resolved."
diff --git a/input/regression/collisions.ly b/input/regression/collisions.ly
index e73452a559..a4a7fe0be4 100644
--- a/input/regression/collisions.ly
+++ b/input/regression/collisions.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 In addition to normal collision rules, there is support for polyphony, 
diff --git a/input/regression/completion-heads-polyphony.ly b/input/regression/completion-heads-polyphony.ly
index 58f5756944..cfd9a70a58 100644
--- a/input/regression/completion-heads-polyphony.ly
+++ b/input/regression/completion-heads-polyphony.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Completion heads are broken across bar lines. This was
diff --git a/input/regression/completion-heads.ly b/input/regression/completion-heads.ly
index 028be0e10b..6b44310e35 100644
--- a/input/regression/completion-heads.ly
+++ b/input/regression/completion-heads.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/custos.ly b/input/regression/custos.ly
index 63b370c46e..58eac04632 100644
--- a/input/regression/custos.ly
+++ b/input/regression/custos.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Custodes may be engraved in various styles."
 }
diff --git a/input/regression/dot-flag-collision.ly b/input/regression/dot-flag-collision.ly
index ca9f9c1f6b..d68b8b7303 100644
--- a/input/regression/dot-flag-collision.ly
+++ b/input/regression/dot-flag-collision.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Dots move to the right when a collision with the (up)flag happens."
 }
diff --git a/input/regression/dots.ly b/input/regression/dots.ly
index 1b22448b72..850d0d8941 100644
--- a/input/regression/dots.ly
+++ b/input/regression/dots.ly
@@ -1,4 +1,4 @@
-\version "2.1.26" \header{
+\version "2.1.28" \header{
 
 
     texidoc=" Noteheads can have dots, and rests too.  
diff --git a/input/regression/drums.ly b/input/regression/drums.ly
index 0acda3bcfe..a561bb60e2 100644
--- a/input/regression/drums.ly
+++ b/input/regression/drums.ly
@@ -7,7 +7,7 @@
 }
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 drh = \drums { cymc4.^"crash" hhc16^"h.h." hh \repeat "unfold" 5 {hhc8 hho hhc8 hh16 hh} hhc4 r4 r2 }
 drl = \drums {\repeat "unfold" 3 {bd4 sn8 bd bd4 << bd ss >> } bd8 tommh tommh bd toml toml bd tomfh16 tomfh }
diff --git a/input/regression/dynamics-broken-hairpin.ly b/input/regression/dynamics-broken-hairpin.ly
index 21ae2196ab..a0ab8b3a7d 100644
--- a/input/regression/dynamics-broken-hairpin.ly
+++ b/input/regression/dynamics-broken-hairpin.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc = "Broken crescendi should be open on one side."
 }
diff --git a/input/regression/dynamics-glyphs.ly b/input/regression/dynamics-glyphs.ly
index 1e9cf4d581..79a53320e8 100644
--- a/input/regression/dynamics-glyphs.ly
+++ b/input/regression/dynamics-glyphs.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {texidoc = "Dynamic letters are kerned, and their weight
 matches that of the hairpin signs.  The dynamic scripts should be
diff --git a/input/regression/dynamics-line.ly b/input/regression/dynamics-line.ly
index 57eba1ce0f..490ef38c9b 100644
--- a/input/regression/dynamics-line.ly
+++ b/input/regression/dynamics-line.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc=" Dynamics appear below or above the staff.  If multiple
 dynamics are linked with (de)crescendi, they should be on the same
diff --git a/input/regression/dynamics-unbound-hairpin.ly b/input/regression/dynamics-unbound-hairpin.ly
index 5f15ace757..2affdc49fe 100644
--- a/input/regression/dynamics-unbound-hairpin.ly
+++ b/input/regression/dynamics-unbound-hairpin.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "Crescendi may start off-notes, however, they should  not collapse into flat lines."
diff --git a/input/regression/easy-notation.ly b/input/regression/easy-notation.ly
index d5448afff3..2421bba5da 100644
--- a/input/regression/easy-notation.ly
+++ b/input/regression/easy-notation.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = " Easy-notation (or Ez-notation) prints names in note heads.
diff --git a/input/regression/figured-bass.ly b/input/regression/figured-bass.ly
index a1cd5804d2..4fc80520cd 100644
--- a/input/regression/figured-bass.ly
+++ b/input/regression/figured-bass.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "
 Figured bass is created by the FiguredBass context which eats
diff --git a/input/regression/finger-chords.ly b/input/regression/finger-chords.ly
index 76aea57b97..38d97d986a 100644
--- a/input/regression/finger-chords.ly
+++ b/input/regression/finger-chords.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "With the new chord syntax, it is possible to associate
diff --git a/input/regression/fingering.ly b/input/regression/fingering.ly
index 98dd42ff9b..a6f0bb1d57 100644
--- a/input/regression/fingering.ly
+++ b/input/regression/fingering.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Automatic fingering tries to put fingering instructions
diff --git a/input/regression/follow-voice-break.ly b/input/regression/follow-voice-break.ly
index 165523e41c..51687627f9 100644
--- a/input/regression/follow-voice-break.ly
+++ b/input/regression/follow-voice-break.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
        texidoc = "
 The line-spanners connects to the Y position of the note  on the next line.
diff --git a/input/regression/font-magnification.ly b/input/regression/font-magnification.ly
index 1a27a64ead..a4a15c42ed 100644
--- a/input/regression/font-magnification.ly
+++ b/input/regression/font-magnification.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "The magnification can be set for any font. Note
 that this does not change variable symbols such as beams or slurs. 
 " }
diff --git a/input/regression/font-name.ly b/input/regression/font-name.ly
index 0133ce5292..b4afee4e47 100644
--- a/input/regression/font-name.ly
+++ b/input/regression/font-name.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/glissando.ly b/input/regression/glissando.ly
index f37967f628..406d6da145 100644
--- a/input/regression/glissando.ly
+++ b/input/regression/glissando.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/regression/grace-auto-beam.ly b/input/regression/grace-auto-beam.ly
index c8af917297..a6be726723 100644
--- a/input/regression/grace-auto-beam.ly
+++ b/input/regression/grace-auto-beam.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc = "The autobeamer is not confused by grace notes."
diff --git a/input/regression/grace-bar-line.ly b/input/regression/grace-bar-line.ly
index f0c94fd2df..26a1871c02 100644
--- a/input/regression/grace-bar-line.ly
+++ b/input/regression/grace-bar-line.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Bar line should come before the grace note."
 }
diff --git a/input/regression/grace-bar-number.ly b/input/regression/grace-bar-number.ly
index 0e11a7dff2..f78a4fd5d8 100644
--- a/input/regression/grace-bar-number.ly
+++ b/input/regression/grace-bar-number.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Grace notes do tricky things with timing. If a measure
diff --git a/input/regression/grace-beam.ly b/input/regression/grace-beam.ly
index 288fb16fbd..4b53d818fa 100644
--- a/input/regression/grace-beam.ly
+++ b/input/regression/grace-beam.ly
@@ -9,6 +9,6 @@ Unbeamed grace notes are not put into normal beams.
     \paper { raggedright= ##t }
 
 
-\version "2.1.26"
+\version "2.1.28"
 \score { \notes\relative c'' { c4  d8[ \grace {  e32[  d c d] } e8]  e[  e \grace { f16 } e8 e]   }}
 
diff --git a/input/regression/grace-end.ly b/input/regression/grace-end.ly
index 529efff8d4..60345f8855 100644
--- a/input/regression/grace-end.ly
+++ b/input/regression/grace-end.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc="@cindex Grace End
diff --git a/input/regression/grace-nest.ly b/input/regression/grace-nest.ly
index bb631ea5f2..b583e9da4e 100644
--- a/input/regression/grace-nest.ly
+++ b/input/regression/grace-nest.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Grace code should not be confused by nested sequential musics, containing grace notes; practically speaking, this means that the end-bar and measure bar coincide in this example." 
 
diff --git a/input/regression/grace-nest1.ly b/input/regression/grace-nest1.ly
index b354f49c27..3967a0bfab 100644
--- a/input/regression/grace-nest1.ly
+++ b/input/regression/grace-nest1.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Grace code should not be confused by nested sequential musics, containing grace notes; practically speaking, this means that the end-bar and measure bar coincide in this example." 
 
diff --git a/input/regression/grace-nest2.ly b/input/regression/grace-nest2.ly
index 4f9623a3c9..ccf6d9c618 100644
--- a/input/regression/grace-nest2.ly
+++ b/input/regression/grace-nest2.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Grace code should not be confused by nested sequential musics, containing grace notes; practically speaking, this means that the end-bar and measure bar coincide in this example." 
 
diff --git a/input/regression/grace-nest3.ly b/input/regression/grace-nest3.ly
index ba8df3114e..2be2977880 100644
--- a/input/regression/grace-nest3.ly
+++ b/input/regression/grace-nest3.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "In nested syntax, graces are still properly handled."
     }
diff --git a/input/regression/grace-nest4.ly b/input/regression/grace-nest4.ly
index 96f5549234..93681810b4 100644
--- a/input/regression/grace-nest4.ly
+++ b/input/regression/grace-nest4.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Also in the nested syntax here, grace notes appear rightly."
 }
diff --git a/input/regression/grace-nest5.ly b/input/regression/grace-nest5.ly
index 81a6158601..387b2e990b 100644
--- a/input/regression/grace-nest5.ly
+++ b/input/regression/grace-nest5.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Graces notes may have the same duration as the main note."
     }
diff --git a/input/regression/grace-part-combine.ly b/input/regression/grace-part-combine.ly
index 673dc5e1ac..90c2843bbd 100644
--- a/input/regression/grace-part-combine.ly
+++ b/input/regression/grace-part-combine.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Grace notes may be put in a @code{partcombine}r."
 }
diff --git a/input/regression/grace-staff-length.ly b/input/regression/grace-staff-length.ly
index 668e38c20a..4e11480052 100644
--- a/input/regression/grace-staff-length.ly
+++ b/input/regression/grace-staff-length.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc = "Stripped version of trip.ly.  Staves should be of correct length."
 }
diff --git a/input/regression/grace-start.ly b/input/regression/grace-start.ly
index 908bcd3d17..dabbb9137b 100644
--- a/input/regression/grace-start.ly
+++ b/input/regression/grace-start.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Pieces may begin with grace notes."
 }
diff --git a/input/regression/grace-stems.ly b/input/regression/grace-stems.ly
index a5baf79247..da271c0f6e 100644
--- a/input/regression/grace-stems.ly
+++ b/input/regression/grace-stems.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc = "Here @code{startGraceMusic} should set @code{no-stem-extend} to 
 true; the two grace beams should be the same here.
diff --git a/input/regression/grace-sync.ly b/input/regression/grace-sync.ly
index 6fd07c4fc0..6677836c1f 100644
--- a/input/regression/grace-sync.ly
+++ b/input/regression/grace-sync.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header  {
   texidoc = "Grace notes in different voices/staves are synchronized."
 }
diff --git a/input/regression/grace-types.ly b/input/regression/grace-types.ly
index 2c8ec55108..0d07a871ed 100644
--- a/input/regression/grace-types.ly
+++ b/input/regression/grace-types.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "There are three different kinds of grace types: the base 
 grace switches to smaller type, the appoggiatura inserts also a slur, and the
diff --git a/input/regression/grace-unfold-repeat.ly b/input/regression/grace-unfold-repeat.ly
index 7b3fae9074..572e1723b3 100644
--- a/input/regression/grace-unfold-repeat.ly
+++ b/input/regression/grace-unfold-repeat.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "When grace notes are entered with unfolded repeats,
 line breaks take place before  grace  notes.
diff --git a/input/regression/grace-volta-repeat-2.ly b/input/regression/grace-volta-repeat-2.ly
index dbdb6e0979..68a1eebb25 100644
--- a/input/regression/grace-volta-repeat-2.ly
+++ b/input/regression/grace-volta-repeat-2.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/grace-volta-repeat.ly b/input/regression/grace-volta-repeat.ly
index f9a5dbb656..77e769490a 100644
--- a/input/regression/grace-volta-repeat.ly
+++ b/input/regression/grace-volta-repeat.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/grace.ly b/input/regression/grace.ly
index 6be263f84d..734a0138db 100644
--- a/input/regression/grace.ly
+++ b/input/regression/grace.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/hairpin-dashed.ly b/input/regression/hairpin-dashed.ly
index a75b498505..93637cb63b 100644
--- a/input/regression/hairpin-dashed.ly
+++ b/input/regression/hairpin-dashed.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc ="Hairpin crescendi may be dashed. "
diff --git a/input/regression/hairpin-ending.ly b/input/regression/hairpin-ending.ly
index 4e9160a8b0..7c09f73072 100644
--- a/input/regression/hairpin-ending.ly
+++ b/input/regression/hairpin-ending.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/hara-kiri-pianostaff.ly b/input/regression/hara-kiri-pianostaff.ly
index f192c748e7..3ddc31cc94 100644
--- a/input/regression/hara-kiri-pianostaff.ly
+++ b/input/regression/hara-kiri-pianostaff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc =
 
diff --git a/input/regression/instrument-name-markup.ly b/input/regression/instrument-name-markup.ly
index 8b10ca35b8..d04ad1344d 100644
--- a/input/regression/instrument-name-markup.ly
+++ b/input/regression/instrument-name-markup.ly
@@ -7,7 +7,7 @@ including alterations. "
 }
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 textFlat = \markup {\smaller \flat}
diff --git a/input/regression/instrument-name-partial.ly b/input/regression/instrument-name-partial.ly
index 38469f115b..b1c60a5571 100644
--- a/input/regression/instrument-name-partial.ly
+++ b/input/regression/instrument-name-partial.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Instrument names are also printed on  partial starting measures."
 }
diff --git a/input/regression/instrument-name.ly b/input/regression/instrument-name.ly
index 9098e93feb..09f773940b 100644
--- a/input/regression/instrument-name.ly
+++ b/input/regression/instrument-name.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Staff margins are also markings attached to barlines.  They should be
diff --git a/input/regression/key-clefs.ly b/input/regression/key-clefs.ly
index 329911ee3a..bc15419dd0 100644
--- a/input/regression/key-clefs.ly
+++ b/input/regression/key-clefs.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "Each clef have own accidental placing rules. " }
 
 \score { \notes
diff --git a/input/regression/key-signature-scordatura.ly b/input/regression/key-signature-scordatura.ly
index d34885dd29..43d993fb7b 100644
--- a/input/regression/key-signature-scordatura.ly
+++ b/input/regression/key-signature-scordatura.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "By setting @code{Staff.keySignature} directly,
 key signatures can be set invidually per pitch.
diff --git a/input/regression/keys.ly b/input/regression/keys.ly
index d98da14368..25d60c3ae4 100644
--- a/input/regression/keys.ly
+++ b/input/regression/keys.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Key signatures may appear on key changes, even without a barline.  
diff --git a/input/regression/lyric-combine-new.ly b/input/regression/lyric-combine-new.ly
index 928f6c7a12..1ebeeb674c 100644
--- a/input/regression/lyric-combine-new.ly
+++ b/input/regression/lyric-combine-new.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "With the @code{\\lyricsto} mechanism, individual lyric
diff --git a/input/regression/lyric-combine-polyphonic.ly b/input/regression/lyric-combine-polyphonic.ly
index 83f35d50b5..666df36bc6 100644
--- a/input/regression/lyric-combine-polyphonic.ly
+++ b/input/regression/lyric-combine-polyphonic.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc ="Polyphonic rhythms and rests do not disturb
diff --git a/input/regression/lyric-combine.ly b/input/regression/lyric-combine.ly
index 88067b8039..c22c92a224 100644
--- a/input/regression/lyric-combine.ly
+++ b/input/regression/lyric-combine.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc= "Lyrics can be set to a melody automatically.  Excess lyrics will be
diff --git a/input/regression/lyric-extender-broken.ly b/input/regression/lyric-extender-broken.ly
index 06395b2e4e..b2ca7958f7 100644
--- a/input/regression/lyric-extender-broken.ly
+++ b/input/regression/lyric-extender-broken.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
 
diff --git a/input/regression/lyric-extender.ly b/input/regression/lyric-extender.ly
index 635b7a52aa..203565319b 100644
--- a/input/regression/lyric-extender.ly
+++ b/input/regression/lyric-extender.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc= "In lyric extenders, a syllable may be extended over several notes. "}
 
diff --git a/input/regression/lyric-hyphen-break.ly b/input/regression/lyric-hyphen-break.ly
index d1d05f48cc..aa9c6ada7f 100644
--- a/input/regression/lyric-hyphen-break.ly
+++ b/input/regression/lyric-hyphen-break.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/lyric-hyphen.ly b/input/regression/lyric-hyphen.ly
index a52e3695db..983a238116 100644
--- a/input/regression/lyric-hyphen.ly
+++ b/input/regression/lyric-hyphen.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "In lyrics, hyphens may be used."
 }
diff --git a/input/regression/lyric-phrasing.ly b/input/regression/lyric-phrasing.ly
index eef50b280e..44bbc3ee66 100644
--- a/input/regression/lyric-phrasing.ly
+++ b/input/regression/lyric-phrasing.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "
diff --git a/input/regression/lyrics-bar.ly b/input/regression/lyrics-bar.ly
index dd79f0ab47..3f93f087a3 100644
--- a/input/regression/lyrics-bar.ly
+++ b/input/regression/lyrics-bar.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/lyrics-melisma-beam.ly b/input/regression/lyrics-melisma-beam.ly
index 86a6d3cf3a..c604169520 100644
--- a/input/regression/lyrics-melisma-beam.ly
+++ b/input/regression/lyrics-melisma-beam.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc = "Melismata are triggered by manual beams." 
diff --git a/input/regression/markup-note.ly b/input/regression/markup-note.ly
index 0d9a881913..8d9299c39d 100644
--- a/input/regression/markup-note.ly
+++ b/input/regression/markup-note.ly
@@ -3,7 +3,7 @@
     texidoc = "The note markup function may be used to make metronome
  markings. It works for a variety of flag, dot and duration settings."
 }
-\version "2.1.26"
+\version "2.1.28"
 
 \score { \notes { c4^\markup {
     \note #"1" #1
diff --git a/input/regression/markup-stack.ly b/input/regression/markup-stack.ly
index 7dccb9b3e7..14c154ae28 100644
--- a/input/regression/markup-stack.ly
+++ b/input/regression/markup-stack.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {texidoc="Markup scripts may be stacked."}
 \paper { raggedright = ##t}
 \score { \notes { c''^\markup { "a" \column < "1" \bold "2"  "3" > } } }
diff --git a/input/regression/markup-user.ly b/input/regression/markup-user.ly
index 8acadf4e6a..7afff8e9fc 100644
--- a/input/regression/markup-user.ly
+++ b/input/regression/markup-user.ly
@@ -7,7 +7,7 @@
 
       }
 
-\version "2.1.26" % to be updated
+\version "2.1.28" % to be updated
 
 #(def-markup-command (upcase paper props str) (string?)
   "Upcase the string characters. Syntax: \\upcase #\"string\""
diff --git a/input/regression/measure-grouping.ly b/input/regression/measure-grouping.ly
index 821c7d8e28..2ec1004316 100644
--- a/input/regression/measure-grouping.ly
+++ b/input/regression/measure-grouping.ly
@@ -7,7 +7,7 @@ brackets above beats when the beats of a time signature are grouped.  "
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 %% TODO: should have 2/4 + 5/8 time sig style.
diff --git a/input/regression/mensural.ly b/input/regression/mensural.ly
index 5c2cf23d57..8064d25faa 100644
--- a/input/regression/mensural.ly
+++ b/input/regression/mensural.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
 texidoc = "There is limited support for mensural notation: note head
diff --git a/input/regression/metronome-marking.ly b/input/regression/metronome-marking.ly
index 82b9777a6c..42606deeae 100644
--- a/input/regression/metronome-marking.ly
+++ b/input/regression/metronome-marking.ly
@@ -9,7 +9,7 @@ The marking is left aligned with the time signature, if there is one.
     
     }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score { \notes \relative c'' {   \tempo \breve = 100 c1 c1 \tempo 8.. = 50 c1 }
 \paper {  raggedright = ##t }
diff --git a/input/regression/mm-rests2.ly b/input/regression/mm-rests2.ly
index 33bbec12da..239c0a4371 100644
--- a/input/regression/mm-rests2.ly
+++ b/input/regression/mm-rests2.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/molecule-hacking.ly b/input/regression/molecule-hacking.ly
index 2897159149..3ac139c725 100644
--- a/input/regression/molecule-hacking.ly
+++ b/input/regression/molecule-hacking.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc=" You can write stencil callbacks in Scheme, thus
 providing custom glyphs for notation elements.  A simple example is
diff --git a/input/regression/multi-measure-rest-center.ly b/input/regression/multi-measure-rest-center.ly
index 16b25555ff..cf4fca7270 100644
--- a/input/regression/multi-measure-rest-center.ly
+++ b/input/regression/multi-measure-rest-center.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
   texidoc = "The multimeasure rest is centered exactly between bar lines."
diff --git a/input/regression/multi-measure-rest-grace.ly b/input/regression/multi-measure-rest-grace.ly
index 59ebb37b58..7bf52669d0 100644
--- a/input/regression/multi-measure-rest-grace.ly
+++ b/input/regression/multi-measure-rest-grace.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/multi-measure-rest-instr-name.ly b/input/regression/multi-measure-rest-instr-name.ly
index 1e74ef452e..1718c3a65d 100644
--- a/input/regression/multi-measure-rest-instr-name.ly
+++ b/input/regression/multi-measure-rest-instr-name.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "There are both long and short intstrument names.
 Engraving instrument names should not be confused by the
 multimeasure rests. " }
diff --git a/input/regression/multi-measure-rest-multi-staff-center.ly b/input/regression/multi-measure-rest-multi-staff-center.ly
index 5cb65fd530..2c76f95a5d 100644
--- a/input/regression/multi-measure-rest-multi-staff-center.ly
+++ b/input/regression/multi-measure-rest-multi-staff-center.ly
@@ -2,7 +2,7 @@
 independent on prefatory matter in other staves."
 
 	  }
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
 \notes    << \new Staff  { R1 } 
diff --git a/input/regression/multi-measure-rest-spacing.ly b/input/regression/multi-measure-rest-spacing.ly
index 015570e47d..80ceea45eb 100644
--- a/input/regression/multi-measure-rest-spacing.ly
+++ b/input/regression/multi-measure-rest-spacing.ly
@@ -3,7 +3,7 @@
     texidoc = "By setting texts starting with a multi-measure rest, an 
 extra spacing column is created. This should not cause problems."
     }
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     <<
diff --git a/input/regression/multi-measure-rest-text.ly b/input/regression/multi-measure-rest-text.ly
index 18810f3aca..bfbb4d1615 100644
--- a/input/regression/multi-measure-rest-text.ly
+++ b/input/regression/multi-measure-rest-text.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header  {
 
@@ -13,7 +13,7 @@ Texts may be added to the multi-measure rests.
 \score { \notes {
   \time 3/4
   \set Score.skipBars = ##t
-  R2._\markup { \center < \musicglyph  #"scripts-dfermata" \roman "Ad lib"  >  }
+  R2._\markup { \center-align < \musicglyph  #"scripts-dfermata" \roman "Ad lib"  >  }
   R2.^\fermataMarkup
   R2.^"4"
   R2.*3_\markup { \roman "a1b2c3" }
diff --git a/input/regression/multi-measure-rest.ly b/input/regression/multi-measure-rest.ly
index 958a6ed6c9..d6492ed319 100644
--- a/input/regression/multi-measure-rest.ly
+++ b/input/regression/multi-measure-rest.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 
 texidoc="
diff --git a/input/regression/music-map.ly b/input/regression/music-map.ly
index 7536d93002..abe6ecf537 100644
--- a/input/regression/music-map.ly
+++ b/input/regression/music-map.ly
@@ -10,7 +10,7 @@ dynamics are left over. These are put onto the 2nd measure."
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 #(define (notes-to-skip m)
 "Convert all stuff with duration (notes, lyrics, bass figures, etc.) to skips.
diff --git a/input/regression/new-markup-scheme.ly b/input/regression/new-markup-scheme.ly
index 3692a1dffd..10acad6da5 100644
--- a/input/regression/new-markup-scheme.ly
+++ b/input/regression/new-markup-scheme.ly
@@ -5,7 +5,7 @@
     texts using a similar syntax as @code{\\markup}."
 
     }
-\version "2.1.26"
+\version "2.1.28"
 \score {
     \notes {
         \fatText
@@ -50,7 +50,7 @@
               #:super "2"
               #:dynamic "sfzp"
               #:huge #:line ("A" #:smaller "A" #:smaller #:smaller "A" 
-                             #:smaller #:smaller #:smaller "A")
+                             #:smaller #:smaller #:smaller "A")xo
               #:sub "alike")
     }
     \paper { 
diff --git a/input/regression/new-markup-syntax.ly b/input/regression/new-markup-syntax.ly
index a9f263f184..79f16b5179 100644
--- a/input/regression/new-markup-syntax.ly
+++ b/input/regression/new-markup-syntax.ly
@@ -2,7 +2,7 @@
 texidoc = "With the new markup syntax, text may be written in various manners."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 \score {
diff --git a/input/regression/non-empty-text.ly b/input/regression/non-empty-text.ly
index da08d4ecf7..c3fd49fa09 100644
--- a/input/regression/non-empty-text.ly
+++ b/input/regression/non-empty-text.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
     texidoc=" By default, text is set with empty horizontal dimensions.  
diff --git a/input/regression/note-group-bracket.ly b/input/regression/note-group-bracket.ly
index 065d64bd21..f5ab8eddc7 100644
--- a/input/regression/note-group-bracket.ly
+++ b/input/regression/note-group-bracket.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/note-head-chord.ly b/input/regression/note-head-chord.ly
index be3c1a0c31..29986bce63 100644
--- a/input/regression/note-head-chord.ly
+++ b/input/regression/note-head-chord.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     texidoc = "Note heads are flipped on the stem to prevent collisions.
diff --git a/input/regression/note-head-harmonic.ly b/input/regression/note-head-harmonic.ly
index 903af474bd..ac1988c4d4 100644
--- a/input/regression/note-head-harmonic.ly
+++ b/input/regression/note-head-harmonic.ly
@@ -6,7 +6,7 @@
   Harmonic heads do not get accidentals or dots."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
  \notes {
diff --git a/input/regression/note-head-style.ly b/input/regression/note-head-style.ly
index 9d14182f8c..5ad9dd588d 100644
--- a/input/regression/note-head-style.ly
+++ b/input/regression/note-head-style.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Note head shapes may be set from several choices.  
diff --git a/input/regression/note-line.ly b/input/regression/note-line.ly
index 4e889eea0b..26042af9d4 100644
--- a/input/regression/note-line.ly
+++ b/input/regression/note-line.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "Note head lines (e.g. glissando)
diff --git a/input/regression/number-staff-lines.ly b/input/regression/number-staff-lines.ly
index 1b9fa83bb2..830d4702d1 100644
--- a/input/regression/number-staff-lines.ly
+++ b/input/regression/number-staff-lines.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc=" The number of stafflines of a staff can be set.  Ledger
diff --git a/input/regression/ottava-broken.ly b/input/regression/ottava-broken.ly
index cadbdc04f9..e5e81ef88a 100644
--- a/input/regression/ottava-broken.ly
+++ b/input/regression/ottava-broken.ly
@@ -8,7 +8,7 @@ their horizontal line does not stick out."
 
 
 }
-\version "2.1.26"
+\version "2.1.28"
 
 
 \paper { raggedright = ##t} 
diff --git a/input/regression/ottava.ly b/input/regression/ottava.ly
index b4f0fdab03..6308297561 100644
--- a/input/regression/ottava.ly
+++ b/input/regression/ottava.ly
@@ -10,7 +10,7 @@ string can be tuned with @code{Staff.ottavation}.
 "
 
 }
-\version "2.1.26"
+\version "2.1.28"
 
 % . There must be a minimum distance between the octavation line and the
 %   topmost staff line, taking into account the height of the closing
diff --git a/input/regression/part-combine-a2.ly b/input/regression/part-combine-a2.ly
index 3ba574c8e6..9f96159f73 100644
--- a/input/regression/part-combine-a2.ly
+++ b/input/regression/part-combine-a2.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc ="The a2 string is printed only on notes (i.e. not on rests),
 and only after chords, solo or polyphony."
diff --git a/input/regression/part-combine-global.ly b/input/regression/part-combine-global.ly
index eb0de55c76..d1ec56c940 100644
--- a/input/regression/part-combine-global.ly
+++ b/input/regression/part-combine-global.ly
@@ -11,7 +11,7 @@ voices.
   
 "
     }
-\version "2.1.26"
+\version "2.1.28"
 
 vone =\notes
 
diff --git a/input/regression/part-combine-solo-global.ly b/input/regression/part-combine-solo-global.ly
index d67da45cb0..870aacbfc2 100644
--- a/input/regression/part-combine-solo-global.ly
+++ b/input/regression/part-combine-solo-global.ly
@@ -5,7 +5,7 @@
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \new Staff
diff --git a/input/regression/part-combine-solo.ly b/input/regression/part-combine-solo.ly
index f3a068592e..4ee68c82bf 100644
--- a/input/regression/part-combine-solo.ly
+++ b/input/regression/part-combine-solo.ly
@@ -17,7 +17,7 @@ Solo 1/2 can not be used when a spanner is active, so there is no solo
 vone = \notes \relative a' { d4 r8 d8 d8 r8 d8 r8 d2 ~ d2 ~ d4 }
 vtwo = \notes \relative g' { g4.   g8 r2          g4 r4 r2  g4 } 
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     
diff --git a/input/regression/part-combine-text.ly b/input/regression/part-combine-text.ly
index e8761ab403..eeb5202ca4 100644
--- a/input/regression/part-combine-text.ly
+++ b/input/regression/part-combine-text.ly
@@ -9,7 +9,7 @@ texts accordingly.
     }
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 vone = \notes \relative a' { R1 a2    r4 r a a a a }
 vtwo = \notes \relative a' { R1 f4 f4 f4 f f f a a  }
diff --git a/input/regression/part-combine.ly b/input/regression/part-combine.ly
index 438d503e3d..e0237371c1 100644
--- a/input/regression/part-combine.ly
+++ b/input/regression/part-combine.ly
@@ -9,7 +9,7 @@
 "
     }
 
-\version "2.1.26"
+\version "2.1.28"
 
 vone = \notes \relative a' { g2 g    g  g4 g f' c c( c) c c  c ~ c
 			     c2. c4   c
diff --git a/input/regression/pedal-bracket.ly b/input/regression/pedal-bracket.ly
index 0d6c571801..69569b8ecb 100644
--- a/input/regression/pedal-bracket.ly
+++ b/input/regression/pedal-bracket.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/pedal-ped.ly b/input/regression/pedal-ped.ly
index a70b3577df..222ad77207 100644
--- a/input/regression/pedal-ped.ly
+++ b/input/regression/pedal-ped.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc = "The standard piano pedals style comes with Ped symbols.
diff --git a/input/regression/phrasing-slur.ly b/input/regression/phrasing-slur.ly
index eba84f40ab..43cd07b4cd 100644
--- a/input/regression/phrasing-slur.ly
+++ b/input/regression/phrasing-slur.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc="Ordinary slurs should work well with phrasing slur."
diff --git a/input/regression/prefatory-empty-spacing.ly b/input/regression/prefatory-empty-spacing.ly
index 5a67e0e424..3723161e77 100644
--- a/input/regression/prefatory-empty-spacing.ly
+++ b/input/regression/prefatory-empty-spacing.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/prefatory-spacing-matter.ly b/input/regression/prefatory-spacing-matter.ly
index bc1949f6cd..60020dc3b6 100644
--- a/input/regression/prefatory-spacing-matter.ly
+++ b/input/regression/prefatory-spacing-matter.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Distances between prefatory items (e.g. clef, bar, etc.)
diff --git a/input/regression/property-once.ly b/input/regression/property-once.ly
index b1b22e9b9e..59980ccc9f 100644
--- a/input/regression/property-once.ly
+++ b/input/regression/property-once.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Once properties take effect during a single time step only."
 }
diff --git a/input/regression/quote-transposition.ly b/input/regression/quote-transposition.ly
index 66fdbab12d..1b2c55a730 100644
--- a/input/regression/quote-transposition.ly
+++ b/input/regression/quote-transposition.ly
@@ -6,7 +6,7 @@
 In this example, all instruments play sounding central C, the target is a instrument in F."
 
 }
-\version "2.1.26"
+\version "2.1.28"
 
 
 \addquote clarinet \notes {
diff --git a/input/regression/quote.ly b/input/regression/quote.ly
index 567119a847..8fbcdd8733 100644
--- a/input/regression/quote.ly
+++ b/input/regression/quote.ly
@@ -5,7 +5,7 @@
 music may be quoted. " 
 
 }
-\version "2.1.26"
+\version "2.1.28"
 
 \addquote bla \notes\relative c' {
     fis4 g a b }
diff --git a/input/regression/rehearsal-mark-letter.ly b/input/regression/rehearsal-mark-letter.ly
index c8346fde0d..3213684e9b 100644
--- a/input/regression/rehearsal-mark-letter.ly
+++ b/input/regression/rehearsal-mark-letter.ly
@@ -5,7 +5,7 @@ and after Z, double letters are used.  The mark may be set
 with @code{\mark NUMBER}, or with @code{Score.rehearsalMark}."
       }
 
-\version "2.1.26"
+\version "2.1.28"
 \score {  \notes \relative c'' {
   c1  \mark \default
   c1  \mark #7
diff --git a/input/regression/rehearsal-mark-number.ly b/input/regression/rehearsal-mark-number.ly
index 907cf34a16..8ae3b009d0 100644
--- a/input/regression/rehearsal-mark-number.ly
+++ b/input/regression/rehearsal-mark-number.ly
@@ -5,7 +5,7 @@ By setting @code{markFormatter} we may choose a different style of mark printing
 	  
       }
 
-\version "2.1.26"
+\version "2.1.28"
 \score {
   \notes \relative c''{
     \set Score.markFormatter = #format-mark-numbers 
diff --git a/input/regression/repeat-fold.ly b/input/regression/repeat-fold.ly
index 0784ceeacf..9fb5b82e9f 100644
--- a/input/regression/repeat-fold.ly
+++ b/input/regression/repeat-fold.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/repeat-line-break.ly b/input/regression/repeat-line-break.ly
index 74780ceb9a..5b9073cdf1 100644
--- a/input/regression/repeat-line-break.ly
+++ b/input/regression/repeat-line-break.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/repeat-percent-skipbars.ly b/input/regression/repeat-percent-skipbars.ly
index af4017d0ea..758db03502 100644
--- a/input/regression/repeat-percent-skipbars.ly
+++ b/input/regression/repeat-percent-skipbars.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/regression/repeat-percent.ly b/input/regression/repeat-percent.ly
index 333c5de75d..618807e4f1 100644
--- a/input/regression/repeat-percent.ly
+++ b/input/regression/repeat-percent.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Measure repeats may be nested with beat repeats."
 }
diff --git a/input/regression/repeat-slash.ly b/input/regression/repeat-slash.ly
index 7a12a67534..d3f9599983 100644
--- a/input/regression/repeat-slash.ly
+++ b/input/regression/repeat-slash.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Within a bar, beat repeats denote that a music snippet should be
 played again."
diff --git a/input/regression/repeat-unfold-all.ly b/input/regression/repeat-unfold-all.ly
index b6509c5fed..65060c17ef 100644
--- a/input/regression/repeat-unfold-all.ly
+++ b/input/regression/repeat-unfold-all.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     texidoc = "Repeats may be unfolded through the Scheme function @code{unfold-repeats}."
diff --git a/input/regression/repeat-unfold.ly b/input/regression/repeat-unfold.ly
index 95ccfdcd78..5bc3767f03 100644
--- a/input/regression/repeat-unfold.ly
+++ b/input/regression/repeat-unfold.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/repeat-volta-skip-alternatives.ly b/input/regression/repeat-volta-skip-alternatives.ly
index d3be656ac2..1237c65d5a 100644
--- a/input/regression/repeat-volta-skip-alternatives.ly
+++ b/input/regression/repeat-volta-skip-alternatives.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "When too few alternatives are present, the first
diff --git a/input/regression/repeat-volta.ly b/input/regression/repeat-volta.ly
index faf0ed1783..df19f24d8c 100644
--- a/input/regression/repeat-volta.ly
+++ b/input/regression/repeat-volta.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/rest-collision-beam.ly b/input/regression/rest-collision-beam.ly
index 6124b2551f..3dccd46256 100644
--- a/input/regression/rest-collision-beam.ly
+++ b/input/regression/rest-collision-beam.ly
@@ -2,7 +2,7 @@
     texidoc = "Rests under beams are only moved if necessary."
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 fig =  \notes \relative c' {
     <a c e>8[ r <c e a> r <e a c> r <a c e>]  r |
diff --git a/input/regression/rest-collision.ly b/input/regression/rest-collision.ly
index 6d6e998f05..4d93a1e35a 100644
--- a/input/regression/rest-collision.ly
+++ b/input/regression/rest-collision.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Rests should not collide with beams, stems and noteheads.  Rests may
diff --git a/input/regression/rest-ledger.ly b/input/regression/rest-ledger.ly
index 8e816bb99e..919583a9d1 100644
--- a/input/regression/rest-ledger.ly
+++ b/input/regression/rest-ledger.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Whole and half rests moving outside the staff should get
 ledger lines."
diff --git a/input/regression/rest-pitch.ly b/input/regression/rest-pitch.ly
index 84aa003653..91d04e60f9 100644
--- a/input/regression/rest-pitch.ly
+++ b/input/regression/rest-pitch.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Rests can have pitches--these will be affected by
diff --git a/input/regression/rest-polyphonic.ly b/input/regression/rest-polyphonic.ly
index f246bd532f..cf40de4e9f 100644
--- a/input/regression/rest-polyphonic.ly
+++ b/input/regression/rest-polyphonic.ly
@@ -7,7 +7,7 @@ even if there is no opposite note or rest. The amount is two
     }
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
   \new Staff \notes \relative c' {
diff --git a/input/regression/rest.ly b/input/regression/rest.ly
index 0db13ca5cd..3ce8508dbf 100644
--- a/input/regression/rest.ly
+++ b/input/regression/rest.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/rhythmic-staff.ly b/input/regression/rhythmic-staff.ly
index 46f751d3ee..b846217752 100644
--- a/input/regression/rhythmic-staff.ly
+++ b/input/regression/rhythmic-staff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
 
diff --git a/input/regression/script-collision.ly b/input/regression/script-collision.ly
index 2ec29a0b17..d8c887c240 100644
--- a/input/regression/script-collision.ly
+++ b/input/regression/script-collision.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/regression/script-stack-order.ly b/input/regression/script-stack-order.ly
index 3d79ed09a1..1307d7953d 100644
--- a/input/regression/script-stack-order.ly
+++ b/input/regression/script-stack-order.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Scripts can be stacked. The order is determined by a
 priority field, but when objects have the same priority, the input
diff --git a/input/regression/script-stacked.ly b/input/regression/script-stacked.ly
index 7780a659f2..376890fb51 100644
--- a/input/regression/script-stacked.ly
+++ b/input/regression/script-stacked.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \paper { raggedright= ##t }
 
diff --git a/input/regression/size11.ly b/input/regression/size11.ly
index 39302fef5c..ed53a9f3ca 100644
--- a/input/regression/size11.ly
+++ b/input/regression/size11.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/size13.ly b/input/regression/size13.ly
index 91fb12382c..74ae072d49 100644
--- a/input/regression/size13.ly
+++ b/input/regression/size13.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 foollilypondbook = "
 \score
 "
diff --git a/input/regression/size16.ly b/input/regression/size16.ly
index 9f65e03a5f..43c5193822 100644
--- a/input/regression/size16.ly
+++ b/input/regression/size16.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 foollilypondbook = "
 \score
 "
diff --git a/input/regression/size20.ly b/input/regression/size20.ly
index c02f7822d6..6e449b2e51 100644
--- a/input/regression/size20.ly
+++ b/input/regression/size20.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 foollilypondbook = "
 \score
 "
diff --git a/input/regression/size23.ly b/input/regression/size23.ly
index 741098a75c..146fe15dd9 100644
--- a/input/regression/size23.ly
+++ b/input/regression/size23.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 foollilypondbook = "
 \score
 "
diff --git a/input/regression/size26.ly b/input/regression/size26.ly
index ad2189b510..80473ba43c 100644
--- a/input/regression/size26.ly
+++ b/input/regression/size26.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 foollilypondbook = "
 \score
 "
diff --git a/input/regression/slur-area.ly b/input/regression/slur-area.ly
index f6ca1d41af..e8797264ce 100644
--- a/input/regression/slur-area.ly
+++ b/input/regression/slur-area.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc = "The area underneath an (up) slur is minimised to improve the shape. "
diff --git a/input/regression/slur-attachment.ly b/input/regression/slur-attachment.ly
index 255597ef39..4e8f3e5ed5 100644
--- a/input/regression/slur-attachment.ly
+++ b/input/regression/slur-attachment.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/slur-broken-trend.ly b/input/regression/slur-broken-trend.ly
index 9479cbccb2..9c9a2ddd27 100644
--- a/input/regression/slur-broken-trend.ly
+++ b/input/regression/slur-broken-trend.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/slur-cross-staff.ly b/input/regression/slur-cross-staff.ly
index 4c9b3d68bc..f6f80f697a 100644
--- a/input/regression/slur-cross-staff.ly
+++ b/input/regression/slur-cross-staff.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Slurs behave decently when broken across a linebreak.
diff --git a/input/regression/slur-dots.ly b/input/regression/slur-dots.ly
index 8b932dfc60..528f42a0b2 100644
--- a/input/regression/slur-dots.ly
+++ b/input/regression/slur-dots.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="Slurs should not get confused by augmentation dots.  With a lot
 of dots, the problems becomes more visible."
diff --git a/input/regression/slur-nice.ly b/input/regression/slur-nice.ly
index 479382b31c..b0468e3807 100644
--- a/input/regression/slur-nice.ly
+++ b/input/regression/slur-nice.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Slurs should look nice and symmetric.  The curvature may increase
diff --git a/input/regression/slur-rest.ly b/input/regression/slur-rest.ly
index 5936876713..7ac43d1635 100644
--- a/input/regression/slur-rest.ly
+++ b/input/regression/slur-rest.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc ="Slurs may be placed over rest. The slur will avoid colliding with
diff --git a/input/regression/slur-staccato.ly b/input/regression/slur-staccato.ly
index 5660d24bbb..2321ef78f8 100644
--- a/input/regression/slur-staccato.ly
+++ b/input/regression/slur-staccato.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc="An extra offset may be added between a slur and staccato(s)."
 }
diff --git a/input/regression/slur-stem-broken.ly b/input/regression/slur-stem-broken.ly
index 10039ca012..3dfd271147 100644
--- a/input/regression/slur-stem-broken.ly
+++ b/input/regression/slur-stem-broken.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc="Trend of broken slur with user-overridden stem attachment should also
 follow the same vertical direction it would have had in unbroken state."
diff --git a/input/regression/slur-symmetry-1.ly b/input/regression/slur-symmetry-1.ly
index dde1f18caf..91bbf3b6d0 100644
--- a/input/regression/slur-symmetry-1.ly
+++ b/input/regression/slur-symmetry-1.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
   texidoc = "Symmetric figures should lead to symmetric slurs."
diff --git a/input/regression/slur-symmetry.ly b/input/regression/slur-symmetry.ly
index 0bbdb9e8f8..92e46028e0 100644
--- a/input/regression/slur-symmetry.ly
+++ b/input/regression/slur-symmetry.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header
 {
     texidoc = "Symmetric figures should lead to symmetric slurs."
diff --git a/input/regression/spacing-accidental-staffs.ly b/input/regression/spacing-accidental-staffs.ly
index e0109e4a8b..be5cee370b 100644
--- a/input/regression/spacing-accidental-staffs.ly
+++ b/input/regression/spacing-accidental-staffs.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { 
 texidoc = "Accidentals in different staves do not affect the
diff --git a/input/regression/spacing-accidental-stretch.ly b/input/regression/spacing-accidental-stretch.ly
index d87fb89d36..9e0cdf757a 100644
--- a/input/regression/spacing-accidental-stretch.ly
+++ b/input/regression/spacing-accidental-stretch.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     texidoc = "Accidentals do not influence the amount of stretchable space.
diff --git a/input/regression/spacing-accidental.ly b/input/regression/spacing-accidental.ly
index 7847956395..29a6668245 100644
--- a/input/regression/spacing-accidental.ly
+++ b/input/regression/spacing-accidental.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "Accidentals sticking out to the left
diff --git a/input/regression/spacing-bar-stem.ly b/input/regression/spacing-bar-stem.ly
index cf1fefdf04..42fe229f75 100644
--- a/input/regression/spacing-bar-stem.ly
+++ b/input/regression/spacing-bar-stem.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Downstem notes following a barline are
 printed with some extra space. This is an optical correction similar
diff --git a/input/regression/spacing-clef-first-note.ly b/input/regression/spacing-clef-first-note.ly
index 89e98dfc1d..ef834483db 100644
--- a/input/regression/spacing-clef-first-note.ly
+++ b/input/regression/spacing-clef-first-note.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Clef changes at the start of a line get much more space
diff --git a/input/regression/spacing-end-of-line.ly b/input/regression/spacing-end-of-line.ly
index 54def17cda..5857857f0b 100644
--- a/input/regression/spacing-end-of-line.ly
+++ b/input/regression/spacing-end-of-line.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc ="Broken engraving of a bar at the end of a line does not upset 
diff --git a/input/regression/spacing-ended-voice.ly b/input/regression/spacing-ended-voice.ly
index a0ed5a85aa..6eef063192 100644
--- a/input/regression/spacing-ended-voice.ly
+++ b/input/regression/spacing-ended-voice.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "
 A voicelet (a very short voice to get polyphonic chords correct)
 should not confuse the spacing engine."
diff --git a/input/regression/spacing-folded-clef.ly b/input/regression/spacing-folded-clef.ly
index 62b0c077ee..c0d71f2eb4 100644
--- a/input/regression/spacing-folded-clef.ly
+++ b/input/regression/spacing-folded-clef.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "A clef can be folded below notes in a different staff, if
 this does not disrupt the flow of the notes."
diff --git a/input/regression/spacing-folded-clef2.ly b/input/regression/spacing-folded-clef2.ly
index 2bcfe2e0df..838b617fb3 100644
--- a/input/regression/spacing-folded-clef2.ly
+++ b/input/regression/spacing-folded-clef2.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "A clef can be folded below notes in a different staff, if
diff --git a/input/regression/spacing-grace-duration.ly b/input/regression/spacing-grace-duration.ly
index d97533dc00..deaafd902c 100644
--- a/input/regression/spacing-grace-duration.ly
+++ b/input/regression/spacing-grace-duration.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Spacing uses the duration of the notes, but disregards
diff --git a/input/regression/spacing-grace.ly b/input/regression/spacing-grace.ly
index e8d5f37064..b8200131e9 100644
--- a/input/regression/spacing-grace.ly
+++ b/input/regression/spacing-grace.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc = "Grace note spacing. Should it be tuned? "
 }
diff --git a/input/regression/spacing-knee.ly b/input/regression/spacing-knee.ly
index 09578a5917..6fcd3c7e08 100644
--- a/input/regression/spacing-knee.ly
+++ b/input/regression/spacing-knee.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "For knees, the spacing correction is such that the
diff --git a/input/regression/spacing-multi-tuplet.ly b/input/regression/spacing-multi-tuplet.ly
index 0fe708a982..c922e77902 100644
--- a/input/regression/spacing-multi-tuplet.ly
+++ b/input/regression/spacing-multi-tuplet.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc = "Concurrent tuplets should be equidistant on all staffs.
 
diff --git a/input/regression/spacing-note-flags.ly b/input/regression/spacing-note-flags.ly
index 04c1c12c8a..3ccd5d8666 100644
--- a/input/regression/spacing-note-flags.ly
+++ b/input/regression/spacing-note-flags.ly
@@ -17,5 +17,5 @@ raggedright = ##t
     }
      }
 
-\version "2.1.26"
+\version "2.1.28"
 
diff --git a/input/regression/spacing-rest.ly b/input/regression/spacing-rest.ly
index 53766e039e..d7757c8466 100644
--- a/input/regression/spacing-rest.ly
+++ b/input/regression/spacing-rest.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Rests get a little less space, since they are narrower.
 However, the quarter rest in feta font is relatively wide, causing this 
diff --git a/input/regression/spacing-short-notes.ly b/input/regression/spacing-short-notes.ly
index 10bea2b6ea..3cefe7d7cf 100644
--- a/input/regression/spacing-short-notes.ly
+++ b/input/regression/spacing-short-notes.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
 texidoc = "Notes that are shorter than the common shortest note get a
diff --git a/input/regression/spacing-stem-bar.ly b/input/regression/spacing-stem-bar.ly
index 7bd523c3ac..122ef9eaf7 100644
--- a/input/regression/spacing-stem-bar.ly
+++ b/input/regression/spacing-stem-bar.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Upstem notes before a barline are printed with some extra
diff --git a/input/regression/spacing-stem-direction.ly b/input/regression/spacing-stem-direction.ly
index 50d03ee064..41add05dcf 100644
--- a/input/regression/spacing-stem-direction.ly
+++ b/input/regression/spacing-stem-direction.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 
diff --git a/input/regression/spacing-stem-same-direction.ly b/input/regression/spacing-stem-same-direction.ly
index a9e136645d..08d98e8633 100644
--- a/input/regression/spacing-stem-same-direction.ly
+++ b/input/regression/spacing-stem-same-direction.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 	texidoc = "For juxtaposed chords with the same direction, a
 slight optical correction is used. It is constant, and works only if
diff --git a/input/regression/spacing-to-grace.ly b/input/regression/spacing-to-grace.ly
index cbae88a691..a6dc00ad8c 100644
--- a/input/regression/spacing-to-grace.ly
+++ b/input/regression/spacing-to-grace.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc ="Space from a normal note (or barline) to a grace note is
diff --git a/input/regression/spacing-very-tight.ly b/input/regression/spacing-very-tight.ly
index 99b255a2ef..98603396bd 100644
--- a/input/regression/spacing-very-tight.ly
+++ b/input/regression/spacing-very-tight.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "
  When tightly spaced, the spaces between elements (hinterfleisch?) 
diff --git a/input/regression/span-bar.ly b/input/regression/span-bar.ly
index a857fedda0..f0318b1f4a 100644
--- a/input/regression/span-bar.ly
+++ b/input/regression/span-bar.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Span bars are drawn only between staff bar lines. By setting 
 bar lines to transparent, they are shown only between systems.
diff --git a/input/regression/staccato-pos.ly b/input/regression/staccato-pos.ly
index 953a3d5a0a..9a10e4b3f8 100644
--- a/input/regression/staccato-pos.ly
+++ b/input/regression/staccato-pos.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/staff-mixed-size.ly b/input/regression/staff-mixed-size.ly
index 0288357d27..a05e85eb44 100644
--- a/input/regression/staff-mixed-size.ly
+++ b/input/regression/staff-mixed-size.ly
@@ -7,7 +7,7 @@ large on smaller staves."
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
   <<
diff --git a/input/regression/staff-tweak.ly b/input/regression/staff-tweak.ly
index f7d4adf495..e2061a4586 100644
--- a/input/regression/staff-tweak.ly
+++ b/input/regression/staff-tweak.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "The staff is a grob (graphical object) which may be adjusted as well, for example, to have 6 thick lines and a slightly large @code{staff-space}.
diff --git a/input/regression/stanza-number.ly b/input/regression/stanza-number.ly
index 7c38a47a60..b3a2334514 100644
--- a/input/regression/stanza-number.ly
+++ b/input/regression/stanza-number.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc = "Stanza numbers are put left of their lyric. Theyr are aligned in a column."
diff --git a/input/regression/stem-direction.ly b/input/regression/stem-direction.ly
index 187331158d..77ba1dc944 100644
--- a/input/regression/stem-direction.ly
+++ b/input/regression/stem-direction.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/stem-shorten.ly b/input/regression/stem-shorten.ly
index 30d85ac07f..2a13f4e9ad 100644
--- a/input/regression/stem-shorten.ly
+++ b/input/regression/stem-shorten.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     
diff --git a/input/regression/stem-spacing.ly b/input/regression/stem-spacing.ly
index 8f70f13c20..6f53e49849 100644
--- a/input/regression/stem-spacing.ly
+++ b/input/regression/stem-spacing.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/stem-tremolo.ly b/input/regression/stem-tremolo.ly
index b159d866d5..6accdee421 100644
--- a/input/regression/stem-tremolo.ly
+++ b/input/regression/stem-tremolo.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 Stem tremolos or rolls are tremolo signs that look like beam segments
diff --git a/input/regression/system-extents.ly b/input/regression/system-extents.ly
index ff3187213c..3332eb33d3 100644
--- a/input/regression/system-extents.ly
+++ b/input/regression/system-extents.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "The size of every system is correctly determined; this 
diff --git a/input/regression/system-start-bracket.ly b/input/regression/system-start-bracket.ly
index a93a8d2dad..8338640773 100644
--- a/input/regression/system-start-bracket.ly
+++ b/input/regression/system-start-bracket.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc =
 "
diff --git a/input/regression/tablature-string-tunings.ly b/input/regression/tablature-string-tunings.ly
index dae5426784..1bdb52b88d 100644
--- a/input/regression/tablature-string-tunings.ly
+++ b/input/regression/tablature-string-tunings.ly
@@ -6,7 +6,7 @@
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score  {
     \notes \new TabStaff {
diff --git a/input/regression/tablature.ly b/input/regression/tablature.ly
index ded9c71b7f..c8e667eb37 100644
--- a/input/regression/tablature.ly
+++ b/input/regression/tablature.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc = "@cindex Tabulature
 A sample tablature, with both normal staff and tab.
diff --git a/input/regression/tag-filter.ly b/input/regression/tag-filter.ly
index 5c063ef620..ce126b9017 100644
--- a/input/regression/tag-filter.ly
+++ b/input/regression/tag-filter.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "The @code{\\tag} command marks music expressions with a
diff --git a/input/regression/text-spanner.ly b/input/regression/text-spanner.ly
index 3bcdad259a..a0efd0c1e5 100644
--- a/input/regression/text-spanner.ly
+++ b/input/regression/text-spanner.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc= "Text spanners should not repeat start text when broken."
 }
diff --git a/input/regression/tie-busy-grobs.ly b/input/regression/tie-busy-grobs.ly
index 7afb870463..a71f85f6d0 100644
--- a/input/regression/tie-busy-grobs.ly
+++ b/input/regression/tie-busy-grobs.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Tie engraver uses @code{busyGrobs} to keep track of
diff --git a/input/regression/tie-chord.ly b/input/regression/tie-chord.ly
index 6f8f7ac8cf..4c7c1fbacb 100644
--- a/input/regression/tie-chord.ly
+++ b/input/regression/tie-chord.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 texidoc="
 When tying chords, the outer slurs point outwards, the inner slurs
diff --git a/input/regression/tie-dots.ly b/input/regression/tie-dots.ly
index 39225a6097..35ef51377e 100644
--- a/input/regression/tie-dots.ly
+++ b/input/regression/tie-dots.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "Ties should not collide with dots."
 }
diff --git a/input/regression/tie-grace.ly b/input/regression/tie-grace.ly
index 22eb33d696..e56b782292 100644
--- a/input/regression/tie-grace.ly
+++ b/input/regression/tie-grace.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "Tieing a grace to the to a following grace or main note works."
 }
diff --git a/input/regression/tie.ly b/input/regression/tie.ly
index 2882bb6b45..34a4f5043e 100644
--- a/input/regression/tie.ly
+++ b/input/regression/tie.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="
diff --git a/input/regression/tuplet-beam.ly b/input/regression/tuplet-beam.ly
index 27068b30f8..31f1ea08d4 100644
--- a/input/regression/tuplet-beam.ly
+++ b/input/regression/tuplet-beam.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "In combination with a beam, the bracket of the tuplet
diff --git a/input/regression/tuplet-nest.ly b/input/regression/tuplet-nest.ly
index b1efcffdb1..6a28ab7294 100644
--- a/input/regression/tuplet-nest.ly
+++ b/input/regression/tuplet-nest.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc="By a manual hack for nested tuplets, an outer tuplet can be moved up."
 }
diff --git a/input/regression/tuplet-properties.ly b/input/regression/tuplet-properties.ly
index 938ec33165..9e71950aa0 100644
--- a/input/regression/tuplet-properties.ly
+++ b/input/regression/tuplet-properties.ly
@@ -6,7 +6,7 @@ for instance, bracketed (B) and non-bracketed (NB).
 }
  
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 \score { 
diff --git a/input/regression/tuplet-rest.ly b/input/regression/tuplet-rest.ly
index fda9c9836d..054a64aa5c 100644
--- a/input/regression/tuplet-rest.ly
+++ b/input/regression/tuplet-rest.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "Tuplets may contain rests. "
diff --git a/input/regression/tuplet-slope.ly b/input/regression/tuplet-slope.ly
index e0c60de401..82c1f33861 100644
--- a/input/regression/tuplet-slope.ly
+++ b/input/regression/tuplet-slope.ly
@@ -12,7 +12,7 @@ The bracket direction is determined by the dominating stem direction.
     }
  
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
   \notes \relative c' {
diff --git a/input/regression/tuplet-staffline-collision.ly b/input/regression/tuplet-staffline-collision.ly
index 17059209cd..5ed05a4a3f 100644
--- a/input/regression/tuplet-staffline-collision.ly
+++ b/input/regression/tuplet-staffline-collision.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 texidoc = "Horizontal tuplet brackets are shifted vertically
diff --git a/input/regression/tuplets.ly b/input/regression/tuplets.ly
index e55300b468..aee93268c7 100644
--- a/input/regression/tuplets.ly
+++ b/input/regression/tuplets.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
     
 texidoc="
diff --git a/input/regression/voice-follower.ly b/input/regression/voice-follower.ly
index 888ebbb3b1..5eeb6d602c 100644
--- a/input/regression/voice-follower.ly
+++ b/input/regression/voice-follower.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header { texidoc= "
diff --git a/input/regression/volta-broken-left-edge.ly b/input/regression/volta-broken-left-edge.ly
index ad61c0e646..4440810e84 100644
--- a/input/regression/volta-broken-left-edge.ly
+++ b/input/regression/volta-broken-left-edge.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc ="Broken volta spanners behave correctly at their left edge in all cases."
diff --git a/input/regression/volta-multi-staff.ly b/input/regression/volta-multi-staff.ly
index 5948b134e2..b33ad5b8a4 100644
--- a/input/regression/volta-multi-staff.ly
+++ b/input/regression/volta-multi-staff.ly
@@ -4,7 +4,7 @@
     on more staves in a score."
 
 }
-\version "2.1.26"
+\version "2.1.28"
 
 
 vmus = \notes { \repeat volta 2 c1 \alternative { d e } } 
diff --git a/input/screech-boink.ly b/input/screech-boink.ly
index 17e5f897b3..c30c02dc43 100644
--- a/input/screech-boink.ly
+++ b/input/screech-boink.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
     title = "Screech and boink"
     subtitle = "Random complex notation"
diff --git a/input/template/gregorian-transcription.ly b/input/template/gregorian-transcription.ly
index 276f3f1e5f..7525213475 100644
--- a/input/template/gregorian-transcription.ly
+++ b/input/template/gregorian-transcription.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/template/header.ly b/input/template/header.ly
index 615ad8222d..9afcfe033b 100644
--- a/input/template/header.ly
+++ b/input/template/header.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header {
   dedication = "dedication"
   title = "Title"
diff --git a/input/template/jazz-combo.ly b/input/template/jazz-combo.ly
index 1f6d279e72..dcef4efc42 100644
--- a/input/template/jazz-combo.ly
+++ b/input/template/jazz-combo.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
         title = "Song"
         subtitle = "(tune)"
diff --git a/input/template/melody-chords.ly b/input/template/melody-chords.ly
index 199d275704..53b6941fb1 100644
--- a/input/template/melody-chords.ly
+++ b/input/template/melody-chords.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
   texidoc = "Lead sheet format: chords with melody."
diff --git a/input/template/melody-lyrics-chords.ly b/input/template/melody-lyrics-chords.ly
index d95d45dad3..9e28e041c6 100644
--- a/input/template/melody-lyrics-chords.ly
+++ b/input/template/melody-lyrics-chords.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 \header
 {
     texidoc = "Popsong format: chords, melody and lyrics."
diff --git a/input/template/melody-lyrics.ly b/input/template/melody-lyrics.ly
index fe0db8630b..db0ca807ba 100644
--- a/input/template/melody-lyrics.ly
+++ b/input/template/melody-lyrics.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
   texidoc = "Melody and lyrics."
diff --git a/input/template/melody.ly b/input/template/melody.ly
index 22c09b734d..b2c87be740 100644
--- a/input/template/melody.ly
+++ b/input/template/melody.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
   texidoc = "Only a melody."
diff --git a/input/template/piano-4-voices.ly b/input/template/piano-4-voices.ly
index 82d34ec85c..00ce853b9f 100644
--- a/input/template/piano-4-voices.ly
+++ b/input/template/piano-4-voices.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
   texidoc ="Polyphonic piano music."
diff --git a/input/template/piano-dynamics.ly b/input/template/piano-dynamics.ly
index ef338474de..391d9bad4e 100644
--- a/input/template/piano-dynamics.ly
+++ b/input/template/piano-dynamics.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
 texidoc ="
   Dynamics on a separate line, neatly centered between staffs.
diff --git a/input/template/piano-lyrics.ly b/input/template/piano-lyrics.ly
index 833fdb9118..3c7a8de783 100644
--- a/input/template/piano-lyrics.ly
+++ b/input/template/piano-lyrics.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 
 \header {
   texidoc ="Lyrics between two staffs."
diff --git a/input/template/piano-melody-lyrics.ly b/input/template/piano-melody-lyrics.ly
index ee730190f0..b38223c43e 100644
--- a/input/template/piano-melody-lyrics.ly
+++ b/input/template/piano-melody-lyrics.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.23"
+\version "2.1.28"
 \header {
   texidoc ="Classical song format: one staff with melody and lyrics,
 and piano accompaniment."
diff --git a/input/template/piano.ly b/input/template/piano.ly
index 85df775870..ca6a0c9eff 100644
--- a/input/template/piano.ly
+++ b/input/template/piano.ly
@@ -1,4 +1,4 @@
-\version "2.1.22"
+\version "2.1.28"
 
 \header {
   texidoc = "Simple piano music." 
diff --git a/input/template/satb.ly b/input/template/satb.ly
index e851da4ca0..3a9f865ae0 100644
--- a/input/template/satb.ly
+++ b/input/template/satb.ly
@@ -1,4 +1,4 @@
-\version "2.1.23"
+\version "2.1.28"
 \header {
 
     texidoc = "
diff --git a/input/test/+.ly b/input/test/+.ly
index 0ce4e1d92d..0ec73a4c95 100644
--- a/input/test/+.ly
+++ b/input/test/+.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 %% +.ly: Be the first .ly file for lys-to-tely.py.
 %% Better to make lys-to-tely.py include "introduction.texi" or
 %% other .texi documents too?
diff --git a/input/test/add-staccato.ly b/input/test/add-staccato.ly
index 8dff3e4efd..b3a3c1f47e 100644
--- a/input/test/add-staccato.ly
+++ b/input/test/add-staccato.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/test/add-text-script.ly b/input/test/add-text-script.ly
index 6b115871ec..3e58f40049 100644
--- a/input/test/add-text-script.ly
+++ b/input/test/add-text-script.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc= "@cindex make-music Fingering
diff --git a/input/test/ambitus-mixed.ly b/input/test/ambitus-mixed.ly
index 06fe96e356..1fff67fb4f 100644
--- a/input/test/ambitus-mixed.ly
+++ b/input/test/ambitus-mixed.ly
@@ -13,7 +13,7 @@ in the same score (not demonstrated in this file).
 "
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 #(define (kill-ambitus grob grob-context apply-context)
   (if (memq 'ambitus-interface (ly:grob-property grob 'interfaces))
diff --git a/input/test/ancient-accidentals.ly b/input/test/ancient-accidentals.ly
index 1a9218865a..71ba8214bb 100644
--- a/input/test/ancient-accidentals.ly
+++ b/input/test/ancient-accidentals.ly
@@ -6,7 +6,7 @@ are collected here.
 "
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score { 
   \context Voice \notes\relative c {
diff --git a/input/test/ancient-font.ly b/input/test/ancient-font.ly
index e808a50b63..8b87d16559 100644
--- a/input/test/ancient-font.ly
+++ b/input/test/ancient-font.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % TODO: split ancient-font into seperate files; possibly in
 % different locations.
 \header {
diff --git a/input/test/ancient-time.ly b/input/test/ancient-time.ly
index 6d98689174..b23c17c54a 100644
--- a/input/test/ancient-time.ly
+++ b/input/test/ancient-time.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % TODO: move stuff from ancient-font into here?  See comment
 % for ancient-font.ly
 \header {
diff --git a/input/test/bagpipe.ly b/input/test/bagpipe.ly
index bca0ab956d..8bc33a46ed 100644
--- a/input/test/bagpipe.ly
+++ b/input/test/bagpipe.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
  texidoc = "@cindex Bagpipe Music
diff --git a/input/test/bar-always.ly b/input/test/bar-always.ly
index 60abb3a25d..397773bfe6 100644
--- a/input/test/bar-always.ly
+++ b/input/test/bar-always.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "@cindex Bars Always
diff --git a/input/test/bar-lines-lyric-only.ly b/input/test/bar-lines-lyric-only.ly
index 1c791feb7d..c6299e10ef 100644
--- a/input/test/bar-lines-lyric-only.ly
+++ b/input/test/bar-lines-lyric-only.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Bar line lyric only
 You can move @code{Bar_engraver} and @code{Span_bar_engraver} to 
 a different engraving context, if you want, for example, bar lines 
diff --git a/input/test/bar-lines.ly b/input/test/bar-lines.ly
index ad59e74f2d..f027408c68 100644
--- a/input/test/bar-lines.ly
+++ b/input/test/bar-lines.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "@cindex Bar Lines
 There a many types of bar lines available.
diff --git a/input/test/bar-number-every-five-reset.ly b/input/test/bar-number-every-five-reset.ly
index ea229dd788..b84b906c0a 100644
--- a/input/test/bar-number-every-five-reset.ly
+++ b/input/test/bar-number-every-five-reset.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     texidoc = "@cindex Bar Number Every Fifth Reset
diff --git a/input/test/bar-number-regular-interval.ly b/input/test/bar-number-regular-interval.ly
index a801421301..905feb0c6b 100644
--- a/input/test/bar-number-regular-interval.ly
+++ b/input/test/bar-number-regular-interval.ly
@@ -5,7 +5,7 @@ Bar numbers can also be printed inside boxes.
 
 " }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \context Staff \notes \transpose  c c' {
diff --git a/input/test/bar-number-show-all.ly b/input/test/bar-number-show-all.ly
index bf06bafdb6..d295cd00a2 100644
--- a/input/test/bar-number-show-all.ly
+++ b/input/test/bar-number-show-all.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
     texidoc="@cindex Bar Number Show All
 By default, bar numbers are printed only in the first measure.  This 
diff --git a/input/test/beam-alternate.ly b/input/test/beam-alternate.ly
index 4002e75165..0c7599b350 100644
--- a/input/test/beam-alternate.ly
+++ b/input/test/beam-alternate.ly
@@ -8,7 +8,7 @@
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 wipeNote = {
     \once \override NoteHead #'transparent = ##t
diff --git a/input/test/beam-auto-4-8.ly b/input/test/beam-auto-4-8.ly
index 19e050da12..4a7e74eee8 100644
--- a/input/test/beam-auto-4-8.ly
+++ b/input/test/beam-auto-4-8.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % keep for now, although merging into beam-auto-override is a possibility.
 \header {
 	texidoc = "@cindex Auto Beaming 4/8
diff --git a/input/test/beam-auto-override.ly b/input/test/beam-auto-override.ly
index c9a6394f9e..848638fd80 100644
--- a/input/test/beam-auto-override.ly
+++ b/input/test/beam-auto-override.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "@cindex Auto Beaming Override
diff --git a/input/test/beam-auto.ly b/input/test/beam-auto.ly
index 16ed23e92f..4c807248c6 100644
--- a/input/test/beam-auto.ly
+++ b/input/test/beam-auto.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc = "@cindex Beaming Presets
 There are presets for the @code{auto-beam} engraver in the case of common
diff --git a/input/test/beam-control.ly b/input/test/beam-control.ly
index 2f10efafbb..37bdf04449 100644
--- a/input/test/beam-control.ly
+++ b/input/test/beam-control.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
     texidoc="@cindex Beam Position Control
 
diff --git a/input/test/beam-count.ly b/input/test/beam-count.ly
index ee8f7ed7eb..aacfb42145 100644
--- a/input/test/beam-count.ly
+++ b/input/test/beam-count.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc="@cindex Beam Count
 
diff --git a/input/test/beam-dir-functions.ly b/input/test/beam-dir-functions.ly
index 177d926ccc..072ac93679 100644
--- a/input/test/beam-dir-functions.ly
+++ b/input/test/beam-dir-functions.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc = "@cindex Beam Dir Functions
 
diff --git a/input/test/beam-isknee.ly b/input/test/beam-isknee.ly
index 54b567cbaf..c43c142133 100644
--- a/input/test/beam-isknee.ly
+++ b/input/test/beam-isknee.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc="@cindex Beam Isknee
 
diff --git a/input/test/beam-neutral-direction.ly b/input/test/beam-neutral-direction.ly
index a4b13d1949..c3d11381dc 100644
--- a/input/test/beam-neutral-direction.ly
+++ b/input/test/beam-neutral-direction.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc="@cindex Beam Neutral Direction
 When a beam falls in the middle of the staff, the beams point normally 
diff --git a/input/test/beam-rest.ly b/input/test/beam-rest.ly
index 7a975ba21d..78b9f242fb 100644
--- a/input/test/beam-rest.ly
+++ b/input/test/beam-rest.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="@cindex Beam Over Rests
diff --git a/input/test/blank-notes.ly b/input/test/blank-notes.ly
index 89cb23b0c1..ead62b3381 100644
--- a/input/test/blank-notes.ly
+++ b/input/test/blank-notes.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to invis-notes.ly
 % check if other documents call this "blank notes", though.  I think
 % invisible notes sounds better, but whatever it is, it should be
diff --git a/input/test/blank-paper-tab.ly b/input/test/blank-paper-tab.ly
index 2d16dc9044..bfe8082306 100644
--- a/input/test/blank-paper-tab.ly
+++ b/input/test/blank-paper-tab.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
 texidoc = "@cindex Blank Paper Tab
diff --git a/input/test/blank-paper.ly b/input/test/blank-paper.ly
index aa836b0f05..c05179fde4 100644
--- a/input/test/blank-paper.ly
+++ b/input/test/blank-paper.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc="@cindex Blank Paper
 
diff --git a/input/test/boxed-molecule.ly b/input/test/boxed-molecule.ly
index 651653de44..a0c9737e08 100644
--- a/input/test/boxed-molecule.ly
+++ b/input/test/boxed-molecule.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "@cindex Boxed Stencil
 
diff --git a/input/test/caps.ly b/input/test/caps.ly
index 953dd45bc8..8f110153c3 100644
--- a/input/test/caps.ly
+++ b/input/test/caps.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
 texidoc = "@cindex Capital Letters
 The font can be changed to small caps.
diff --git a/input/test/cautionaries.ly b/input/test/cautionaries.ly
index 75d1c3b06b..06c31aaa23 100644
--- a/input/test/cautionaries.ly
+++ b/input/test/cautionaries.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc="@cindex Cautionary Accidentals
 Cautinary accidentals are displayed in slurs by default. They can be 
diff --git a/input/test/chord-names-german.ly b/input/test/chord-names-german.ly
index 9a53d50882..e92b418d83 100644
--- a/input/test/chord-names-german.ly
+++ b/input/test/chord-names-german.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header  {
     texidoc = "@cindex Chord Names German
 The english naming of chords (default) can be changed to german 
diff --git a/input/test/chord-names-jazz.ly b/input/test/chord-names-jazz.ly
index c964216c8e..1443c9c5db 100644
--- a/input/test/chord-names-jazz.ly
+++ b/input/test/chord-names-jazz.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 \header {
diff --git a/input/test/chord-names-no-inversions.ly b/input/test/chord-names-no-inversions.ly
index bf74e87f7c..e0b7c62d28 100644
--- a/input/test/chord-names-no-inversions.ly
+++ b/input/test/chord-names-no-inversions.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc= "@cindex Chord Names No Inversions
 Since there are several interpretations for recognizing 
 chord names, the lowest note is the bass note of a chord and the inversion 
diff --git a/input/test/clef-8-syntax.ly b/input/test/clef-8-syntax.ly
index 3a03261f13..8f5056fc36 100644
--- a/input/test/clef-8-syntax.ly
+++ b/input/test/clef-8-syntax.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "@cindex Chord Octavation
 Appending @code{_8} or @code{^8} to a clef name will
diff --git a/input/test/clef-end-of-line.ly b/input/test/clef-end-of-line.ly
index 16d91bfb7d..40543eb597 100644
--- a/input/test/clef-end-of-line.ly
+++ b/input/test/clef-end-of-line.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc = "@cindex Clef End of Line
diff --git a/input/test/clef-manual-control.ly b/input/test/clef-manual-control.ly
index c9663d8d05..dd95307811 100644
--- a/input/test/clef-manual-control.ly
+++ b/input/test/clef-manual-control.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{ texidoc = "
 
 @cindex Clef Manual Control
diff --git a/input/test/coriolan-margin.ly b/input/test/coriolan-margin.ly
index 5732ee8664..f05f6d269b 100644
--- a/input/test/coriolan-margin.ly
+++ b/input/test/coriolan-margin.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 
 % Ugh, we need to override some LaTeX titling stuff
diff --git a/input/test/count-systems.ly b/input/test/count-systems.ly
index 08734485ea..575b481798 100644
--- a/input/test/count-systems.ly
+++ b/input/test/count-systems.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
     
     texidoc="@cindex Count Systems
diff --git a/input/test/crescendi.ly b/input/test/crescendi.ly
index e98d4feebf..fbee84de33 100644
--- a/input/test/crescendi.ly
+++ b/input/test/crescendi.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{
 	texidoc="@cindex Crescendi
 Crescendi can be printed in a number of different ways.
diff --git a/input/test/cue-notes.ly b/input/test/cue-notes.ly
index 2f238f3af3..7575a1fc7b 100644
--- a/input/test/cue-notes.ly
+++ b/input/test/cue-notes.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % TODO: check to see if this example can be simplified using \small
 % or \tiny.
 \header { texidoc = "@cindex Cue Notes
diff --git a/input/test/divisiones.ly b/input/test/divisiones.ly
index cd81abf0fc..7166779656 100644
--- a/input/test/divisiones.ly
+++ b/input/test/divisiones.ly
@@ -7,7 +7,7 @@ Choices are @code{divisioMinima}, @code{divisioMaior},
 @code{caesura}.
 " }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \include "gregorian-init.ly"
 
diff --git a/input/test/drarn-slurs.ly b/input/test/drarn-slurs.ly
index 39b490e227..3be17a4381 100644
--- a/input/test/drarn-slurs.ly
+++ b/input/test/drarn-slurs.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to slurs-?
 % TODO: find out what drarn means, and if there's an overlap with drarn.ly
 \header{
diff --git a/input/test/drarn.ly b/input/test/drarn.ly
index 24b168a576..23a665fbef 100644
--- a/input/test/drarn.ly
+++ b/input/test/drarn.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{texidoc="@cindex Drarn
 You can attach slurs and ties to noteheads.
 " }
diff --git a/input/test/dynamic-absolute-volume.ly b/input/test/dynamic-absolute-volume.ly
index 1ddc559f81..9168bd657b 100644
--- a/input/test/dynamic-absolute-volume.ly
+++ b/input/test/dynamic-absolute-volume.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "@cindex Dynamic Absolute Volume
 Absolute dynamics have an effect on MIDI files.
diff --git a/input/test/dynamic-extra.ly b/input/test/dynamic-extra.ly
index 328b504728..0a3c724562 100644
--- a/input/test/dynamic-extra.ly
+++ b/input/test/dynamic-extra.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % probably should be merged into refman.
 \header{
     texidoc = "@cindex Dynamic Piu Forte
diff --git a/input/test/embedded-postscript.ly b/input/test/embedded-postscript.ly
index d9c6649b65..9adf9885f8 100644
--- a/input/test/embedded-postscript.ly
+++ b/input/test/embedded-postscript.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc = "@cindex Embedded Postscript
 By inserting the @TeX{} command \embeddedps, you can
diff --git a/input/test/embedded-scm.ly b/input/test/embedded-scm.ly
index f856f04b11..1a29172acb 100644
--- a/input/test/embedded-scm.ly
+++ b/input/test/embedded-scm.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
     texidoc = "@cindex Embedded scm
diff --git a/input/test/embedded-tex.ly b/input/test/embedded-tex.ly
index c947f85960..15b47c6d5a 100644
--- a/input/test/embedded-tex.ly
+++ b/input/test/embedded-tex.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{ texidoc="@cindex Embedded Tex
 You can embed Tex commands in your score. "}
 
diff --git a/input/test/engraver-contexts.ly b/input/test/engraver-contexts.ly
index 5dec124c1a..a9b65ff200 100644
--- a/input/test/engraver-contexts.ly
+++ b/input/test/engraver-contexts.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
 texidoc ="In polyphonic notation, many voices can share a staff: In
diff --git a/input/test/engraver-one-by-one.ly b/input/test/engraver-one-by-one.ly
index f768cb9b91..70dbe7c003 100644
--- a/input/test/engraver-one-by-one.ly
+++ b/input/test/engraver-one-by-one.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     
 texidoc = "The notation problem, creating a certain symbol,
diff --git a/input/test/extra-staff.ly b/input/test/extra-staff.ly
index 9ecc88ca79..5d64e1ecca 100644
--- a/input/test/extra-staff.ly
+++ b/input/test/extra-staff.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 % definitely wil be renamed to something.
 %{
diff --git a/input/test/figured-bass-alternate.ly b/input/test/figured-bass-alternate.ly
index bfa8d47a9c..38a966f417 100644
--- a/input/test/figured-bass-alternate.ly
+++ b/input/test/figured-bass-alternate.ly
@@ -3,7 +3,7 @@
 texidoc = "An alternate method to make bass figures is to use
 @code{markup} texts."
 }
-\version "2.1.26"
+\version "2.1.28"
 
 nat = \markup { \natural }
 sh = \markup { \smaller \raise #0.6 \sharp }
diff --git a/input/test/fill-a4.ly b/input/test/fill-a4.ly
index c6d102da45..28b80fcd1a 100644
--- a/input/test/fill-a4.ly
+++ b/input/test/fill-a4.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 %possible rename to paper-fill-a4.ly -gp
 % candidate for reg -gp
 % Han says no, but keeping this comment temporarily so that I don't
diff --git a/input/test/follow-voice.ly b/input/test/follow-voice.ly
index 62faa81f22..68d26c0363 100644
--- a/input/test/follow-voice.ly
+++ b/input/test/follow-voice.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % MERGED: stuff from follow-break.ly to follow-thread.ly
 
 % followVoice: connect note heads with line when thread switches staff 
diff --git a/input/test/force-hshift.ly b/input/test/force-hshift.ly
index 4e47db8857..357f2e2039 100644
--- a/input/test/force-hshift.ly
+++ b/input/test/force-hshift.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc="@cindex Force hshift
 Horizontal shift (@code{hshift}) can be forced in order to avoid collisions. " }
diff --git a/input/test/gourlay.ly b/input/test/gourlay.ly
index bc4bf1c9ec..ebf91ac09c 100644
--- a/input/test/gourlay.ly
+++ b/input/test/gourlay.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
 
     texidoc="@cindex Gourlay
diff --git a/input/test/gregorian-scripts.ly b/input/test/gregorian-scripts.ly
index 2746973505..6fc013c1cc 100644
--- a/input/test/gregorian-scripts.ly
+++ b/input/test/gregorian-scripts.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     title	= "Gregorian Scripts"
     texidoc  = "@cindex Gregorian Scripts
diff --git a/input/test/harmonic.ly b/input/test/harmonic.ly
index b9d0864f91..f6092e2c91 100644
--- a/input/test/harmonic.ly
+++ b/input/test/harmonic.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc ="@cindex Artificial Harmonics
 
diff --git a/input/test/header-ifelse.ly b/input/test/header-ifelse.ly
index fbbb88dbfa..b2ecfa8584 100644
--- a/input/test/header-ifelse.ly
+++ b/input/test/header-ifelse.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 #(define (my-ly-version)
diff --git a/input/test/hshift.ly b/input/test/hshift.ly
index 5812d79831..60f8639076 100644
--- a/input/test/hshift.ly
+++ b/input/test/hshift.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Horizontal Shift
 Notes may be manually horizontally shifted. " }
 
diff --git a/input/test/hymn.ly b/input/test/hymn.ly
index bd58d7542e..0abe5e432c 100644
--- a/input/test/hymn.ly
+++ b/input/test/hymn.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "
 
diff --git a/input/test/improv.ly b/input/test/improv.ly
index 0ee7a21350..613f544df0 100644
--- a/input/test/improv.ly
+++ b/input/test/improv.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
     texidoc =
diff --git a/input/test/incipit.ly b/input/test/incipit.ly
index 530b7fe48c..8524b2301d 100644
--- a/input/test/incipit.ly
+++ b/input/test/incipit.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Incipit
 This example shows how to make an ``incipit'' to indicate 
 scordatora tuning of a violin part, by overriding the @code{style} of
diff --git a/input/test/instrument-name-grandstaff.ly b/input/test/instrument-name-grandstaff.ly
index 3c0f1e6028..fce6b129e9 100644
--- a/input/test/instrument-name-grandstaff.ly
+++ b/input/test/instrument-name-grandstaff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Instrument Name Grandstaff
 You can have a name for the whole @code{GrandStaff} in addition to 
 individual @code{Staff}s. " }
diff --git a/input/test/ligature-vaticana.ly b/input/test/ligature-vaticana.ly
index 3d9939c7fe..ee4ac26b6e 100644
--- a/input/test/ligature-vaticana.ly
+++ b/input/test/ligature-vaticana.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc	= "@cindex Ancient Vaticana
 Vaticana ligature uses four staff lines, special clef, an notes
diff --git a/input/test/lilypond-testpage.ly b/input/test/lilypond-testpage.ly
index 448e6c98f4..f9b329b4df 100644
--- a/input/test/lilypond-testpage.ly
+++ b/input/test/lilypond-testpage.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % MERGE with title.ly -gp
 
 %{
diff --git a/input/test/lyric-hyphen-retain.ly b/input/test/lyric-hyphen-retain.ly
index 6a65519940..291909b4c4 100644
--- a/input/test/lyric-hyphen-retain.ly
+++ b/input/test/lyric-hyphen-retain.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/test/lyrics-skip-notes.ly b/input/test/lyrics-skip-notes.ly
index 86b5480b8f..68626cd82c 100644
--- a/input/test/lyrics-skip-notes.ly
+++ b/input/test/lyrics-skip-notes.ly
@@ -13,7 +13,7 @@ less lyric syllables to a melody.
 % shorthand for Skip Lyric
 sl = \notes { \skip 4 }
 
-\version "2.1.26"
+\version "2.1.28"
 \score {
   <<
   \context Voice = "A"  \notes  {c4 c c c}
diff --git a/input/test/mensural-ligatures.ly b/input/test/mensural-ligatures.ly
index 1ff99ddd49..bf149f69a4 100644
--- a/input/test/mensural-ligatures.ly
+++ b/input/test/mensural-ligatures.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % TODO:
 % check with ancient- stuff.  rename, merge, something.  -gp
 
diff --git a/input/test/mensural-note-heads.ly b/input/test/mensural-note-heads.ly
index e1292fb7ee..58e64ca237 100644
--- a/input/test/mensural-note-heads.ly
+++ b/input/test/mensural-note-heads.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
     texidoc ="@cindex Ancient Mensural Note Heads
diff --git a/input/test/midi-scales.ly b/input/test/midi-scales.ly
index 7525288cf0..b3d989fda4 100644
--- a/input/test/midi-scales.ly
+++ b/input/test/midi-scales.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % candidate for regression.  -gp
 \header {
   texidoc="Converting LilyPond input to MIDI and then again back with
diff --git a/input/test/move-accidentals.ly b/input/test/move-accidentals.ly
index 469ea32ee9..c04765ce59 100644
--- a/input/test/move-accidentals.ly
+++ b/input/test/move-accidentals.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % possible rename to scheme- or something like that.  -gp
 \header { texidoc= "@cindex Scheme Manual Accidentals
diff --git a/input/test/move-specific-text.ly b/input/test/move-specific-text.ly
index 6a3e9dc8ea..e6e36bc1eb 100644
--- a/input/test/move-specific-text.ly
+++ b/input/test/move-specific-text.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to scheme- or something like that.  -gp
 \header { texidoc = "@cindex Scheme Move Text
 Objects, like text, can be moved around by using some Scheme code.
diff --git a/input/test/music-box.ly b/input/test/music-box.ly
index c5eaa80305..5adf00aa77 100644
--- a/input/test/music-box.ly
+++ b/input/test/music-box.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \include "deutsch.ly"
 % possible rename to scheme- something.  -gp
 % TODO: ask if it needs to have so many empty bars in the middle.  -gp
@@ -62,7 +62,7 @@ using Scheme functions to avoid typing work. " }
 
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 pat = \notes \transpose c c' \repeat unfold 2 {
   << { \context Staff=up {r8 e16 f g e f g } }
diff --git a/input/test/music-creation.ly b/input/test/music-creation.ly
index 598de51311..f5c4b94973 100644
--- a/input/test/music-creation.ly
+++ b/input/test/music-creation.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % possible rename to scheme- something.  -gp
 \header { texidoc = "@cindex Scheme Music Creation
diff --git a/input/test/no-bar-lines.ly b/input/test/no-bar-lines.ly
index fe94aebd07..a706304caa 100644
--- a/input/test/no-bar-lines.ly
+++ b/input/test/no-bar-lines.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to bar-lines-foo.  -gp
 
 \header{ texidoc = "@cindex Bar Lines Remove
diff --git a/input/test/no-staff.ly b/input/test/no-staff.ly
index 3df16beebd..b260b4fe38 100644
--- a/input/test/no-staff.ly
+++ b/input/test/no-staff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to staff-something.  -gp
 
 \header{ texidoc = "@cindex Staff Remove
diff --git a/input/test/ossia.ly b/input/test/ossia.ly
index 47ad3b34f7..bd90ace911 100644
--- a/input/test/ossia.ly
+++ b/input/test/ossia.ly
@@ -4,7 +4,7 @@
     @code{RemoveEmptyStaffContext} take out the unused parts.
 " }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
     \notes\relative c''
diff --git a/input/test/part-combine.ly b/input/test/part-combine.ly
index c81f2c655d..05c87cbc2a 100644
--- a/input/test/part-combine.ly
+++ b/input/test/part-combine.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc="@cindex Part Combine
 In orchestral scores and hymns, voices are traditionally combined into
diff --git a/input/test/partial-blank.ly b/input/test/partial-blank.ly
index bdc14c112b..f15f516c80 100644
--- a/input/test/partial-blank.ly
+++ b/input/test/partial-blank.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % check with invisible-notes or blank-notes.  possible rename. -gp
 \header{ texidoc = "@cindex Partial Blank
 When entering partially typeset music (i.e. for students to be 
diff --git a/input/test/phrasing-slur-height.ly b/input/test/phrasing-slur-height.ly
index 634b898937..406ef261f1 100644
--- a/input/test/phrasing-slur-height.ly
+++ b/input/test/phrasing-slur-height.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header{ texidoc="@cindex Phrasing Slur Height
 The @code{PhrasingSlur} can be made higher in order to avoid collision 
 with other slurs. "
diff --git a/input/test/piano-staff-distance.ly b/input/test/piano-staff-distance.ly
index 62d01cdac7..78eb2c949c 100644
--- a/input/test/piano-staff-distance.ly
+++ b/input/test/piano-staff-distance.ly
@@ -8,7 +8,7 @@ Currently, this is for testing purposes.  "
 
 }
 
-\version "2.1.26"
+\version "2.1.28"
 
 #(define ((futz-alignment-callback distance count) grob axis)
 
diff --git a/input/test/polymetric-differing-notes.ly b/input/test/polymetric-differing-notes.ly
index 88b88fc291..1154f1b435 100644
--- a/input/test/polymetric-differing-notes.ly
+++ b/input/test/polymetric-differing-notes.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc="
 
diff --git a/input/test/polymetric.ly b/input/test/polymetric.ly
index c741341a9c..48f42bf554 100644
--- a/input/test/polymetric.ly
+++ b/input/test/polymetric.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc="@cindex Time Signature Multiple
 
diff --git a/input/test/preset-extent.ly b/input/test/preset-extent.ly
index 1c71816884..c95dde6075 100644
--- a/input/test/preset-extent.ly
+++ b/input/test/preset-extent.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "
 
 @cindex Preset Extent
diff --git a/input/test/repeat-manual.ly b/input/test/repeat-manual.ly
index 16a63e08e6..b83bc61be7 100644
--- a/input/test/repeat-manual.ly
+++ b/input/test/repeat-manual.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Repeat Manual
 By controlling manually the signs and numbers in repeats, an unusual 
 output can be produced. "
diff --git a/input/test/repeat-shorter-bracket.ly b/input/test/repeat-shorter-bracket.ly
index b4027542a6..495c7dff1d 100644
--- a/input/test/repeat-shorter-bracket.ly
+++ b/input/test/repeat-shorter-bracket.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header{
     texidoc="
 
diff --git a/input/test/repeat.ly b/input/test/repeat.ly
index 715f567c5a..584eb24d80 100644
--- a/input/test/repeat.ly
+++ b/input/test/repeat.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % possible rename to lyric-repeat or repeat-lyric.
 
diff --git a/input/test/rest-dot-positions.ly b/input/test/rest-dot-positions.ly
index 9bd52ad3a9..31df706f31 100644
--- a/input/test/rest-dot-positions.ly
+++ b/input/test/rest-dot-positions.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % candidate for regression.  -gp
 \header { texidoc = "@cindex Rest Dot Positions
 Dots of rests should follow the rest positions. " }
diff --git a/input/test/rests.ly b/input/test/rests.ly
index e96150de9b..0186bb011a 100644
--- a/input/test/rests.ly
+++ b/input/test/rests.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {
     texidoc = "@cindex Rests
 
diff --git a/input/test/reverse-music.ly b/input/test/reverse-music.ly
index 79825d9087..cfb775a05f 100644
--- a/input/test/reverse-music.ly
+++ b/input/test/reverse-music.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to scheme-something.
 \header { texidoc="@cindex Scheme Reverse Music
 Symmetric, or palindromical music can be produced, first, by printing
diff --git a/input/test/rhythm-excercise.ly b/input/test/rhythm-excercise.ly
index b8303dd0be..6a67a7faec 100644
--- a/input/test/rhythm-excercise.ly
+++ b/input/test/rhythm-excercise.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Rhythm Exercise
 Rythmic exercises may be produced by removing the @code{Clef} engraver,
 putting all notes to the same pitch and using transparent staff lines.
diff --git a/input/test/scales-greek.ly b/input/test/scales-greek.ly
index 669b33428e..91c9373380 100644
--- a/input/test/scales-greek.ly
+++ b/input/test/scales-greek.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
   texidoc = "
 
diff --git a/input/test/scheme-interactions.ly b/input/test/scheme-interactions.ly
index 7d34a8974b..d87bc4739b 100644
--- a/input/test/scheme-interactions.ly
+++ b/input/test/scheme-interactions.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Scheme Interactions
 Using @code{ly:export}, the result of Scheme expressions can be passed
 as LilyPond input.  Within a Scheme expression, you can use, define or 
diff --git a/input/test/script-abbreviations.ly b/input/test/script-abbreviations.ly
index c4ca5aabea..a34261bfc0 100644
--- a/input/test/script-abbreviations.ly
+++ b/input/test/script-abbreviations.ly
@@ -1,7 +1,7 @@
 
 % this chart is used in the manual too.
 
-\version "2.1.26"
+\version "2.1.28"
 \header { texidoc = "@cindex Script Abbreviations
 
 Some articulations may be entered using an abbreviation.
diff --git a/input/test/script-chart.ly b/input/test/script-chart.ly
index 8849a27c80..7dea3ab5ca 100644
--- a/input/test/script-chart.ly
+++ b/input/test/script-chart.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % this chart is used in the manual too.
 
diff --git a/input/test/script-priority.ly b/input/test/script-priority.ly
index cab389290e..b214c9a9db 100644
--- a/input/test/script-priority.ly
+++ b/input/test/script-priority.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Script Priority
 Relative placements of different script types can be controlled
diff --git a/input/test/script-stack.ly b/input/test/script-stack.ly
index d66dd97bbb..b3711d67cf 100644
--- a/input/test/script-stack.ly
+++ b/input/test/script-stack.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Stacked Text Articulation
 Text and articulations may be stacked on top of each other. "
diff --git a/input/test/separate-staccato.ly b/input/test/separate-staccato.ly
index 1903dcc875..6dc0b99927 100644
--- a/input/test/separate-staccato.ly
+++ b/input/test/separate-staccato.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename.  -gp
 
 \header { texidoc="@cindex Seperate Staccato
diff --git a/input/test/slur-attachment-override.ly b/input/test/slur-attachment-override.ly
index fb6684ab98..eeb9673f5c 100644
--- a/input/test/slur-attachment-override.ly
+++ b/input/test/slur-attachment-override.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{
 texidoc="@cindex Slur Attachment Override
diff --git a/input/test/slur-beautiful.ly b/input/test/slur-beautiful.ly
index 1ba9dda021..9bbd26a63a 100644
--- a/input/test/slur-beautiful.ly
+++ b/input/test/slur-beautiful.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc ="@cindex Slur Beautiful
 The curvature of a slur is adjusted to stay away from note heads and 
diff --git a/input/test/slur-dash.ly b/input/test/slur-dash.ly
index fd597de28d..da6d313bab 100644
--- a/input/test/slur-dash.ly
+++ b/input/test/slur-dash.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {texidoc = "@cindex Slur, dotted
 The appearance of slurs may be changed from solid to dotted or dashed.
 "
diff --git a/input/test/slur-manual.ly b/input/test/slur-manual.ly
index 098f4a550d..5dbf273912 100644
--- a/input/test/slur-manual.ly
+++ b/input/test/slur-manual.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \header {
 
 
diff --git a/input/test/slur-minimum-length.ly b/input/test/slur-minimum-length.ly
index 045520ec7a..be554999f6 100644
--- a/input/test/slur-minimum-length.ly
+++ b/input/test/slur-minimum-length.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Slur Minimum Length
 By setting the minimum length of a slur, notes are more separated. " 
diff --git a/input/test/slur-ugly.ly b/input/test/slur-ugly.ly
index 2af89ea74a..4620fbbe3a 100644
--- a/input/test/slur-ugly.ly
+++ b/input/test/slur-ugly.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc="@cindex Slur Ugly
 Strange slurs can be produced by setting properties by hand. "
diff --git a/input/test/smart-transpose.ly b/input/test/smart-transpose.ly
index dadc2c9407..1de5769f6d 100644
--- a/input/test/smart-transpose.ly
+++ b/input/test/smart-transpose.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 texidoc="@cindex Smart Transpose
diff --git a/input/test/spacing-2.ly b/input/test/spacing-2.ly
index 7a504e5ae0..66d729c27a 100644
--- a/input/test/spacing-2.ly
+++ b/input/test/spacing-2.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % more yummy regression goodness.  -gp
 \header {
diff --git a/input/test/spanner-after-break-tweak.ly b/input/test/spanner-after-break-tweak.ly
index a87d80c31c..28b081baff 100644
--- a/input/test/spanner-after-break-tweak.ly
+++ b/input/test/spanner-after-break-tweak.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Spanner after break
 
diff --git a/input/test/staff-bracket.ly b/input/test/staff-bracket.ly
index 519da6c6d7..4d382758a4 100644
--- a/input/test/staff-bracket.ly
+++ b/input/test/staff-bracket.ly
@@ -1,4 +1,4 @@
-\version "2.1.26" 
+\version "2.1.28" 
 
 \header{ texidoc="@cindex Nested Staff Groups
 Staffs can be nested in various combinations. Here, @code{StaffGroup}
diff --git a/input/test/staff-container.ly b/input/test/staff-container.ly
index 93b51a4398..8bb5126183 100644
--- a/input/test/staff-container.ly
+++ b/input/test/staff-container.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/test/staff-lines.ly b/input/test/staff-lines.ly
index 0a68b641eb..9d6c46c3f5 100644
--- a/input/test/staff-lines.ly
+++ b/input/test/staff-lines.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/test/staff-size.ly b/input/test/staff-size.ly
index 22cc273c85..aa5df519ea 100644
--- a/input/test/staff-size.ly
+++ b/input/test/staff-size.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Staff Size
 
diff --git a/input/test/staff-space.ly b/input/test/staff-space.ly
index 4c4dfb88c6..748ff8639f 100644
--- a/input/test/staff-space.ly
+++ b/input/test/staff-space.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc ="@cindex Staff Space
 By just increasing @code{staff-space} on a staff, you may produce strange
diff --git a/input/test/stem-cross-staff.ly b/input/test/stem-cross-staff.ly
index dcc7c59bc0..7f44befe97 100644
--- a/input/test/stem-cross-staff.ly
+++ b/input/test/stem-cross-staff.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Stem Cross Staff
 The chords which exceptionally cross staves may be produced by increasing 
diff --git a/input/test/stem-extend.ly b/input/test/stem-extend.ly
index 62c4b12d79..5f8e7a9dec 100644
--- a/input/test/stem-extend.ly
+++ b/input/test/stem-extend.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Stem Extend
 Extending stems to the center line may be prevented using @code{no-stem-extend}.
diff --git a/input/test/stem-length.ly b/input/test/stem-length.ly
index 4729a6c0e0..82f1e40a2b 100644
--- a/input/test/stem-length.ly
+++ b/input/test/stem-length.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc = "@cindex Stem Length
 The length of stems can be altered. "
diff --git a/input/test/tablature-hammer.ly b/input/test/tablature-hammer.ly
index 674bd535b4..cda8fd5938 100644
--- a/input/test/tablature-hammer.ly
+++ b/input/test/tablature-hammer.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 \header {texidoc = "@cindex Tablature hammer
 A hammer in tablature can be faked with slurs. "
 } 
diff --git a/input/test/tablature.ly b/input/test/tablature.ly
index 062c966612..66615fb1de 100644
--- a/input/test/tablature.ly
+++ b/input/test/tablature.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc = "@cindex Tabulature
 Tablature is internally done by overriding the note-head formatting function
diff --git a/input/test/temporary-stave.ly b/input/test/temporary-stave.ly
index 72f7514f70..36d1cfaf43 100644
--- a/input/test/temporary-stave.ly
+++ b/input/test/temporary-stave.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
 
diff --git a/input/test/text-rotate.ly b/input/test/text-rotate.ly
index a8d2707746..5258adaf83 100644
--- a/input/test/text-rotate.ly
+++ b/input/test/text-rotate.ly
@@ -16,7 +16,7 @@ output for printing of the source of this example (commenting one line).
 
     }
 
-\version "2.1.26"
+\version "2.1.28"
 
 \score {
 \new Staff \notes \relative c'' {
diff --git a/input/test/text-spanner.ly b/input/test/text-spanner.ly
index 1d7ae2ddea..c20486be42 100644
--- a/input/test/text-spanner.ly
+++ b/input/test/text-spanner.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex text spanner
 Text spanners can be used in the similar manner than markings for pedals
diff --git a/input/test/textscript.ly b/input/test/textscript.ly
index bb07993620..6387bcb5e6 100644
--- a/input/test/textscript.ly
+++ b/input/test/textscript.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Textscript
 There are different fonts and glyphs to be used with @code{\markup} command. "
diff --git a/input/test/tie-cross-voice.ly b/input/test/tie-cross-voice.ly
index f12662e188..6141e0b60a 100644
--- a/input/test/tie-cross-voice.ly
+++ b/input/test/tie-cross-voice.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 
diff --git a/input/test/tie-sparse.ly b/input/test/tie-sparse.ly
index 75f160ebce..d4cf9abe91 100644
--- a/input/test/tie-sparse.ly
+++ b/input/test/tie-sparse.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc = "@cindex Tie Sparse
 Setting @code{sparseTies} generated only one tie per chord pair. "
diff --git a/input/test/time-signature-double.ly b/input/test/time-signature-double.ly
index e8693b0d42..8eba05f1ce 100644
--- a/input/test/time-signature-double.ly
+++ b/input/test/time-signature-double.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc= "
 
diff --git a/input/test/time.ly b/input/test/time.ly
index 22a56fd6fa..10444c6246 100644
--- a/input/test/time.ly
+++ b/input/test/time.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % TODO: This file could be old.  Ask about it later.  -gp
 
 \header { texidoc = "@cindex Time
diff --git a/input/test/timing.ly b/input/test/timing.ly
index 56e7df7f36..dfe3e9db79 100644
--- a/input/test/timing.ly
+++ b/input/test/timing.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 % possible rename to bar-something.
 
 \header{ texidoc = "@cindex Bar Length
diff --git a/input/test/title-markup.ly b/input/test/title-markup.ly
index 98085979e0..d90500913c 100644
--- a/input/test/title-markup.ly
+++ b/input/test/title-markup.ly
@@ -6,20 +6,6 @@
      lilypond-bin -fps title-markup.ly
      export GS_LIB=$(pwd)/mf/out:/usr/share/texmf/fonts/type1/bluesky/cm
      gs title-markup.ps
-
-
-FIXME: use conditionals in  \makeTitle:
-
-#(define (my-ly-version)
-    (list-head (ly:version) 3))
-
-#(if (not (defined? 'pieceTagLine))
-    (define pieceTagLine (string-append "Jeremie " (numbers->string (my-ly-version)) " was here")))
-
-\header{
-tagline = \pieceTagLine
-texidoc = "
-
 %}
 
 sizeTest = \markup {
@@ -58,40 +44,73 @@ spaceTest = \markup { "two space chars" }
  		  (font-shape . upright)
  		  (font-size . 2))
     
-    title = "Title String"
+    %dedication = "För my dør Lily"
+    dedication = "For my öòóôõø so dear Lily"
+    title = "Title"
     subtitle = "(and (the) subtitle)"
-    poet = "poetstring"
-    composer = "compozeur"
-    instrument = "instrum"
-    piece = "stukkie"
+    subsubtitle = "Sub sub title"
+    poet = "Poet"
+    composer = "Composer"
+    texttranslator = "Text Translator"
+    opus = "opus 0"
+    meter = "Meter (huh?)"
+    arranger = "Arranger"
+    instrument = "Instrument"
+    piece = "piece"
 
+%{
+    makeConditionalTitle = \markup {
+	\column <
+            #(if (defined? 'title)
+             (markup* #:fill-line (#:huge #:bigger #:bigger #:bold title))
+             (markup* ""))
+            #(if (defined? 'subtitle)
+             (markup* #:fill-line ( #:large #:bold subtitle))
+             (markup* ""))
+            #(if (defined? 'subsubtitle)
+             (markup* #:fill-line (subsubtitle))
+             (markup* ""))
+	 >
+    }
+%}
     makeTitle = \markup {
 	\column <
-	    { "<-LEFT" \hspace #30 "centre" \hspace #30 "RIGHT->" }
-            " "
-	    \center < { \huge \bigger \bold \title } >
-            " "
-            \center <
-                \center < { \normalsize \bold \subtitle } >
-                %" " \hspace #60 " "
+	    %\fill-line #linewidth < \huge \bigger \bold \title >
+            \override #'(baseline-skip . 4) \column <
+	        \fill-line < \dedication >
+	        \fill-line < \huge\bigger\bigger\bigger\bigger \bold \title >
+                \override #'(baseline-skip . 3) \column <
+                    \fill-line < \large\bigger\bigger \bold \subtitle >
+                    \fill-line < \bigger\bigger \bold \subsubtitle >
+                >
+                \override #'(baseline-skip . 5) \column <
+                " "
+                >
+                \override #'(baseline-skip . 2.5) \column <
+	            \fill-line < \bigger \poet
+                                 \large\bigger \caps \composer >
+		    \fill-line < \bigger \texttranslator
+				 \bigger \opus >
+		    \fill-line < \bigger \meter
+				 \bigger \arranger >
+                    " "
+		    \fill-line < \large\bigger \instrument >
+                    " "
+		    \fill-line < \large\bigger \caps \piece  " ">
+                >
             >
-            " "
-            " "
-	    { \left-align { \smaller \upright \instrument }
-              \right-align { \upright \composer } }
-            " "
-	    { \left-align { \smaller \caps \piece }
-              \right-align { \upright \poet } }
-            " "
-	 >
+        >    
     }
+
+%{
      foe = \sizeTest
-     bar = \spaceTest
+     baar = \spaceTest
+%}
 }
 
 \score {
     \context Staff \notes \relative c' {
-	c-\sizeTest % \markup { \center < \roman \caps "foe" > }
-        c-\spaceTest
+	c2-\sizeTest c2-\spaceTest \break
+	c2 c2
     }
 }
diff --git a/input/test/title.ly b/input/test/title.ly
index 32bbf81328..1c9f8af327 100644
--- a/input/test/title.ly
+++ b/input/test/title.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % MERGE with lilypond-
 \header {
   filename = "title.ly"
diff --git a/input/test/to-xml.ly b/input/test/to-xml.ly
index f6bdc3dd3e..14c1f22943 100644
--- a/input/test/to-xml.ly
+++ b/input/test/to-xml.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 fooBar = \notes { << c''4 \\ g'4 >> }
 
diff --git a/input/test/transposition.ly b/input/test/transposition.ly
index e9cee118cb..546aca017d 100644
--- a/input/test/transposition.ly
+++ b/input/test/transposition.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 \header{ texidoc = "@cindex Transposition
 Transposing has also an effect key signature, if it is given using
diff --git a/input/test/trill.ly b/input/test/trill.ly
index 9fd74b62c7..4ed63deb04 100644
--- a/input/test/trill.ly
+++ b/input/test/trill.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header { texidoc="@cindex Trill
 The extended trill may be produced using @code{TextSpanner} with @code{trill} 
diff --git a/input/test/trills.ly b/input/test/trills.ly
index f1ea5af9f2..cb9fe4527f 100644
--- a/input/test/trills.ly
+++ b/input/test/trills.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \header {
   texidoc="@cindex Trills
diff --git a/input/test/unfold-all-repeats.ly b/input/test/unfold-all-repeats.ly
index 20826832e2..0a17f8caa9 100644
--- a/input/test/unfold-all-repeats.ly
+++ b/input/test/unfold-all-repeats.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % regression.  -gp
 
 \header { 
diff --git a/input/test/vertical-extent.ly b/input/test/vertical-extent.ly
index 21d989a969..e599b9d271 100644
--- a/input/test/vertical-extent.ly
+++ b/input/test/vertical-extent.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % TODO: huh?  what's this file about?  -gp
 
 \header { texidoc = "
diff --git a/input/tutorial/brahms-original.ly b/input/tutorial/brahms-original.ly
index 10886f4a42..3e32f2bb42 100644
--- a/input/tutorial/brahms-original.ly
+++ b/input/tutorial/brahms-original.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \score {
     \notes\context PianoStaff <<
     \context Staff = up
diff --git a/input/tutorial/brahms-tweaked.ly b/input/tutorial/brahms-tweaked.ly
index 9d4c50e537..2bd90ebed5 100644
--- a/input/tutorial/brahms-tweaked.ly
+++ b/input/tutorial/brahms-tweaked.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \score {
     \notes\context PianoStaff <<
     \context Staff = up
diff --git a/input/twinkle-pop.ly b/input/twinkle-pop.ly
index 30900571c0..504d938b0f 100644
--- a/input/twinkle-pop.ly
+++ b/input/twinkle-pop.ly
@@ -1,5 +1,5 @@
 #(ly:set-option 'old-relative)
-\version "2.1.22"
+\version "2.1.28"
 \header{
 filename = 	 "twinkle-pop.ly"
 xtitle = 	 "Ah, vous dirais-je, maman "
diff --git a/lily/font-select.cc b/lily/font-select.cc
index 0a21fc6201..2321f5a058 100644
--- a/lily/font-select.cc
+++ b/lily/font-select.cc
@@ -13,9 +13,9 @@
 #include "font-interface.hh"
 #include "warn.hh"
 
-LY_DEFINE(ly_paper_get_font,"ly:paper-get-font", 2, 0, 0,
-	  (SCM paper, SCM chain),
-	  "Return a font metric satisfying the font-qualifiers in the alist chain @var{chain}.\n"
+LY_DEFINE (ly_paper_get_font, "ly:paper-get-font", 2, 0, 0,
+	   (SCM paper, SCM chain),
+	   "Return a font metric satisfying the font-qualifiers in the alist chain @var{chain}.\n"
 "\n"
 "The font object represents the metric information of a font. Every font\n"
 "that is loaded into LilyPond can be accessed via Scheme. \n"
@@ -29,12 +29,20 @@ LY_DEFINE(ly_paper_get_font,"ly:paper-get-font", 2, 0, 0,
 "An alist chain is a list of alists, containing grob properties.\n")
 {
   Paper_def *pap = unsmob_paper (paper);
-  SCM_ASSERT_TYPE(pap, paper, SCM_ARG1, __FUNCTION__, "paper definition");
+  SCM_ASSERT_TYPE (pap, paper, SCM_ARG1, __FUNCTION__, "paper definition");
   
-  Font_metric*fm = select_font (pap, chain);
-  return fm->self_scm();
+  Font_metric *fm = select_font (pap, chain);
+  return fm->self_scm ();
 }
 
+LY_DEFINE (ly_paper_get_number, "ly:paper-get-number", 2, 0, 0,
+	   (SCM paper, SCM name),
+	   "Return the paper variable @var{name}.")
+{
+  Paper_def *pap = unsmob_paper (paper);
+  SCM_ASSERT_TYPE (pap, paper, SCM_ARG1, __FUNCTION__, "paper definition");
+  return gh_double2scm (pap->get_realvar (name));
+}
 
 bool
 wild_compare (SCM field_val, SCM val)
diff --git a/lily/paper-def.cc b/lily/paper-def.cc
index c9386c2e41..0e7ab2254e 100644
--- a/lily/paper-def.cc
+++ b/lily/paper-def.cc
@@ -41,8 +41,6 @@ Paper_def::Paper_def (Paper_def const&src)
 {
 }
 
-
-
 Real
 Paper_def::get_realvar (SCM s) const
 {
diff --git a/ly/a3-init.ly b/ly/a3-init.ly
index a956d8b90c..259eccc635 100644
--- a/ly/a3-init.ly
+++ b/ly/a3-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % a3-init.ly
 
 hsize = 296.9 \mm
diff --git a/ly/a4-init.ly b/ly/a4-init.ly
index 646f33cd9a..ecf51b9f73 100644
--- a/ly/a4-init.ly
+++ b/ly/a4-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % a4.ly
 
 hsize = 210.0 \mm
diff --git a/ly/accordion-defs-init.ly b/ly/accordion-defs-init.ly
index 2f443ae3cb..8c432fc9b1 100644
--- a/ly/accordion-defs-init.ly
+++ b/ly/accordion-defs-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % Symbols needed to print accordion music
 % 
 %  2' = T
diff --git a/ly/book-init-init.ly b/ly/book-init-init.ly
index c4ceff054d..e9c4e2c602 100644
--- a/ly/book-init-init.ly
+++ b/ly/book-init-init.ly
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
 	
-\version "2.1.26"
+\version "2.1.28"
 
 
 \include "declarations-init.ly"
diff --git a/ly/catalan.ly b/ly/catalan.ly
index a9878ce27b..119184bfce 100644
--- a/ly/catalan.ly
+++ b/ly/catalan.ly
@@ -73,4 +73,4 @@ pitchnamesCatalan = #`(
 
 pitchnames = \pitchnamesCatalan
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/center-init.ly b/ly/center-init.ly
index 493bc3179e..82a8ea52aa 100644
--- a/ly/center-init.ly
+++ b/ly/center-init.ly
@@ -1,6 +1,6 @@
 % Toplevel initialisation file. 
 	
-\version "2.1.26"
+\version "2.1.28"
 
 
 \include "declarations-init.ly"
diff --git a/ly/chord-modifiers-init.ly b/ly/chord-modifiers-init.ly
index b7338bf9d5..d780d3ff9d 100644
--- a/ly/chord-modifiers-init.ly
+++ b/ly/chord-modifiers-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 chordmodifiers = #default-chord-modifier-list
 
diff --git a/ly/declarations-init.ly b/ly/declarations-init.ly
index 08756da831..8398c68af3 100644
--- a/ly/declarations-init.ly
+++ b/ly/declarations-init.ly
@@ -1,6 +1,6 @@
 #(ly:set-option 'old-relative)
 
-\version "2.1.26"
+\version "2.1.28"
 breve = #(ly:make-duration -1 0)
 longa = #(ly:make-duration -2 0 )
 maxima = #(ly:make-duration -3 0)
diff --git a/ly/deutsch.ly b/ly/deutsch.ly
index 6c5d35c70b..b967c5e7c0 100644
--- a/ly/deutsch.ly
+++ b/ly/deutsch.ly
@@ -49,4 +49,4 @@ pitchnamesDeutsch = #`(
 
 pitchnames = \pitchnamesDeutsch
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/drumpitch-init.ly b/ly/drumpitch-init.ly
index 62d3b53359..3f35910f8a 100644
--- a/ly/drumpitch-init.ly
+++ b/ly/drumpitch-init.ly
@@ -1,5 +1,5 @@
 
-\version "2.1.26"
+\version "2.1.28"
 
 drumPitchNames =
 #'((acousticbassdrum . acousticbassdrum)
diff --git a/ly/dynamic-scripts-init.ly b/ly/dynamic-scripts-init.ly
index ca6358ea15..b4c85955b1 100644
--- a/ly/dynamic-scripts-init.ly
+++ b/ly/dynamic-scripts-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 %
 % declare the standard dynamic identifiers.
diff --git a/ly/english.ly b/ly/english.ly
index f937ded6b5..b1a06f7086 100644
--- a/ly/english.ly
+++ b/ly/english.ly
@@ -87,5 +87,5 @@ pitchnamesEnglish = #`(
 
 pitchnames = \pitchnamesEnglish
 
-\version "2.1.26"
+\version "2.1.28"
 
diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index 71d682edf4..6918d9722f 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 \translator {
     \name Global
diff --git a/ly/espanol.ly b/ly/espanol.ly
index 2d7d5082d9..31e39e4d8f 100644
--- a/ly/espanol.ly
+++ b/ly/espanol.ly
@@ -58,4 +58,4 @@ pitchnamesEspanol = #`(
 
 pitchnames = \pitchnamesEspanol
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/generate-documentation.ly b/ly/generate-documentation.ly
index d384f4d66f..9ea349a254 100644
--- a/ly/generate-documentation.ly
+++ b/ly/generate-documentation.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 %
 % Running LilyPond on this file generates the documentation
diff --git a/ly/generate-interface-doc-init.ly b/ly/generate-interface-doc-init.ly
index 2e4f14891c..29f1ea4167 100644
--- a/ly/generate-interface-doc-init.ly
+++ b/ly/generate-interface-doc-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 %
 % Running LilyPond on this file generates the short interface doc
diff --git a/ly/grace-init.ly b/ly/grace-init.ly
index dbcbf3978f..9b3502d5bf 100644
--- a/ly/grace-init.ly
+++ b/ly/grace-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 startGraceMusic = \notes {
diff --git a/ly/gregorian-init.ly b/ly/gregorian-init.ly
index 7b5dc8f9e9..c8fd5007eb 100644
--- a/ly/gregorian-init.ly
+++ b/ly/gregorian-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 %%%%%%%%
 %%%%%%%% shortcuts common for all styles of gregorian chant notation
diff --git a/ly/init.ly b/ly/init.ly
index e7f7d7d36c..a0505d8eea 100644
--- a/ly/init.ly
+++ b/ly/init.ly
@@ -4,7 +4,7 @@
 #(define-public midi-debug #f)
 
 
-\version "2.1.26"
+\version "2.1.28"
 
 \include "declarations-init.ly"
 
diff --git a/ly/italiano.ly b/ly/italiano.ly
index bce806a367..c40a756d6d 100644
--- a/ly/italiano.ly
+++ b/ly/italiano.ly
@@ -86,4 +86,4 @@ pitchnamesItaliano = #`(
 
 pitchnames = \pitchnamesItaliano
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/legal-init.ly b/ly/legal-init.ly
index 71f287780a..70939cc4e5 100644
--- a/ly/legal-init.ly
+++ b/ly/legal-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % legal-init.ly
 
 hsize = 8.5 \in
diff --git a/ly/letter-init.ly b/ly/letter-init.ly
index 713443f6f8..9d3a192543 100644
--- a/ly/letter-init.ly
+++ b/ly/letter-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 % letter-init.ly
 
 hsize = 8.5 \in
diff --git a/ly/midi-init.ly b/ly/midi-init.ly
index 37d3fa386e..30999086cf 100644
--- a/ly/midi-init.ly
+++ b/ly/midi-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 \midi {
         \tempo 4=60
 	\include "performer-init.ly"
diff --git a/ly/nederlands.ly b/ly/nederlands.ly
index 6ce0358073..4454a9fbf7 100644
--- a/ly/nederlands.ly
+++ b/ly/nederlands.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 %{
  common dutch names for notes. es means flat, is means sharp
 %}
diff --git a/ly/norsk.ly b/ly/norsk.ly
index a52e7d197c..3a7b303f92 100644
--- a/ly/norsk.ly
+++ b/ly/norsk.ly
@@ -105,4 +105,4 @@ pitchnamesNorsk = #`(
 
 pitchnames =\pitchnamesNorsk
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/params-init.ly b/ly/params-init.ly
index efd21df5a5..9b1307d2d5 100644
--- a/ly/params-init.ly
+++ b/ly/params-init.ly
@@ -1,2 +1,2 @@
-\version "2.1.26"
+\version "2.1.28"
 
diff --git a/ly/part-paper-init.ly b/ly/part-paper-init.ly
index eb25073f02..0a7791d079 100644
--- a/ly/part-paper-init.ly
+++ b/ly/part-paper-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % JUNKME
 %part-paper-init.ly
diff --git a/ly/performer-init.ly b/ly/performer-init.ly
index e4c8d9a649..26796cbaa0 100644
--- a/ly/performer-init.ly
+++ b/ly/performer-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 				%
 				% setup for Request->Element conversion. Guru-only
diff --git a/ly/property-init.ly b/ly/property-init.ly
index b48865dd8c..421af5747a 100644
--- a/ly/property-init.ly
+++ b/ly/property-init.ly
@@ -1,6 +1,6 @@
 % property-init.ly
 
-\version "2.1.26"
+\version "2.1.28"
 
 stemUp = \override Stem  #'direction = #1
 stemDown = \override Stem  #'direction = #-1 
diff --git a/ly/scale-definitions-init.ly b/ly/scale-definitions-init.ly
index e0891db7e0..d768109d9c 100644
--- a/ly/scale-definitions-init.ly
+++ b/ly/scale-definitions-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 major = #`(
diff --git a/ly/script-init.ly b/ly/script-init.ly
index adc8d91678..8ba8e15207 100644
--- a/ly/script-init.ly
+++ b/ly/script-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 
 dashHat= "marcato"
diff --git a/ly/spanners-init.ly b/ly/spanners-init.ly
index 76dee224de..b901d3df04 100644
--- a/ly/spanners-init.ly
+++ b/ly/spanners-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 startGroup = #(make-span-event 'NoteGroupingEvent START)
 stopGroup = #(make-span-event 'NoteGroupingEvent STOP)
diff --git a/ly/suomi.ly b/ly/suomi.ly
index 6b5488a776..e28135a7f9 100644
--- a/ly/suomi.ly
+++ b/ly/suomi.ly
@@ -48,4 +48,4 @@ pitchnamesSuomi = #`(
 
 pitchnames = \pitchnamesSuomi
 
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/svenska.ly b/ly/svenska.ly
index f924dfa748..fd24d97ae0 100644
--- a/ly/svenska.ly
+++ b/ly/svenska.ly
@@ -42,4 +42,4 @@ pitchnamesSvenska = #`(
 )
 
 pitchnames = \pitchnamesSvenska
-\version "2.1.26"
+\version "2.1.28"
diff --git a/ly/tabloid-init.ly b/ly/tabloid-init.ly
index b5cc543fa4..0377eb7ed6 100644
--- a/ly/tabloid-init.ly
+++ b/ly/tabloid-init.ly
@@ -1,4 +1,4 @@
-\version "2.1.26"
+\version "2.1.28"
 
 % tabloid-init.ly
 
diff --git a/ps/lilyponddefs.ps b/ps/lilyponddefs.ps
index c11a7390f5..c0d15a1bb5 100644
--- a/ps/lilyponddefs.ps
+++ b/ps/lilyponddefs.ps
@@ -29,10 +29,9 @@ output-scale output-scale scale
 
 /paper-size { lilypondpaperpapersize } bind def
 
-% FIXME
-% urg, read from paper block
-% fixed base line skip value, for single line staves
-/base-line-skip lilypondpaperlineheight def
+%% FIXME: base-line-skip is too big, is this RIGHT?
+%% /base-line-skip lilypondpaperlineheight def
+/base-line-skip lilypondpaperlineheight lilypondpaperoutputscale div def
 
 /init-paper {
 	gsave
@@ -43,7 +42,8 @@ output-scale output-scale scale
 
 	%FIXME:
 	%vsize text-height sub 2 div /top-margin exch def
-	144 2 div /top-margin exch def
+	% 144 2 div /top-margin exch def
+	/top-margin 100 def
 	hsize line-width sub 2 div /left-margin exch def
 	grestore
 } bind def
diff --git a/scm/define-markup-commands.scm b/scm/define-markup-commands.scm
index 96086be60c..d4b0a3f7f3 100644
--- a/scm/define-markup-commands.scm
+++ b/scm/define-markup-commands.scm
@@ -18,25 +18,51 @@
 (def-markup-command (simple paper props str) (string?)
   "A simple text-string; @code{\\markup @{ foo @}} is equivalent with
 @code{\\markup @{ \\simple #\"foo\" @}}."
-  (let ((toks (string-tokenize str)))
     (interpret-markup paper props
-			  (make-line-markup
-			   (map make-word-markup toks)))
-    ))
+		      (make-line-markup
+		       (map make-word-markup (string-tokenize str)))))
 
+(define-public empty-markup
+  (make-simple-markup ""))
+
+;;(def-markup-command (fill-line paper props line-width markups)
+;;  (number? markup-list?)
+;; no parser tag -- should make number? markuk-list? thingy
+(def-markup-command (fill-line paper props markups)
+  (markup-list?)
+  "Put @var{markups} in a horizontal line of width @var{line-width}.
+   The markups are spaced/flushed to fill the entire line."
+
+  (let* ((stencils (map (lambda (x) (interpret-markup paper props x))
+			markups))
+	 (text-width (apply + (map interval-length
+				   (map (lambda (x)
+					  (ly:stencil-get-extent x X))
+					stencils))))
+	(word-count (length markups))
+	(word-space (cdr (chain-assoc 'word-space props)))
+	(line-width (cdr (chain-assoc 'linewidth props)))
+	(fill-space (if (< line-width text-width)
+			word-space
+			(/ (- line-width text-width)
+			   (if (= word-count 1) 2 (- word-count 1)))))
+	(line-stencils (if (= word-count 1)
+			   (map (lambda (x) (interpret-markup paper props x))
+				(list (make-word-markup "")
+				      (car markups)
+				      (make-word-markup "")))
+				stencils)))
+    (stack-stencil-line fill-space line-stencils)))
+  
 (define (font-markup qualifier value)
   (lambda (paper props arg)
     (interpret-markup paper
 		      (prepend-alist-chain qualifier value props)
                       arg)))
 
-(define-public empty-markup
-  (make-simple-markup ""))
-
 (def-markup-command (line paper props args) (markup-list?)
-  "Put @var{args} in a horizontal line. The property @code{word-space} determines
-the space between each markup in @var{args}.
-"
+  "Put @var{args} in a horizontal line.  The property @code{word-space}
+determines the space between each markup in @var{args}."
   (stack-stencil-line
    (cdr (chain-assoc 'word-space props))
    (map (lambda (m) (interpret-markup paper props m)) args)))
@@ -47,14 +73,12 @@ the space between each markup in @var{args}.
    (interpret-markup paper props m1)
    (interpret-markup paper props m2)))
 
-
 (def-markup-command (finger paper props arg) (markup?)
   "Set the argument as small numbers."
   (interpret-markup paper
                     (cons '((font-size . -4) (font-family . number)) props)
                     arg))
 
-
 (def-markup-command (fontsize paper props mag arg) (number? markup?)
   "This sets the relative font size, eg.
 @example
@@ -186,7 +210,7 @@ of the #'direction layout property."
      (cdr (chain-assoc 'baseline-skip props))
      (map (lambda (x) (interpret-markup paper props x)) args))))
 
-(def-markup-command (center paper props args) (markup-list?)
+(def-markup-command (center-align paper props args) (markup-list?)
   (let* ((mols (map (lambda (x) (interpret-markup paper props x)) args))
          (cmols (map (lambda (x) (ly:stencil-align-to! x X CENTER)) mols)))
     (stack-lines -1 0.0 (cdr (chain-assoc 'baseline-skip props)) mols)))
diff --git a/scm/font.scm b/scm/font.scm
index b1c707fdec..b74af0546a 100644
--- a/scm/font.scm
+++ b/scm/font.scm
@@ -81,8 +81,7 @@ or
      (10.0 . #((10.0 . "cmb10")
 	       )))
     (#(medium caps roman) .
-     (10.0 . #((10.0 . "cmcsc10")
-	       (12.0 . "cmcsc12"))))
+     (10.0 . #((10.0 . "cmcsc10"))))
     (#(* * dynamic) .
      (14.0 .  #((6.0 . "feta-din6")
 		(8.0 . "feta-din8")
diff --git a/scm/new-markup.scm b/scm/new-markup.scm
index 1f440c889e..a4174f94e0 100644
--- a/scm/new-markup.scm
+++ b/scm/new-markup.scm
@@ -106,7 +106,7 @@ against SIGNATURE, reporting MAKE-NAME as the user-invoked function.
 
  - #:COMMAND is used instead of \\COMMAND
  - #:lines ( ... ) is used instead of { ... }
- - #:center ( ... ) is used instead of \\center < ... >
+ - #:center-align ( ... ) is used instead of \\center-align < ... >
  - etc.
 
 Example:
diff --git a/scm/output-ps.scm b/scm/output-ps.scm
index c472db5304..5090ef12de 100644
--- a/scm/output-ps.scm
+++ b/scm/output-ps.scm
@@ -11,9 +11,8 @@
 ;;;; TODO:
 ;;;;   * special characters, encoding.
 ;;;;   * text setting, kerning.
-;;;;   * linewidth
 ;;;;   * font properties
-;;;;   * construction/customisation of title markup
+;;;;   * customisation of title markup, piece title markup?
 ;;;;   * page layout
 ;;;;   * document output-interface
 
@@ -44,6 +43,23 @@
 ;; WIP -- stencils from markup? values of output-scopes
 (define header-stencil #f)
 
+(define BASELINE-SKIP 3)
+
+;; /lilypondpaperoutputscale 1.75729901757299 def
+;;/lily-output-units 2.83464  def  %% milimeter
+;;/output-scale lilypondpaperoutputscale lily-output-units mul def
+;;
+;; output-scale = 1.75729901757299 * 2.83464 = 4.9813100871731003736
+(define OUTPUT-SCALE 4.98)
+(define TOP-MARGIN 0)
+(define PROPS `(((font-family . roman)
+		 (word-space . 1)
+		 (baseline-skip . ,BASELINE-SKIP)
+		 (font-series . medium)
+		 (font-style . roman)
+		 (font-shape . upright)
+		 (font-size . 0))))
+
 
 ;;; helper functions, not part of output interface
 (define (escape-parentheses s)
@@ -53,6 +69,35 @@
   (cons (+ (car a) (car b))
 	(+ (cdr a) (cdr b))))
 
+(define LATIN1-ENCODING-ALIST
+  '(("ö" . "oumlaut")
+    ("ò" . "ograve")
+    ("ó" . "oacute")
+    ("ô" . "ocircumflex")
+    ("õ" . "otilde")
+    ("ø" . "oslash")))
+
+(define LATIN1-ENCODING-COMMANDS
+  "/oumlaut { (o) show gsave -1 0 rmoveto (\\177) show grestore } bind def
+/ograve { (o) show gsave -1 0 rmoveto (\\022) show grestore } def
+/oacute { (o) show gsave -1 0 rmoveto (\\023) show grestore } def
+/ocircumflex { (o) show gsave -1 0 rmoveto (^) show grestore } def
+/otilde { (o) show gsave -1 0 rmoveto (~) show grestore } def
+/oslash { (o) show gsave -1 0 rmoveto (\\034) show grestore } def
+")
+
+(define (ps-encoding text)
+  (let ((s (escape-parentheses text)))
+    (define (helper alist-list s)
+      (if (not (pair? alist-list))
+	  s
+	  (helper (cdr alist-list)
+		  (regexp-substitute/global
+		   #f (caar alist-list) s
+		   'pre (string-append ") show " (cdar alist-list) " (")
+		   'post))))
+    (helper LATIN1-ENCODING-ALIST s)))
+
 ;; FIXME: lily-def
 (define (ps-string-def prefix key val)
   (string-append "/" prefix (symbol->string key) " ("
@@ -281,16 +326,13 @@
 	(string-append "/" key " {" val "} bind def\n")
 	(string-append "/" key " (" val ") def\n"))))
 
-
 (define (make-title port)
   (if header-stencil
       (let ((x-ext (ly:stencil-get-extent header-stencil Y))
 	    (y-ext (ly:stencil-get-extent header-stencil X)))
-	;;(display (start-system (interval-length x-ext) (interval-length y-ext))
 	(display (start-system
-		  ;; output-scale trouble?
-		  (/ (interval-length x-ext) 2)
-		  (/ (interval-length y-ext) 2))
+		  (/ (interval-length x-ext) OUTPUT-SCALE)
+		  (/ (interval-length y-ext) OUTPUT-SCALE))
 		 port)
 	(output-stencil port (ly:stencil-get-expr header-stencil) '(0 . 0))
 	(display (stop-system) port)))
@@ -319,16 +361,10 @@
 (define (output-scopes paper scopes fields basename)
 
   ;; FIXME: customise/generate these
-  (let ((props '(((font-family . roman)
-		  (word-space . 1)
-		  (baseline-skip . 2)
-		  (font-series . medium)
-		  (font-style . roman)
-		  (font-shape . upright)
-		  (font-size . 0))))
-	(prefix "lilypond")
-    	(stencils '())
-	(baseline-skip 2))
+  (let* ((linewidth (ly:paper-get-number paper 'linewidth))
+	 (props (cons (acons 'linewidth linewidth '()) PROPS))
+	 (prefix "lilypond")
+	 (stencils '()))
 
     (define (scope-entry->string key var)
       (let ((val (variable-ref var)))
@@ -360,7 +396,10 @@
       (apply string-append (module-map scope-entry->string scope)))
 
     (let ((s (string-append (apply string-append (map output-scope scopes)))))
-      (set! header-stencil (stack-lines DOWN 0 baseline-skip stencils))
+      (set! header-stencil (stack-lines DOWN 0 BASELINE-SKIP stencils))
+
+      ;; match systems, which are also aligned to center
+      (ly:stencil-align-to! header-stencil Y CENTER)
       
       ;; trigger font load
       (ly:stencil-get-expr header-stencil)
@@ -410,11 +449,6 @@
     (numbers->string
      (list x y width height blotdiam)) " draw_round_box"))
 
-(define (symmetric-x-triangle thick w h)
-  (string-append
-   (numbers->string (list h w thick))
-   " draw_symmetric_x_triangle"))
-
 (define (start-system width height)
   (string-append
    "\n" (ly:number->string height)
@@ -433,17 +467,25 @@
 (define (stop-system)
   "}\nstop-system\n")
 
+(define (symmetric-x-triangle thick w h)
+  (string-append
+   (numbers->string (list h w thick))
+   " draw_symmetric_x_triangle"))
+
 (define (text s)
-  (string-append "(" (escape-parentheses s) ") show "))
+;;  (string-append "(" (escape-parentheses s) ") show "))
+  (string-append "(" (ps-encoding s) ") show "))
 
 ;; top-of-file, wtf?
 (define (top-of-file)
-  (header (string-append "GNU LilyPond (" (lilypond-version) "), ")
-          (strftime "%c" (localtime (current-time))))
+  (string-append
+   (header (string-append "GNU LilyPond (" (lilypond-version) "), ")
+	   (strftime "%c" (localtime (current-time))))
+   LATIN1-ENCODING-COMMANDS
   ;;; ugh
-  (ps-string-def
-   "lilypond" 'tagline
-   (string-append "Engraved by LilyPond (" (lilypond-version) ")")))
+   (ps-string-def
+    "lilypond" 'tagline
+    (string-append "Engraved by LilyPond (" (lilypond-version) ")"))))
 
 (define (unknown) 
   "\n unknown\n")
diff --git a/scripts/convert-ly.py b/scripts/convert-ly.py
index a8c410762c..5f3ae138d5 100644
--- a/scripts/convert-ly.py
+++ b/scripts/convert-ly.py
@@ -1980,6 +1980,13 @@ conversions.append (((2,1,28), conv,
 		     """make-music-by-name -> make-music,
 new syntax for setting \\arpeggioBracket"""))
 
+def conv (str):
+	str = re.sub (r'\\center([^-])', '\\center-align\\1', str)
+	return str
+
+conversions.append (((2,1,29), conv,
+		     '\\center -> \\center-align'))
+
 ################################
 #	END OF CONVERSIONS	
 ################################
-- 
2.39.5