lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Chord options in leadsheets


From: Flaming Hakama by Elaine
Subject: Re: Chord options in leadsheets
Date: Mon, 24 Feb 2020 17:52:53 -0800

---------- Forwarded message ----------
From: Michael Hendry <address@hidden>
To: Jacques Menu <address@hidden>
Cc: LilyPond Users <address@hidden>
Date: Sat, 22 Feb 2020 11:36:03 +0000
Subject: Re: Chord options in leadsheets
> On 22 Feb 2020, at 11:01, Jacques Menu <address@hidden> wrote:
>
> Hello Hendry,
>
> You can have several ChordNames contexts and use \parenthesize in the corresponding \chordmode definitions.
>
> What I don’t know is how to have only a single pair of parentheses around the two harmonies in the attached.
>
> HTH!
>
> JM
>
> <PastedGraphic-1.tiff>
>
> <AlternateHarmoniesAttempt.ly>

Thanks, Jacques.

This gives me something to work on.

The Am7(b5) from my screenshot could be represented as Am7b5 in the alternative slot and Am7 as the default.

Michael
 
Here are some thoughts about how to approach what you are describing.
First, to clarify the different issues, most of which have been addressed by others.

* To get one set of chord symbols above another set of chord symbols, you need to use two ChordNames contexts. 
* To get an entire chord symbols in parenthesis, you can use something like https://lists.gnu.org/archive/html/lilypond-user/2018-12/msg00046.html
* The one remaining topic, it seems, is how to get parenthesis within a chord symbol.  This is what I will comment on.


So, I think you will have to do two things.

The first is to define your own customized chord symbols.  
You will need to do this in order to get the parenthesis within the symbol.  

Now, if you always want to print Am7b5 as Am7(b5), 
then you can just define the m7b5 chord to have parenthesis.

Here is an example of how to do that (this also works in 2.19.83):

\version "2.18.2"

% Default
myChordSequence = \chordmode { 
    \set chordChanges = ##t 
    c1:m7.5-
}
<<
    \new ChordNames \myChordSequence
    \new Staff \relative c'' { ges1 }
>>

% Define your desired chord symbol design
myChordExceptions = {
    <c ees ges bes>1-\markup { "m7(b5)" } 
}

% Replace the old chord symbol with your new one
chordExceptions = #(append (sequential-music-to-chord-exceptions myChordExceptions #t) ignatzekExceptions)

% Use the new chord symbol
<<
    \new ChordNames {
        \set chordNameExceptions = #chordExceptions
        \myChordSequence
    }
    \new Staff \relative c'' { ges1 }
>>


So, for the final twist,if you want to have Am7b5 in some place, but Am7(b5) in others, 
we will have to convince lilypond that they are two different chords.

Semantically, you are saying that the Am7(b5) might or might not have a b5.  
Which is not deterministic, so we can't actually specify that.  
What we can do is respell the chord:

\version "2.18.2"

% Define your desired chord symbol design, including two versions of m7b5, 
% but one spelled differently.  In this case, I'm repeating the minor 3rd as a #9.  
% This is solely for the purpose of distinguishing the two versions of the chord.
myChordExceptions = {
    <c ees ges bes>1-\markup { "m7b5" } 
    <c ees ges bes dis'>1-\markup { "m7(b5)" } 
}

% Merge your chord definitions in with the rest of the defaults 
chordExceptions = #(append (sequential-music-to-chord-exceptions myChordExceptions #t) ignatzekExceptions)

% An example using both chord symbols.  
% To use the alternate form, we need to enter the second chord 
% in terms of how we spelled it in the exceptions, with the #9.
myChordSequence = \chordmode { 
    c1:m7.5-
    c1:m7.5-.9+
}

% Use both the old and new chord symbols
<<
    \new ChordNames {
        \set chordChanges = ##t 
        \set chordNameExceptions = #chordExceptions
        \myChordSequence
    }
    \new Staff \relative c'' { bes1 | bes }
>>



Finally, note that you will likely need to use additional markup formatting to get the symbol to look the way you want.
For example:

myChordExceptions = {
    <c ees ges bes>1-\markup { \raise #0.2 { \magnify #0.2 { " " } \small { m } } \raise #0.3 { \normalsize 7 } \raise #0.6 { \small "b5" } }
    <c ees ges bes dis'>1-\markup { \raise #0.2 { \magnify #0.2 { " " } \small { m } } \raise #0.3 { \normalsize 7 } \raise #0.6 { \small "(b5)" } }
}


HTH,

Elaine Alt
415 . 341 .4954                                           "Confusion is highly underrated"
address@hidden
Producer ~ Composer ~ Instrumentalist ~ Educator
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

reply via email to

[Prev in Thread] Current Thread [Next in Thread]