summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/man/man1/autosp.1
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-03-04 23:59:46 +0000
committerKarl Berry <karl@freefriends.org>2018-03-04 23:59:46 +0000
commit3e0b4848b04542e4b5d3510fbdff3b826354714a (patch)
treeef3e847e3a0552970fbb9810661230dba435467e /Master/texmf-dist/doc/man/man1/autosp.1
parent351aef16f282a75c4e791fad94103a93bc3fea7a (diff)
autosp for tl18
git-svn-id: svn://tug.org/texlive/trunk@46820 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/man/man1/autosp.1')
-rw-r--r--Master/texmf-dist/doc/man/man1/autosp.1158
1 files changed, 108 insertions, 50 deletions
diff --git a/Master/texmf-dist/doc/man/man1/autosp.1 b/Master/texmf-dist/doc/man/man1/autosp.1
index dd66df84458..3d51ccd5947 100644
--- a/Master/texmf-dist/doc/man/man1/autosp.1
+++ b/Master/texmf-dist/doc/man/man1/autosp.1
@@ -1,5 +1,5 @@
.\" This manpage is licensed under the GNU Public License
-.TH AUTOSP 1 2017-04-06 "" ""
+.TH AUTOSP 1 2018-02-14 "" ""
.SH NAME
autosp \- preprocessor to generate note-spacing commands for MusiXTeX scores
@@ -11,7 +11,7 @@ autosp \- preprocessor to generate note-spacing commands for MusiXTeX scores
.B autosp
.RB [ \-d\ |\ \-\-dotted ]
.RB [ \-l\ |\ \-\-log ]
-.IR infile [\ \fR.aspc\fP\ |\ \fR.tex\fP\ ]
+.IR infile [\fR.aspc\fP]
.RI [ outfile [ \fR.tex\fP ]]
@@ -39,32 +39,30 @@ generates
.fi
Typically,
an
-\\anotes command is expanded into several conventional
+\\anotes command generates several conventional
note-spacing commands.
-If the
-.I infile
-argument
-has .tex extension,
-.B autosp
-will process conventional note-spacing commands
-(but not \\vnotes or \\znotes)
-similarly.
-This is intended to
-correct spacing in an extracted single-instrument part,
-but may not produce satisfactory output when applied to a conventional multi-instrument MusiXTeX score.
-
If the
.I infile
argument
-has neither .aspc nor .tex extension, input is taken from
+does not have an .aspc extension, input is taken from
.IR infile .aspc
-if that file exists, or from
-.IR infile .tex
-otherwise.
+if that file exists.
+
+If the
+.I outfile
+argument does not have a .tex extension, output is sent to
+.IR outfile .tex.
+If no
+.I outfile
+argument is provided, output will go to
+.IR infile .tex
+(or to
+.IR infile .ltx
+if a \\documentclass declaration is encountered).
For
-\\anotes commands (and, for a .tex file, all conventional note-spacing commands),
+\\anotes commands,
line breaks and spaces may precede note segments, allowing more flexible source formatting;
the line breaks and spaces will be elided from the output.
@@ -87,20 +85,9 @@ is acceptable and generates
.fi
-If
-no
-.IR outfile
-argument is provided,
-output goes to
-.IR infile .tex
-if the
-.I infile
-name
-has extension .aspc, or to standard output otherwise.
-
If the
.B \-l
-( \fB\-\-log\fP ) option is used, a log
+( \fB\-\-log\fP ) option is used, a very detailed log
.IR infile .alog
is generated.
@@ -122,23 +109,54 @@ as indicated.
If there is a single staff, consecutive whole-bar rest bars
are merged into a multi-bar rest. Bar-centered rests can be
-coded using the standard \\def\\atnextbar notation but also
-the non-standard command \\Cpause in a note segment generates a
+coded using the standard \\def\\atnextbar notation but
+the non-standard command \\Cpause in a note segment also generates a
bar-centered rest.
-Spacing commands \\sk and \\hsk in the source are discarded,
-but not \\qsk, \\hqsk or \\qqsk;
-moreover
+Spacing commands \\sk and \\bsk in the source are discarded,
+but not "small" skips \\hsk, \\qsk, \\tqsk, \\hqsk or \\qqsk,
+or the small "backward" skips \\hbsk, \\bqsk, \\btsk, or \\bhsk.
+Moreover,
non-standard commands
-\\Qsk, \\HQsk and \\QQsk generate "global" skips; i.e., the effect of \\qsk, \\hqsk or \\qqsk in
+\\QQsk, \\HQsk \\TQsk and \\Qsk in the source generate "global" skips; i.e., the effect of \\qqsk, \\hqsk, \\tqsk or \\qsk, respectively, in
.I every
-staff.
+staff. These ensure that staffs remain synchronized if additional spacing is needed in any staff(s).
+
+Global skips may also be obtained within collective-coding sequences by using
+up to four successive commas
+to get the effects of \\QQsk, \\HQsk, \\TQsk or \\Qsk, respectively.
+Global skips \\tqsk (or, for double-flats, \\qsk) are
+automatically inserted before accidentals ('^', '_', '=', '<', '>') on collective-coding notes
+(except when the preceding note is "virtual"; i.e., a skip).
+If this automatic additional spacing is
+.I not
+wanted in some context, it may be avoided by
+replacing
+the accidental in the collective-coding sequence
+by
+any of the
+.I explicit
+accidental commands: \\sh, \\fl, \\na, \\smallsh, \\bigsh, etc.
+If the automatic spacing is insufficient, the spacing may be increased by adding sufficient commas or
+using a conventional notes command instead of \\anotes.
+
A note segment can be completely empty, but if a note segment should start
with or contain a "space," the note-value
of that space must be made explicit with a command of the
form \\ha{*}, \\qa{.*}, \\qa{*}, \\ca{*}, etc.
+From version 2017-06-14, the effects of \\TransformNotes calls are implemented by the
+.B autosp
+pre-processor. This
+enables use of
+musixlyr in
+.B autosp
+scores; musixlyr.tex
+is incompatible with the
+musixtnt.tex
+implementation of \\TransformNotes.
+
All other conventional MusiXTeX commands are output exactly as given in the input.
@@ -167,6 +185,7 @@ Collective coding of note sequences (including accidentals and dots) is handled
by expanding the sequence
into a sequence of individual note commands.
+
.SH LIMITATIONS
.B autosp
@@ -181,6 +200,7 @@ of 1.45\\elemskip is used. If this isn't suitable and can't be corrected with a
supports
.I x-tuplets
introduced using \\xtuplet{\fIx\fP}
+or \\xxtuplet{\fIx:y\fP}
and
.I triplets
introduced
@@ -194,11 +214,6 @@ using any of the following commands (regardless of any re-definition of \\txt or
\\downtuplet
.fi
-However,
-MusiXTeX notation does not
-specify the
-.I intended
-duration of an x-tuplet.
.B autosp
assumes that an x-tuplet is to be played in
(\fIx\fP\-1)/\fIx\fP
@@ -206,19 +221,58 @@ of the apparent x-tuplet duration.
So, for example, a triplet in eighths is assumed to be played in the time of one quarter note.
If this assumption
isn't valid, the x-tuplet must
-be coded explicitly using a \\vnotes command; see the first
+be coded explicitly using a suitable \\vnotes command; see the first
measure of barsant2.aspc for an example of a non-standard x-tuplet: a 5-tuple
of 64th notes with an intended duration
of
.I six
64ths.
+
+In some polyrhythmic scores, the \\txt numeral may be displaced, even if the notes
+themselves are correctly spaced. In these cases, it is possible to suppress
+the normal output of \\txt by using the non-standard commands \\Triolet (no arguments)
+or \\Xtuplet{k}\\
+and placing a numeral at the correct location using \\zcn (i.e., \\zcharnote).
+
.B autosp
-cannot deal with simultaneous x-tuplets in multiple staffs unless the x values and
-note durations are identical. Global skips (\\QQsk, \\HQsk and \\Qsk) are
-ineffective if a staff has an x-tuplet; however, "local" skips (\\qqsk, \\hqsk, \\qsk)
-are effective.
+can deal with simultaneous x-tuplets in multiple staffs provided the x values and
+total note durations are identical.
+
+In some baroque scores, particularly by J.S. Bach, a beamed sixteenth note is vertically aligned
+with
+the third note of a triplet of eighth notes in another staff (implying that they should
+be sounded simultaneously); e.g.,
+.nf
-User-defined macros are not processed or expanded.
+ \\ibl0L0\\qb0{.L}\\tqql0L
+
+.fi
+would be played as if notated
+.nf
+
+ \\uptrio{b}10\\ql L\\hroff{\\cl L}
+
+.fi
+The following coding will align the beamed sixteenth note
+with the third note of a triplet in another staff:
+.nf
+
+ \\ibl0L0\\qb0{.L}\\hbsk\\tqql0L
+
+.fi
+and, similarly, for triplets of sixteenth notes:
+.nf
+
+ \\ibbu0J0\\qb0{.J}\\hbsk\\nqqqu0J\\qb0{.J}\\hbsk\\tqqqu0J
+
+.fi
+Generally, user-defined macros are not processed or expanded; however, definitions of the form
+.nf
+
+ \\def\\atnextbar{\\znotes ... \\en}
+
+.fi
+generate definitions that do take account of \\TransformNotes.
All staffs are assumed to have the same meter; see kinder2.aspc for
an example of how to work around this.
@@ -232,9 +286,13 @@ initially and add them into the resulting TeX file.
.SH EXAMPLES
See files quod2.aspc, kinder2.aspc, geminiani.aspc and barsant2.aspc for scores suitable for input to
.BR autosp .
+The program
+.B tex2aspc
+can be used to convert "legacy" MusiXTeX scores to .aspc format.
.SH SEE ALSO
.BR msxlint (1)
+.BR tex2aspc (1)
.PP
musixdoc.pdf