Re: Added ninth chord (symbol)
> On Apr 29, 2016, at 12:22 PM, Henry Law wrote: > > I've searched the archives and the web generally; all that I have found on > this subject leads me to believe that the facility I need is not there, which > is perplexing since it's not particularly esoteric. Can someone either > confirm my understanding or put me right? (I'm using 2.18.2 on a > Debian-based system). > > In a lead sheet I want to use the chord which I call an "added ninth". Using > the key of C as an example, I want the chord C-E-G-D: a plain major triad > with the ninth added on top. > > "add9" is not a valid chord designator in Lilypond, as far as I can see. I > can ask for "9" or "maj9" or "sus2" but none of these is my chord: > > The ninth is a dominant ninth: C-E-G-Bb-D Quite a different animal. > Major ninth is C-E-G-B-D > Sus2 is C-D-G, where the third is (temporarily, usually) /replaced/ by the > second. > > Am I stuck? I'm hoping there is some magic somewhere to help. No magic as such but the answer is baked into LilyPond. You need to create a chord exception; the instructions are somewhere in the LilyPond manual. I am away from my laptop with all my LP stuff on it so I can't direct more specifically. The exception can be formulated to produce Cadd9 as the chordname easily. Just what you're looking for. There is a file floating around called pop-chord.ly or pop-chords.ly that has a lot of these kinds of exceptions already done. You use the \include command to utilize it; how to do that is also in the manual. The file ought to be in the snippet repository, I would think. Tim ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On Fri, 29 Apr 2016, Henry Law wrote: > In a lead sheet I want to use the chord which I call an "added ninth". Using > the key of C as an example, I want the chord C-E-G-D: a plain major triad with > the ninth added on top. Try "c1:9^7" That is: dominant ninth, delete the seventh. I don't know how the chord *name* will display, but that can be adjusted with overrides; this will at least get the notes right. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 29/04/16 18:37, Tim McNamara wrote: There is a file floating around called pop-chord.ly or pop-chords.ly that has a lot of these kinds of exceptions already done. You use the \include command to utilize it; how to do that is also in the manual. Aha ... that's all I need. I'm good at manuals. (In fact I googled for "pop-chords.ly" and got the hits I need). Thank you. Were you typing your reply before I sent my question? -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
Am 29.04.2016 um 19:22 schrieb Henry Law: "add9" is not a valid chord designator in Lilypond, as far as I can see. I can ask for "9" or "maj9" or "sus2" but none of these is my chord: LilyPond knows the difference between 9 and add9 but doesn’t display it by default. Am I stuck? I'm hoping there is some magic somewhere to help. The magic is called additionalPitchPrefix. It can be found f. e. at section 2.7.2 of the Notation Reference. The following code prints “C9 C9 Cadd9 C9”. % \version "2.18.2" \new ChordNames { \set additionalPitchPrefix = "add" } % ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/2016 3:58 am, msk...@ansuz.sooke.bc.ca wrote: On Fri, 29 Apr 2016, Henry Law wrote: In a lead sheet I want to use the chord which I call an "added ninth". Using the key of C as an example, I want the chord C-E-G-D: a plain major triad with the ninth added on top. Try "c1:9^7" That is: dominant ninth, delete the seventh. I don't know how the chord *name* will display, but that can be adjusted with overrides; this will at least get the notes right. You can also use "c1:5.9", which just adds the 9th over the basic triad. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 29/04/16 22:20, Brett Duncan wrote: You can also use "c1:5.9", which just adds the 9th over the basic triad. I coded g2:5.9 in chordmode and got G9, which isn't the right chord. I'm pursuing pop-chords.ly. -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/2016 8:24 am, Henry Law wrote: On 29/04/16 22:20, Brett Duncan wrote: You can also use "c1:5.9", which just adds the 9th over the basic triad. I coded g2:5.9 in chordmode and got G9, which isn't the right chord. I'm pursuing pop-chords.ly. As Matthew said, you will need to override how the chord name is displayed, but this (or Matthew's suggestion) at least constructs a chord with the right notes. Brett ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On Sat, 30 Apr 2016, Brett Duncan wrote: > I coded g2:5.9 in chordmode and got G9, which isn't the right > chord. I'm pursuing pop-chords.ly. > > As Matthew said, you will need to override how the chord name is displayed, > but this (or Matthew's suggestion) at least constructs a chord with the > right notes. We should probably step back and clarify what seems to be the real issue every time someone asks about chord mode: Chord mode is completely separate from typesetting chord names. "Chord mode" is chord *input* mode. When you enter a chord with chord mode, it is immediately translated into a set of notes, and whatever code you used to enter it is forgotten. Then if you are typesetting chord names, the chord names are determined by analysing that set of notes, not by referring back to the forgotten input code. [*] If you want the notes to be G-B-D-A, use g1:5.9 or g1:9^7 . Then you get the notes G-B-D-A. But this will not cause the name printed on the page to be "Gadd9". You get the chord, not the name. If you want to change the names printed by a ChordNames context, so that G-B-D-A will print the name "Gadd9" on the lead sheet, then use an override such as with pop-names.ly. But you need to enter the notes correctly first. You get the name only if you already have the chord. You can do both, and it sounds like that's what Henry actually wants. His initial question, which gave a bunch of examples of note sets and seemed to imply he'd accept any syntax that generated the correct notes, made me think it was a question primarily about input syntax. [*] There may possibly be some extra information stored beyond the set of notes and used in certain cases for disambiguation, but the statement is true in general. The gap between this behaviour and what users *expect* when they think they're entering "chords" is yet another example of a problem caused by Lilypond's design philosophy of evaluating all input fully as soon as it's parsed. -- Matthew Skala msk...@ansuz.sooke.bc.ca People before principles. http://ansuz.sooke.bc.ca/ ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/2016 3:24 pm, msk...@ansuz.sooke.bc.ca wrote: On Sat, 30 Apr 2016, Brett Duncan wrote: I coded g2:5.9 in chordmode and got G9, which isn't the right chord. I'm pursuing pop-chords.ly. As Matthew said, you will need to override how the chord name is displayed, but this (or Matthew's suggestion) at least constructs a chord with the right notes. We should probably step back and clarify what seems to be the real issue every time someone asks about chord mode: Chord mode is completely separate from typesetting chord names. "Chord mode" is chord *input* mode. When you enter a chord with chord mode, it is immediately translated into a set of notes, and whatever code you used to enter it is forgotten. Then if you are typesetting chord names, the chord names are determined by analysing that set of notes, not by referring back to the forgotten input code. [*] I agree with you about clarifying what the actual issue is at the outset. I not sure that chord mode and the ChordNames context are as completely separate as you suggest, but IMO that's not really the issue. The problem lies in the fact that the default (Ignatzek) chord names are typically okay for only the simplest chords. The moment a user tries to input something more "complex" (not that an added ninth is particularly complex), what is generated is***not* what the user is after. I've seen plenty of messages on this list over the last decade or so complaining about this very fact. I suspect many have done the same as me - created my own file of exceptions, added to it over time as need, and included it as a matter of routine. Which is fine for me and others doing the same, but leaves the unexpected Ignatzek defaults as an unhappy surprise for new users. You can do both, and it sounds like that's what Henry actually wants. His initial question, which gave a bunch of examples of note sets and seemed to imply he'd accept any syntax that generated the correct notes, made me think it was a question primarily about input syntax. I read it that way as well. Henry, have you had any success with the pop-chords.ly file? (If not, I have some files I could send to you.) Brett ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
Am 30.04.2016 um 08:56 schrieb Brett Duncan: Henry, have you had any success with the pop-chords.ly file? (If not, I have some files I could send to you.) You don’t need this or chord exceptions in general if you follow my much simpler answer that no-one replied to (http://lists.gnu.org/archive/html/lilypond-user/2016-04/msg00823.html) ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/2016 6:30 pm, Malte Meyn wrote: Am 30.04.2016 um 08:56 schrieb Brett Duncan: Henry, have you had any success with the pop-chords.ly file? (If not, I have some files I could send to you.) You don�t need this or chord exceptions in general if you follow my much simpler answer that no-one replied to (http://lists.gnu.org/archive/html/lilypond-user/2016-04/msg00823.html) In dealing with Henry's specific question, yes. To deal with any other chord names that are not what the user requires, maybe not. ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
Regrettable, nested quoting is messed up :( Anyway, maybe of some help though: 2016-04-30 8:56 GMT+02:00 Brett Duncan : > On 30/04/2016 3:24 pm, msk...@ansuz.sooke.bc.ca wrote: > > On Sat, 30 Apr 2016, Brett Duncan wrote: > > I coded g2:5.9 in chordmode and got G9, which isn't the right > chord. I'm pursuing pop-chords.ly. g2:5.9 is not correct. See the putput from the following code listing some (all?) possibilities to _input_ the correct chord. tst = { \chordmode { \set additionalPitchPrefix = "add" c:1.3.5.9 c:3.5.9 c:5.9 %% not correct ! c:9^7 } \notemode { } } << \new Staff \tst \new ChordNames \tst >> I often put the chords in a Staff-context to check whether I coded them correctly. More below. > As Matthew said, you will need to override how the chord name is displayed, > but this (or Matthew's suggestion) at least constructs a chord with the > right notes. > > We should probably step back and clarify what seems to be the real issue > every time someone asks about chord mode: > > Chord mode is completely separate from typesetting chord names. Indeed. We have different input-modes: notemode (the default, thus rarely stated explicitely) chordmode figuremode drummode To illustrate, look at the output of: \chordmode { c4:1 c:1 g:1 g:1 a:1 a:1 g2:1 f4:1 f:1 e:1 e:1 d2:1 c:1 } Granted, pretty pointless to do it this way, but valid code. > "Chord mode" is chord *input* mode. When you enter a chord with chord > mode, it is immediately translated into a set of notes, and whatever code > you used to enter it is forgotten. Then if you are typesetting chord > names, the chord names are determined by analysing that set of notes, not > by referring back to the forgotten input code. [*] Indeed. It's done this way to gain the possibility to get different output from the same source. To illustrate: mus = { \chordmode { c,1 } \notemode { } } << \new ChordNames \mus \new FretBoards \mus \new Staff { \clef "G_8" \mus } >> > I agree with you about clarifying what the actual issue is at the outset. > > I not sure that chord mode and the ChordNames context are as completely > separate as you suggest, but IMO that's not really the issue. The problem > lies in the fact that the default (Ignatzek) chord names are typically okay > for only the simplest chords. The moment a user tries to input something > more "complex" (not that an added ninth is particularly complex), what is > generated is not what the user is after. I've seen plenty of messages on > this list over the last decade or so complaining about this very fact. Well, two problems. (1) Like yourself I've seen a plethora of requests to write chord-names in a certain way over the years. Though, there is no general consense how to do it. Everyone wants it (a little) different. (2) LilyPond provides methods to get the desired output: via exceptions or the already mentioned pop-chords-snippet http://lsr.di.unimi.it/LSR/Item?id=750 and derivates from it. Though, if you aim at an entirely different style like Brandt-Römer, those methods are pretty tedious. Right now there's at first a selection of pitches worth being displayed in a chord-name. To give an trivial example: A simple major chord with tonic c is displayed: C and ofcourse not C ¹ ³ ⁵ Than a markup is created relying on those pitches, following the rules from Klaus Ignatzek, Die Jazzmethode fuer Klavier 1 (At least it's claimed, I don't own the book and can't check) The problem is that some naming-styles (like Brandt-Römer) would not only require different rules for creating the markup, but also the selection of pitches is different. It's a major task to make LilyPond flexible enough for this. I already tried it repeatedly, but with no convincing result... > I suspect many have done the same as me - created my own file of exceptions, > added to it over time as need, and included it as a matter of routine. Which > is fine for me and others doing the same, but leaves the unexpected Ignatzek > defaults as an unhappy surprise for new users. Well, the ignatzek-style chord-names _are_ a valid possibility. We also used to have banter-style chord-names, which are really strange, imho. Though they are broken nowadays and nobody requested them for a long time. The main problem is the lack of flexibility... Cheers, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 29/04/16 18:59, Malte Meyn wrote: The magic is called additionalPitchPrefix. It can be found f. e. at section 2.7.2 of the Notation Reference. The following code prints “C9 C9 Cadd9 C9”. % \version "2.18.2" \new ChordNames { \set additionalPitchPrefix = "add" } I had trouble with pop-chords.ly: first I couldn't find it, and then when I found something that purported to be it I zigged when I should have zagged and couldn't make it work. But this additionalPitchPrefix thing works beautifully. And, for those who come behind me, it works fine with \chordmode too: \version "2.18.2" \new ChordNames { \set additionalPitchPrefix = "add" \chordmode { c:5.9 c:m7.5- c:5+.9- } } (Gives Cadd9 Cø C#5addb9 Cadd9 C9, exactly as required.) -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/16 06:24, msk...@ansuz.sooke.bc.ca wrote: When you enter a chord with chord mode, it is immediately translated into a set of notes, and whatever code you used to enter it is forgotten. That's a really clear exposition of the subject. As a sometime systems architect I like this kind of thing! -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
It works in version 2.18.2 Error in version 2.19.40 Sent from Mail for Windows 10 ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 29/04/16 18:22, Henry Law wrote: In a lead sheet I want to use the chord which I call an "added ninth". Using the key of C as an example, I want the chord C-E-G-D: a plain major triad with the ninth added on top. I've documented my experiences in the relevant places in the thread elsewhere: thanks to all the people who chimed in to help. Two general points. The first is that this confusion among "added ninth", "ninth" and "suspended second" (and possibly also "added second") is common among those who write chord charts for the kind of music I play a lot. The charts I play off often have one symbol written above piano music that plainly shows that one of the others is required. Not too serious when you see "Cmaj9" over the notes C-E-G-D, but when you end up playing a chord with a dominant seventh when the keyboard player has a diatonic one the results aren't pretty ... The second is that might lilypond be extended to include ":add9" as one of the standard chord formulations that is recognised? -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/16 13:49, Henry Law wrote: \new ChordNames { \set additionalPitchPrefix = "add" \chordmode { c:5.9 c:m7.5- c:5+.9- } } Another wrinkle I've just found. If you want a minor chord with an added ninth (say) you can't code, for instance, d:m.9 as it gives an error. You have to write d:5.3-.9 -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/2016 9:36 pm, Thomas Morley wrote: g2:5.9 is not correct. See the putput from the following code listing some (all?) possibilities to _input_ the correct chord. tst = { \chordmode { \set additionalPitchPrefix = "add" c:1.3.5.9 c:3.5.9 c:5.9 %% not correct ! c:9^7 } \notemode { } } << \new Staff \tst \new ChordNames \tst I assume you are using LP 2.19 - I'm using 2.18 and the results are different, c:5 still produces a triad. But this is something to note for the future. Well, two problems. (1) Like yourself I've seen a plethora of requests to write chord-names in a certain way over the years. Though, there is no general consense how to do it. Everyone wants it (a little) different. True, but unlike most chord naming schemes I've come across in the last 30 years, I find the Ignatzek defaults to be quite unhelpful in producing either the same symbol for different chords (e.g. the G9 and Gadd9 case that got this thread started, or have at look at what c:9.11+ generates) or else symbols that are well, odd. For example, if a user enters c:4 (which was the subject of another thread sometime in the not so distant past), they get back "C4 sus4 3" - whatever that is. (2) LilyPond provides methods to get the desired output: via exceptions or the already mentioned pop-chords-snippet http://lsr.di.unimi.it/LSR/Item?id=750 and derivates from it. Also true, but it's not obvious you need these methods until you start running up against the inadequacies of the Ignatzek defaults. Brett ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
Am 30.04.2016 um 15:07 schrieb Henry Law: On 30/04/16 13:49, Henry Law wrote: \new ChordNames { \set additionalPitchPrefix = "add" \chordmode { c:5.9 c:m7.5- c:5+.9- } } Another wrinkle I've just found. If you want a minor chord with an added ninth (say) you can't code, for instance, d:m.9 as it gives an error. You have to write d:5.3-.9 Or d:m9^7 (Dm9 without 7 = Dmadd9). ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
Am 30.04.2016 um 14:53 schrieb ming : It works in version 2.18.2 Error in version 2.19.40 Sent from Mail for Windows 10 What doesn’t work? Your mail lacks context (In-Reply-To header, quote, or code example) ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
2016-04-30 14:59 GMT+02:00 Henry Law : > The second is that might lilypond be extended to include ":add9" as one of > the standard chord formulations that is recognised? We changed additionalPitchPrefix from "add" to "" some time ago, because some (rare) chords will have multiples "adds"s. See: m = { %% \notemode is not really needed, it's the default \notemode { \set additionalPitchPrefix = "add" } \chordmode { c:1.3.5.7.8.9.11+.13 } } << \new Staff \m \new ChordNames \m >> I don't think we're going to change it back. Otoh, it would be a pretty trivial patch to put simple chords (minor/major) with added 9 into the exceptions and let them display the add9. Though this will _only_ work for the specified chords, I think. c:1.5.9 will not have the "add9" unless inserted as well into the exception and what about all the other chords which may get the "add9"? There will be no end... Sorry to be of not more help, Harm ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user
Re: Added ninth chord (symbol)
On 30/04/16 17:28, Thomas Morley wrote: because some (rare) chords will have multiples "adds"s. Ah, yes; shows how I'd not thought through the problem. Now if music and its notation had been designed by an IEEE committee in the late twentieth century (instead of by multiple communities in multiple countries over many hundreds of years) it would have been more straightforward :-) I'm impressed with how much of the oddity of music notation lilypond does handle. Far more than any other scoring program I've any acquaintance with. -- Henry LawManchester, England ___ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user