From ca8e22dd44d924562900930b4e01aad9493a7384 Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Sat, 2 Oct 2004 10:33:27 +0000 Subject: [PATCH] *** empty log message *** --- ChangeLog | 8 +++++- Documentation/topdocs/NEWS.texi | 1 + Documentation/user/notation.itely | 38 ++++++++++++++++++++++++- input/regression/quote-transposition.ly | 19 +++++++++++-- ly/engraver-init.ly | 3 +- 5 files changed, 63 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6be1337a53..7f0bdb1fed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,14 @@ 2004-10-02 Han-Wen Nienhuys + * VERSION (PACKAGE_NAME): release 2.3.20 + + * input/regression/quote-transposition.ly: update example + * scm/define-music-properties.scm (all-music-properties): change meaning of instrumentTransposition. It is now the pitch played that sounds as middle C. This means that instrumentTransposition can be \transposed. + Fixes: transpose-quote.ly * lily/parser.yy (command_element): reverse setting of instrumentTransposition @@ -12,6 +17,7 @@ * lily/recording-group-engraver.cc (stop_translation_timestep): remove macrameing of accumulator and set_car/cdr. + Fixes: transposition-quote.ly * lily/music.cc (transpose): fold Event::transpose() in. @@ -71,7 +77,7 @@ \bookpaper. * lily/slur.cc (outside_slur_callback): epsilon-delta management - for slur edges. + for slur edges. Fixes: progerror-no-bezier-intersection.ly * scm/framework-tex.scm (dump-page): put stencil height in dumped page. diff --git a/Documentation/topdocs/NEWS.texi b/Documentation/topdocs/NEWS.texi index 71512df1fd..4e3b05d4c5 100644 --- a/Documentation/topdocs/NEWS.texi +++ b/Documentation/topdocs/NEWS.texi @@ -7,6 +7,7 @@ @unnumbered New features in 2.3 since 2.2 @itemize @bullet +@item Parts that use @code{\quote} can now be transposed. @item LilyPond does not try to produce output for files that have a parse error. diff --git a/Documentation/user/notation.itely b/Documentation/user/notation.itely index afc87eaeea..aef3c9b2f8 100644 --- a/Documentation/user/notation.itely +++ b/Documentation/user/notation.itely @@ -5099,17 +5099,53 @@ The key of a transposing instrument can also be specified. This applies to many wind instruments, for example, clarinets (B-flat, A and E-flat), horn (F) and trumpet (B-flat, C, D and E-flat). - The transposition is entered after the keyword @code{\transposition} @example \transposition bes %% B-flat clarinet @end example +@noindent This command sets the property @code{instrumentTransposition}. The value of this property is used for MIDI output and quotations. It does not affect how notes are printed in the current staff. +The pitch to use for @code{\transposition} should correspond to the +transposition of the notes. For example, when entering a score in +concert pitch, typically all voices are entered in C, so +they should be entered as + +@example + clarinet = @{ + \transposition c' + ... + @} + saxophone = @{ + \transposition c' + .. + @} +@end example + +@noindent +in this case, @code{\transposition} does not have to be used, since +@code{c'} is the default. + +@code{\transposition} should be used when the music is entered from a +(transposed) orchestral part. For example, in classical horn parts, +the tuning of the instrument is often changed during a piece. When copying +the notes from the part, use @code{\transposition}, e.g. + +@example + \transposition d' + c'4^"in D" + ... + \transposition g' + c'4^"in G" + ... +@end example + + + @cindex transposition, MIDI @cindex transposition, instrument diff --git a/input/regression/quote-transposition.ly b/input/regression/quote-transposition.ly index b8f4f5450e..857fec9078 100644 --- a/input/regression/quote-transposition.ly +++ b/input/regression/quote-transposition.ly @@ -2,10 +2,14 @@ \header { - texidoc = "Quotations take into account the transposition of both source and target. -In this example, all instruments play sounding central C, the target is a instrument in F." + texidoc = "Quotations take into account the transposition of both +source and target. In this example, all instruments play sounding +central C, the target is a instrument in F. The target part may be +@code{\transpose}d. In this case, all the pitches (including the +quoted ones) will transposed as well. " } + \version "2.3.17" \paper { raggedright = ##t } @@ -18,11 +22,13 @@ In this example, all instruments play sounding central C, the target is a instru d'16 d'16 d'8 d'16 d'16 d'8 } + \addquote sax { \transposition es' a8 a a a a a a a } -{ + +quoteTest = { \transposition f % french horn g'4 @@ -30,3 +36,10 @@ In this example, all instruments play sounding central C, the target is a instru << \quote sax 4 s4^"sax" >> } + +<< \quoteTest + \new Staff + << \transpose c' d' \quoteTest + s4_"up 1 tone" + >> +>> diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly index ee8d7dc0b9..18ef707806 100644 --- a/ly/engraver-init.ly +++ b/ly/engraver-init.ly @@ -559,7 +559,8 @@ AncientRemoveEmptyStaffContext = \context { (Voice Slur direction -1) ) - quotedEventTypes = #'(note-event rest-event time-scaled-music tie-event) + quotedEventTypes = #'(note-event rest-event time-scaled-music tie-event) + instrumentTransposition = #(ly:make-pitch 0 0 0) } EasyNotation = \context { % TODO: why \context override? -- 2.39.2