Play along with ChordPro

Configuration Files

When browsing through the wiki entries about ChordPro's file format and the command-line options, you continually find references to the option to use a configuration file for certain things. In fact, this kind of processing is far more powerful than the command-line parameters or the graphical interface. A detailed description of the extensive possibilities of the configuration file can also be found in the wiki [6].

Typical examples of the need for an external control file include printing fingering diagrams for instruments that are not directly supported, outputting alternative fingerings, and displaying chords that ChordPro does not know and that you therefore have to specify explicitly. Listing 4 shows you an example of a wiki fingering image, marginally adapted for our purposes, which defines two variants of the B flat major chord in the low and high registers in the configuration file.

Listing 4

Adapted Wiki Fingering

// The default for "base" is 1.
// Use 0 for an empty string and
// -1 for a damped string.
"chords" : [
    "name"  : "B(low)",
    "base"  : 1,
    "frets" : [ 1, 1, 3, 3, 3, 1 ],
    "fingers" : [ 1, 1, 2, 3, 4, 1 ],
    "name"  : "B(high)",
    "base"  : 6,
    "frets" : [ 1, 3, 3, 2, 1, 1 ],
    "fingers" : [ 1, 3, 4, 2, 1, 1 ],


ChordPro fully lives up to its reputation as the reference software for the ChordPro markup format – no matter whether you prefer the command-line version or the GUI. The program does a really good job of the things it sets out to do and can be a good option provided that the basic functions are all you need for the time being. In general, the terminal version of ChordPro is more powerful and practical than the GUI version. The editor in particular lacks functionally, so you might prefer your favorite editor.

However, the widely used editors based on Gtksourceview (like Gedit) or KatePart (Kate) do not have syntax highlighting for the ChordPro format. At least there is a plugin for Vim [7]. But even without syntax highlighting, it is worth learning the various command-line and configuration options. This is the only way to visualize unknown chords in the printed output.

The Author

Mario Blättermann is responsible for translations and integrating new templates and documentation with the gLabels project. He also works as a translator for the Gnome project and builds packages for Fedora.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Introduction

    This month in Linux Voice.

  • Solfege

    Solfege helps you advance your musical knowledge and lets you practice identifying intervals, scales, and chords.

  • Free Software Projects

    Linux is a wonderful and underrated audio production platform, with great applications for every audio task. MuseScore and LilyPond bring elegance and sophistication to score writing, and Chordii is a wonderfully simple guitar sheet-music maker.

  • LMMS

    Linux has truly started to compete with Windows and MacOS as a platform for professional sound applications. Linux Multimedia Studio (LMMS) is a Linux sound tool that packs a variety of impressive features into a neat bundle.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More