Skip to content

Rough conversion of SongWright files to ABC notation

Notifications You must be signed in to change notification settings

gg314/py_sw2abc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

py_sw2abc

The SongWright file format is an orphaned format with no apparent standard. The ABC format is well-defined, powerful, and compatible with other libraries and services.

This project is an attempt to improve on previous scripts which translate SongWright files to ABC files. There are other (Perl and gawk) scripts around but they are incomplete & unmaintained. This Python approach has allowed for pretty reasonable results so far but there are improvements to be made.

Usage:

To do. The output will be copied to the clipboard conditional on the --copy flag.

py_sw2abc <file_in> [--copy/no-copy]

Example

SongWright input:

Images are rendered with ABCjs.

N-A-Beggin' I Will Go
C-
A-
T-
S-100
K-C
B-4/4
F-
H-
M-1c-8 S-6 c-8 G-8 G-8 F-8 E-4 D-8 E-8 C-8 D-8 E-8 F-8 G-5 G-8 G-8 c-8 c-8 c-8 c-4 c-8 c-8 d-8 e-8 f-8 d-8 e-4 S-6 S-6
L-      Of all the trades in  Eng-  land the beg- gin' is the best,      For when a beg- gar's tired, he  can sit him down and rest,
H-chorus:
M-5d-8 c-8 S-6 e-4 d-8_c-8 b-4 a-8_b-8 c-8_b-8 a-8_G-8 a-8_G-8 F-8 E-8 F-4 a-4 G-4 b-4 W-2 c-3 R-8 S-6 S-6
L-       And a   beg-     gin'   I        will    go,      will     go,   And  a- beg-    gin'    I       will     go.

py_sw2abc output:

T: A-Beggin' I Will Go
Q: 1/4=100
K: C
M: 4/4
L: 1/16
c2|c2G2G2F2E4D2E2|C2D2E2F2G6G2|G2c2c2c2c4c2c2|d2e2f2d2e4||
w: Of all the trades in Eng- land the beg- gin' is the best, For when a beg- gar's tired, he can sit him down and rest,
d2c2|e4(d2c2)B4(A2B2)|(c2B2)(A2G2)(A2G2)F2E2|F4A4G4B4|c12z2||
w: And a beg- gin'_ I will_ go,_ will_ go,_ And a- beg- gin' I will go.

py_sw2abc output

Compare to previous scripts:

T:A-Beggin' I Will Go
M:4/4
L:1/8
K:C
 c| cG GF E2 DE| CD EF G3 G| Gc cc c2 cc| de fd e2|| dc| e2d-c B2A-B|\
c-BA-GA-G FE| F2 A2 G2 B2| c6 z||

py_sw2abc output

About

Rough conversion of SongWright files to ABC notation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages