>>>>> "Atte" == Atte Andre Jensen <[EMAIL PROTECTED]> writes:

    >> The
    >> combining is pretty easy; I have a script that does it for specific
    >> file names, but it could be generalized fairly easily.

    Atte> I would love to see your script (bash?), can I convince you
    Atte> to send it to me?

Yes.  Looking at it, I see that it isn't completely automatic for any
ABC; it depends on the headers that are general to the score being in
a file called head.abc.  Which I do for the way I write -- I typically
write the header file, put the words in a text file, and then for each
voice insert the header file and the text file and then start filling
in notes.

#!/bin/bash -x
if [ -s score.m4 ]
then
    m4 score.m4 >score.abc
    exit 
fi
cat head.abc 
VOICE=1
if [ -f cantus.abc ]
then
    echo "V:$VOICE name=\"Cantus\""
    cat cantus.abc | grep -v "^[XVHQCONSTP\%]:" 
    VOICE=$[$VOICE + 1]
fi
if [ -f altus.abc ]
then
    echo "V:$VOICE name=\"Altus\""
    cat altus.abc | grep -v "^[XVCOQNPSHT]:" | tr -s '\n'
    VOICE=$[$VOICE + 1]
fi
if [ -f tenor.abc ]
then
    echo "V:$VOICE name=\"Tenor\""
    cat tenor.abc | grep -v "^[XVCONPQSHT]:" | tr -s '\n'
    VOICE=$[$VOICE + 1]
fi
if [ -f quintus.abc ]
then
    echo "V:$VOICE name=\"Quintus\""
    cat quintus.abc | grep -v "^[XVCOQMNPSHT]:" | tr -s '\n'
    VOICE=$[$VOICE + 1]
fi
if [ -f bassus.abc ]
then
    echo "V:$VOICE name=\"Bassus\""
    cat bassus.abc | grep -v "^[XVCOMNPQSHT]:" | tr -s '\n'
fi

Here's an example of the header, txt, and abc files I write that I use
this on:

Attachment: wood.gz
Description: Binary data


Here are a couple of scripts that are wrappers around abcselect that I
find useful:

Attachment: splitabc.sh
Description: Bourne shell script

Attachment: splitvoices.sh
Description: Bourne shell script


-- 
Laura (mailto:[EMAIL PROTECTED] , http://www.laymusic.org/ )
(617) 661-8097  fax: (801) 365-6574 
233 Broadway, Cambridge, MA 02139

Reply via email to