Attached (for ease of reading this post, code not embedded) is a simple
project that has a staff for C Major and all Major flat keys. Above each
7th chord is the chord name.
I want to add below the chord, treble clef, the associated Roman numeral
description of each chord.
I.E. on the C Major I would have I, the Dm7 would have ii7 with the 7 in
superscript, the Em7 would have iii7 with the 7 in superscript, etc.
I see several avenues for this but I don't see an avenue where I can write
the code once and use many times. I want the Roman numerals to appear for
all keys and don't want an overly clutter code.
Can someone point me in the correct direction?
Best regards,
Lance
\version "2.18.2"
\header {
title = "Root Position 7th Chords"
composer = "Lance James"
}
harmonies = \chordmode {
c1:maj7 d:m7 e:m7 f:maj7 g:7 a:m7 b:m7.5- \break
f1:maj7 g:m7 a:m7 bes:maj7 c:7 d:m7 e:m7.5- \break
bes1:maj7 c:m7 d:m7 ees:maj7 f:7 g:m7 a:m7.5- \break
ees1:maj7 f:m7 g:m7 aes:maj7 bes:7 c:m7 d:m7.5- \break
aes1:maj7 bes:m7 c:m7 des:maj7 ees:7 f:m7 g:m7.5- \break
des1:maj7 ees:m7 f:m7 ges:maj7 aes:7 bes:m7 c:m7.5- \break
ges1:maj7 aes:m7 bes:m7 ces:maj7 ces:7 ees:m7 f:m7.5- \break
ces1:maj7 ees:m7 fes:m7 fes:maj7 ges:7 aes:m7 bes:m7.5- \break
}
keychangevisual = {
\set Staff.explicitKeySignatureVisibility = #end-of-line-invisible
\set Staff.printKeyCancellation = ##f
\override Staff.KeySignature.break-visibility = #begin-of-line-visible
}
cmajortreble = {
\clef treble \key c \major \time 4/4
<c e g b>1 <d f a c>1 <e g b d>1 <f a c e>1 <g b d f>1 <a c e g>1 <b d f a>1
}
fmajortreble = {
\keychangevisual
\key f \major \break
<f a c e>1 <g bes d f>1 <a c e g>1 <bes d f a>1 <c e g bes>1 <d f a c>1 <e g bes d>1
}
bflatmajortreble = {
\keychangevisual
\key bes \major \break
<bes, d f a>1 <c ees g bes>1 <d f a c>1 <ees g bes d>1 <f a c ees>1 <g bes d f>1 <a c ees g>1
}
eflatmajortreble = {
\keychangevisual
\key ees \major \break
<ees g bes d>1 <f aes c ees>1 <g bes d f>1 <aes c ees g>1 <bes d f aes>1 <c ees g bes>1 <d f aes c>1
}
aflatmajortreble = {
\keychangevisual
\key aes \major \break
<aes, c ees g>1 <bes des f aes>1 <c ees g bes>1 <ees g bes des>1 <f aes c ees>1 <g bes des f>1 <aes c ees g>1
}
dflatmajortreble = {
\keychangevisual
\key des \major \break
<des,,f aes c>1 <ees ges bes des>1 <f aes c ees>1 <ges bes des f>1 <aes c ees ges>1 <bes des f aes>1 <c ees ges bes>1
}
gflatmajortreble = {
\keychangevisual
\key ges \major \break
<ges bes des f>1 <aes ces ees ges>1 <bes des f aes>1 <ces ees ges bes>1 <des f aes ces>1 <ees ges bes des>1 <f aes ces ees>1
}
cflatmajortreble = {
\keychangevisual
\key ces \major \break
<ces ees ges bes>1 <des fes aes ces>1 <ees ges bes des>1 <fes aes ces ees>1 <ges bes des fes>1 <aes ces ees ges>1 <bes des fes aes>1
}
cmajorbass = {
\clef bass \key c \major \time 4/4
<c e g b>1 <d f a c>1 <e g b d>1 <f a c e>1 <g b d f>1 <a c e g>1 <b d f a>1
}
fmajorbass = {
\keychangevisual
\key f \major \break
<f a c e>1 <g bes d f>1 <a c e g>1 <bes d f a>1 <c e g bes>1 <d f a c>1 <e g bes d>1
}
bflatmajorbass = {
\keychangevisual
\key bes \major \break
<bes d f a>1 <c ees g bes>1 <d f a c>1 <ees g bes d>1 <f a c ees>1 <g bes d f>1 <a c ees g>1
}
eflatmajorbass = {
\keychangevisual
\key ees \major \break
<ees, g bes d>1 <f aes c ees>1 <g bes d f>1 <aes c ees g>1 <bes d f aes>1 <c ees g bes>1 <d f aes c>1
}
aflatmajorbass = {
\keychangevisual
\key aes \major \break
<aes c ees g>1 <bes des f aes>1 <c ees g bes>1 <ees g bes des>1 <f aes c ees>1 <g bes des f>1 <aes c ees g>1
}
dflatmajorbass = {
\keychangevisual
\key des \major \break
<des,,f aes c>1 <ees ges bes des>1 <f aes c ees>1 <ges bes des f>1 <aes c ees ges>1 <bes des f aes>1 <c ees ges bes>1
}
gflatmajorbass = {
\keychangevisual
\key ges \major \break
<ges bes des f>1 <aes ces ees ges>1 <bes des f aes>1 <ces ees ges bes>1 <des f aes ces>1 <ees ges bes des>1 <f aes ces ees>1
}
cflatmajorbass = {
\keychangevisual
\key ces \major \break
<ces ees ges bes>1 <des fes aes ces>1 <ees ges bes des>1 <fes aes ces ees>1 <ges bes des fes>1 <aes ces ees ges>1 <bes des fes aes>1
}
dmajorbass = {
\keychangevisual
\key d \major \break
<d, fis a cis>1 <e g b d>1 <fis a cis e>1 <g b d fis>1 <a cis e g>1 <b d fis a>1 <cis e g b>1
}
upper = \relative c' {
\cmajortreble
\fmajortreble
\bflatmajortreble
\eflatmajortreble
\aflatmajortreble
\dflatmajortreble
\gflatmajortreble
\cflatmajortreble
}
lower = \relative c, {
\cmajorbass
\fmajorbass
\bflatmajorbass
\eflatmajorbass
\aflatmajorbass
\dflatmajorbass
\gflatmajorbass
\cflatmajortreble
}
\score {
<<
\new PianoStaff <<
\new ChordNames {
\set chordChanges = ##t
\harmonies
}
\new Staff = "upper" \upper
\new Staff = "lower" \lower
>>
>>
\layout {
\context { \Staff \RemoveEmptyStaves }
}
\midi { }
}
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user