diff options
author | ben <ben@pkgsrc.org> | 2006-04-02 22:18:58 +0000 |
---|---|---|
committer | ben <ben@pkgsrc.org> | 2006-04-02 22:18:58 +0000 |
commit | 99abb555bd0a71660292c7743e52865c3a4a0526 (patch) | |
tree | b2b6b3c7a7990657ec547291d7e16c14f6855f4b | |
parent | acbaa42484454a31e0b9d69cac5cda964067e12e (diff) | |
download | pkgsrc-99abb555bd0a71660292c7743e52865c3a4a0526.tar.gz |
Initial import of jcabc2ps-20060106, a music typesetting program for abc.
Jcabc2ps is a typesetting program for abc. It reads a file containing
abc code and outputs the music to another file in Postscript. This is
John Chambers' clone of Michael Methfessel's abc2ps program.
-rw-r--r-- | print/jcabc2ps/DESCR | 3 | ||||
-rw-r--r-- | print/jcabc2ps/Makefile | 17 | ||||
-rw-r--r-- | print/jcabc2ps/PLIST | 3 | ||||
-rw-r--r-- | print/jcabc2ps/distinfo | 7 | ||||
-rw-r--r-- | print/jcabc2ps/patches/patch-aa | 69 | ||||
-rw-r--r-- | print/jcabc2ps/patches/patch-ab | 430 |
6 files changed, 529 insertions, 0 deletions
diff --git a/print/jcabc2ps/DESCR b/print/jcabc2ps/DESCR new file mode 100644 index 00000000000..c51727e559a --- /dev/null +++ b/print/jcabc2ps/DESCR @@ -0,0 +1,3 @@ +Jcabc2ps is a typesetting program for abc. It reads a file containing +abc code and outputs the music to another file in Postscript. This is +John Chambers' clone of Michael Methfessel's abc2ps program. diff --git a/print/jcabc2ps/Makefile b/print/jcabc2ps/Makefile new file mode 100644 index 00000000000..f1edcfcbd26 --- /dev/null +++ b/print/jcabc2ps/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.1.1.1 2006/04/02 22:18:58 ben Exp $ +# + +DISTNAME= jcabc2ps-src +PKGNAME= jcabc2ps-20060106 +CATEGORIES= print +MASTER_SITES= http://ecf-guest.mit.edu/~jc/music/abc/src/ +WRKSRC= ${WRKDIR}/jcabc2ps + +MAINTAINER= ben@NetBSD.org +HOMEPAGE= http://ecf-guest.mit.edu/~jc/music/abc/src/ +COMMENT= Music typesetting program for abc + +post-install: + ${INSTALL_DATA} ${WRKSRC}/doc/jcabc2ps.d ${PREFIX}/man/cat1/jcabc2ps.1 + +.include "../../mk/bsd.pkg.mk" diff --git a/print/jcabc2ps/PLIST b/print/jcabc2ps/PLIST new file mode 100644 index 00000000000..d93a3542216 --- /dev/null +++ b/print/jcabc2ps/PLIST @@ -0,0 +1,3 @@ +@comment $NetBSD: PLIST,v 1.1.1.1 2006/04/02 22:18:58 ben Exp $ +bin/jcabc2ps +man/cat1/jcabc2ps.1 diff --git a/print/jcabc2ps/distinfo b/print/jcabc2ps/distinfo new file mode 100644 index 00000000000..5acfa2f5591 --- /dev/null +++ b/print/jcabc2ps/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1.1.1 2006/04/02 22:18:58 ben Exp $ + +SHA1 (jcabc2ps-src.tar.gz) = 6dbd9d00453c97ccf04cf707e6c4db88361c3bea +RMD160 (jcabc2ps-src.tar.gz) = e454dc1d787c9b5a833316f5edb5dff463e6daa4 +Size (jcabc2ps-src.tar.gz) = 550842 bytes +SHA1 (patch-aa) = fe4235fbf9ef6e364fda51849f9b1dddf4af6d76 +SHA1 (patch-ab) = 8fd77d205e902eabc0338de6b88169735c812f42 diff --git a/print/jcabc2ps/patches/patch-aa b/print/jcabc2ps/patches/patch-aa new file mode 100644 index 00000000000..eae3940befa --- /dev/null +++ b/print/jcabc2ps/patches/patch-aa @@ -0,0 +1,69 @@ +$NetBSD: patch-aa,v 1.1.1.1 2006/04/02 22:18:58 ben Exp $ + +--- Makefile.orig 2006-01-06 15:20:13.000000000 -0800 ++++ Makefile +@@ -26,9 +26,9 @@ SHELL=/bin/sh + # You might want to change this to control how to install things: + # How we link or copy the program to where it belongs: + +-LC=./Lc ++#LC=./Lc + #LC=/bin/ln -f +-#LC=/bin/cp -f ++LC=/bin/cp -f + #LC=/bin/mv -f + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +@@ -70,8 +70,8 @@ PS= \ + Words1 w_01 w_AllMyLoving1 w_AllMyLoving2 w_NoFrontiers w_OrdinaryMan + + # compilation options +-CC = gcc +-CFLAGS = -Wall -I/usr/demo/SOUND/include ++#CC = gcc ++#CFLAGS = -Wall -I/usr/demo/SOUND/include + + # using Sun audio library + #CC = cc +@@ -79,15 +79,16 @@ CFLAGS = -Wall -I/usr/demo/SOUND/includ + #LDFLAGS = -L/usr/demo/SOUND/lib -laudio -lm + + # using supplied audio functions +-CC = cc +-CFLAGS = -g +-LDFLAGS = -lm -g ++#CC = cc ++#CFLAGS = -g ++#LDFLAGS = -lm -g ++LDFLAGS+=-lm + + # installation directories +-SYSDIR = $(HOME) +-BINDIR1 = $(HOME)/bin +-BINDIR2 = $(HOME)/p/cgi/abc +-MANDIR = $(SYSDIR)/man/man1 ++SYSDIR = ${PREFIX} ++BINDIR1 = ${PREFIX}/bin ++#BINDIR2 = $(HOME)/p/cgi/abc ++#MANDIR = $(SYSDIR)/man/man1 + + OBJECTS=jcabc2ps.o \ + buffer.o format.o macro.o memBlock.o minStr.o misc.o music.o parse.o \ +@@ -189,7 +190,7 @@ util.o: \ + # takes a file name and a directory in which to install it. The manual + # installation might take some tweaking for your system. + +-install: $(BINDIR1)/$(A2P1) $(BINDIR2)/$(A2P1) ++install: $(BINDIR1)/$(A2P1) + + man: $(MANDIR)/$(A2P1).1.gz + +@@ -199,7 +200,7 @@ $(MANDIR)/$(A2P1).1: $(A2P1).1 + # $(LC) $(A2P1).1.gz $(MANDIR) + + $(BINDIR1)/$(A2P1): $(A2P1); $(LC) $(A2P1) $(BINDIR1) +-$(BINDIR2)/$(A2P1): $(A2P1); $(LC) $(A2P1) $(BINDIR2) ++#$(BINDIR2)/$(A2P1): $(A2P1); $(LC) $(A2P1) $(BINDIR2) + + neat: + -rm -f core *- *.out log/* diff --git a/print/jcabc2ps/patches/patch-ab b/print/jcabc2ps/patches/patch-ab new file mode 100644 index 00000000000..6e4de6df843 --- /dev/null +++ b/print/jcabc2ps/patches/patch-ab @@ -0,0 +1,430 @@ +$NetBSD: patch-ab,v 1.1.1.1 2006/04/02 22:18:58 ben Exp $ + +--- doc/jcabc2ps.d.orig 2003-08-15 09:11:15.000000000 -0700 ++++ doc/jcabc2ps.d +@@ -7,63 +7,78 @@ SYNOPSIS + REQUIRES + + DESCRIPTION +- This is a clone of Michael Methfessel's abc2ps program, with a number of +- additional capabilities. One significant change for users is that this +- version now writes to standard output by default, so you can write: ++ This is a clone of Michael Methfessel's abc2ps program, with a ++ number of additional capabilities. One significant change for ++ users is that this version now writes to standard output by ++ default, so you can write: + jcabc2ps JoesJig.abc | lpr +- And, since the .abc suffix is assumed, this can be further shortened to ++ And, since the .abc suffix is assumed, this can be further ++ shortened to + jcabc2ps JoesJig | lpr +- This also greatly simplifies further processing by other PostScript tools, +- since jcabc2ps may be used in pipelines like a normal unix "filter" +- program. +- +- The command line may contain one or more file names, which are scanned for +- ABC tunes. Text outside of tunes (except for %% lines described below) will +- be ignored. The tunes will be converted to conventional muisic "staff" +- notation in the form of PostScript, which may be sent to most printers or ++ This also greatly simplifies further processing by other ++ PostScript tools, since jcabc2ps may be used in pipelines like ++ a normal unix "filter" program. ++ ++ The command line may contain one or more file names, which are ++ scanned for ABC tunes. Text outside of tunes (except for %% ++ lines described below) will be ignored. The tunes will be ++ converted to conventional muisic "staff" notation in the form ++ of PostScript, which may be sent to most printers or + incorporated into documents by many word processing programs. + + OPTIONS +- There are a lot of command-line options. They start with a '-' or '+' flag. +- The original program was somewhat inconsistent in how it used these; the +- scheme has been simplified so that '-' now means "no" or "off" or "disable" ++ There are a lot of command-line options. They start with a ++ '-' or '+' flag. The original program was somewhat ++ inconsistent in how it used these; the scheme has been ++ simplified so that '-' now means "no" or "off" or "disable" + and '+' means "yes" or "on" or "enable". + + Some of the options are not fully understood yet ... + + -b +- Don't break at line ends. Lines that end with '\' (backslash) are +- considered to be continued. (default) ++ Don't break at line ends. Lines that end with '\' ++ (backslash) are considered to be continued. (default) ++ + +b +- Break at line ends. All line ends are treated as end of staff, whether +- or not they end with '\'. ++ Break at line ends. All line ends are treated as end of ++ staff, whether or not they end with '\'. + + -c +- Don't continue lines. Line ends are honored as end of staff, unless +- they end with '\' (backslash). (default) ++ Don't continue lines. Line ends are honored as end of ++ staff, unless they end with '\' (backslash). (default) ++ + +c +- Continue lines. Line ends are ignored, as if they all ended with '\'. +- The program generates staff breaks automatically. ++ Continue lines. Line ends are ignored, as if they all ++ ended with '\'. The program generates staff breaks ++ automatically. + + +i +- Interactive, described below. [Interactive mode hasn't been tested +- much since some of the major jcabc2ps extensions were added.] ++ Interactive, described below. [Interactive mode hasn't ++ been tested much since some of the major jcabc2ps ++ extensions were added.] + + -o +- No postscript output. This is useful for debugging purposes. ++ No postscript output. This is useful for debugging ++ purposes. ++ + +o <file> +- Output file. Write the PostScript output to the named file. The file +- name may immediately follow the 'o' or may be a separate argument. +- Note that this option is rarely needed, now that jcabc2ps writes to +- standard output by default. ++ Output file. Write the PostScript output to the named ++ file. The file name may immediately follow the 'o' or ++ may be a separate argument. Note that this option is ++ rarely needed, now that jcabc2ps writes to standard ++ output by default. + + -n +- Don't historical notes and other optional stuff. (default) ++ Don't historical notes and other optional stuff. ++ (default) ++ + +n +- Print historical notes and other stuff at the bottom of each tune. ++ Print historical notes and other stuff at the bottom of ++ each tune. + + -x + Don't print index numbers. ++ + +x + Print index numbers before the titles. + +@@ -71,25 +86,28 @@ OPTIONS + One tune per page. + + -A +- Don't select all tunes; honor other selectors. (default) ++ Don't select all tunes; honor other selectors. (default) ++ + +A +- selects all tunes, overriding other selectors ++ selects all tunes, overriding other selectors + + +a x +- Set the maximal amount of permitted shrinking to x, where x lies +- between 0 and 1. ++ Set the maximal amount of permitted shrinking to x, ++ where x lies between 0 and 1. + + +B n + Try to typeset with n bars on each line. +- [What is a "bar" isn't clearly understood. More work should be done +- in this area.] ++ [What is a "bar" isn't clearly understood. More work ++ should be done in this area.] + + +C + ___ + ++ + +D <arg> + ___ + ++ + +d <arg> + ___ + +@@ -97,48 +115,57 @@ OPTIONS + ___ + + +e selector1 selector2 ... +- Select specific tunes from the files, where each selector is a set of +- xref numbers or a pattern. With -o, this will list only the selected +- tunes found in the files. With +o, output is generated only for the ++ Select specific tunes from the files, where each ++ selector is a set of xref numbers or a pattern. With -o, ++ this will list only the selected tunes found in the ++ files. With +o, output is generated only for the + selected tunes. + + To list selected tunes: + abc2ps book1 -e 1-3 5,20- 'House*' Hall + +- This selects xref numbers 1 to 3, 5, and 20 and above, as well as those +- tunes whose title either starts with "House" or contains the string +- "Hall". A pattern without wildcards such as 'Hall' is treated as '*Hall*' +- +- Optionally, the search can be done on other fields using these flags in +- place of -e: +- flag -R seaches the rhythm field +- flag -C searches the composer field +- flag -S searches the source field. +- flag -T seaches the title field (default) ++ This selects xref numbers 1 to 3, 5, and 20 and above, ++ as well as those tunes whose title either starts with ++ "House" or contains the string "Hall". A pattern without ++ wildcards such as 'Hall' is treated as '*Hall*' ++ ++ Optionally, the search can be done on other fields using ++ these flags in place of -e: ++ flag -R seaches the rhythm field ++ flag -C searches the composer field ++ flag -S searches the source field. ++ flag -T seaches the title field (default) + +- Thus ++ Thus + abc2ps book1 -C "John" +- selects all tunes whose composer string contains "John". +- If the -C flag is used, the composer field is also displayed when the +- file are listed. The same goes for the flags -R and -S. ++ selects all tunes whose composer string contains ++ "John". ++ ++ If the -C flag is used, the composer field is also ++ displayed when the file are listed. The same goes for ++ the flags -R and -S. + + +f + ___ + + -F +- Don't read format files. (Default is to read only "fonts.fmt".) ++ Don't read format files. (Default is to read only ++ "fonts.fmt".) ++ + +F file + Read file.fmt and extract formatting instructions. + + +g shrink|space|stretch|fill +- sets the "glue mode". The default mode is fill, which fills the staff. +- This flag is useful when changing the layout parameters, to see what +- effect the changes have for each mode separately. ++ sets the "glue mode". The default mode is fill, which ++ fills the staff. This flag is useful when changing the ++ layout parameters, to see what effect the changes have ++ for each mode separately. + + +H +- Dump all the formatting options, in the form used in .fmt files. This +- should be placed after any F options, to show the final result. This +- output may be written to a .fmt file for further use. ++ Dump all the formatting options, in the form used in ++ .fmt files. This should be placed after any F options, ++ to show the final result. This output may be written to ++ a .fmt file for further use. + + +h + Help. Print a summary of the command line. +@@ -162,9 +189,10 @@ OPTIONS + ___ + + +p +- generates pretty output, with more whitespace between tunes, larger +- fonts for titles, and larger music symbols. By default, the layout +- squeezes the tunes to reduce the number of pages. ++ generates pretty output, with more whitespace between ++ tunes, larger fonts for titles, and larger music ++ symbols. By default, the layout squeezes the tunes to ++ reduce the number of pages. + + +Q <arg> + ___ +@@ -179,9 +207,10 @@ OPTIONS + ___ + + +s xxx +- scales the music output by factor xxx. At present, the minimal +- significant difference in scale factors is 0.05. A scale factor +- greater than 1.00 will give very large staffs and notes. ++ scales the music output by factor xxx. At present, the ++ minimal significant difference in scale factors is 0.05. ++ A scale factor greater than 1.00 will give very large ++ staffs and notes. + + +T + ___ +@@ -193,9 +222,10 @@ OPTIONS + shows the version number. + + +v n +- sets the verbosity for output to the screen to n. -v0 gives very +- little, -v1,v2,v3.. show successively more information. Verbosity >= +- 10 is for debugging. The verbose output is written to stderr. ++ sets the verbosity for output to the screen to n. -v0 ++ gives very little, -v1,v2,v3.. show successively more ++ information. Verbosity >= 10 is for debugging. The ++ verbose output is written to stderr. + + +w www + sets the width of the staff to www points. +@@ -208,9 +238,10 @@ OPTIONS + + INTERACTIVE + +- If the command list contains the flag +i, abc2ps runs in interactive mode. +- This makes it possible to build up an output file piece by piece. The +- disadvantage is that you have to start over if you make a mistake. ++ If the command list contains the flag +i, abc2ps runs in ++ interactive mode. This makes it possible to build up an ++ output file piece by piece. The disadvantage is that you have ++ to start over if you make a mistake. + + Interactive mode is started with + +@@ -220,67 +251,73 @@ INTERACTIVE + + select tunes: + +- The response should be a row of arguments, which are treated in exactly the +- same way as in the non-interactive mode. The only difference is that the +- input is not first run through the shell, so that wildcards are not +- expanded and quotes are not removed. Consequently Jig* should be used +- instead of 'Jig*' etc. when specifying strings for selection, and filenames +- must be written out in full. ++ The response should be a row of arguments, which are treated ++ in exactly the same way as in the non-interactive mode. The ++ only difference is that the input is not first run through ++ the shell, so that wildcards are not expanded and quotes are ++ not removed. Consequently Jig* should be used instead of ++ 'Jig*' etc. when specifying strings for selection, and ++ filenames must be written out in full. + +- To exit from interactive mode, enter 'q', 'quit' or an empty input. ++ To exit from interactive mode, enter 'q', 'quit' or an empty ++ input. + + For example, a "session" could look like this: + +- abc2ps +i start abc2ps interactively +- book1 list tunes in book1.abc +- book1 -e 1-10 list tunes with xrefs 1-10 in book1 +- book1 -e 1-10 -o write these to Out.ps +- book2 list tunes in book2.abc +- book2 -e House -o write tunes with 'House' in the title +- quit exit abc2ps ++ abc2ps +i start abc2ps interactively ++ book1 list tunes in book1.abc ++ book1 -e 1-10 list tunes with xrefs 1-10 in book1 ++ book1 -e 1-10 -o write these to Out.ps ++ book2 list tunes in book2.abc ++ book2 -e House -o write tunes with 'House' in the ++ title ++ quit exit abc2ps + + + To make things easier, there are three special characters: +- ? shows the last input used; +- ! at the start of line is substituted by the last files used; +- * at the start of line is substituted by the last input. +- +- This means that the same effect as above can be obtained in shorter form +- like this: +- +- abc2ps +i start abc2ps interactively +- book1 list tunes +- ! 1-10 equivalent to 'book1 1-10' +- * -o equivalent to 'book1 1-10 -o' +- book2 list tunes in book2.abc +- ! -e House -o equivalent to 'book2 -e House -o' +- q exit abc2ps +- +- Note that the -e flag is not needed in the line '* 1-10' because it is +- clear that '1-10' is a selector (see above). +- +- +- Another point is that if additional flags are used when starting +- interactively, these function as defaults for the interactive mode. For +- example, by starting the program with ++ ? shows the last input used; ++ ! at the start of line is substituted by the last files ++ used; ++ * at the start of line is substituted by the last input. ++ ++ This means that the same effect as above can be obtained in ++ shorter form like this: ++ ++ abc2ps +i start abc2ps interactively ++ book1 list tunes ++ ! 1-10 equivalent to 'book1 1-10' ++ * -o equivalent to 'book1 1-10 -o' ++ book2 list tunes in book2.abc ++ ! -e House -o equivalent to 'book2 -e House -o' ++ q exit abc2ps ++ ++ Note that the -e flag is not needed in the line '* 1-10' ++ because it is clear that '1-10' is a selector (see above). ++ ++ ++ Another point is that if additional flags are used when ++ starting interactively, these function as defaults for the ++ interactive mode. For example, by starting the program with + + abc2ps +io + +- all selected tunes are immediately written to the output file. The program +- usage is then very similar to that of abc2mtex. Of course, it is not +- possible to list the file contents (to help choose among the titles) when +- using the program in this way. +- +- In interactive mode, flags +o -E can be used as before to redirect the +- output. When switching to another output file, the previous file is closed. +- Switching back to the same file later will overwrite the file. ++ all selected tunes are immediately written to the output ++ file. The program usage is then very similar to that of ++ abc2mtex. Of course, it is not possible to list the file ++ contents (to help choose among the titles) when using the ++ program in this way. ++ ++ In interactive mode, flags +o -E can be used as before to ++ redirect the output. When switching to another output file, ++ the previous file is closed. Switching back to the same file ++ later will overwrite the file. + + + PARAMETERS + + RETURNS +- The exit status is an indication of how the program failed. Zero means that +- it thinks it succeeded. ++ The exit status is an indication of how the program failed. ++ Zero means that it thinks it succeeded. + + [We should document the non-zero failure codes.] + +@@ -289,13 +326,15 @@ BUGS + SEE ALSO + + LICENSE +- This program is distributed under the terms of the GNU General Public +- License. You may use the program as you wish, including selling it as part +- of a larger package of (music) software. But you must also make the source +- code available to anyone who asks for it, or tell them where to get it. As +- of this writing, one such place is ++ This program is distributed under the terms of the GNU ++ General Public License. You may use the program as you wish, ++ including selling it as part of a larger package of (music) ++ software. But you must also make the source code available to ++ anyone who asks for it, or tell them where to get it. As of ++ this writing, one such place is + http://trillian.mit.edu/~jc/music/abc/src/ +- Any of the files with "jcabc2ps" in the name is a version of this program. ++ Any of the files with "jcabc2ps" in the name is a version of ++ this program. + + AUTHORS + Michael Methfessel |