teoria icon indicating copy to clipboard operation
teoria copied to clipboard

teoria.note.chord('maj') Produces Major Seventh Instead of Major Triad

Open mjhasbach opened this issue 10 years ago • 3 comments

Why does teoria.note.chord('maj') produce a major seventh chord, while teoria.note.chord(), teoria.note.chord('M'), and teoria.note.chord('major') produce a major triad?

var notes = [];

teoria.note('C4').chord('maj').notes().forEach(function(note){
    notes.push(note.scientific());
});

console.log(notes.join(',')); // C4,E4,G4,B4

By contrast, teoria.note.chord('min') produces a minor triad as expected:

var notes = [];

teoria.note('C4').chord('min').notes().forEach(function(note){
    notes.push(note.scientific());
});

console.log(notes.join(',')); // C4,Eb4,G4

mjhasbach avatar Aug 01 '15 23:08 mjhasbach

Yes, I know the chord terminology is foggy, but this is my understanding:

C, CM and CMajor means a major triad consisting of C, E, G CMaj means a major seventh chord consisting of C, E, G and B

If you could point to some (somewhat official) reference that means otherwise - I'd be glad to fix it.

saebekassebil avatar Aug 04 '15 17:08 saebekassebil

Wikipedia (peer-reviewed) Alcorn State University ("somewhat official")

Disclaimer: I am pretty new to music theory and did not verify the Wikipedia sources. Alcorn lists no sources.

mjhasbach avatar Aug 04 '15 23:08 mjhasbach

Actually thinking about it, it should be possible for the user to implement their own parser. In Denmark we use Cmaj as shorthand for Cmaj7, and I know that most jazz music is like that as well.

But my guess is that there are other, stricter rules that applies to classical music (although chord symbol don't often appear in classical sheet music), and maybe different countries has different rules.

I think for now I'd like to keep "Cmaj" = "Cmaj7", but let's think about a way where the user can configure the meaning of different chord symbols!

saebekassebil avatar Sep 25 '15 16:09 saebekassebil