User:Bhwrsip1/sandbox/chorddraft

Format Overview
In its simplest form, ChordPro is used to describe the relationship of chords to lyrics (i.e., where they belong in the song), song sections, and song metadata (i.e., information about the song). All ChordPro markup is optional; yet some elements are less optional than others if the objective is a useful and nicely formatted chord chart.

Chord Placement
Chord names are placed in square brackets immediately before the syllable of the lyric to which it is associated. For example, In the formatted output, the chord names will be placed on top of the lyric line, as presented below:

C                F      C     G7                    C Twinkle, twinkle, little star, How I wonder what you are!

Song Sections
Song sections, also called environments in the ChordPro specification, are denoted by a matching pair of markup directives (start_of_sectionName, end_of_sectionName) around the lines comprising the section. A section may consist of lyrics for part of a song, such as a chorus or verse or, depending on the processing tool, be something else, such as ASCII guitar TAB notation.

The name of three section types are reserved in the specification: chorus, tab, and grid (i.e., start_of_chorus, start_of_tab, start_of_grid).

A section may have any name that consists of letters, digits, or underscore. The section directive may contain an optional label value that identifies the section. For example, {start_of_verse Verse 1}

An example of a marked section is: {start_of_verse} [C]Twinkle, twinkle, [F]little [C]star, [G7]How I wonder what you [C]are! [G7]Up above the world so high, [G7]Like a diamond in the sky. [C]Twinkle, twinkle, [F]little [C]star, [G7]How I wonder what you [C]are! {end_of_verse}

Song Metadata
Song metadata consists of information about the song and is denoted by specifying a name and value after the meta keyword all inside curly braces. {meta: name value} The use of a single lowercase word, like artist and composer, is suggested for a name, yet there is no constraint on what is considered valid.

For convenience and backward compatibility with earlier ChordPro versions, the following metadata names are considered standard. These can be defined using the meta directive or entered as standalone directives: title, sorttitle, subtitle, artist, composer, lyricist, arranger, copyright, album, year, key, time, tempo, duration and capo. Multiple values can be set by using multiple metadata directives. In the example below, which is based on the file here, that the short form is used for all but the copyright meta values. Note also that multiple values are provided for copyright to distinguish the copyright status of the the music and words separately. {title: What Child Is This?} {subtitle: Traditional Christmas Song} {key: Em} {time: 6/8} {lyricist: William Chatterton Dix, 1837-1898} {composer: GREENSLEEVES, a 17th Century English Air} {meta: copyright Words: Public Domain} {meta: copyright Music: Public Domain}

Example
An example of a portion of a song in ChordPro format is presented below. Note the chorus section is labeled as a Refrain. Note that chords may appear in the middle or a word when the chord changes at one of its syllables (e.g., ). Finally, note a comment was used as a note to repeat the refrain after the first verse.

{title: Swing Low Sweet Chariot} {subtitle: African American Spiritual} {key: D} {year: unknown} {composer: Wallace Willis} {meta: copyright Public Domain} {start_of_chorus: Refrain} Swing [D]low, sweet [G]chari[D]ot, Comin’ for to carry me [A7]home. Swing [D7]low, sweet [G]chari[D]ot, Comin’ for to [A7]carry me [D]home. {end_of_chorus} {start_of_verse} I [D]looked over Jordan, and [G]what did I [D]see, Comin’ for to carry me [A7]home. A [D]band of angels [G]comin’ after [D]me, Comin’ for to [A7]carry me [D]home. {end_of_verse} {comment: Refrain}
 * 1) A Portion of a song in ChordPro format
 * 2) A '#' character in the 1st column is a comment