From c81b75a62bd21b85642b76ce364b5016087bce24 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Tue, 5 Nov 2002 23:51:32 +0000 Subject: [PATCH] (Composite_music): new transpose syntax, \transpose FROM TO MUSIC. --- ChangeLog | 5 ++ Documentation/user/appendices.itely | 4 +- Documentation/user/internals.itely | 2 +- Documentation/user/music-glossary.tely | 2 +- Documentation/user/refman.itely | 46 ++++++++-------- Documentation/user/tutorial.itely | 10 ++-- input/mutopia/F.Schubert/standchen.ly | 8 +-- .../J.S.Bach/Petites-Preludes/preludes-3.ly | 4 +- input/mutopia/J.S.Bach/wtk1-prelude1.ly | 4 +- input/mutopia/R.Schumann/romanze-op28-2.ly | 20 +++---- .../mutopia/W.A.Mozart/mozart-hrn3-allegro.ly | 4 +- .../mutopia/W.A.Mozart/mozart-hrn3-romanze.ly | 4 +- input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly | 4 +- input/no-notation/denneboom.ly | 6 +-- input/praeludium-fuga-E.ly | 2 +- input/regression/accidental-double.ly | 4 +- input/regression/accidental-octave.ly | 4 +- input/regression/accidental-placement.ly | 4 +- input/regression/accidental-voice.ly | 6 +-- input/regression/accidentals.ly | 4 +- input/regression/arpeggio-collision.ly | 4 +- input/regression/beam-extreme.ly | 4 +- input/regression/beam-funky.ly | 4 +- input/regression/chord-changes.ly | 4 +- input/regression/chord-names.ly | 4 +- input/regression/collision-mesh.ly | 4 +- input/regression/collisions.ly | 4 +- input/regression/hara-kiri-pianostaff.ly | 4 +- input/regression/mensural.ly | 6 +-- input/regression/rest-collision.ly | 4 +- input/regression/tie-chord.ly | 4 +- input/rhythm.ly | 4 +- input/sondag-morgen/sondag-morgen-intro.ly | 4 +- input/sondag-morgen/sondag-morgen-notes.ly | 4 +- input/sondag-morgen/sondag-morgen.ly | 10 ++-- input/star-spangled-banner.ly | 6 +-- input/test/american-chords.ly | 4 +- input/test/ancient-font.ly | 14 ++--- input/test/banter-chords.ly | 4 +- input/test/beam-chord.ly | 4 +- input/test/beams.ly | 12 ++--- input/test/broken.ly | 4 +- input/test/cautionaries.ly | 4 +- input/test/chord-banter.ly | 52 +++++++++---------- input/test/chord-changes.ly | 4 +- input/test/chord-inversion.ly | 4 +- input/test/chord-table.ly | 52 +++++++++---------- input/test/chord-taxonomy.ly | 4 +- input/test/chords.ly | 4 +- input/test/ct-jazz.ly | 4 +- input/test/figured-bass.ly | 4 +- input/test/improv.ly | 4 +- input/test/jazz-chords.ly | 4 +- input/test/lyrics.ly | 4 +- input/test/mensural-ligatures.ly | 4 +- input/test/music-box.ly | 8 +-- input/test/notemode-chords.ly | 4 +- input/test/octave-duplicate.ly | 6 +-- input/test/part-combine-score.ly | 6 +-- input/test/scheme-interactions.ly | 6 +-- input/test/scripts.ly | 4 +- input/test/sleur.ly | 22 ++++---- input/test/smart-transpose.ly | 6 +-- input/test/stem.ly | 22 ++++---- input/test/transposition.ly | 10 ++-- input/tutorial/sammartini.ly | 4 +- input/twinkle-pop.ly | 6 +-- lily/auto-beam-engraver.cc | 12 ++--- lily/axis-group-engraver.cc | 5 +- lily/bar-engraver.cc | 4 +- lily/forbid-break-engraver.cc | 3 +- lily/include/pitch.hh | 6 +-- lily/instrument-name-engraver.cc | 7 ++- lily/lyric-phrasing-engraver.cc | 11 ++-- lily/note-head-line-engraver.cc | 4 +- lily/output-property-engraver.cc | 4 +- lily/parser.yy | 27 ++++------ lily/pitch-squash-engraver.cc | 8 +-- lily/pitch.cc | 37 +++++++------ lily/repeat-acknowledge-engraver.cc | 4 +- lily/score-engraver.cc | 23 ++++---- scripts/convert-ly.py | 16 ++++-- 82 files changed, 346 insertions(+), 340 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2d262a647d..1f80d6f469 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-11-06 Han-Wen Nienhuys + + * lily/parser.yy (Composite_music): new transpose syntax, + \transpose FROM TO MUSIC. + 2002-11-04 Jan Nieuwenhuizen * scripts/lilypond-book.py: diff --git a/Documentation/user/appendices.itely b/Documentation/user/appendices.itely index b42c474358..ac8a2d91e6 100644 --- a/Documentation/user/appendices.itely +++ b/Documentation/user/appendices.itely @@ -71,7 +71,7 @@ scheme = \chords { \score { \notes < \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper { linewidth = 5.7\in @@ -135,7 +135,7 @@ scheme = \chords { \score { \notes < \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper { linewidth = 5.7\in diff --git a/Documentation/user/internals.itely b/Documentation/user/internals.itely index 997e63105e..abdc8c94d8 100644 --- a/Documentation/user/internals.itely +++ b/Documentation/user/internals.itely @@ -630,7 +630,7 @@ Other compound music expressions include @example \repeat @var{expr} -\transpose @var{pitch} @var{expr} +\transpose @var{from} @var{to} @var{expr} \apply @var{func} @var{expr} \context @var{type} = @var{id} @var{expr} \times @var{fraction} @var{expr} diff --git a/Documentation/user/music-glossary.tely b/Documentation/user/music-glossary.tely index 1e8a542452..9f24f0b04b 100644 --- a/Documentation/user/music-glossary.tely +++ b/Documentation/user/music-glossary.tely @@ -3797,7 +3797,7 @@ relative pitches. @lilypond[13pt] \context Staff { \time 3/4 - \transpose bes\relative c'' { + \transpose bes\relative c' c'' { \key g \major d4 g,8 a b c | d4 g, g | e' c8 d e fis | g4 g, g \bar "|." } diff --git a/Documentation/user/refman.itely b/Documentation/user/refman.itely index 9b8cbbff15..970ab92817 100644 --- a/Documentation/user/refman.itely +++ b/Documentation/user/refman.itely @@ -2701,7 +2701,7 @@ dutch pitch names anymore. Hence you might wan't to reinclude up = \notes { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat } down = \notes { bassdrum4 snare8 bd r bd sn4 } \include "nederlands.ly" -bass = \notes \transpose c, { a4. e8 r e g e } +bass = \notes \transpose c c,, { a4. e8 r e g e } \score { < \apply #(drums->paper 'drums) \context Staff = drums < @@ -3124,7 +3124,7 @@ the standard staff. LilyPond has support for both entering and printing chords. @lilypond[verbatim,singleline] -twoWays = \notes \transpose c'' { +twoWays = \notes \transpose c c' { \chords { c1 f:sus4 bes/f } @@ -3169,7 +3169,7 @@ Throughout these examples, chords have been shifted around the staff using @code{\transpose}. @lilypond[fragment,verbatim] -\transpose c'' { +\transpose c c' { \chords { c1 c:3- c:7 c:8 c:9 c:9-.5+.7+ c:3-.5- @@ -3191,7 +3191,7 @@ raises the 5th, `@code{dim}' which lowers the 5th, which replaces the 5th with a 4th. @lilypond[fragment,verbatim] -\transpose c'' { +\transpose c c' { \chords { c1:m c:min7 c:maj c:aug c:dim c:sus } @@ -3204,7 +3204,7 @@ notes to be subtracted are listed after a @code{^} character, separated by dots. @lilypond[fragment,verbatim,center] - \transpose c'' { + \transpose c c' { \chords { c1^3 c:7^5.3 c:8^7 } @@ -3218,7 +3218,7 @@ transposed down until it is the lowest note in the chord. If the note is not in the chord, a warning will be printed. @lilypond[fragment,verbatim,center] - \transpose c''' { + \transpose c c'' { \chords { c1 c/e c/g c:7/e } @@ -3233,7 +3233,7 @@ adding the specified note to the chord, lowered by an octave, so it becomes the lowest note in the chord. @lilypond[fragment,verbatim,center] - \transpose c''' { + \transpose c c'' { \chords { c1 c/+c c/+g c:7/+b } @@ -3281,7 +3281,7 @@ scheme = \notes { \score { \notes< \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > } @end lilypond @@ -3300,7 +3300,7 @@ scheme = \chords { \context ChordNames { \property ChordNames.chordChanges = ##t \scheme } - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper{linewidth= 9.\cm} } @@ -3357,7 +3357,7 @@ scheme = \chords { \context ChordNames = jazz { \property ChordNames.ChordName \override #'style = #'jazz \scheme } - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > } @end lilypond @@ -3461,7 +3461,7 @@ adds a box around the bar numbers: @end example @lilypond[noindent,noquote] \score { - \context Staff \notes \transpose c''' { + \context Staff \notes \transpose c c'' { \property Score.BarNumber \override #'break-visibility = #end-of-line-invisible \property Score.barNumberVisibility = #(every-nth-bar-number-visible 5) \property Score.BarNumber \override #'molecule-callback = @@ -3526,24 +3526,24 @@ the name to avoid a collision. A music expression can be transposed with @code{\transpose}. The syntax is @example - \transpose @var{pitch} @var{musicexpr} + \transpose @var{from} @var{to} @var{musicexpr} @end example -This means that middle C in @var{musicexpr} is transposed to -@var{pitch}. +This means that @var{musicexpr} is transposed to by the interval +between @var{from} is @var{to}. @code{\transpose} distinguishes between enharmonic pitches: both -@code{\transpose cis'} or @code{\transpose des'} will transpose up half -a tone. The first version will print sharps and the second version -will print flats. +@code{\transpose c cis} or @code{\transpose c des} will transpose up +half a tone. The first version will print sharps and the second +version will print flats. @lilypond[singleline, verbatim] mus =\notes { \key d \major cis d fis g } \score { \notes \context Staff { \clef "F" \mus \clef "G" - \transpose g'' \mus - \transpose f'' \mus + \transpose c g' \mus + \transpose c f' \mus }} @end lilypond @@ -4075,7 +4075,7 @@ a ligature by small square angles: @lilypond[singleline,verbatim] \score { - \notes \transpose c'' { + \notes \transpose c c' { \[ g c a f d' \] a g f \[ e f a g \] @@ -4118,7 +4118,7 @@ Example: @lilypond[singleline,verbatim] \score { - \notes \transpose c'' { + \notes \transpose c c' { \property Score.timing = ##f \property Score.defaultBarType = "empty" \property Voice.NoteHead \set #'style = #'neo_mensural @@ -4144,7 +4144,7 @@ following: @lilypond[singleline,verbatim] \score { - \notes \transpose c'' { + \notes \transpose c c' { \property Score.timing = ##f \property Score.defaultBarType = "empty" \property Voice.NoteHead \set #'style = #'neo_mensural @@ -4846,7 +4846,7 @@ kneed stems. @lilypond \score { - \context PianoStaff \notes \transpose c''' < + \context PianoStaff \notes \transpose c c'' < \context Staff = up { s1 } \context Staff = down { [c8 c \translator Staff=up c \translator Staff=down c c c] } diff --git a/Documentation/user/tutorial.itely b/Documentation/user/tutorial.itely index ab1db83971..1709fef5d3 100644 --- a/Documentation/user/tutorial.itely +++ b/Documentation/user/tutorial.itely @@ -56,7 +56,7 @@ then the result looks like this: @lilypond[notime] \property Score.timing = ##f -\transpose c'' { c d e f g a b } +\transpose c c' { c d e f g a b } @end lilypond We will continue with this format: First we show a snippet of input, @@ -72,7 +72,7 @@ a1 a2 a4 a16 a32 @lilypond[notime] \property Score.timing = ##f \property Staff.autoBeaming = ##f -\transpose c'' { a1 a2 a4 a16 a32 s16_" " } +\transpose c c' { a1 a2 a4 a16 a32 s16_" " } @end lilypond If you don't specify a @rglos{duration}, the previous one is used: @@ -83,7 +83,7 @@ a4 a a2 a @lilypond[notime] \property Score.timing = ##f -\transpose c'' { a a a2 a s16_" " } +\transpose c c' { a a a2 a s16_" " } @end lilypond A @rglos{sharp} (@texisharp{}) is made by adding @samp{is}, a @@ -97,7 +97,7 @@ cis1 ees fisis aeses @lilypond[notime] \property Score.timing = ##f -\transpose c'' { cis1 ees fisis aeses s16_" " } +\transpose c c' { cis1 ees fisis aeses s16_" " } @end lilypond Add a dot @samp{.} after the duration to get a @rglos{dotted note}: @@ -108,7 +108,7 @@ a2. a4 a8. a16 @lilypond[notime] \property Score.timing = ##f -\transpose c'' { a2. a4 a8. a16 s16_" " } +\transpose c c' { a2. a4 a8. a16 s16_" " } @end lilypond The @rglos{meter} (or @rglos{time signature}) can be set with the diff --git a/input/mutopia/F.Schubert/standchen.ly b/input/mutopia/F.Schubert/standchen.ly index 75539d4c18..6bd6467483 100644 --- a/input/mutopia/F.Schubert/standchen.ly +++ b/input/mutopia/F.Schubert/standchen.ly @@ -41,7 +41,7 @@ instrument = "Piano" footer = "Mutopia-2001/04/27-xx" } -\version "1.7.3" +\version "1.7.5" dynamicUp = \property Voice.DynamicLineSpanner \override #'direction = #1 dynamicRevert = \property Voice.DynamicLineSpanner \revert #'direction @@ -434,12 +434,12 @@ grandStaff = \context PianoStaff < %{ Transpose as you like for your voice Range untransposed is c' to f'' (for tenors and sopranos) - \transpose a gives a' to d'' (for basses, who sing an octave down) + \transpose c' a gives a' to d'' (for basses, who sing an octave down) \addlyrics - \notes \transpose a \vocalStaff + \notes \transpose c' a \vocalStaff \lyricStaff - \notes \transpose a \grandStaff + \notes \transpose c' a \grandStaff %} \addlyrics diff --git a/input/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly b/input/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly index b426a36309..aa3fa56ed6 100644 --- a/input/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly +++ b/input/mutopia/J.S.Bach/Petites-Preludes/preludes-3.ly @@ -14,10 +14,10 @@ note, some have dotted half notes. This file was partly generated using m4. %} -\version "1.7.3" +\version "1.7.5" -upper = \notes \transpose c'' { +upper = \notes \transpose c c' { r16 [c es g] [es c es c] r c r c | r16 [c es g] [es c es c] r c r c | r16 [c f as] [f c f c] r c r c | diff --git a/input/mutopia/J.S.Bach/wtk1-prelude1.ly b/input/mutopia/J.S.Bach/wtk1-prelude1.ly index f8c276c6c9..1774d34370 100644 --- a/input/mutopia/J.S.Bach/wtk1-prelude1.ly +++ b/input/mutopia/J.S.Bach/wtk1-prelude1.ly @@ -15,11 +15,11 @@ enteredby = "Shay Rojansky" lastupdated = "1999/Oct/14" } -\version "1.5.68" +\version "1.7.5" % should do programmable input. soprane = - \notes \transpose c'' { + \notes \transpose c c' { \context Staff < % Real soprane \context Voice = uVoice { diff --git a/input/mutopia/R.Schumann/romanze-op28-2.ly b/input/mutopia/R.Schumann/romanze-op28-2.ly index 526c0a2441..ef17e5664b 100644 --- a/input/mutopia/R.Schumann/romanze-op28-2.ly +++ b/input/mutopia/R.Schumann/romanze-op28-2.ly @@ -5,7 +5,7 @@ %% 19 is broken --hwn. %\include "paper19.ly" -\version "1.7.3" +\version "1.7.5" \header { title = "Romanzen" @@ -36,7 +36,7 @@ global = \notes { \key fis \major \time 6/8 \repeat volta 2 { s2.*8 } s2.*26 \bar "|." } -righta = \notes \transpose cis'' { +righta = \notes \transpose c cis' { % \stemUp \slurUp \tieUp \stemUp \property Voice.Slur \override #'attachment = #'(stem . stem) @@ -89,7 +89,7 @@ righta = \notes \transpose cis'' { } -rightb = \notes \transpose cis'' { +rightb = \notes \transpose c cis' { \relative c { \stemDown \slurDown \repeat volta 2 { a4^1( g8^1 b4^1 a8^1 | @@ -112,7 +112,7 @@ rightb = \notes \transpose cis'' { \property Voice.Slur \override #'extra-offset = #'(0 . 3) \property Voice.Slur \override #'beautiful = #42 g( fes des fes b g_3 \! es_1 ges_2 a^3 ges f_1 ges_2 | - r ges_2 b des_1 ges b,_2 des ges,^1 b, \d des,^1 \stemDown \transpose c {[b,_1 as,] | + r ges_2 b des_1 ges b,_2 des ges,^1 b, \d des,^1 \stemDown \transpose c' c {[b,_1 as,] | g,8 [b,16 g, e, cis,] )d,_4 \< f, h, d_3 f_2 \! r16 } \property Voice.Slur \revert #'extra-offset \property Voice.Slur \revert #'beautiful @@ -135,7 +135,7 @@ rightb = \notes \transpose cis'' { f g16_2 b_1 a_2 gis_1 c_2 h, c cis_1 d_2 b,_1 | \tieDown c4.~ \tieBoth ~[< \! f8^3 h \> > < \! e b^2>] | \translator Staff=mid - \transpose c { + \transpose c' c { a4^1( g8^1 b4 a8^2 | f8..^1 f32^1 g8^2 )a8.. \slurUp | <)a8.. a'^5> <)a4. a'^5 \> > ~ | @@ -143,7 +143,7 @@ rightb = \notes \transpose cis'' { } } -lefta = \notes \transpose cis' { +lefta = \notes \transpose c cis { \stemUp \slurUp \tieUp \repeat volta 2 { f4^1( e8^1 g4^1 f8^1 | @@ -157,14 +157,14 @@ lefta = \notes \transpose cis' { } \d \tieBoth \slurDown < - \transpose c { + \transpose c' c { g4 a8~a f g | a4 g8~g f e | d4 g8~g es f | g4 f8~f es d | c4 r8 f4 as8~ | as g b as4 ces'8~ | ces' b des' c'4 \context Voice=another { \stemUp \tieUp ~ | es' des'4^1~ \stemDown [des'8. c'16] } } - \transpose c, { + \transpose c' c, { g4(-4 a8-3~a f-5 g-4 | a4-3 g8-#'(finger "4-3") ~g f-4 e-5 | )d4-#'(finger "4-5")( g8-3~g es f-4 | g4-3 f8-4~f es d-4 | )c4 r8 f4-4( as8-5~ | as g-4 )b-5 as4-5( ces'8-4~ | @@ -192,7 +192,7 @@ lefta = \notes \transpose cis' { f~ f-\fermata | } -leftb = \notes \transpose cis' { +leftb = \notes \transpose c cis { \stemDown \slurDown \tieDown \repeat volta 2 { f16^\p c f, c e c-3 g c-2 f, c f c | @@ -214,7 +214,7 @@ leftb = \notes \transpose cis' { fis^1 d d, d [a d_2] g, d g d_3 [b,_5( g_2] | ) a c_3 f, c [c' f_2] b, f b f_3 d' as | h, as d' as h, as() f'4.^\fermata-\arpeggio_2 ~ - \d \stemDown f'8. \clef G \stemBoth \tieBoth \transpose c'' {[e16_4( f g] [as des_3] [c8_4 ]~ | + \d \stemDown f'8. \clef G \stemBoth \tieBoth \transpose c c' {[e16_4( f g] [as des_3] [c8_4 ]~ | } \clef F [ ] <)a,8._5 eis^1> h,16_4( c d | \voiceTwo es as,_3 g,8 fis,~fis, g,_4-\arpeggio gis,_5~ | diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly index be036af563..67bff50fc5 100644 --- a/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly +++ b/input/mutopia/W.A.Mozart/mozart-hrn3-allegro.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \include "mozart-hrn3-defs.ly" allegro = @@ -160,7 +160,7 @@ allegro = \score { - \notes { \transpose bes \allegro } + \notes { \transpose c' bes \allegro } \paper{ } \header { piece = "allegro" opus = "" } \midi{ \tempo 4=90 } diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly index cca17a0d27..fa85191346 100644 --- a/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly +++ b/input/mutopia/W.A.Mozart/mozart-hrn3-romanze.ly @@ -1,5 +1,5 @@ -\version "1.5.68" +\version "1.7.5" \include "mozart-hrn3-defs.ly" romanze = \notes \relative c' { @@ -86,7 +86,7 @@ romanze = \notes \relative c' { \score { - \notes { \transpose bes \romanze } + \notes { \transpose c' bes \romanze } \header { piece = "romanze" opus = "" } \midi{ \tempo 4 = 70 } \paper{} diff --git a/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly b/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly index 6b2fdac997..6f9598db39 100644 --- a/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly +++ b/input/mutopia/W.A.Mozart/mozart-hrn3-rondo.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" % \include "mozart-hrn3-defs.ly" @@ -187,7 +187,7 @@ rondo = \notes \relative c' \score { - \notes { \transpose bes \rondo } + \notes { \transpose c' bes \rondo } \header { piece = "rondo" opus = "" } \midi{ \tempo 4 = 100 } \paper { } diff --git a/input/no-notation/denneboom.ly b/input/no-notation/denneboom.ly index 2c1a56eded..9bbf2348ec 100644 --- a/input/no-notation/denneboom.ly +++ b/input/no-notation/denneboom.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "denneboom.ly" enteredby = "jcn" @@ -34,7 +34,7 @@ ugloeit = \lyrics{ licht ge- spreid } -oboom = \notes\transpose c''{ +oboom = \notes\transpose c c'{ g,8 | c8. c16 c4. d8 | e8. e16 e4. e8 | @@ -42,7 +42,7 @@ oboom = \notes\transpose c''{ d8. c16 c4 r8 } -bos = \notes\transpose c''{ +bos = \notes\transpose c c'{ g8 | g e a4. g8 | g8. f16 f4 r8 f8 | diff --git a/input/praeludium-fuga-E.ly b/input/praeludium-fuga-E.ly index 325a07f547..8075904531 100644 --- a/input/praeludium-fuga-E.ly +++ b/input/praeludium-fuga-E.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { filename = "praeludium-fuga-E.ly" title = "praeludium and fuga in E-major" diff --git a/input/regression/accidental-double.ly b/input/regression/accidental-double.ly index a428ae8393..58707bb0c8 100644 --- a/input/regression/accidental-double.ly +++ b/input/regression/accidental-double.ly @@ -1,11 +1,11 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "If two forced accidentals happen at the same time, only one sharp sign is printed." } -\score { \notes \transpose c'' +\score { \notes \transpose c c' \context Staff < \key g \major \context Voice=va { \stemUp c' fis! } diff --git a/input/regression/accidental-octave.ly b/input/regression/accidental-octave.ly index 965707a089..5c3bfd727a 100644 --- a/input/regression/accidental-octave.ly +++ b/input/regression/accidental-octave.ly @@ -1,5 +1,5 @@ -\version "1.7.3" +\version "1.7.5" \header { texidoc=" @@ -40,7 +40,7 @@ FIXME: Shorten and docu \include "paper16.ly" -mel = \notes \transpose c'' { +mel = \notes \transpose c c' { \time 4/4 \key d \major gis4 g' g gis' | gis2 g' | g1 | gis | g | gis' | g | fis4 f' f fis' | fis2 f' | f1 | fis | f | fis' | f | diff --git a/input/regression/accidental-placement.ly b/input/regression/accidental-placement.ly index 76619e83ce..a0b6ab656f 100644 --- a/input/regression/accidental-placement.ly +++ b/input/regression/accidental-placement.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc ="Accidentals are placed as closely as possible. Accidentals in corresponding octaves are aligned. @@ -10,7 +10,7 @@ flats in a sixth shoudl be staggered. " \score { \notes \context Voice \relative c' { cis4 c4 - \transpose c'' { + \transpose c c' { diff --git a/input/regression/accidental-voice.ly b/input/regression/accidental-voice.ly index 1c95ad4760..d50af32d93 100644 --- a/input/regression/accidental-voice.ly +++ b/input/regression/accidental-voice.ly @@ -1,4 +1,4 @@ -\version "1.7.3" +\version "1.7.5" \header{ texidoc=" @@ -37,11 +37,11 @@ The last f gets cautionary natural because fis was only in the other voice. music)) -voicea = \notes \transpose c'' { +voicea = \notes \transpose c c' { \stemUp fis2 a2 f4 fis a2 } -voiceb = \notes \transpose c'' { +voiceb = \notes \transpose c c' { \stemDown c2 fis2 f4 c f2 } diff --git a/input/regression/accidentals.ly b/input/regression/accidentals.ly index 6feda7a830..b18a0e89a1 100644 --- a/input/regression/accidentals.ly +++ b/input/regression/accidentals.ly @@ -1,4 +1,4 @@ -\version "1.7.3" +\version "1.7.5" \header{ texidoc=" @@ -42,7 +42,7 @@ mel = \notes { \key d \major \time 4/4 \score { \notes < - \context Staff \transpose c''' { + \context Staff \transpose c c'' { \mel % \property Score.oneMeasureLazy = ##t \property Score.autoAccidentals = #'(Staff (same-octave . 0)) diff --git a/input/regression/arpeggio-collision.ly b/input/regression/arpeggio-collision.ly index e191270701..9c371ca772 100644 --- a/input/regression/arpeggio-collision.ly +++ b/input/regression/arpeggio-collision.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "arpeggio stays clear of accidentals and flipped note heads. @@ -33,7 +33,7 @@ hairyChord = \context Staff \notes\relative c' < \score{ - \notes \transpose c'' { + \notes \transpose c c' { \context Voice < fis''-\arpeggio g d a > \context Voice < fis,-\arpeggio g d a > \context Voice < fis''-\arpeggio g d a > diff --git a/input/regression/beam-extreme.ly b/input/regression/beam-extreme.ly index 82cc2646e8..e390791604 100644 --- a/input/regression/beam-extreme.ly +++ b/input/regression/beam-extreme.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc=" Beams should behave reasonably well, even under extreme circumstances. @@ -21,7 +21,7 @@ extreme = \notes\relative c'' { a'16 cis a, g''' % Used to give a nice beam directed upwards. \stemBoth - \transpose c' { + \transpose c c { \stemDown [e'8 e e'] } } diff --git a/input/regression/beam-funky.ly b/input/regression/beam-funky.ly index e2b2f5be12..7835847863 100644 --- a/input/regression/beam-funky.ly +++ b/input/regression/beam-funky.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Knee beaming. (funky)" } @@ -17,7 +17,7 @@ [c,,,16 c c c b''' b b b] - \transpose a, { \relative b'' { [g,16 g'''16 + \transpose c' a, { \relative b'' { [g,16 g'''16 g,,,16 g'''16 g,,,16 g'''16 g,,,16 g'''16 diff --git a/input/regression/chord-changes.ly b/input/regression/chord-changes.ly index 548e7b6b9a..89701abd41 100644 --- a/input/regression/chord-changes.ly +++ b/input/regression/chord-changes.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc="property chordChanges: only display chord names when @@ -19,7 +19,7 @@ settings = { \score { \notes < \context ChordNames < \scheme \settings > - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper{ linewidth = 40 * \staffspace diff --git a/input/regression/chord-names.ly b/input/regression/chord-names.ly index eeda2a1c2d..610dd49161 100644 --- a/input/regression/chord-names.ly +++ b/input/regression/chord-names.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc=" Chord names are generated from a list pitches, and are customisable @@ -7,7 +7,7 @@ by default. " } -chord = \notes\transpose c''\chords{ +chord = \notes\transpose c c'\chords{ c1 c:m c:m5- diff --git a/input/regression/collision-mesh.ly b/input/regression/collision-mesh.ly index 01db6616b4..9b6743b38b 100644 --- a/input/regression/collision-mesh.ly +++ b/input/regression/collision-mesh.ly @@ -1,11 +1,11 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Oppositely stemmed chords, meshing into each other, are resolved." } \score { - \context Staff \notes \transpose c'' { + \context Staff \notes \transpose c c' { \time 3/4 % Here's what I was trying to do: < \context Voice = VI {\stemDown diff --git a/input/regression/collisions.ly b/input/regression/collisions.ly index c0c358eabe..3dd98f152e 100644 --- a/input/regression/collisions.ly +++ b/input/regression/collisions.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc=" Normal collisions. We have support for polyphony, where the @@ -65,7 +65,7 @@ hairyChord = \context Staff \notes\relative c' < \score{ - \notes \transpose c'' { + \notes \transpose c c' { \twovoice \twovoicechords diff --git a/input/regression/hara-kiri-pianostaff.ly b/input/regression/hara-kiri-pianostaff.ly index dde1af1a4e..7ba17726e9 100644 --- a/input/regression/hara-kiri-pianostaff.ly +++ b/input/regression/hara-kiri-pianostaff.ly @@ -1,10 +1,10 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Hara kiri should not upset fixed distance alignment like in pianostaff. In this example the middle staff is harakiried." } -\score { \notes \transpose c''' +\score { \notes \transpose c c'' \context PianoStaff < \context Staff = up { c c c c \break } \context Staff = mid { s1 \break } diff --git a/input/regression/mensural.ly b/input/regression/mensural.ly index 6cddba95a1..7fae28d946 100644 --- a/input/regression/mensural.ly +++ b/input/regression/mensural.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "There is limited support for mensural notation: note head @@ -11,6 +11,6 @@ both for up and down stems." \score {\notes { \context Voice { \property Voice.NoteHead \set #'font-family = #'ancient \property Voice.NoteHead \override #'style = #'mensural -\transpose d''' { c4 c2 c8 c16 c16 c1 c\breve c\longa } -\transpose c'' { c4 c2 c8 c16 c16 c1 c\breve c\longa } +\transpose c d'' { c4 c2 c8 c16 c16 c1 c\breve c\longa } +\transpose c c' { c4 c2 c8 c16 c16 c1 c\breve c\longa } }}} diff --git a/input/regression/rest-collision.ly b/input/regression/rest-collision.ly index 107b1680fb..7258ee670e 100644 --- a/input/regression/rest-collision.ly +++ b/input/regression/rest-collision.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc=" Rests should not collide with beams, stems and noteheads. Rests may @@ -41,7 +41,7 @@ restsII = \context Staff \notes { \context Staff < {\stemUp r} { \stemDown r} > \context Staff < {\stemUp r} r { \stemDown r} > \stemUp - \transpose c'' { [c''8 r8 c''8 c''8] + \transpose c c' { [c''8 r8 c''8 c''8] [c8 r8 c8 c8] [c8 r8 r8 c'''8] \stemDown diff --git a/input/regression/tie-chord.ly b/input/regression/tie-chord.ly index 0f7e83589a..dfb8f7b948 100644 --- a/input/regression/tie-chord.ly +++ b/input/regression/tie-chord.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc=" When tieing chords, the outer slurs point outwards, the inner slurs @@ -13,7 +13,7 @@ t = \notes \relative c' { ~ } \score { \notes \context Voice { \t - \transpose g' \t + \transpose c g \t \property Voice.TieColumn \override #'direction = #-1 \t diff --git a/input/rhythm.ly b/input/rhythm.ly index 629357ff27..e3dfe1b7b1 100644 --- a/input/rhythm.ly +++ b/input/rhythm.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "rhythm.ly" enteredby = "HWN" @@ -10,7 +10,7 @@ TestedFeatures = "multiple meters, beaming, unsynced bars, userdefd engravers" -ritme = \notes\transpose c'' { +ritme = \notes\transpose c c' { \time 4/4 \partial 8 c8 | diff --git a/input/sondag-morgen/sondag-morgen-intro.ly b/input/sondag-morgen/sondag-morgen-intro.ly index 71ec11cdbd..570bacce92 100644 --- a/input/sondag-morgen/sondag-morgen-intro.ly +++ b/input/sondag-morgen/sondag-morgen-intro.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \include "deutsch.ly" marks = \lyrics { @@ -119,7 +119,7 @@ pial = \notes { } } } -guitar = \notes \transpose c' { +guitar = \notes \transpose c c { \time 2/2 \key e \minor \property Staff.Arpeggio \override #'arpeggio-direction = #1 diff --git a/input/sondag-morgen/sondag-morgen-notes.ly b/input/sondag-morgen/sondag-morgen-notes.ly index 2dccd0e512..38bd10ffd5 100644 --- a/input/sondag-morgen/sondag-morgen-notes.ly +++ b/input/sondag-morgen/sondag-morgen-notes.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \include "deutsch.ly" marks = \lyrics { @@ -643,7 +643,7 @@ pial = \notes { } } -guitar = \notes \transpose c' { +guitar = \notes \transpose c c { \guitar \time 2/2 \key e \minor diff --git a/input/sondag-morgen/sondag-morgen.ly b/input/sondag-morgen/sondag-morgen.ly index 6e0349dca3..80b9606f22 100644 --- a/input/sondag-morgen/sondag-morgen.ly +++ b/input/sondag-morgen/sondag-morgen.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \include "paper13.ly" mu = {} @@ -35,7 +35,7 @@ sd = \translator Staff = down \context Voice = kor < \voiceOne \property Voice.MultiMeasureRest \override #'transparent = ##t - \transpose c \kormel + \transpose c' c \kormel > \context Lyrics=korlyr \korlyr > @@ -43,7 +43,7 @@ sd = \translator Staff = down \addlyrics \context Voice = mel < \voiceTwo - \transpose c \mel + \transpose c' c \mel > \context Lyrics=lyr \lyr > @@ -98,7 +98,7 @@ sd = \translator Staff = down \clef "F_8" \global - \transpose c \bas + \transpose c' c \bas > \context Staff = drums < \property Staff.instrument = "Trommer" @@ -185,7 +185,7 @@ sd = {} > \context Staff = bas < \property Staff.instrument = "electric bass (finger)" - < \transpose c \bas s1-\ff > + < \transpose c' c \bas s1-\ff > > \context Staff = trom < \property Staff.instrument = "drums" diff --git a/input/star-spangled-banner.ly b/input/star-spangled-banner.ly index dae684f4e6..1a4423d98e 100644 --- a/input/star-spangled-banner.ly +++ b/input/star-spangled-banner.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" %{ Converted from star.mup with the aid of mup2ly.py http://www.arkkra.com/doc/star.html @@ -122,12 +122,12 @@ text = \lyrics { \global \clef treble \property Staff.automaticMelismata = ##t - \context Voice = one \transpose c'' { + \context Voice = one \transpose c c' { \voiceOne \staffBVoiceB \bar "|." } - \context Voice = two \transpose c'' { + \context Voice = two \transpose c c' { \voiceTwo \staffBVoiceC } diff --git a/input/test/american-chords.ly b/input/test/american-chords.ly index d41428798e..c8b6bdd48d 100644 --- a/input/test/american-chords.ly +++ b/input/test/american-chords.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Chord names in american styles, according to one of our users." } @@ -41,7 +41,7 @@ scheme = \chords { \score { \notes < \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper { \translator { diff --git a/input/test/ancient-font.ly b/input/test/ancient-font.ly index 302000f75f..8a7f51db70 100644 --- a/input/test/ancient-font.ly +++ b/input/test/ancient-font.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { title = "ancient font test" date = "2002" @@ -16,7 +16,7 @@ upperStaff = \context GregorianStaff = upperStaff < \context Staff \outputproperty #(make-type-checker 'staff-symbol-interface) #'line-count = #4 - \notes \transpose c' { + \notes \transpose c c { \property Staff.KeySignature \override #'style = #'vaticana \property Staff.Accidental \override #'style = #'vaticana \property Voice.NoteHead \override #'style = #'vaticana_punctum @@ -120,7 +120,7 @@ lowerStaff = \context MensuralStaff = lowerStaff < \context Staff \outputproperty #(make-type-checker 'staff-symbol-interface) #'line-count = #5 - \notes \transpose c' { + \notes \transpose c c { \property Voice.autoBeaming = ##f \property Voice.NoteHead \override #'style = #'neo_mensural \property Voice.Rest \override #'style = #'neo_mensural @@ -158,7 +158,7 @@ lowerStaff = \context MensuralStaff = lowerStaff < \clef "mensural_g" r4 r8 r16 r16 \property Voice.NoteHead \override #'style = #'mensural - \property Voice.Stem \override #'style = #'mensural + \property Voice.Stem \override #'flag-style = #'mensural \property Voice.Stem \override #'thickness = #1.0 \property Voice.Rest \override #'style = #'mensural \clef "petrucci_f" @@ -176,9 +176,9 @@ lowerStaff = \context MensuralStaff = lowerStaff < % FIXME: must set Voice.Stem style to #'neo_mensural to avoid % segmentation fault on r8/r16/r32. (Strange: what has % Voice.Stem style to do with mensural rests?) - \property Voice.Stem \override #'style = #'neo_mensural + \property Voice.Stem \override #'flag-style = #'neo_mensural r2 r4 r8 r16 r16 - \property Voice.Stem \override #'style = #'mensural + \property Voice.Stem \override #'flag-style = #'mensural \property Staff.forceClef = ##t \clef "mensural_f" e\breve f g a1 @@ -233,7 +233,7 @@ lowerStaff = \context MensuralStaff = lowerStaff < \remove Ligature_bracket_engraver \consists Mensural_ligature_engraver NoteHead \set #'style = #'mensural -% Stem \set #'style = #'mensural %%%%%%%% FIXME: this core dumps +% Stem \set #'flag-style = #'mensural %%%%%%%% FIXME: this core dumps Stem \set #'thickness = #1.0 Rest \set #'style = #'mensural autoBeaming = ##f diff --git a/input/test/banter-chords.ly b/input/test/banter-chords.ly index 9fce1f1b35..c50276452c 100644 --- a/input/test/banter-chords.ly +++ b/input/test/banter-chords.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ @@ -47,7 +47,7 @@ TestedFeatures = "Banter named chords" % } -chord = \notes\transpose c''\chords{ +chord = \notes\transpose c' c''\chords{ % dim modifier means: lower all implicit additions c:dim9 c:dim diff --git a/input/test/beam-chord.ly b/input/test/beam-chord.ly index fba54aa63b..10a451d6c0 100644 --- a/input/test/beam-chord.ly +++ b/input/test/beam-chord.ly @@ -1,10 +1,10 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Hmm. what's this supposed to test?" } \score{ - \notes\transpose c'{ + \notes \transpose c' c'{ \property Voice.Beam \set #'position-callbacks = #`(,Beam::least_squares ,Beam::check_concave diff --git a/input/test/beams.ly b/input/test/beams.ly index 8d6d33ddf6..34c0b4ff62 100644 --- a/input/test/beams.ly +++ b/input/test/beams.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "beams.ly" composer = "heu" @@ -12,7 +12,7 @@ TestedFeatures = "beams and beamflags" \score{ < \context GrandStaff < -\context Staff = SA \notes\transpose c' { +\context Staff = SA \notes\transpose c c { \time 8/4 \stemUp [c8 c'' a' f'] @@ -29,7 +29,7 @@ TestedFeatures = "beams and beamflags" \stemUp [g128 g g g] r32 - \transpose c{ + \transpose c' c{ \stemBoth [c'8 c'] [b b] [a a] [g g] [f f] [e e] [c'16 c'] [b b] [a a] [g g] [f f] [e e] @@ -39,7 +39,7 @@ TestedFeatures = "beams and beamflags" > < \context Staff = SB \notes { -\transpose c' { +\transpose c c { \time 8/4 \stemDown [a'8 a, c e] \stemDown [a'16 a, c e] @@ -48,7 +48,7 @@ TestedFeatures = "beams and beamflags" \stemDown [a'128 a, c e] r32} - \transpose c{ + \transpose c' c{ \stemDown [d''8 d'' d'' d''] \stemDown [d''16 d'' d'' d''] \stemDown [d''32 d'' d'' d''] @@ -56,7 +56,7 @@ TestedFeatures = "beams and beamflags" \stemDown [d''128 d'' d'' d''] r32} - \transpose c''{ + \transpose c c'{ \stemBoth [a8 a] [b b] [c' c'] [d' d'] [e' e'] [f' f'] [a16 a] [b b] [c' c'] [d' d'] [e' e'] [f' f'] diff --git a/input/test/broken.ly b/input/test/broken.ly index 83dfeaefc6..1de3095997 100644 --- a/input/test/broken.ly +++ b/input/test/broken.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ enteredby = "jcn" copyright = "PD" @@ -16,7 +16,7 @@ shortlong = \notes{ c c c )c | } -broken = \notes\transpose c''{ +broken = \notes\transpose c c'{ c c c c() c c c c( diff --git a/input/test/cautionaries.ly b/input/test/cautionaries.ly index 6b06c73636..01f227d5c0 100644 --- a/input/test/cautionaries.ly +++ b/input/test/cautionaries.ly @@ -1,8 +1,8 @@ -\version "1.5.68" +\version "1.7.5" %% FIXME -\score { \notes \context Staff \transpose c''' { +\score { \notes \context Staff \transpose c c'' { \key d \major % \property Staff.autoReminders = #'cautionary \property Staff.Accidental \override #'font-relative-size = #0 diff --git a/input/test/chord-banter.ly b/input/test/chord-banter.ly index 3e01b9ce2a..d8093c4735 100644 --- a/input/test/chord-banter.ly +++ b/input/test/chord-banter.ly @@ -1,11 +1,11 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "chord-table.ly" copyright = "public domain" enteredby = "jcn" } -tab = \notes\transpose c'''\chords{ +tab = \notes\transpose c c''\chords{ c1 c:m c:4 c:m4 c:5+ \break c:5- c:dim c:5-.5+ c:6 c:m6\break c:4.6 c:7 c:m7 c:4.7 c:m4.7\break @@ -18,31 +18,31 @@ tab = \notes\transpose c'''\chords{ \score{ % \context StaffGroup < < - \context Staff=c \notes\transpose c\tab - \context ChordNames=c \notes\transpose c\tab + \context Staff=c \notes\transpose c' c\tab + \context ChordNames=c \notes\transpose c' c\tab %{ - \context Staff=cis \notes\transpose cis\tab - \context ChordNames=cis \notes\transpose cis\tab - \context Staff=des \notes\transpose des\tab - \context ChordNames=des \notes\transpose des\tab - \context Staff=d \notes\transpose d\tab - \context ChordNames=d \notes\transpose d\tab - \context Staff=es \notes\transpose es\tab - \context ChordNames=es \notes\transpose es\tab - \context Staff=e \notes\transpose e\tab - \context ChordNames=e \notes\transpose e\tab - \context Staff=fis \notes\transpose fis\tab - \context ChordNames=fis \notes\transpose fis\tab - \context Staff=g \notes\transpose g\tab - \context ChordNames=g \notes\transpose g\tab - \context Staff=as \notes\transpose as\tab - \context ChordNames=as \notes\transpose as\tab - \context Staff=a \notes\transpose a\tab - \context ChordNames=a \notes\transpose a\tab - \context Staff=bes \notes\transpose bes,\tab - \context ChordNames=bes \notes\transpose bes,\tab - \context Staff=b \notes\transpose b,\tab - \context ChordNames=b \notes\transpose b,\tab + \context Staff=cis \notes\transpose c' cis\tab + \context ChordNames=cis \notes\transpose c' cis\tab + \context Staff=des \notes\transpose c' des\tab + \context ChordNames=des \notes\transpose c' des\tab + \context Staff=d \notes\transpose c' d\tab + \context ChordNames=d \notes\transpose c' d\tab + \context Staff=es \notes\transpose c' es\tab + \context ChordNames=es \notes\transpose c' es\tab + \context Staff=e \notes\transpose c' e\tab + \context ChordNames=e \notes\transpose c' e\tab + \context Staff=fis \notes\transpose c' fis\tab + \context ChordNames=fis \notes\transpose c' fis\tab + \context Staff=g \notes\transpose c' g\tab + \context ChordNames=g \notes\transpose c' g\tab + \context Staff=as \notes\transpose c' as\tab + \context ChordNames=as \notes\transpose c' as\tab + \context Staff=a \notes\transpose c' a\tab + \context ChordNames=a \notes\transpose c' a\tab + \context Staff=bes \notes\transpose c' bes,\tab + \context ChordNames=bes \notes\transpose c' bes,\tab + \context Staff=b \notes\transpose c' b,\tab + \context ChordNames=b \notes\transpose c' b,\tab %} > \paper{ diff --git a/input/test/chord-changes.ly b/input/test/chord-changes.ly index 241d94da8b..281ad31d61 100644 --- a/input/test/chord-changes.ly +++ b/input/test/chord-changes.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ texidoc="property chordChanges: only display chord names when @@ -16,7 +16,7 @@ scheme = \chords { \score { \notes < \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper{ linewidth = 40 * \staffspace diff --git a/input/test/chord-inversion.ly b/input/test/chord-inversion.ly index fe931d5d4c..dca7a73e8a 100644 --- a/input/test/chord-inversion.ly +++ b/input/test/chord-inversion.ly @@ -1,11 +1,11 @@ -\version "1.5.68" +\version "1.7.5" \header{ enteredby = "jcn" copyright = "public domain" TestedFeatures = "chord inversions" } -inversions = \notes\transpose c''\chords{ +inversions = \notes\transpose c c'\chords{ % inversions c1 c:sus c:6 c/e c/g c/d % this triggers a warning: no 'd' in chord of c diff --git a/input/test/chord-table.ly b/input/test/chord-table.ly index 3aaf72cf7d..f7b38fa5dc 100644 --- a/input/test/chord-table.ly +++ b/input/test/chord-table.ly @@ -1,41 +1,41 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "chord-table.ly" copyright = "public domain" enteredby = "jcn" } -tab = \notes\transpose c'''\chords{ +tab = \notes\transpose c c''\chords{ c1 c:m c:4 c:m4 c:5+ c:5- c:dim c:5-.5+ c:6\break %c:m6\break } \score{ \context StaffGroup < - \context Staff=c \notes\transpose c\tab - \context ChordNames=c \notes\transpose c\tab - \context Staff=cis \notes\transpose cis\tab - \context ChordNames=cis \notes\transpose cis\tab - \context Staff=des \notes\transpose des\tab - \context ChordNames=des \notes\transpose des\tab - \context Staff=d \notes\transpose d\tab - \context ChordNames=d \notes\transpose d\tab - \context Staff=es \notes\transpose es\tab - \context ChordNames=es \notes\transpose es\tab - \context Staff=e \notes\transpose e\tab - \context ChordNames=e \notes\transpose e\tab + \context Staff=c \notes\transpose c' c\tab + \context ChordNames=c \notes\transpose c' c\tab + \context Staff=cis \notes\transpose c' cis\tab + \context ChordNames=cis \notes\transpose c' cis\tab + \context Staff=des \notes\transpose c' des\tab + \context ChordNames=des \notes\transpose c' des\tab + \context Staff=d \notes\transpose c' d\tab + \context ChordNames=d \notes\transpose c' d\tab + \context Staff=es \notes\transpose c' es\tab + \context ChordNames=es \notes\transpose c' es\tab + \context Staff=e \notes\transpose c' e\tab + \context ChordNames=e \notes\transpose c' e\tab %{ FIXME: remove some, gs barfs - \context Staff=fis \notes\transpose fis\tab - \context ChordNames=fis \notes\transpose fis\tab - \context Staff=g \notes\transpose g\tab - \context ChordNames=g \notes\transpose g\tab - \context Staff=as \notes\transpose as\tab - \context ChordNames=as \notes\transpose as\tab - \context Staff=a \notes\transpose a\tab - \context ChordNames=a \notes\transpose a\tab - \context Staff=bes \notes\transpose bes,\tab - \context ChordNames=bes \notes\transpose bes,\tab - \context Staff=b \notes\transpose b,\tab - \context ChordNames=b \notes\transpose b,\tab + \context Staff=fis \notes\transpose c' fis\tab + \context ChordNames=fis \notes\transpose c' fis\tab + \context Staff=g \notes\transpose c' g\tab + \context ChordNames=g \notes\transpose c' g\tab + \context Staff=as \notes\transpose c' as\tab + \context ChordNames=as \notes\transpose c' as\tab + \context Staff=a \notes\transpose c' a\tab + \context ChordNames=a \notes\transpose c' a\tab + \context Staff=bes \notes\transpose c' bes,\tab + \context ChordNames=bes \notes\transpose c' bes,\tab + \context Staff=b \notes\transpose c' b,\tab + \context ChordNames=b \notes\transpose c' b,\tab %} > \paper{ diff --git a/input/test/chord-taxonomy.ly b/input/test/chord-taxonomy.ly index f629d015f1..c7ea04d3d2 100644 --- a/input/test/chord-taxonomy.ly +++ b/input/test/chord-taxonomy.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { title="Chord Taxonomy of LilyPond -- jazz" } @@ -20,6 +20,6 @@ scheme = \chords { < \property ChordNames.ChordName \set #'style = #'jazz \context ChordNames \scheme - \context Staff \notes \transpose c'' \scheme + \context Staff \notes \transpose c c' \scheme > } diff --git a/input/test/chords.ly b/input/test/chords.ly index d92f586bd7..2b2b5cf872 100644 --- a/input/test/chords.ly +++ b/input/test/chords.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" %{ @@ -18,7 +18,7 @@ Would this be acceptable/good enough/convenient for entry? %} % used to be quarter notes here. Why? --hwn -scales = \notes \transpose c'' \chords{ +scales = \notes \transpose c c' \chords{ % c1:m c:min c:dim c:aug c:sus c:maj c1:6 c:7 c:9 c:11 c:13 diff --git a/input/test/ct-jazz.ly b/input/test/ct-jazz.ly index dec88717cf..1b31e65db8 100644 --- a/input/test/ct-jazz.ly +++ b/input/test/ct-jazz.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { title="Chord Taxomony of LilyPond -- jazz" subtitle="Amy's chord tests" @@ -17,6 +17,6 @@ scheme = \chords { < \property ChordNames.ChordName \set #'style = #'jazz \context ChordNames \scheme - \context Staff \notes \transpose c'' \scheme + \context Staff \notes \transpose c c' \scheme > } diff --git a/input/test/figured-bass.ly b/input/test/figured-bass.ly index 4ae770346f..384fa4d41b 100644 --- a/input/test/figured-bass.ly +++ b/input/test/figured-bass.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc = "Test figured bass. @@ -10,7 +10,7 @@ mode, which allows you to type numbers, like @code{<4 6+>}. " } \score { \notes < -\context FiguredBass \transpose c'' { +\context FiguredBass \transpose c c' { \figures { diff --git a/input/test/improv.ly b/input/test/improv.ly index c3a5c93551..b52fcb1552 100644 --- a/input/test/improv.ly +++ b/input/test/improv.ly @@ -6,7 +6,7 @@ texidoc = "note heads for improvisation have a different shape. " %{ TODO: the construct with separet SquashVoice context is a little gory. FIXME. %} -\version "1.5.68" +\version "1.7.5" improOn = \notes {\translator Voice = impro } improOff = \notes {\translator SquashVoice = melo } @@ -18,7 +18,7 @@ global = \notes { s1*3 \bar "|." } \context ChordNames \chords {e8*7:m7 a2.:m7 bes4:m7 b1:m7 e8:m } \context Staff \notes < \context SquashVoice = impro { \global } - \context Voice = melo \transpose c'' { + \context Voice = melo \transpose c c' { e8 e g a a16()bes()a8 g \improOn e8 ~e2~e8 f4 fis8 ~fis2 \improOff a16()bes a8 g e diff --git a/input/test/jazz-chords.ly b/input/test/jazz-chords.ly index 95c87ff52e..57ebd3c733 100644 --- a/input/test/jazz-chords.ly +++ b/input/test/jazz-chords.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" @@ -56,7 +56,7 @@ scheme = \chords { \score { \notes < \context ChordNames \scheme - \context Staff \transpose c'' \scheme + \context Staff \transpose c c' \scheme > \paper { \translator { diff --git a/input/test/lyrics.ly b/input/test/lyrics.ly index 7bdd1e571a..b3e8357d0e 100644 --- a/input/test/lyrics.ly +++ b/input/test/lyrics.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" somewhatLong = \lyrics{ @@ -44,7 +44,7 @@ quiteLongLyricsStaff = \context Lyrics = quite < > melody = \notes -\transpose c'{ +\transpose c c{ c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 c4 e4 g4 e4 } diff --git a/input/test/mensural-ligatures.ly b/input/test/mensural-ligatures.ly index 39c001d2b7..9e430ef568 100644 --- a/input/test/mensural-ligatures.ly +++ b/input/test/mensural-ligatures.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { title = "mensural ligature test" date = "2002" @@ -10,7 +10,7 @@ % graphical width of the ligatures rather to the musical moment in time. % This is intended behaviour. -voice = \notes \transpose c'' { +voice = \notes \transpose c c' { \property Score.timing = ##f \property Score.defaultBarType = "empty" g\longa c\breve a\breve f\breve d'\longa^\fermata diff --git a/input/test/music-box.ly b/input/test/music-box.ly index 115c3ff927..689fbaeb9d 100644 --- a/input/test/music-box.ly +++ b/input/test/music-box.ly @@ -22,7 +22,7 @@ using Scheme functions to save typing work. } \include "deutsch.ly" -\version "1.7.3" +\version "1.7.5" #(define (transform music) (let* ((es (ly:get-mus-property music 'elements)) @@ -79,9 +79,9 @@ using Scheme functions to save typing work. -\version "1.7.3" +\version "1.7.5" -pat = \notes \transpose c'' \repeat unfold 2 { +pat = \notes \transpose c c' \repeat unfold 2 { < { \context Staff=up {r8 e16 f g e f g } } { \context Staff=down < \context Voice=vup { \stemUp \tieUp r16 d8.~d4 } @@ -98,7 +98,7 @@ endb = \notes {\stemUp \tieUp r16 c,8.~c,4~c,2 r16 h,,8.~h,,4~h,,2 c,1 \bar "|." endc = \notes {\stemDown \tieDown c,,2~c,, c,,~c,, c,,1_\fermata } \score { - \notes \transpose c'' \context PianoStaff < + \notes \transpose c c' \context PianoStaff < \context Staff=up { \clef "G" s1*32 \enda } \context Staff=down { \clef "F" s1*32 < \context Voice=vup \endb \context Voice=vdwn \endc diff --git a/input/test/notemode-chords.ly b/input/test/notemode-chords.ly index 530922f561..f3af9c0c01 100644 --- a/input/test/notemode-chords.ly +++ b/input/test/notemode-chords.ly @@ -1,8 +1,8 @@ -\version "1.5.68" +\version "1.7.5" \score{ - \notes \transpose c''{ + \notes \transpose c c'{ % 1.1.53: @x@ syntax dropped % if you want fingering, write chord explicitily eg < c1-1 e-2 g-3 > % @c1@ @c-7@ @c-7^5@-1-3 diff --git a/input/test/octave-duplicate.ly b/input/test/octave-duplicate.ly index fbd3cbb815..9bdb468a3b 100644 --- a/input/test/octave-duplicate.ly +++ b/input/test/octave-duplicate.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header { texidoc="Octave duplicate parts of music" } @@ -11,7 +11,7 @@ upperOne = \notes\relative c'' { } upperOctave = \notes < - \context Thread=upperOne { \transpose c \upperOne } + \context Thread=upperOne { \transpose c' c \upperOne } \context Thread=upperOne { \property Thread.devNullThread = #'allways s1*2 \property Thread.devNullThread = #'() s1*2 @@ -31,7 +31,7 @@ firstEight = \notes { } lowerOctave = \notes < - \context Thread=lowerOne { \transpose c \lowerOne } + \context Thread=lowerOne { \transpose c' c \lowerOne } \context Thread=lowerOne { \repeat "unfold" 4 { \firstEight } } diff --git a/input/test/part-combine-score.ly b/input/test/part-combine-score.ly index 13466497b4..cca2b1d120 100644 --- a/input/test/part-combine-score.ly +++ b/input/test/part-combine-score.ly @@ -1,4 +1,4 @@ -\version "1.7.3" +\version "1.7.5" \header { texidoc="Template for part-combining orchestral scores" @@ -106,9 +106,9 @@ violinoIIStaff = \context Staff = twoViolini < \End > -violaI = \notes\transpose c, \violinoI +violaI = \notes\transpose c' c, \violinoI -violaII = \notes\transpose c, \violinoII +violaII = \notes\transpose c' c, \violinoII violeGroup = \notes \context VoiceCombineStaff = oneViole < \property VoiceCombineStaff.midiInstrument = #"viola" diff --git a/input/test/scheme-interactions.ly b/input/test/scheme-interactions.ly index a0f2de6711..85953c5138 100644 --- a/input/test/scheme-interactions.ly +++ b/input/test/scheme-interactions.ly @@ -1,4 +1,4 @@ -\version "1.7.3" +\version "1.7.5" \header { @@ -9,8 +9,8 @@ can use, define or change lilypond variables. " } -foo = \notes \transpose c' { d''4-. } -bra = \notes \transpose c' { e'4-. } +foo = \notes \transpose c c { d''4-. } +bra = \notes \transpose c c { e'4-. } \score { \context Voice \notes\relative c' { diff --git a/input/test/scripts.ly b/input/test/scripts.ly index c441502bea..2b22b8d724 100644 --- a/input/test/scripts.ly +++ b/input/test/scripts.ly @@ -1,9 +1,9 @@ -\version "1.5.68" +\version "1.7.5" -blah = \notes{ \transpose c'' { +blah = \notes{ \transpose c c' { c,4 ->-.-\fermata-"text" c ->-.-\fermata-"text" diff --git a/input/test/sleur.ly b/input/test/sleur.ly index 3379524c7a..44c62d1461 100644 --- a/input/test/sleur.ly +++ b/input/test/sleur.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ enteredby = "jcn" copyright = "public domain" @@ -16,11 +16,11 @@ shortlong = \notes{ c c c )c | } -dirs = \notes\transpose c' { +dirs = \notes\transpose c c { c'1() g' () c () g () c | } -over = \notes\transpose c'{ +over = \notes\transpose c c{ e( g' g' )e @@ -44,7 +44,7 @@ over = \notes\transpose c'{ e( c'' f )e } -under = \notes\transpose c'{ +under = \notes\transpose c c{ \stemDown f'( \stemBoth d d \stemDown )f' f'( \stemBoth c c \stemDown )f' @@ -68,7 +68,7 @@ under = \notes\transpose c'{ f'( e, f )f' } -eccentric = \notes\transpose c'{ +eccentric = \notes\transpose c c{ \stemUp \times 4/7 { f( a' f f f f )f } | \times 4/7 { f( f f f f a' )f } | @@ -77,7 +77,7 @@ eccentric = \notes\transpose c'{ \times 4/7 { e'( e' e' e' e' c )e' } | } -tiltup = \notes\transpose c'{ +tiltup = \notes\transpose c c{ e( c'' c'' )e' \stemUp e( c'' c'' )e' @@ -91,7 +91,7 @@ tiltup = \notes\transpose c'{ f'( a, a, )f'' } -tiltdown = \notes\transpose c'{ +tiltdown = \notes\transpose c c{ e'( c'' c'' )e \stemUp e'( c'' c'' )e @@ -105,7 +105,7 @@ tiltdown = \notes\transpose c'{ f''( a, a, )f' } -broken = \notes\transpose c''{ +broken = \notes\transpose c c'{ c c c c() c c c c( c )c c c( @@ -118,7 +118,7 @@ broken = \notes\transpose c''{ f,( c c )f, } -blend = \notes\transpose c'{ +blend = \notes\transpose c c{ e( c'' c'' )e \stemUp f'( c'' c'' )f' @@ -139,7 +139,7 @@ blend = \notes\transpose c'{ } -bug = \notes\transpose c'{ +bug = \notes\transpose c c{ a()g( f )e b'()a'( g' )f' @@ -148,7 +148,7 @@ bug = \notes\transpose c'{ c' () b () c' c' } -clipping = \notes\transpose c'{ +clipping = \notes\transpose c c{ \stemBoth c( c''' c''')c c( c''' c )c'' diff --git a/input/test/smart-transpose.ly b/input/test/smart-transpose.ly index f45dfb71e2..fe26783459 100644 --- a/input/test/smart-transpose.ly +++ b/input/test/smart-transpose.ly @@ -1,4 +1,4 @@ -\version "1.7.3" +\version "1.7.5" \header { texidoc=" @@ -65,8 +65,8 @@ music = \notes \relative c' { c4 d e f g a b c } \score { \notes \context Staff { - \transpose ais' \music - \apply #simplify \transpose ais' \music + \transpose c ais \music + \apply #simplify \transpose c ais \music } \paper { linewidth = -1. } } diff --git a/input/test/stem.ly b/input/test/stem.ly index d2a023f242..21d1687d78 100644 --- a/input/test/stem.ly +++ b/input/test/stem.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ title= "Stems and Beams" subtitle = "proofsheet" @@ -14,18 +14,18 @@ of beams" beamintervals = \notes{ \time 7/4 \stemUp - \transpose c''{ + \transpose c c'{ [ c8 d ] [ c e ] [ c f ] [ c g ] [ c a ] [ c b ] [ c c' ] | [ c b, ] [ c a, ] [ c g, ] [ c f, ] [ c e, ] [ c d, ] [ c c, ] | } - \transpose c'''{ + \transpose c c''{ [ c b, ] [ c a, ] [ c g, ] [ c f, ] [ c e, ] [ c d, ] [ c c, ] | \stemDown } - \transpose c''''{ + \transpose c c'''{ [ c b, ] [ c a, ] [ c g, ] [ c f, ] [ c e, ] [ c d, ] [ c c, ] | } - \transpose c'''{ + \transpose c c''{ [ c b, ] [ c a, ] [ c g, ] [ c f, ] [ c e, ] [ c d, ] [ c c, ] | [ c d ] [ c e ] [ c f ] [ c g ] [ c a ] [ c b ] [ c c' ] | } @@ -50,12 +50,12 @@ beamintervals = \notes{ d c b a g f e d c b a g f e d c b a g } \beamintervals - \transpose d' \beamintervals - \transpose e' \beamintervals - \transpose f' \beamintervals - \transpose g' \beamintervals - \transpose a' \beamintervals - \transpose b' \beamintervals + \transpose c d \beamintervals + \transpose c e \beamintervals + \transpose c f \beamintervals + \transpose c g \beamintervals + \transpose c a \beamintervals + \transpose c b \beamintervals } \paper{ indent = 0.0\mm diff --git a/input/test/transposition.ly b/input/test/transposition.ly index 4b3d3f353b..a2d55259e6 100644 --- a/input/test/transposition.ly +++ b/input/test/transposition.ly @@ -1,15 +1,15 @@ -\version "1.5.68" +\version "1.7.5" %{ Hi all, I have extend Mats' patches to allow accidental transposition: \keysignature bes es fis - = \transpose d => + = \transpose c' d => \keysignature gis As you can see in output = the example file "test.ly" there are a few problems left: - key undo (already in the Todo) -- "wrong" transposition: e.g. \transpose d of fis-major = gis-major (better as-major?). +- "wrong" transposition: e.g. \transpose c' d of fis-major = gis-major (better as-major?). The solution gis=as etc. would concern both note and key transposistion Eric @@ -42,7 +42,7 @@ vOne = \notes \relative c''{ c4 c | } -vTwo = \notes \transpose d' { \vOne } +vTwo = \notes \transpose c d { \vOne } vThree = \notes \relative c''{ \clef"violin" @@ -58,7 +58,7 @@ vThree = \notes \relative c''{ cis4 ais4 | } -vFour = \notes \transpose d' \vThree +vFour = \notes \transpose c d \vThree \score { \context StaffGroup < diff --git a/input/tutorial/sammartini.ly b/input/tutorial/sammartini.ly index 8030c59d35..0cb6dbae6a 100644 --- a/input/tutorial/sammartini.ly +++ b/input/tutorial/sammartini.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \include "paper16.ly" @@ -27,7 +27,7 @@ oboes = \notes \relative c'' \context Voice = oboes { } hoomPah = \repeat unfold 8 \notes - \transpose c' { + \transpose c c { \translator Staff = down \stemUp c8 diff --git a/input/twinkle-pop.ly b/input/twinkle-pop.ly index 3c31173bcd..77e87b1ce9 100644 --- a/input/twinkle-pop.ly +++ b/input/twinkle-pop.ly @@ -1,4 +1,4 @@ -\version "1.5.68" +\version "1.7.5" \header{ filename = "twinkle-pop.ly" xtitle = "Ah, vous dirais-je, maman " @@ -59,8 +59,8 @@ text = \lyrics{ \score { < - \chords \context ChordNames \transpose d'\acc - \notes \context Staff=melody \transpose d'\melodie + \chords \context ChordNames \transpose c d\acc + \notes \context Staff=melody \transpose c d\melodie \lyrics \context Lyrics \text > \header{ diff --git a/lily/auto-beam-engraver.cc b/lily/auto-beam-engraver.cc index 9435bc82d5..5942c9461b 100644 --- a/lily/auto-beam-engraver.cc +++ b/lily/auto-beam-engraver.cc @@ -490,12 +490,12 @@ Auto_beam_engraver::process_acknowledged_grobs () } ENTER_DESCRIPTION (Auto_beam_engraver, -/* descr */ "Generate beams based on measure characteristics and observed -Stems. Uses beatLength, measureLength and measurePosition to decide -when to start and stop a beam. Overriding beaming is done through -@ref{Stem_engraver} properties stemLeftBeamCount and -stemRightBeamCount. -", +/* descr */ "Generate beams based on measure characteristics and observed " +"Stems. Uses beatLength, measureLength and measurePosition to decide " +"when to start and stop a beam. Overriding beaming is done through " +"@ref{Stem_engraver} properties stemLeftBeamCount and " +"stemRightBeamCount. " +, /* creats*/ "Beam", /* accepts */ "", /* acks */ "stem-interface rest-interface beam-interface bar-line-interface", diff --git a/lily/axis-group-engraver.cc b/lily/axis-group-engraver.cc index 28752d2a77..4d17c426c1 100644 --- a/lily/axis-group-engraver.cc +++ b/lily/axis-group-engraver.cc @@ -164,9 +164,8 @@ Hara_kiri_engraver::acknowledge_grob (Grob_info i) Hara_kiri_engraver::Hara_kiri_engraver(){} ENTER_DESCRIPTION(Hara_kiri_engraver, -/* descr */ "Like Axis_group_engraver, but make a hara kiri spanner, and add -interesting items (ie. note heads, lyric syllables and normal rests) -", +/* descr */ "Like Axis_group_engraver, but make a hara kiri spanner, and add " +"interesting items (ie. note heads, lyric syllables and normal rests) ", /* creats*/ "HaraKiriVerticalGroup", /* accepts */ "", /* acks */ "grob-interface", diff --git a/lily/bar-engraver.cc b/lily/bar-engraver.cc index e3555f0bce..6d38520d20 100644 --- a/lily/bar-engraver.cc +++ b/lily/bar-engraver.cc @@ -109,8 +109,8 @@ Bar_engraver::stop_translation_timestep () ENTER_DESCRIPTION(Bar_engraver, -/* descr */ "Create barlines. This engraver is controlled through the -@code{whichBar} property. If it has no bar line to create, it will forbid a linebreak at this point", +/* descr */ "Create barlines. This engraver is controlled through the " +"@code{whichBar} property. If it has no bar line to create, it will forbid a linebreak at this point", /* creats*/ "BarLine", /* accepts */ "", /* acks */ "", diff --git a/lily/forbid-break-engraver.cc b/lily/forbid-break-engraver.cc index c908372922..461b55e9d8 100644 --- a/lily/forbid-break-engraver.cc +++ b/lily/forbid-break-engraver.cc @@ -13,8 +13,7 @@ public: Forbid_line_break_engraver::Forbid_line_break_engraver(){} ENTER_DESCRIPTION(Forbid_line_break_engraver, -/* descr */ "Forbid line breaks when note heads are still playing -at some point.", +/* descr */ "Forbid line breaks when note heads are still playing at some point.", /* creats*/ "", /* accepts */ "", /* acks */ "", diff --git a/lily/include/pitch.hh b/lily/include/pitch.hh index 14db50a263..613d45cf05 100644 --- a/lily/include/pitch.hh +++ b/lily/include/pitch.hh @@ -62,15 +62,12 @@ public: /// return pitch from central c (in halfnotes) int semitone_pitch () const; String string () const; - - SCM smobbed_copy () const; DECLARE_SCHEME_CALLBACK (less_p, (SCM a, SCM b)); DECLARE_SIMPLE_SMOBS (Pitch,); - - }; + SCM ly_pitch_transpose (SCM p, SCM delta); DECLARE_UNSMOB(Pitch,pitch); @@ -79,6 +76,7 @@ INSTANTIATE_COMPARE (Pitch, Pitch::compare); int compare (Array*, Array*); extern SCM pitch_less_proc; +Pitch interval (Pitch const & from , Pitch const & to ); #endif /* MUSICAL_PITCH_HH */ diff --git a/lily/instrument-name-engraver.cc b/lily/instrument-name-engraver.cc index e3219af373..ed9dbadcb7 100644 --- a/lily/instrument-name-engraver.cc +++ b/lily/instrument-name-engraver.cc @@ -122,10 +122,9 @@ Instrument_name_engraver::acknowledge_grob (Grob_info i) ENTER_DESCRIPTION(Instrument_name_engraver, -/* descr */ " Prints the name of the instrument (specified by -@code{Staff.instrument} and @code{Staff.instr}) -at the left of the -staff.", +/* descr */ " Prints the name of the instrument (specified by " +" @code{Staff.instrument} and @code{Staff.instr}) " +"at the left of the staff. ", /* creats*/ "InstrumentName", /* accepts */ "", /* acks */ "bar-line-interface axis-group-interface", diff --git a/lily/lyric-phrasing-engraver.cc b/lily/lyric-phrasing-engraver.cc index 14fbe9fc8b..99eb55515b 100644 --- a/lily/lyric-phrasing-engraver.cc +++ b/lily/lyric-phrasing-engraver.cc @@ -354,12 +354,11 @@ Lyric_phrasing_engraver::stop_translation_timestep () ENTER_DESCRIPTION(Lyric_phrasing_engraver, - /* descr */ " -This engraver combines note heads and lyrics for alignment. - -This engraver is switched on by default. Turn it off for faster -processing of orchestral scores. -", + /* descr */ +"This engraver combines note heads and lyrics for alignment. " +"\n\n" +"This engraver is switched on by default. Turn it off for faster " +"processing of orchestral scores. ", /* creats*/ "", /* accepts */ "", /* acks */ "lyric-syllable-interface note-head-interface lyric-extender-interface", diff --git a/lily/note-head-line-engraver.cc b/lily/note-head-line-engraver.cc index fd9a8ea72f..ea38bb2824 100644 --- a/lily/note-head-line-engraver.cc +++ b/lily/note-head-line-engraver.cc @@ -148,8 +148,8 @@ Note_head_line_engraver::stop_translation_timestep () ENTER_DESCRIPTION(Note_head_line_engraver, -/* descr */ "Engrave a line between two note heads, for example a glissando. If -followVoice is set, staff switches also generate a line.", +/* descr */ "Engrave a line between two note heads, for example a glissando. If " +" followVoice is set, staff switches also generate a line.", /* creats*/ "Glissando VoiceFollower", /* accepts */ "glissando-event", /* acks */ "rhythmic-head-interface", diff --git a/lily/output-property-engraver.cc b/lily/output-property-engraver.cc index cfdf4f32a2..3a67c966c9 100644 --- a/lily/output-property-engraver.cc +++ b/lily/output-property-engraver.cc @@ -80,8 +80,8 @@ Output_property_engraver::Output_property_engraver() } ENTER_DESCRIPTION(Output_property_engraver, -/* descr */ "Interpret Music of Output_property type, and apply a function -to any Graphic objects that satisfies the predicate.", +/* descr */ "Interpret Music of Output_property type, and apply a function " +" to any Graphic objects that satisfies the predicate.", /* creats*/ "", /* accepts */ "layout-instruction", /* acks */ "grob-interface", diff --git a/lily/parser.yy b/lily/parser.yy index 64717d2334..3569fda94c 100644 --- a/lily/parser.yy +++ b/lily/parser.yy @@ -293,7 +293,7 @@ yylex (YYSTYPE *s, void * v) %type pre_events post_events %type gen_text_def -%type steno_pitch pitch absolute_pitch +%type steno_pitch pitch absolute_pitch pitch_also_in_chords %type explicit_pitch steno_tonic_pitch %type chord_additions chord_subtractions chord_notes chord_step @@ -912,24 +912,15 @@ Composite_music: | Repeated_music { $$ = $1; } | Simultaneous_music { $$ = $1; } | Sequential_music { $$ = $1; } - | TRANSPOSE pitch Music { + | TRANSPOSE pitch_also_in_chords pitch_also_in_chords Music { $$ = MY_MAKE_MUSIC("TransposedMusic"); - Music *p = $3; - Pitch pit = *unsmob_pitch ($2); - - p->transpose (pit); - $$->set_mus_property ("element", p->self_scm ()); - scm_gc_unprotect_object (p->self_scm ()); - } - | TRANSPOSE steno_tonic_pitch Music { - $$ = MY_MAKE_MUSIC("TransposedMusic"); - Music *p = $3; - Pitch pit = *unsmob_pitch ($2); + Music *p = $4; + Pitch from = *unsmob_pitch ($2); + Pitch to = *unsmob_pitch ($3); - p->transpose (pit); + p->transpose (interval (from, to)); $$->set_mus_property ("element", p->self_scm ()); scm_gc_unprotect_object (p->self_scm ()); - } | APPLY embedded_scm Music { SCM ret = gh_call1 ($2, $3->self_scm ()); @@ -1530,6 +1521,11 @@ pitch: } ; +pitch_also_in_chords: + pitch + | steno_tonic_pitch + ; + explicit_pitch: PITCH embedded_scm { $$ = $2; @@ -1643,7 +1639,6 @@ gen_text_def: } | DIGIT { Music * t = MY_MAKE_MUSIC("FingerEvent"); - SCM finger = ly_symbol2scm ("finger"); t->set_mus_property ("digit", gh_int2scm ($1)); t->set_spot (THIS->here_input ()); $$ = t; diff --git a/lily/pitch-squash-engraver.cc b/lily/pitch-squash-engraver.cc index 4961e70f19..566d6b020e 100644 --- a/lily/pitch-squash-engraver.cc +++ b/lily/pitch-squash-engraver.cc @@ -35,10 +35,10 @@ Pitch_squash_engraver::Pitch_squash_engraver() } ENTER_DESCRIPTION(Pitch_squash_engraver, -/* descr */ "Treat all pitches as middle C. Note that the notes move, but -the locations of accidentals stay the same. -Set the position field of all note heads to zero. This useful for -making a single line staff that demonstrates the rhythm of a melody.", +/* descr */ "Treat all pitches as middle C. Note that the notes move, but " +"the locations of accidentals stay the same. " +"Set the position field of all note heads to zero. This useful for " +"making a single line staff that demonstrates the rhythm of a melody.", /* creats*/ "", /* accepts */ "", /* acks */ "note-head-interface", diff --git a/lily/pitch.cc b/lily/pitch.cc index 4c1a9cc4d0..2f7747848e 100644 --- a/lily/pitch.cc +++ b/lily/pitch.cc @@ -128,18 +128,27 @@ Pitch::normalise () void Pitch::transpose (Pitch delta) { - int old_semi = semitone_pitch (); - int delta_semi = delta.semitone_pitch (); + int new_semi = semitone_pitch () +delta.semitone_pitch(); octave_ += delta.octave_; notename_ += delta.notename_; - - int new_semi = semitone_pitch (); - int delta_acc = new_semi - old_semi - delta_semi; - alteration_ -= delta_acc; + alteration_ += new_semi - semitone_pitch(); normalise (); } +Pitch +interval (Pitch const & from , Pitch const & to ) +{ + int sound = to.semitone_pitch() - from.semitone_pitch (); + Pitch pt ; + pt.octave_ = to.octave_ - from.octave_; + pt.notename_ = to.notename_ - from.notename_; + pt.alteration_ = to.alteration_ - from.alteration_; + pt.alteration_ += sound - pt.semitone_pitch(); + + return pt; +} + /* FIXME Merge with *pitch->text* funcs in chord-name.scm @@ -223,9 +232,8 @@ Pitch::down_to (int notename) LY_DEFINE(ly_pitch_transpose, "ly:transpose-pitch", 2, 0, 0, (SCM p, SCM delta), - "Transpose @var{p} by the amount @var{delta}, where @var{delta} is the -pitch that central C is transposed to. -") + "Transpose @var{p} by the amount @var{delta}, where @var{delta} is the " +" pitch that central C is transposed to.") { Pitch* t = unsmob_pitch (p); Pitch *d = unsmob_pitch (delta); @@ -293,13 +301,10 @@ Pitch::less_p (SCM p1, SCM p2) LY_DEFINE(make_pitch, "ly:make-pitch", 3, 0, 0, (SCM o, SCM n, SCM a), - " -@var{octave} is specified by an integer, zero for the octave containing -middle C. @var{note} is a number from 0 to 6, with 0 corresponding to C -and 6 corresponding to B. The shift is zero for a natural, negative for -flats, or positive for sharps. - -") + "@var{octave} is specified by an integer, zero for the octave containing " + "middle C. @var{note} is a number from 0 to 6, with 0 corresponding to C " + "and 6 corresponding to B. The shift is zero for a natural, negative for " + "flats, or positive for sharps. ") { SCM_ASSERT_TYPE(gh_number_p (o), o, SCM_ARG1, __FUNCTION__, "number"); SCM_ASSERT_TYPE(gh_number_p (n), n, SCM_ARG2, __FUNCTION__, "number"); diff --git a/lily/repeat-acknowledge-engraver.cc b/lily/repeat-acknowledge-engraver.cc index 40ad495452..ce8f2a37bd 100644 --- a/lily/repeat-acknowledge-engraver.cc +++ b/lily/repeat-acknowledge-engraver.cc @@ -111,8 +111,8 @@ Repeat_acknowledge_engraver::process_music () } ENTER_DESCRIPTION(Repeat_acknowledge_engraver, -/* descr */ "Acknowledge repeated music, and convert the contents of -repeatCommands ainto an appropriate setting for whichBar", +/* descr */ "Acknowledge repeated music, and convert the contents of " +"repeatCommands ainto an appropriate setting for whichBar.", /* creats*/ "", /* accepts */ "", /* acks */ "", diff --git a/lily/score-engraver.cc b/lily/score-engraver.cc index 6e0ebb7534..96742a8711 100644 --- a/lily/score-engraver.cc +++ b/lily/score-engraver.cc @@ -334,19 +334,16 @@ Score_engraver::acknowledge_grob (Grob_info gi) ENTER_DESCRIPTION(Score_engraver, -/* descr */ "Top level engraver. Takes care of generating columns and the complete system (ie. System) - - -This engraver decides whether a column is breakable. The default is -that a column is always breakable. However, when every Bar_engraver -that does not have a barline at a certain point will call -Score_engraver::forbid_breaks to stop linebreaks. In practice, this -means that you can make a breakpoint by creating a barline (assuming -that there are no beams or notes that prevent a breakpoint.) - - -", -/* creats*/ "System PaperColumn NonMusicalPaperColumn", +/* descr */ "Top level engraver. Takes care of generating columns and the complete system (ie. System) " +"\n\n " +"This engraver decides whether a column is breakable. The default is " +"that a column is always breakable. However, when every Bar_engraver " +"that does not have a barline at a certain point will call " +"Score_engraver::forbid_breaks to stop linebreaks. In practice, this " +"means that you can make a breakpoint by creating a barline (assuming " +"that there are no beams or notes that prevent a breakpoint.) " +, +/* creats*/ "System PaperColumn NonMusicalPaperColumn", /* accepts */ "break-event", /* acks */ "note-spacing-interface staff-spacing-interface", /* reads */ "currentMusicalColumn currentCommandColumn", diff --git a/scripts/convert-ly.py b/scripts/convert-ly.py index 00b50c3add..d9fe48c397 100644 --- a/scripts/convert-ly.py +++ b/scripts/convert-ly.py @@ -1078,7 +1078,19 @@ if 1: def conv(str): str = re.sub (r'<<', '< <', str) str = re.sub (r'>>', '> >', str) + return str + + conversions.append (((1,7,4), conv, '<< >> -> < < > >')) +if 1: + def conv(str): + str = re.sub (r"\\transpose", r"\\transpose c'", str) + str = re.sub (r"\\transpose c' *([a-z]+)'", r"\\transpose c \1", str) + return str + conversions.append (((1,7,5), conv, '\transpose TO -> \transpose FROM TO')) + +if 0: + def conv(str): kws = ['arpeggio', 'sustainDown', 'sustainUp', @@ -1095,10 +1107,8 @@ if 1: origstr = string.join (kws, '|') str = re.sub (r'([^-])\\(%s)\b' % origstr, r'\1-\\\2', str) - return str + conversions.append (((1,7,4), conv, 'note\\script -> note-\script')) - conversions.append (((1,7,4), conv, '<< >> -> < < > >')) - ################################ # END OF CONVERSIONS -- 2.39.2