ChordPro is the second editor tab. Instead of a chord line above the words, the chords go inline, in square brackets, right where they fall in the lyric. It is an open, portable plain-text format.
This page covers what the editor renders. For the full background on ChordPro, including its history, converting from other apps, and how transposition works, see the blog post ChordPro explained. For the chords-above-words style, see Chords over Lyrics.
Inline chords
Each chord sits above the character right after its bracket, so put the bracket exactly where the chord changes:
You type
[G]Strumming on my [C]guitar tonight [Em]Singing songs beneath the [Am]light
Renders as
GStrumming on my Cguitar tonightEmSinging songs beneath the AmlightWhat counts as a chord is the same everywhere in Fretlist: a root note (A to G), optionally sharp or flat, with quality, extension, and an optional slash bass, like Am, C7, F#m7, Cmaj7, G/B.
Section headers
Mark a section with a comment directive:
You type
{c: Verse}
[G]Strumming on my [C]guitar tonightRenders as
VerseGStrumming on my Cguitar tonight{comment: ...} is the long form of {c: ...}. Environment directives work too: {start_of_chorus} (or {soc}), {start_of_verse: Verse 2}, and {chorus} to mark a chorus repeat.
Notes that aren't chords
Mark a non-chord cue with an asterisk right after the bracket. It renders above the lyric in italic and never transposes:
You type
I found a [G]love [*Stop]for me
Renders as
I found a Glove Stopfor meIt is the same note that Chords over Lyrics writes as (Stop), and switching tabs converts between the two. Fretlist also accepts bare brackets like [Mute] or [(stop)] as notes.
Chord diagrams
Define shapes with {define:} and they render as fingering diagrams:
You type
{define: C base-fret 1 frets x 3 2 0 1 0}
{define: G base-fret 1 frets 3 2 0 0 0 3}
{define: Am base-fret 1 frets x 0 2 2 1 0}Renders as
ChordsSee Getting the most out of Frets for the full diagram system.
Tabs
Wrap tab in {start_of_tab} and {end_of_tab}. Fretlist also auto-detects tab lines, so the wrapper is optional:
You type
{start_of_tab}
e|--------------0--|
B|----------0-1----|
G|------0-2--------|
D|--2-3------------|
A|-----------------|
E|-----------------|
{end_of_tab}Renders as
eBGDAE||||||---------------2-----------3----------0-----------2----------0-----------1----------0-----------------||||||What the editor skips
A line starting with a single # is a hidden comment, and metadata or layout directives ({title}, {artist}, {key}, {capo}, custom {x_...}) are not drawn in the chord-sheet body. In this example only the two lyric lines render:
You type
# reminder: capo 2 live
{title: Perfect}
[G]Everything in brackets [C]renders
{x_layout: ignored}
[Em]but the directives [D]do notRenders as
GEverything in brackets CrendersEmbut the directives Ddo notSet the song's key, capo, and other details in their own fields, not in the song text.
The preview, and switching formats
The preview renders the finished sheet live. Switch to the Chords over Lyrics tab to see the same song in the chords-above-words style, then switch back for ChordPro. A few ChordPro directives have no Chords-over-Lyrics equivalent, so Fretlist warns you before you edit in that view.