Mercurial > dottes
view makeCello.sh @ 229:1e4443d58177
Modify Change tune handling.
Change all change notes to reference the filename of the tune to change to.
Modify web and document generators to pull the change note out of the abc
and generate an appropiate bit of content. This is now, in both cases,
a hyperlink.
In the process, remove the tune-specific .tex facility. It wasn't being
used.
I could really do with a proper templating system, and using some sort
of templating in the LaTeX generation.
author | Jim Hague <jim.hague@acm.org> |
---|---|
date | Sat, 23 Feb 2013 13:10:58 +0000 |
parents | 3c9d9654d4a1 |
children | 7b98278d6e8b |
line wrap: on
line source
#!/bin/bash # # Copy a booke to cello-friendly form. Bass clef, transposed down 2 octaves. # # It would be easier to do with transpose in dottes.fmt, but I can't get # that to work properly for a 2 octave downward transpose. # # This relies on abcm2ps >= 6.0 but does not check for it. if [ $# != 1 ]; then echo "Usage: makeCello.sh <book dir name>" exit 1 fi dir=`pwd` booke=$dir/$1 outdir=$dir/$1-Cello mkdir -p $outdir # Copy book component items. cp $booke/*.txt $outdir find $booke -name "*.abc" | sort | while read filename do # Move down either one octave or two, depending on the range # of the tune. If there are any notes below middle C, transpose # down one octave. The default is to transpose down two octaves. middle="d" if grep -v "^[A-Z]:" $filename | sed -e 's/"[^"]*"//g' | grep -q "[A-Z],"; then middle="D" fi name=`basename $filename .abc` sed -e "/^ *K:/s/$/ clef=bass middle=$middle/" $filename > $outdir/$name.abc done