[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: \override multiple properties?
From: |
Bric |
Subject: |
Re: \override multiple properties? |
Date: |
Sat, 1 Feb 2020 21:46:51 -0500 (EST) |
> On February 1, 2020 at 7:06 PM Aaron Hill <address@hidden> wrote:
> related \overrides into their own music variable or function, if there
> needs to be some parameterization:
>
> %%%%
> \version "2.18"
>
> emphasizeStem = {
> \override Stem.thickness = #3.0
> \override Stem.color = #'(0.5 0.3 0.2)
> }
>
> % . . .
> \new Voice \with { \emphasizeStem } { b'4 c''2. }
> % . . .
> \new Voice { e'8 g' \once \emphasizeStem f'4 a'2 }
> % . . .
> %%%%
>
> Grouping related \overrides together in a well-named variable promotes
> readability, reusability and maintainability. As an added bonus, \once
> can be used with the variable without needing to apply it to every
> \override.
In my case i am needing to override a series of notes and then revert. (So,
don't want to use "\once"). I have already used your construct, coupling it
with reverting directives grouped the same way (with a named group):
emphasizeStem = {
\override Stem.thickness = #3.0
\override Stem.color = #'(0.5 0.3 0.2)
}
revertStem = {
\revert Stem.thickness
\revert Stem.color
}
Then i mark up a set of notes with the above two, as start and end markers,
like so:
e'8 \emphasizeStem gis'' cis'' e'' dis'' \revertStem fis''
What would be nice is be able to parametrize those blocks somehow
But, i guess, that can only be done with a Scheme function? I'm shaky on scheme.