131 lines
5.1 KiB
Groff
131 lines
5.1 KiB
Groff
.\" $NetBSD: bww2tex.1,v 1.3 2013/07/20 21:50:54 wiz Exp $
|
|
.\" -*- nroff -*-
|
|
.Dd January 24, 2002
|
|
.Dt BWW2TEX 1
|
|
.Os
|
|
.Sh NAME
|
|
.Nm bww2tex
|
|
.Nd Bagpipe Music Writer Gold to BagpipeTeX converter
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Ar infile.bww Op Ar outfile
|
|
.Sh DESCRIPTION
|
|
.Nm
|
|
is designed to translate BWW/BMW source as specified in the Bagpipe
|
|
Music Writer Gold help, or the BMWDM Version 5.0/BMWPS Version 2.0
|
|
manual.
|
|
I infer from the archives that earlier BMW versions were more
|
|
tolerant of non-conforming code than this release.
|
|
(Actually I think it is that BMWDM is more tolerant than BMWPS or BMW gold).
|
|
I have not found it convenient to emulate all of these unknown (to me)
|
|
abilities, but have accommodated a few of the more common deviations.
|
|
.Nm
|
|
is less accomodating than bmw2tex.
|
|
I have implemented the old symbols which
|
|
have new names so that both old and new symbols will work.
|
|
This version successfully parses all but a dozen of the tunes in the
|
|
Peter Mohr and Michael Bell collections and the sample tunes in the
|
|
BMW Gold distribution.
|
|
The translated files (at least those free of blatant
|
|
copyright problems) are available on the Ceolas archive.
|
|
The failing input files have fairly gross errors (at least as they
|
|
arrive on my machine), e.g., no tabs whatsoever.
|
|
I have only spot checked that the files produced TeX properly.
|
|
.Pp
|
|
The code is written in flex and bison source.
|
|
These are processed into C *.c and *.h files which can then be compiled
|
|
into the executable.
|
|
The final program can be used as a UNIX filter, that is, it uses standard
|
|
input and output.
|
|
Alternatively, input and output files may be specified on the command line.
|
|
Enter
|
|
.Dq Ic bww2tex help
|
|
to get the details.
|
|
This should be easy to use on UNIX boxes, and in Win32 console mode.
|
|
Windows GUI mode and MAC systems are another story.
|
|
Such programs require additional App wrapper code, a developers
|
|
environment, or a shell program to use on MACs or as a Windows application.
|
|
The MAC application uses the DropUNIX app-wrapper.
|
|
In the current version the drag and drop feature still does not work, but
|
|
you can convert files using the select file menu item.
|
|
The result is awkward in that one has to restart the application for each
|
|
file converted, but at least it can be used.
|
|
.Sh USAGE
|
|
.Nm
|
|
does not add information that is not in the BWW/BMW source.
|
|
For example, it does not generate sloped beams.
|
|
It also does not adjust the spacing.
|
|
Many strathspeys will have overfull hboxes when TeXed.
|
|
See bagdoc.tex for solutions for crowded music.
|
|
There are a small number of items which BWW/BMW does that MusicTeX does not.
|
|
I have made reasonable substitutions.
|
|
The formatting instructions in BWW files are mostly ignored.
|
|
The font size is reduced to two sizes, and the landscape spec is honored.
|
|
.Nm
|
|
can't, of course, handle user defined BMW tokens.
|
|
musicsize16 (small music) is specified and the note spacing is set to a
|
|
minimal value.
|
|
The TeX output may edited to improve the appearance of tunes which do
|
|
attempt to crowd the lines.
|
|
.Pp
|
|
Unrecognized tokens are echoed to the output between bagpipe.tex lines.
|
|
Recognized tokens in an unrecognized order cause the parser to fail and
|
|
drop the current line.
|
|
Sometimes this is the fault of
|
|
.Nm
|
|
and sometimes of the BWW/BMW source.
|
|
The most common cause is a missing tab.
|
|
Other problems I've seen in archived BMW tunes include missing CLEFTs,
|
|
missing spaces, missing line termination, missing beam (l,r) characters,
|
|
capitalization errors, and tokens between a note and its dot.
|
|
.Pp
|
|
Once the input file has been parsed, the next question is will it TeX?
|
|
The most likely cause for a TeX failure is an unknown beamed group macro.
|
|
Often the only solution to this is to add the appropriate definition to
|
|
the TeX file.
|
|
Sometimes the note grouping may be rearranged so that an existing macro
|
|
may be used.
|
|
Another cause is a beamed group of a single note.
|
|
This can result an unknown macro or a misused macro.
|
|
These are usually due to errors in the BWW/BMW source,
|
|
either an inappropriate beam character or tabs in mid-beam.
|
|
.Pp
|
|
A parser trace may be generated by using a debugger to set the global
|
|
variable yydebug to 1 after breaking at yyparse.
|
|
.Pp
|
|
Please test only plausible BWW/BMW source, not arbitrary combinations of
|
|
tokens.
|
|
If you get a parsing error please verify that the BWW/BMW file is legal.
|
|
This is best done by running the source through the current version
|
|
of BMW gold.
|
|
The most common problem is that something happened to the tabs.
|
|
There must be a tab separating every beat, and none in the
|
|
middle of a beamed note group.
|
|
(The "group" may include things like trailing dots, ties, and triplet
|
|
signs, trailing embellishments, and first/second time indicators).
|
|
.Sh SEE ALSO
|
|
.Xr bagpipetex 1 ,
|
|
.Xr musixflx 1 ,
|
|
.Xr musixtex 1
|
|
.Sh AUTHORS
|
|
.Nm
|
|
was written by
|
|
.An Walt Innes Aq Mt walt@slac.stanford.edu
|
|
in 2002.
|
|
Content of the manpage is also by him.
|
|
.Pp
|
|
Manpage created by David Griffith
|
|
.Aq dgriffi@cs.csubak.edu
|
|
using the
|
|
README from
|
|
.Nm
|
|
2.00 for inclusion in the
|
|
.Nx
|
|
pkgsrc tree.
|
|
.Sh CAVEATS
|
|
In UNIX, if the input director
|
|
.Pq Sq \*[Lt]
|
|
is intended, but the output director
|
|
.Pq Sq \*[Gt]
|
|
is typed, the bmw file will be wiped out.
|
|
This can be avoided by using an explicit file argument.
|