`scm-scm-music-music'.
* lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
(Generic_prefix_music_scm): Add rule for it.
* lily/quote-iterator.cc (Quote_iterator::process): Handle
`quoted-transposition' property.
* ly/music-functions-init.ly (transposedCueDuring): New function.
* scm/define-music-properties.scm (all-music-properties): Updated.
* Documenation/topdocs/NEWS.itely: Document it.
+2006-05-17 Werner Lemberg <wl@gnu.org>
+
+ * lily/lexer.ll (init_signature_has_table): Add
+ `scm-scm-music-music'.
+
+ * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
+ (Generic_prefix_music_scm): Add rule for it.
+
+ * lily/quote-iterator.cc (Quote_iterator::process): Handle
+ `quoted-transposition' property.
+
+ * ly/music-functions-init.ly (transposedCueDuring): New function.
+
+ * scm/define-music-properties.scm (all-music-properties): Updated.
+
+ * Documenation/topdocs/NEWS.itely: Document it.
+
2006-05-17 Han-Wen Nienhuys <hanwen@lilypond.org>
* VERSION (PATCH_LEVEL): release 2.9.5
@end ignore
+@item
+A new command @code{\transposedCueDuring} has been added which overrides
+the cue's transposition locally. Its intended use is to octavate cues
+up or down to avoid an excessive number of ledger lines. The syntax form
+is
+
+@example
+\transposedCueDuring #NAME #UPDOWN PITCH MUSIC
+@end example
+
@item
By setting @code{hairpinToBarline}, hairpins will stop at
the barline preceding the ending note.
c4\< c2. c4\!
@end lilypond
-
This feature was sponsored by Andrew Sidwell and Trevor Bača.
@item
{"scm-scm", MUSIC_FUNCTION_SCM_SCM},
{"music-music", MUSIC_FUNCTION_MUSIC_MUSIC},
{"scm-music-music", MUSIC_FUNCTION_SCM_MUSIC_MUSIC},
+ {"scm-scm-music-music", MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC},
{"scm-scm-music", MUSIC_FUNCTION_SCM_SCM_MUSIC},
{"scm-scm-scm-music", MUSIC_FUNCTION_SCM_SCM_SCM_SCM_MUSIC},
{"scm-scm-scm-scm-music", MUSIC_FUNCTION_SCM_SCM_SCM_MUSIC},
%token <scm> MUSIC_FUNCTION_SCM
%token <scm> MUSIC_FUNCTION_SCM_MUSIC
%token <scm> MUSIC_FUNCTION_SCM_MUSIC_MUSIC
+%token <scm> MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC
%token <scm> MUSIC_FUNCTION_SCM_SCM
%token <scm> MUSIC_FUNCTION_SCM_SCM_MUSIC
%token <scm> MUSIC_FUNCTION_SCM_SCM_SCM
$4->unprotect ();
$3->unprotect ();
}
+ | MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC function_scm_argument function_scm_argument Music Music {
+ $$ = scm_list_n ($1, make_input (@$), $2, $3, $4->self_scm (), $5->self_scm (), SCM_UNDEFINED);
+ $4->unprotect ();
+ $5->unprotect ();
+ }
| MUSIC_FUNCTION_MARKUP_MUSIC_MUSIC full_markup Music Music {
$$ = scm_list_5 ($1, make_input (@$), $2, $3->self_scm (), $4->self_scm ());
$3->unprotect ();
/*
The pitch that sounds like central C
*/
- Pitch *me_pitch = unsmob_pitch (get_outlet ()->get_property ("instrumentTransposition"));
+ Pitch *me_pitch = unsmob_pitch (get_music ()->get_property ("quoted-transposition"));
+ if (!me_pitch)
+ me_pitch = unsmob_pitch (get_outlet ()->get_property ("instrumentTransposition"));
for (SCM s = scm_cdr (entry); scm_is_pair (s); s = scm_cdr (s))
{
'origin location))
+transposedCueDuring = #
+(define-music-function
+ (parser location what dir pitch-note main-music)
+ (string? ly:dir? ly:music? ly:music?)
+
+ "Insert notes from the part @var{what} into a voice called @code{cue},
+using the transposition defined by @var{pitch-note}. This happens
+simultaneously with @var{main-music}, which is usually a rest. The
+argument @var{dir} determines whether the cue notes should be notated
+as a first or second voice."
+
+ (make-music 'QuoteMusic
+ 'element main-music
+ 'quoted-context-type 'Voice
+ 'quoted-context-id "cue"
+ 'quoted-music-name what
+ 'quoted-voice-direction dir
+ 'quoted-transposition (pitch-of-note pitch-note)
+ 'origin location))
+
+
quoteDuring = #
(define-music-function
(parser location what main-music)
'origin location))
-
pitchedTrill =
#(define-music-function
(parser location main-note secondary-note)
(quoted-voice-direction ,ly:dir? "Should the quoted voice be up-stem or down-stem?")
(quoted-context-type ,symbol? "The name of the context to direct quotes to, eg., @code{Voice}.")
(quoted-context-id ,string? "The id of the context to direct quotes to, eg., @code{cue}.")
+ (quoted-transposition ,ly:pitch? "The pitch used for the quote, overriding \\transposition")
(to-relative-callback ,procedure? "How to transform a piece of music to relative pitches")
(tweaks ,list? "An alist of properties to override in the backend
for the grob made of this event.")