veltzer / openbook

OpenBook is an open source Jazz real book
https://veltzer.github.io/openbook/
GNU General Public License v3.0
275 stars 41 forks source link

syntax error on lilypond compile, "unexpected UNSIGNED" #95

Closed hsitz closed 7 years ago

hsitz commented 7 years ago

I'm trying to compile a single song file with Lilypond. I get the syntax error "unexpected UNSIGNED" for the assignments to youtube variables, e.g.:

idyoutuberemark1="Original from Kind of Blue"
idyoutube1="PoPL7BExSQU"
idyoutuberemark2="Bill Evans in a piano version"
idyoutube2="mW_7gRH7ASE"

The error is caused because my Lilypond (v. 2.16.2) has restrictions on use of numbers in variable names. 2.16.2 is the version available in my Ubuntu repository, so far as I know wouyld require manual installation if I wanted more recent version, and I can't find anything in Openbook docs that says I need more recent version.

Does more recent Lilypond fix this error, or is it in fact due to something else I"m not seeing?

On another note, I've developed a farly simply awk script (180 lines with comments, no outside packages or utilities required, other than Lilypond) that handles the compilation of song files with templates into valid .ly files, requiring just some simple changes to the main template file 'common.ly.mako' and no changes at all to the song files. It seems to be a heck of a lot simpler than the Python system currently being used, and has advantage of being non-confusing and easily installable on Windows, LInux, Mac, if it's not there by default. I'm polishing up a bit and may extend it to do most or all of the file creation stuff that's done in the current Make system.

veltzer commented 7 years ago

I guess you do need 2.18... I'll mention this in the docs

Regarding the awk tool. The reason I use python and mako is that I can do lots of other things with the meta data of the tunes: produce an index, download songs from youtube, find which composers wrote more than one song and many other things I did not even think about. I fail to see how awk(1) will give me all that...:(

So I don't your effort is in vain, I'm even willing to commit the script as an alternative build method, it's just that I wont relinquish the mako/python build system until I have a real replacement for it and awk doesn't cut it.