Recent Changes - Search:

add Cookbook page







Visitor's book Site map pmwiki-2.2.127

Chord Pro

  • change skiwi
  • update revision history
  • remove this comment
Version 2017-09-03
Summary: Display ChordPro-formatted song sheets in a wiki page
Version: 2017-09-04
Prerequisites: Requires at least PmWiki version: 2.2.59; last tested on PmWiki version: pmwiki-2.2.103 (compatible with PHP 5.5, PHP 7.2)
Status: Stable
Maintainer: skiwi
Licence: GPL3[1]
Discussion: ChordPro-Talk
Categories: Editing, Layout, Markup, PHP55, PHP72
License: GPL3+


Use ChordPro formatted lyrics and tablature in a PmWiki page to embed and display ChordPro-formatted song sheets into a wiki page.


ChordPro is an early text format which was used to quickly generate song list with the chords mixed in with the lyrics. In many ways it is very wiki-like. Its goal is to make a machine-readable songsheet syntax, suitable for pretty-printing, which is also relatively easy on human eyes.

This recipe adds custom markup - ||: text :|| - for embedding ChordPro text within a wiki page. Within the custom markup ChordPro directives consist of keywords encapsulated in braces (curly brackets), viz "{keyword}", and text representing lyrics, within which chords, signified by square brackets, viz "[C#m7]", are embedded.

See ChordPro markup for details.


All formatting is controlled by CSS. By default the chords and lyrics text is monospaced and the same size, however this is not necessary.

The spacing between the chording and the lyrics is controlled by the line-height CSS property. The spacing between each line of the song is controlled by padding above the chords and padding below the lyrics.

Modify chordpro.css to change colours, font-size, font-family, spacing etc. It is quite easy to do so and the CSS file is commented.


Download and unzip the archive Δ.

  • move the chordpro.php file to the /cookbook/ directory
  • move the chordpro.css file to the /pub/css/ directory unless you have customised it previously

Add the following line to config.php




use Markup for PHP 7.2 compatibility
use relative font sizes in CSS
GPL3. Use Markup_e for PHP5 compatibility
Change handling of Title, Subtitle, and Album. Better cope with two directives on one line. Add CSS for page breaks and page directives. Adjust CSS for line-height and song line spacing.
A significant release providing css controlled formatting for wiki pages and printing, with correct handling of blank lines


See also

Related pages

Cookbook /
Chord Pro-Chord Sheets  ChordPro chord sheet documentation and examples
Chord Pro-Format  ChordPro Basics and text format
Chord Pro-Markup  ChordPro markup supported by this recipe
Chord Pro-Pages  A list of pages about the ChordPro recipe
Chord Pro-Sandbox  Test and try out ChordPro
Chord Pro-Talk  Discussion of ChordPro


(:template each:)

Page last modified on 2017 Sep 04 06:17

Edit - History - Recent Changes - WikiHelp - Search - email page as link -> mailto:?Subject=KiwiWiki: Chord Pro&Body=From KiwiWiki: Chord Pro (//kiwiwiki [period] nz/pmwiki/pmwiki [period] php/Cookbook/ChordPro) - Display ChordPro-formatted song sheets in a wiki page