geekality/transposer

Plain text song parser and chord transposer

Installs: 33

Dependents: 0

Stars: 4

Watchers: 2

Forks: 1

Language: PHP

v1.6 2013-06-20 15:56 UTC

README

For transposing simple songs written as plain text with chords above the lyrics.

Install

If you're using Composer, which you really should, simply require the package geekality/transposer in your composer.json. Otherwise download and include as per usual :)

"require":
{
    "geekality/transposer": "1.*",
},

Example usage

// song.php
$text = <<<SONG
D                      G          D
Be thou my vision, oh Lord of my heart
A                          G              A
Naught be all else to me, save that thou art
G             D/F♯       Bm         G  A
Thou my best thought, by day or by night
Bm          F♯m            G     A    D
Waking or sleeping, thy presence my light

D                        G       D
High King of heaven, my victory won
A                          G              A
May I reach heaven's joys, O bright heaven's sun
G             D/F♯      Bm       G   A
Heart of my own heart, whatever befall
Bm          F♯m        G    A   D
Still be my vision, O ruler of all
SONG;

$song = Transposer::parse($text, 'D');
if(isset($_GET['key']))
    $song->transpose($_GET['key']);

echo $song->get_key_selector('song.php?key=');
echo $song;

For an example with chorus and simple css styling, see sample.php.

License

This work is licensed under the Creative Commons Attribution 3.0 Unported License. To view a copy of this license, visit Creative Commons Attribution 3.0 Unported License.

Creative Commons License