A work-in-progress syntax for describing Nashville Number System chord charts in a way that is both machine and human readable, implemented in Swift using swift-parsing
(There is also a nascent Ruby implementation but development going forward will be in Swift)
This implementation will eventually include a parser and one or more "Renderers" for exporting the chart in formats like PDF for printing, etc.
Nashdown is inspired by Markdown in spirit, but not in implementation nor syntax.
Note: most of this is unimplemented and hypothetical
1 1 4 1
1 1 5 1
1_5 2_4 6_1
1'''_5'
6- 5d7 2m7 2M7
4add9 4sus4
5/7
b6 b7
1 1 4 <5>
1 1 4 <@5>
1 1 4 ^5
1 1 4 <5
1 1 4 <5>~<5>
1 5 1/3 x
1 • 5 •
mp 1 1 4 1
f 1 1 5 1
ff -7 5 1 1
1 1 4''
|: 1 1 4 5
1 1 | 4 5 :| 5 4 | (first and last time)
Verse)
1 1 4 5
--Bass enters
1 1 4 5
Chorus)
1 1 5 1
"The Title"
Eb, Blues, 4/4, 150bpm
From page 25 of “Song charting made easy”
"One More Minute With You"
Pop-Rock
F#
4/4
140bpm
I)
--1x guitar only--
||: 1 1 1 1
V)
mp
1 1 1 1
4 4 4 4
1 1 1 1
4 4 4 4
Cha)
--Full band--
mf
<2->~<2-> <4>~<4> --(Diamond 1x only!)--
<2->~<2-> 4 4
Ch)
f
1 5 1/3 4
1 4 | b3 <4> :|| b3 4 |
Ch)
f
<1 5 1/3 4
1 5 b3 4
Br)
mp
b6 b6 b7 b7
1 1
f
b6 b6 b7 b7
4 4 b3 4
Solo)
1 5 1/3 4
1 5 b3 4
Ch)
1 5 ^1/3 4
<1 5 b3 4
Ch)
>1 5 1/3 4
1 5 b3 4
Out)
||: 1 5 1/3 4
1 5 b3 4 :|| <@1>