×

User Manual

ChordPro

The ChordPro file format is a common format used in other software applications. OnSong understands this format natively. OnSong recognizes files with the following file extensions: .chordpro, .chopro, .cho, .crd, .pro

The ChordPro format allows for song information to be expressed in tags delineated by curly braces. This information can be logically divided into metadata tags and inline tags.

Metadata Tags

These are ChordPro tags that you would use in the metadata portion of the song. In the following tags, three dots (...) represent the text you supply, which goes between the colon and the closing curly brace. For example:

{title: Amazing Grace}
{key: G}

OnSong supports the following ChordPro tags:

  • {title: ...} or {t: ...} The title of the song.
  • {subtitle: ...}, {st: ...} or {su: ...} The artist name or any other byline information. You can specify multiple artists by separating names with a semi-colon. - Kim Walker-Smith; Chris Quilala
  • {album: ...} The name of the album where the song is located.
  • {artist: ...} or {a: ...} The artist name or any other byline information. You can specify multiple artists by separating names with a semi-colon. - Kim Walker-Smith; Chris Quilala
  • {author: ...} The name of the person who created the chord chart. This is displayed at the bottom of the chord chart and in lyrics projection.
  • {key: ...} or {k: ...} or {ok: ...} The key of the song written as a key with enharmonic preference and an optional "m" to indicate minor. - alphabetic, e.g. Bb or Em
  • {capo: ...} The capo to set as number of frets - numeric
  • {tempo: ...} The beats per minute (BPM) - numeric
  • {time: ...} The time signature - numeric beat over bar e.g. 3/4
  • {duration: ...} The song length for autoscroll - seconds or mm:ss
  • {book: ...} The name of the book or books to place the song into. This is a comma-delimited list of book names into which the song will be placed. If the book does not exist, it will be automatically created.
  • {number: ...} The number of the song - numeric, use for hymns, years, etc. You can sort songs by the number for reference.
  • {flow: ...} The arrangement of sections - list of section labels. See Flow for details on arranging the flow of a song.
  • {midi: ...} The MIDI commands to send when the song is viewed. See MIDI Syntax for how to express MIDI commands as text in OnSong.
  • {midi-index: ...} The MIDI commands that will trigger this song to be opened in the Song Viewer. See MIDI Syntax for how to express MIDI commands as text in OnSong.
  • {pitch: ...} The notes to play when using the Pitch Pipe feature.
  • {keywords: ...} or {topic: ...} The list of tags to use with topic search. See Topics for more information on browsing by topic.
  • {copyright: ...} or {footer: ...} or {f: ...} Specifies copyright footer text to appear at the bottom of the page or lyrics projection.
  • {ccli: ...} The CCLI number of the song.
  • {restrictions: ...} The rights management for the song's comma-delimited list of restrictions. See Restrictions for details on setting restrictions for your song.
  • {composer: ...} The individuals who wrote the music to the song. This list should be separated with semi-colons for separate values.
  • {lyricist: ...} The individuals who wrote the lyrics of the song. This list should be separated with semi-colons for separate values.

Inline Tags

These tags are used within the content of the song and can be used to either define sections or to format parts of the song.

  • {define: ...} is used to define custom chord diagrams. See Defining Chords for more information.
  • {comment: ...} or {c: ...} Defines a comment and appears as a musical instruction.
  • {comment_bold: ...} or {cb: ...} Defines text to appear in bold.
  • {comment_italic: ...} or {ci: ...} Defines text to appear as italic.
  • {guitar_comment: ...} or {gc: ...} Defines a comment that appears as a musical instruction.
  • {start_of_verse: ..} or {sov} Declares the start of a verse section with an optional section label.
  • {end_of_verse} or {eov} Declares the end of a verse section.
  • {start_of_chorus: ...} or {soc} Declares the start of a chorus section with an optional section label.
  • {end_of_chorus} or {eoc} Declares the end of a chorus section.
  • {start_of_bridge: ...} or {sob} Declares the start of a bridge section with an optional section label.
  • {end_of_bridge} or {eob} Declares the end of a bridge section.
  • {start_of_part: ..} or {sop} Declares the start of a part with an optional section label.
  • {end_of_part} or {eop} Declares the end of a part.
  • {start_of_tab} or {sot} Declares the start of tablature which OnSong renders in a monospaced font.
  • {end_of_tab} or {eot} Declares the end of a tablature section.
  • {new_page} or {np} This is used to declare a new page.
  • {new_physical_page} or {npp} This is used to declare a new page.

Formatting Tags

The following tags are used to define the default font and size for lyrics and chords in the chord chart.

  • {textsize: ...} Defines the size of the lyrics as a numeric value in points.
  • {textfont: ...} Defines the name of the font to use for lyrics. Must be supported on the platform.
  • {chordsize: ...} Defines the size of the chords as a numeric value in points.
  • {chordfont: ...} Defines the name of the font to use for chords. Must be supported on the platform.

Supported File Extensions

The ChordPro file format is unique in that it is a commonly agreed upon syntax, but not a standard format. This means that various vendors can implement it in different ways and with different file extensions. OnSong supports the following file extensions when importing ChordPro-formatted files:

  • .chopro
  • .cho
  • .chordpro
  • .crd
  • .pro
  • .cpm
OnSong 2023 — Last Updated on April 11, 2022