From ae750b9d9f9b660a211c98ee92e45a5ec9f42dea Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 28 Feb 2015 22:49:36 +0000 Subject: musixtex (28feb15) git-svn-id: svn://tug.org/texlive/trunk@36401 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/generic/musixtex/musixdoc/accidentals.tex | 73 + .../doc/generic/musixtex/musixdoc/barlines.tex | 308 +++ .../doc/generic/musixtex/musixdoc/barnumbering.tex | 127 ++ .../doc/generic/musixtex/musixdoc/beams.tex | 587 ++++++ .../doc/generic/musixtex/musixdoc/changing.tex | 426 ++++ .../doc/generic/musixtex/musixdoc/embedding.tex | 180 ++ .../doc/generic/musixtex/musixdoc/examples.tex | 124 ++ .../doc/generic/musixtex/musixdoc/extensions.tex | 2150 ++++++++++++++++++++ .../doc/generic/musixtex/musixdoc/extracting.tex | 101 + .../doc/generic/musixtex/musixdoc/fonts.tex | 212 ++ .../doc/generic/musixtex/musixdoc/frontmatter.tex | 135 ++ .../doc/generic/musixtex/musixdoc/index.tex | 10 + .../doc/generic/musixtex/musixdoc/introduction.tex | 823 ++++++++ .../doc/generic/musixtex/musixdoc/layout.tex | 126 ++ .../doc/generic/musixtex/musixdoc/lyrics.tex | 407 ++++ .../generic/musixtex/musixdoc/miscellaneous.tex | 596 ++++++ .../doc/generic/musixtex/musixdoc/musixdoc.sty | 141 ++ .../doc/generic/musixtex/musixdoc/musixdoc.tex | 103 + .../doc/generic/musixtex/musixdoc/parameters.tex | 130 ++ .../doc/generic/musixtex/musixdoc/preparing.tex | 245 +++ .../doc/generic/musixtex/musixdoc/repeats.tex | 178 ++ .../doc/generic/musixtex/musixdoc/rests.tex | 114 ++ .../doc/generic/musixtex/musixdoc/settingup.tex | 353 ++++ .../generic/musixtex/musixdoc/slurstiesTypeK.tex | 366 ++++ .../generic/musixtex/musixdoc/slurstiesfont.tex | 566 ++++++ .../doc/generic/musixtex/musixdoc/smaller.tex | 188 ++ .../doc/generic/musixtex/musixdoc/spacing.tex | 101 + .../doc/generic/musixtex/musixdoc/staffsize.tex | 101 + .../doc/generic/musixtex/musixdoc/summary.tex | 302 +++ .../doc/generic/musixtex/musixdoc/texput.log | 25 + .../generic/musixtex/musixdoc/transposition.tex | 221 ++ .../doc/generic/musixtex/musixdoc/writingnotes.tex | 283 +++ 32 files changed, 9802 insertions(+) create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/accidentals.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/barlines.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/barnumbering.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/changing.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/embedding.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/examples.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/extracting.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/fonts.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/index.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/introduction.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/lyrics.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.sty create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/musixdoc.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/parameters.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/preparing.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/repeats.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/rests.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/settingup.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesTypeK.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesfont.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/smaller.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/spacing.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/staffsize.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/summary.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/texput.log create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/transposition.tex create mode 100644 Master/texmf-dist/doc/generic/musixtex/musixdoc/writingnotes.tex (limited to 'Master/texmf-dist/doc/generic/musixtex/musixdoc') diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/accidentals.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/accidentals.tex new file mode 100644 index 00000000000..4d9e575b7d6 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/accidentals.tex @@ -0,0 +1,73 @@ +\chapter{Accidentals} +\vspace*{-3ex} +Accidentals can be introduced in two ways. + The first way, using explicit macros, consists for +example in coding \keyindex{fl}\pitchp~to put a \ital{flat} at the +pitch $p$, presumably right before a note at the same pitch. This is a +non-spacing command and will automatically place the accidental an +appropriate distance to the left of the anticipated note head. +Naturals, sharps, double flats and double sharps are coded \keyindex{na}\pitchp, +\keyindex{sh}\pitchp, \keyindex{dfl}\pitchp~and \keyindex{dsh}\pitchp~respectively. + +The alternate macros \keyindex{lfl}, \keyindex{lna}, \keyindex{lsh}, +\keyindex{ldfl} and \keyindex{ldsh} +place the same accidentals, but shifted one note head width +to the left. These can be used if a note head has been shifted to the left, or +to avoid collision with other accidentals +in a chord. If you want to shift an accidental by some other amount for +more precise positioning, you could use \keyindex{loffset} with the normal +accidental macro as the second parameter. + + The second way of coding accidentals is to modify the parameter of a +note command. Just put the symbol +\verb|^| for a sharp, \verb|_| for a flat, \verb|=|~for a natural, +\verb|>| for a double sharp, or \verb|<| for a double +flat, right before the letter or number representing the pitch. +For example, \verb|\qb{^g}| yields a +$G\sharp$. This may be used effectively in collective coding, e.g. +\verb|\qu{ac^d}|. + + There are two sizes of accidentals. By default they will be large unless there +is not enough space between notes, in which case they will be made small. Either +size can be forced locally by coding \keyindex{bigfl}, \keyindex{bigsh}, etc., or +\keyindex{smallfl}, \keyindex{smallsh}, etc. If you want all accidentals to +be large, then declare \keyindex{bigaccid} near the top of the input file. For +exclusively small ones use \keyindex{smallaccid}; \keyindex{varaccid} will restore +variable sizes. + + For editorial purposes, small accidentals can be placed \ital{above} note +heads. This is done using \keyindex{uppersh}\pitchp, \keyindex{upperna}\pitchp, or +\keyindex{upperfl}\pitchp: + +\begin{music}\nostartrule +\startextract +\NOtes\uppersh l\qa l\en +\NOtes\upperna m\qa m\en +\NOtes\upperfl l\qa l\en +\zendextract +\end{music} + +\vspace*{-2ex} +It also possible to introduce \ital{\ixem{cautionary accidental}s}, +i.e.,~small accidentals enclosed in parentheses. This done by preceding +the name of the accidental keyword with ``\verb|c|'',\label{cautionary} +e.g.,~\keyindex{cfl}\pitchp~for a cautionary flat. + Available cautionary accidentals are \keyindex{csh}, \keyindex{cfl}, +\keyindex{cna}, +\keyindex{cdfl} and \keyindex{cdsh}, which give + +\begin{music}\nostartrule +\startextract +\NOtes\csh g\qa g\en +\NOtes\cfl h\qa h\en +\NOtes\cna i\qa i\en +\NOtes\cdfl j\qa j\en +\NOtes\cdsh k\qa k\en +\zendextract +\end{music} + +\vspace*{-2ex} +\noindent The distance between notes and accidentals is controlled by +\keyindex{accshift}\verb|=|\ital{any \TeX\ dimension}, where +positive values shift to the left and negative to right, with a +default of~\verb|0pt|. diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/barlines.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/barlines.tex new file mode 100644 index 00000000000..0303b7a9a44 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/barlines.tex @@ -0,0 +1,308 @@ +\chapter{Bar Lines} + \section{Single, double, and invisible bar lines}\label{doublebars} +The usual macro to typeset a single bar line is \keyindex{bar}. +There is a possibility of +confusion with a command in \TeX's math mode that has exactly the same name. +However, there will generally be no problem, because inside +\verb|\startpiece...\endpiece|, +\verb|\bar| will take the musical meaning, while outside, it will have the +mathematical one. +If for some reason you need the math \verb|\bar| inside, you can use +\verb|\endcatcodesmusic...\bar...\catcodesmusic|. + +To typeset a double bar line with two thin rules, use \keyindex{doublebar}. You could +also issue \keyindex{setdoublebar} to cause the next \verb|\bar| (or +\keyindex{stoppiece}, \keyindex{alaligne}, or \keyindex{alapage}) to be replaced +by a double bar. + +There is no specific command to print a thin-thick double bar line, but +\keyindex{setdoubleBAR} will cause one in the same cases where +\verb|\setdoublebar| would cause a thin-thin double bar line. + +To make the next bar line invisible, use \keyindex{setemptybar} before +\verb|\bar|. + +You can suppress the beginning vertical rule with saying \keyindex{nostartrule} +and restore the default with \keyindex{startrule} after that. Note that +it is conventional practice to omit beginning rules for single-staff music. + +\section{Simple discontinuous bar lines} +Normally, bars (as well as double bars, final bars and repeat bars) are +drawn continuously from the bottom of the lowest staff of the +lowest instrument to the top of the highest staff of the uppermost +instrument. However, if desired, they can be made discontinuous between +instruments by saying \keyindex{sepbarrules}. An example of this is given in +%avrb +%{\tt ANGESCAO} (or {\tt ANGESCAM}) example; it has also been used in the +%avre +\texttt{avemaria.tex} in Section~\ref{avemaria}\label{avemaria2}. + +Continuous bar lines can be restored with \keyindex{stdbarrules}. In +the extension library are some more types of bar rules, mainly for very old +music, see Section~\ref{otherbars}. + +% DAS. Andre, are there some other kinds of bars in an addon? + +\section{Elementary asynchronous bar lines} + + Situations may arise where the bar lines in different instruments are not +aligned with one another. To set this up, first say \verb|\sepbarrules|. +Then use a combination of the following five commands: + +\begin{itemize}\setlength{\itemsep}{0ex} +\item\keyindex{hidebarrule}\onen~hides the bar rule for instrument $n$, until +this is changed by \verb|\showbarrule|\onen. +\item\keyindex{showbarrule}\onen~stops hiding the bar rule for instrument $n$, +until this is changed by \verb|\hidebarrule|\onen. +\item\keyindex{Hidebarrule}\onen~hides the bar rule for instrument $n$, only +for the next bar. +\item\keyindex{Showbarrule}\onen~shows the bar rule for instrument +$n$ once only, +and then resets it. +% +% DAS ??? +% and then resets it to \verb|hidebarrule|. +% +\item\keyindex{showallbarrules} resets all defined instruments to +\verb|\showbarrule|\onen. This command is automatically inserted with double +bars, final bars and repeats. +\end{itemize} + +Thus, this example + +\begin{music} +\instrumentnumber3 +\setmeter3{{\meterfrac{3}{4}}} +\setmeter2{{\meterfrac{2}{4}}} +\setmeter1{{\meterfrac{3}{8}}} +\nobarnumbers +\sepbarrules + +\startextract +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\hidebarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\showbarrule2\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\showbarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\showbarrule2\hidebarrule3\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\setdoublebar +\bar\hidebarrule3 +\NOtes\pt f\qa f&\qa f&\qa f\en +\Hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\message{Showbarrule3 coming}% +\Hidebarrule2\Showbarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\Hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\setrightrepeat +\endextract +\end{music} + +\noindent was obtained with the following coding: +\begin{quote}\begin{verbatim} +\instrumentnumber3 +\setmeter3{{\meterfrac{3}{4}}} +\setmeter2{{\meterfrac{2}{4}}} +\setmeter1{{\meterfrac{3}{8}}} +\nobarnumbers +\sepbarrules + +\startextract +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\hidebarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\showbarrule2\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\showbarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\showbarrule2\hidebarrule3\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\setdoublebar +\bar\hidebarrule3 +\NOtes\pt f\qa f&\qa f&\qa f\en +\Hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\message{Showbarrule3 coming}% +\Hidebarrule2\Showbarrule3\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\bar +\NOtes\pt f\qa f&\qa f&\qa f\en +\Hidebarrule2\bar +\NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en +\setrightrepeat +\zendextract +\end{verbatim}\end{quote} + +\section{Dotted, dashed, asynchronous and discontinuous bar lines}\label{musixdbr} + +The extension +package \href{http://icking-music-archive.org/software/musixtex/add-ons/musixdbr.tex} +{\underline{\ttxem{musixdbr.tex}}} by Rainer {\sc Dunker} provides commands for +dashed, dotted, and arbitrarily discontinuous bar lines. It supports +individual bar line settings for each instrument, multi-staff instruments, +different sizes of staves, and even different numbers of lines per staff, + +To use the package, you must \verb|\input musixdbr| after \verb|musixtex|, and +execute the macro \keyindex{indivbarrules} which activates individual bar line +processing. Then the following commands are available: + +\begin{itemize}\setlength{\itemsep}{0ex} + +\item \keyindex{sepbarrule}\onen~separates bar lines of instrument $n$ from those of instrument $n-1$ + +\item \keyindex{condashbarrule}\onen~connects bar lines of instrument $n$ to those of instrument $n-1$ + with a dashed line + +\item \keyindex{condotbarrule}\onen~connects bar lines of instrument $n$ to those of instrument $n-1$ + with a dotted line + +\item \keyindex{conbarrule}\onen~connects bar lines of instrument $n$ to those of instrument $n-1$ + +\item \keyindex{hidebarrule}\onen~hides bar lines of instrument $n$ + +\item \keyindex{showdashbarrule}\onen~dashes bar lines of instrument $n$ + +\item \keyindex{showdotbarrule}\onen~dots bar lines of instrument $n$ + +\item \keyindex{showbarrule}\onen~shows bar lines of instrument $n$ + +\item \keyindex{sepmultibarrule}\onen~separates bar lines within multistaff instrument $n$ + +\item \keyindex{condashmultibarrule}\onen~dashes bar lines between staves of multistaff instrument $n$ + +\item \keyindex{condotmultibarrule}\onen~dots bar lines between staves of multistaff instrument $n$ + +\item \keyindex{conmultibarrule}\onen~ shows bar lines between staves of multistaff instrument $n$ + +\item \keyindex{allbarrules}[\ital{any of the above commands, without numerical parameter}] sets bar +line style for all instruments together. + +\end{itemize} + +Dashing and dotting style may be changed by redefining the macros +\verb|\barlinedash| or \verb|\barlinedots| respectively (see original definitions in \verb|musixdbr.tex|). + +Here is an example of the use of these macros: + +\begin{music} +\input musixdbr + +\instrumentnumber4 \setstaffs23 \setstaffs32 \setlines14\setsize2\tinyvalue +\indivbarrules +\parindent0pt\startextract +%\startpiece +%\scale{2} + % normal barlines + \bar + % separate instrument 2 from 1 + \sepbarrule2 + \notes\en\bar + % barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showbarrule + \NOTes\en\bar + % barlines between staves + \allbarrules\conbarrule + \allbarrules\conmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % dashed barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showdashbarrule + \NOTes\en\bar + % dashed barlines between staves + \allbarrules\condashbarrule + \allbarrules\condashmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % dotted barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showdotbarrule + \NOTes\en\bar + % dotted barlines between staves + \allbarrules\condotbarrule + \allbarrules\condotmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % a wild mixture of all + \showdotbarrule1\hidebarrule2\showdashbarrule3\showbarrule4% + \condashbarrule2\conbarrule3\condotbarrule4% + \condashmultibarrule2\sepmultibarrule3% + \NOTes\en\bar + % conventional ending + \allbarrules\showbarrule + \allbarrules\conbarrule + \allbarrules\conmultibarrule + \NOTes\en\setdoubleBAR\endextract +\end{music} + +This is the code: + +\begin{quote}\begin{verbatim} +\input musixdbr +\instrumentnumber4\setstaffs23\setstaffs32\setlines14\setsize2\tinyvalue +\indivbarrules\parindent0pt\startextract + % normal barlines + \bar + % separate instrument 2 from 1 + \sepbarrule2 + \notes\en\bar + % barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showbarrule + \NOTes\en\bar + % barlines between staves + \allbarrules\conbarrule + \allbarrules\conmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % dashed barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showdashbarrule + \NOTes\en\bar + % dashed barlines between staves + \allbarrules\condashbarrule + \allbarrules\condashmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % dotted barlines on staves + \allbarrules\sepbarrule + \allbarrules\sepmultibarrule + \allbarrules\showdotbarrule + \NOTes\en\bar + % dotted barlines between staves + \allbarrules\condotbarrule + \allbarrules\condotmultibarrule + \allbarrules\hidebarrule + \NOTes\en\bar + % a wild mixture of all + \showdotbarrule1\hidebarrule2\showdashbarrule3\showbarrule4% + \condashbarrule2\conbarrule3\condotbarrule4% + \condashmultibarrule2\sepmultibarrule3% + \NOTes\en\bar + % conventional ending + \allbarrules\showbarrule + \allbarrules\conbarrule + \allbarrules\conmultibarrule + \NOTes\en\setdoubleBAR\zendextract +\end{verbatim}\end{quote} + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/barnumbering.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/barnumbering.tex new file mode 100644 index 00000000000..9ad9d5c79cc --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/barnumbering.tex @@ -0,0 +1,127 @@ +\chapter{Bar Numbering} +The current bar number is stored in a count register call \keyindex{barno}. +When \verb|\startpiece| is encountered, \verb|\barno| is set equal to +another count register called \verb|\startbarno|, whose default value is one. +Therefore, if you want the first bar to have a number $n$ different from~$1$, you +may either say \verb|\startbarno=|$n$ before \verb|\startpiece|, or say +\verb|\barno=|$n$ afterwards, but before the first bar line. You may also alter the bar +number at any time, either by explicitly resetting \verb|\barno|, or by +incrementing it with a command like \verb|\advance\barno-1|. + +\musixtex\ supports two distinct modes for printing bar numbers. In \ital{periodic} +bar numbering, the bar number is +placed above the top staff with a user-selectable frequency. In +\ital{system} bar numbering, the +number will appear at the beginning of each system. + +\section{Periodic bar numbering} +In a normal piece, periodic bar number printing is turned on by default, with a frequency +of one. In an extract, the default is to not print bar numbers. +To turn off bar numbering say \keyindex{nobarnumbers}. To reinstate periodic +bar numbering, or to initiate it in an extract, say \keyindex{barnumbers}. +To change to a +different frequency $n$, say \verb|\def|\keyindex{freqbarno}\verb|{|$n$\verb|}|. + +The appearance and positioning of the bar number is controlled by the +token \keyindex{writethebarno}, which by default is defined as\\ +\verb|\def\writethebarno{\fontbarno\the\barno\kernm\qn@width}| +where the font is defined as \verb|\def\fontbarno{\it}|. You can change +either of these as desired, for example + + \medskip +\begin{music}\barnumbers +\parindent0pt\startpiece +\Notes\Dqbu gh\Dqbl jh\en +\notes\Dqbbu fg\Dqbbl hk\en\bar +\Notes\Tqbu ghi\Tqbl mmj\en +\def\fontbarno{\bf}% +\notes\Tqbbu fgj\Tqbbl njh\en\bar +\Notes\Qqbu ghjh\Qqbl jifh\en\bar +\notes\Qqbbu fgge\Qqbbl jhgi\en\endpiece +\end{music} +\noindent which was coded as +\begin{quote}\begin{verbatim}\barnumbers +\Notes\Dqbu gh\Dqbl jh\en +\notes\Dqbbu fg\Dqbbl hk\en\bar +\Notes\Tqbu ghi\Tqbl mmj\en +\def\fontbarno{\bf}% +\notes\Tqbbu fgj\Tqbbl njh\en\bar +\Notes\Qqbu ghjh\Qqbl jifh\en\bar +\notes\Qqbbu fgge\Qqbbl jhgi\en +\end{verbatim}\end{quote} + +\section{System bar numbering} +To have a bar number printed just above the beginning of each system, use +\keyindex{systemnumbers}. The distance above the staff is controlled +by \verb|\raisebarno|, which by default is \verb|4\internote| (to fit +above a treble clef). This can be redefined with the command +\begin{quote} +\verb|\def|\keyindex{raisebarno}\verb|{|\ital{any \TeX~dimension}\verb|}| +\end{quote} +Similarly, the horizontal position is defined by \keyindex{shiftbarno} +which by default is \verb|0pt|. + +The number normally is enclosed in a +box. If you don't like that, you may redefine the macro \verb|\writebarno| +which by default is defined as +\begin{quote} +\verb|\def|\keyindex{writebarno}\verb|{\boxit{\eightbf\the\barno\barnoadd}}| +\end{quote} +This uses the utility \musixtex\ macro \keyindex{boxit} which will enclose +any text string in a box. + +Here are some possible alternate formats for system bar numbers: + +\medskip +\begin{music}\nostartrule +\def\fontbarno{\it}% +\let\extractline\hbox +\startbarno=36 +\hbox to \hsize{% +\hss + \raise20pt\hbox{(a) }% + \systemnumbers\startextract + \Notes\wh g\en + \zendextract +\hss + \def\writebarno{\tenrm\the\barno\barnoadd}% + \def\raisebarno{2\internote}% + \def\shiftbarno{2.5\Interligne}% + \raise20pt\hbox{(b) }% + \systemnumbers\startextract + \Notes\wh g\en + \zendextract +\hss + \def\writebarno{\llap{\tenbf\the\barno\barnoadd}}% + \def\raisebarno{2\internote}% + \def\shiftbarno{1.3\Interligne}% + \raise20pt\hbox{(c) }% + \systemnumbers\startextract + \Notes\wh g\en + \zendextract +\hss} +\end{music} +\noindent These were coded as +\begin{itemize}\setlength{\itemsep}{0ex} + \item[(a)] (default) + \item[(b)] + \begin{verbatim} +\def\writebarno{\tenrm\the\barno\barnoadd}% +\def\raisebarno{2\internote}% +\def\shiftbarno{2.5\Interligne}% + \end{verbatim} + \item[(c)] + \begin{verbatim} +\def\writebarno{\llap{\tenbf\the\barno\barnoadd}}% +\def\raisebarno{2\internote}% +\def\shiftbarno{1.3\Interligne}% + \end{verbatim} +\end{itemize} + +If the previous line does not stop with a bar rule, then the next +printed system bar number will immediately be followed by the contents +of the token \keyindex{writezbarno}, whose +default setting is the lower case character `\verb|a|'. You might want to +change this to `\verb|+|', in which case you should say +\verb|\def\writezbarno{+}|. + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex new file mode 100644 index 00000000000..348955fb88a --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/beams.tex @@ -0,0 +1,587 @@ +\chapter{Beams} +\section{Starting a beam} + +Each beam must be declared with a macro issued before the first spacing +note under the beam is coded. Two distinct kinds of macros are provided +for this. The first kind initiates a ``fixed-slope'' beam, with an arbitrary +slope and starting height chosen by the user, while the second kind, a +``semi-automatic'' beam, +\ital{computes}~the slope and, in addition, adjusts the starting height in some +cases. + +\def\nps{{\tt\char123}$n${\tt\char125}\pitchp{\tt\char123}$s${\tt\char125}} + +The basic form of the macros for starting fixed-slope beams is exemplified +by the one for a single upper beam, \keyindex{ibu}\nps. Here +$n$ is the reference number of the beam, $p$ the starting ``pitch'', and +$s$ the slope. + +The reference number is assigned by the user. +It is needed because more than one beam may be open at +a time, and it tells \musixtex\ to which beam subsequent beamed notes and +other beam specification commands are assigned. +By default, the reference number must be in the range [$0,5$], +but the range for 8th to 128th beams will be expanded to [$0,8$] or [$0,11$] +if \verb|musixadd| or \verb|musixmad| respectively has been \verb|\input|. + +Alternatively, you can specify the number of $8$th to $64$th beams +directly\footnote{$8$th to $64$th beams are so basic that the maximum +number of these beams is related to the maximum number of instruments +by this command. +Using $m>12$ may require e-\TeX.} +with \keyindex{setmaxinstruments}\verb|{|$m$\verb|}| +within the range $7|, + \verb|<|, \verb&|&, \verb|&|, \verb|!|, \verb|*|, \verb|.|, and \verb|:|\ .\\ +The symbols are given their special meanings by executing the macro +\keyindex{catcodesmusic}, and are restored to their plain \TeX\ meanings with +\keyindex{endcatcodesmusic}. When setting either a self-contained score or +a musical extract, you normally need not worry +about this at all, because \verb|\startpiece| or \verb|\startextract| executes +\verb|\catcodesmusic| and \verb|\endpiece| or \verb|\endextract| executes +\verb|\endcatcodesmusic|. But there are some special situations where you +might need to use these catcode-modifying macros explicitly. One is if you +were to define a personalized macro outside +\verb|\startpiece ... \endpiece|, but which incorporated any of the +symbols with their \musixtex\ meanings. Another would be if you wished to have +access to facilities enabled by alternate style files such as +{\tt\ixem{french.sty}} which change \keyindex{catcode}s themselves. In +such cases, provided you have input \verb|musixtex.tex|, you can always +invoke \keyindex{catcodesmusic} to set the \keyindex{catcode}s at their +\musixtex\ values, and \keyindex{endcatcodesmusic} to restore them to their +prior values. diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/examples.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/examples.tex new file mode 100644 index 00000000000..d0aeb1e6cdb --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/examples.tex @@ -0,0 +1,124 @@ +\chapter{\musixtex\ Examples} + +The file \verb|musixdoc.tex|, the source for this manual, contains many useful +examples. In the manual, many examples are accompanied by a display of the code +that produced them, while for a few only an image of the extract is included and you'll +have to look in the \verb|musixdoc| source files to see the coding. + +Other useful examples cannot be embedded in the source, either because they are +meant to be in \TeX, not \LaTeX, or because they are simply too large. For +these the source files also are provided separately. + +When compiling or viewing any of the examples, you should keep in mind that +most DVI previewers and laser printers have +their origin one inch below and one inch to the right of the upper right corner +of the paper, while the musical examples have their upper left +corner just one centimeter to the right and below the top left corner of the page. +Therefore, special parameters may have to be given to the DVI transcription +programs unless special \keyindex{hoffset} and \keyindex{voffset} \TeX\ +commands have been included within the \TeX\ source. + +\section{Small examples} + +\begin{itemize}\setlength{\itemsep}{0ex} + +\item{\tt ossiaexa.tex}~: This is a stand-alone example of the use of ossia, +provided by Olivier Vogel (Section~\ref{ossia} on page \pageref{ossia}). + +\item{\tt 8bitchar.tex}~: Using 8bit characters. + +\end{itemize} + +\section{Full examples} +The small examples above and the longer ones mentioned below are included in +the documentation folder of the \musixtex\ package. +Some of them require +\verb|musixcpt.tex| which makes examples created in +Music\TeX\ compatible with \musixtex. Here we mention a few of +special interest. + +\subsection{Examples mentioned in the manual} + +\begin{itemize}\setlength{\itemsep}{0ex} + \item{\tt avemaria.tex}~: the ``M\'editation'' (alias ``Ave Maria'') by +Charles {\sc Gounod} for organ and violin or voice.\index{Gounod, C.@{\sc Gounod, C.}} +To run this five-page example you'll also need \texttt{avemariax.tex}. +It demonstrates the use of separated bar rules (Section~\ref{avemaria2}) +and the use of staves of different sizes (Section~\ref{avemaria}). +Also, an additional instrument is created for lyrics. This was a common +practice before the \texttt{musixlyr} package was created by Rainer Dunker. + + \item{\tt glorias.tex}~: a local melody for the French version of +\ital{Gloria in excelsis Deo}, a three-page piece demonstrating the use of the hardlyrics +commands (Section~\ref{glorias}). {\tt gloriab.tex} is the same piece, but with organ accompaniment. + +\end{itemize} + +\subsection{Other examples, provided by the authors of \musixtex } + +\begin{itemize}\setlength{\itemsep}{0ex} + + \item{\tt traeumer.tex}~: the famous ``Tr\"aumerei'' by +Robert {\sc Schumann}\index{Schumann, R.@{\sc Schumann, R.}} for piano, in genuine +\musixtex\ but with some +additions to perform ascending bitmapped \itxem{crescendos}. +There are also S-shaped slurs between 2 staves. + + \item{\tt parnasum.tex}~: the first page of ``Doctor gradus ad +Parnassum'' by Claude {\sc Debussy}\index{Debussy, +C.@{\sc Debussy, C.}} for piano. +It contains a rather complex example of a new command \verb+\Special+ +to create staff-jumping doubly beamed notes. +\end{itemize} + +\subsection{Additional documentation} + +\begin{itemize}\setlength{\itemsep}{0ex} + + \item{\tt sottieng}~: Notation mistakes, provided by Jean-Pierre Coulon. + +\end{itemize} + +\section{Compiling \texttt{musixdoc.tex}} + +This manual is an excellent example of a primarily text document with embedded +musical excerpts. For this reason, it is a \LaTeX\ document and must be compiled +with \verb|latex| rather than \verb|etex|. Those wishing to combine text and +musical excerpts should carefully study how it is done here. + +Before compiling or recompiling \verb|musixdoc.tex|, you should remove all the auxiliary +files {\tt musixdoc.[mx1\|\allowbreak mx2\|\allowbreak aux\|\allowbreak toc\|\allowbreak ind\|\allowbreak idx\|\allowbreak ilg\|\allowbreak out]} +if they are present. Then the following command sequence will produce \verb|musixdoc.ps|: +\begin{quote}\begin{verbatim} +latex musixdoc +musixflx musixdoc +latex musixdoc +makeindex musixdoc +latex musixdoc +latex musixdoc +dvips -e0 musixdoc +\end{verbatim}\end{quote} +The initial three steps \verb|latex|\allowbreak$\to$\allowbreak\verb|musixflx|\allowbreak$\to$\allowbreak\verb|latex| build up the basic appearance of the document including musical examples. +The \verb|makeindex| step produces the database for the index. +After that, \verb|latex| must be run at least twice to complete cross referencing. +Finally, \verb|dvips| converts the \verb|.dvi| file into \verb|.ps|. +To produce \verb|musixdoc.pdf|, use \verb|ps2pdf| or the Distiller component of Adobe Acrobat, or open \verb|musixdoc.ps| in \texttt{GSview}, go to +{\tt File\|Convert}, select \verb|pdfwrite| at 600 dpi resolution, and click +\verb|OK|. +Or if you have the \verb|musixtex| script, just run +\begin{quote} +\verb|musixtex -l -x musixdoc| +\end{quote} +where the \verb|-l| option is to use \verb|latex| as the processing engine +and \verb|-x| is to create a new index database. + +%If you use an older version of \LaTeX\ which doesn't automatically +%invoke $\varepsilon$\hbox{-}\nobreak\TeX, you will encounter the +%error ``{\tt !~No room for new \string\count}''. +%This is because \verb|musixdoc.tex| invokes \verb|musixtex.tex|, which together with \LaTeX\ +%requires more storage registers than available in \TeX. +%You may be able get around this by using the command +%\verb|elatex| instead of \verb|latex|; +%however, it is strongly recommended to upgrade your \TeX\ system to a more recent +%version in which \verb|latex| automatically invokes $\varepsilon$\hbox{-}\nobreak\TeX. + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex new file mode 100644 index 00000000000..9c64ef2c4c2 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extensions.tex @@ -0,0 +1,2150 @@ +\chapter{Extension Library} +All of the following files are invoked by saying \keyindex{input} \ital{filename}\ . +Most of them are fully compatible with \musixtex\ in that they do not redefine +any existing macros but rather provide additional functionality. In future +versions of \musixtex\ we may very well incorporate many of them directly into +\verb|musixtex.tex|, but for now we leave them separate. + + \section{musixadd}\ixtt{musixadd.tex} +Increases the number of instruments, slurs and beams from six to nine. + + \section{musixadf} +\input musixadf +This file and the associated fonts (by Hiroaki \textsc{Morimoto}) +define some additional and alternative musical accents, as follows. +\begin{description} +\item[small swells, larger sforzatos:] +\ \\\begin{music} +\nostartrule +\startextract +\NOTes + \ccharnote{-8}{\Bslash ulsw}\ulsw l\ql l% + \ccharnote{13}{\Bslash llsw}\llsw f\qu f% +\en\bar +\NOtes + \ccharnote{-8}{\Bslash uSfz}\uSfz l\ql l% + \ccharnote{13}{\Bslash lSfz}\lSfz f\qu f\qsk% +\en +\endextract +\end{music} +\item[breaths:] +\ \\ +\begin{music} +\nostartrule +\startextract +\NOTes + \zcharnote{-8}{\Bslash cuBreath}\cuBreath \qu f% + \zcharnote{13}{\Bslash clBreath}\clBreath \qu f% +\en\bar +\NOtes + \ccharnote{-8}{\Bslash zuBreath}\zuBreath \qu f% + \ccharnote{13}{\Bslash zlBreath}\zlBreath \qu f% +\en +\endextract +\end{music} +\item[coda with serifs, upright segno:] +\ \\ +\begin{music} +\nostartrule +\startextract +\NOTes + \sk + \ccharnote{-4}{\Bslash scoda}\scoda n\sk\sk% + \ccharnote{-4}{\Bslash upsegno}\upsegno n\sk% +\en +\endextract +\end{music} +\end{description} +The following commands will replace the default specified accents by the new ones +defined in \texttt{musixadf.tex}: + \verb|\replacesforzato|, + \verb|\replacecoda|, + \verb|\replacesegno|. + + \section{musixbm} +This file does nothing; it is retained only for compatibility with +\musixtex{} T.110 or earlier. +Since version T.111, \verb|musixtex.tex| itself contains all the functions +of the older \texttt{musixbm}, namely +commands for 128th notes, either with flags or with beams: +\keyindex{ibbbbbu}, +\keyindex{ibbbbbl}, +\keyindex{nbbbbbu}, +\keyindex{nbbbbbl}, +\keyindex{tbbbbbu}, +\keyindex{tbbbbbl}, +\keyindex{Ibbbbbu}, +\keyindex{Ibbbbbl}, +\keyindex{cccccu}, +\keyindex{cccccl}, +\keyindex{ccccca}, +\keyindex{zcccccu} and +\keyindex{zcccccl}. + + + \section{musixbbm}\label{musixbbm} + Provides $256$th notes, but only for use within beams, via the commands +\keyindex{ibbbbbbu}, +\keyindex{ibbbbbbl}, +\keyindex{nbbbbbbu}, +\keyindex{nbbbbbbl}, +\keyindex{tbbbbbbu}, +\keyindex{tbbbbbbl}, +\keyindex{Ibbbbbbu} and +\keyindex{Ibbbbbbl}. + +By default \texttt{musixbbm} provides six $256$th beams with +reference number $0$ to $5$. +You can specify a larger maximum number +directly with \keyindex{setmaxcclvibeams}\verb|{|$m$\verb|}| within the +range\footnote{This may require e-\TeX.} $7\leq m\leq 100$. + +\section{musixcho}\label{song} + Enables certain macros intended for choral music\footnote{Remember +that we now recommend using \texttt{musixlyr} for any except the +simplest lyrics. The extension \texttt{musixcho} is only for those +diehards who choose to ignore this advice}. Provides the following commands: +\keyindex{biglbrace}, \keyindex{bigrbrace}, \keyindex{braceheight}, +\keyindex{Dtx} and \keyindex{Drtx} for two-line text, \keyindex{Ttx} and +\keyindex{Trtx} for three-line text, \keyindex{Qtx} and \keyindex{Qrtx} for +four-line text. To eliminate zigzagging lyrics lines, all multiple line texts +are automatically vertically justified with the macro \keyindex{ChroirStrut}, +defined as \verb|\vphantom{\^Wgjpqy}|. + +The macros \keyindex{tx}\verb|{|$text$\verb|}|, +\keyindex{rtx}\verb|{|$text$\verb|}| cause song text to be left-justified +on the insertion point rather then centered. + \keyindex{hf}\verb|{|$m$\verb|}| sets a text +continuation rule of length $m$ \verb|\noteskip|. + +Consult the source file {\tt musixdoc.tex} to see the coding of the following +example: + +\begin{music} +\ninerm +\parindent9mm +\braceheight5.4\Interligne\relax +%\rightline{Arr.: H.~W.~Eichholz} +\instrumentnumber2 +\generalsignature{-2} +\generalmeter{\meterfrac22} +\setclef1\bass +\relativeaccid +\setinterinstrument1{11\Interligne} +\songtop2 +\songbottom1 +\setname2{\vbox{\hsize\parindent\centerline{Sop}\centerline{Alt}}} +\setname1{\vbox{\hsize\parindent\centerline{Ten}\centerline{Bass}}} +\sepbarrules\nobarnumbers +\beforeruleskip-2pt +\startpiece +%% bar 1 +\znotes&\rlap{\kernm2em\Qrtx 1.|2.|3.|4.*}\en +\NOTes\sslur ILd1\sslur bNu1\zhl I\hu b% + &\Qtx\ixhf{Oh}|No|No|There'll*\issluru0f\sslur dad1\zhup f\hl d\en +\Notes\zhl L\hu N&\Qtx ~|more|more|~be*\hl{^c}\en +\NOtes&\tsslur0g\qu g\en +%%% bar 2 +\bar +\NOtes\zql I\qu b&\Qrtx\thf freedom,|weepin',|moanin',|singin',*\zqu i\ql d\en +\NOTesp\lpt I\zhl I\hup b&\zhup i\hlp d\en +%%% bar 3 +\bar +\nspace +\NOTes\sslur JMd1\sslur bau1\zhl J\hu b% + &\Qtx\ixhf{oh}|no|no|there'll*\issluru0j\sslur edd1\zhup j\hl{^e}\en +\Notes\zhl M\hu a&\Qtx~|more|more|~be*\hl{=e}\en +\NOtes&\tsslur0k\qu k\en +%%% bar 4 +\bar +\NOtes\zql I\qu b&\Qrtx\thf freedom,|weepin',|moanin',|singin',*\zqu j\ql d\en +\NOTesp\lpt I\zhl I\hup b&\zhup i\hlp d\en +%%% bar 5 +\bar +\NOTesp\sslur IJd1\sslur bau1\lpt I\zhl I\hup b% + &\Qtx\ixhf{oh}|no|no|~there'll*\isslurd0f\issluru1j\zhup k\hlp f\en +\NOtes\zql J\qu a&\Qtx~|more|more|~be*\tsslur1f\zqu f\roff{\tsslur0e\ql e}\en +%%% bar 6 +\bar +\NOtes\zql K\qu b&\Qrtx\thf freedom,|weepin',|moanin',|singin',*\zqu i\ql f\en +\NOtes\zql J\qu b&\zqu i\ql e\en +\NOtes\zql I\qu b&\rlap{\kernm1\Internote\bigrbrace}\rtx~~~~over*\zqu i\ql d\en +\NOtes\zql G\qu b&\zqu k\ql f\en +%%% bar 7 +\bar +\nspace +\NOTes\zhl J\hu b\caesura&\tx ~me,*\zhu j\hl{^e}\caesura\en +\Notes\zcl J\cu b&\rtx ~over*\zcu j\cl e\en +\NOtesp\zqlp J\qup b&\zqup k\lpt e\ql e\en +\endpiece +\end{music} + +\section{musixcpt} + +Empowers \musixtex\ to run files created under +Musi\textbf{c}TeX, the predecessor of \musixtex, such as some of the examples +provided by Daniel {\sc Taupin}. It is not needed for any files created +under \musixtex, and is included mainly for historical completeness. + +\section{musixdat} +Enables the command \keyindex{today}, which sets the current date in one of +several possible languages. The language is selected by an optional + preparatory command \verb|\date...|. +The default is \keyindex{dateUSenglish}, but this can changed, either at the +end of \ttxem{musixdat.tex} for a permanant change, or right before issuing +\verb|\today|. Available choices and sample results are summarized below: +\smallskip +\begin{quote}\begin{tabular}{ll}\hline +\verb|\dateUSenglish|&\dateUSenglish\today\\ +\verb|\dateaustrian|&\dateaustrian\today\\ +\verb|\dateenglish|&\dateenglish\today\\ +\verb|\datefrench|&\datefrench\today\\ +\verb|\dategerman|&\dategerman\today\\\hline +\end{tabular}\end{quote} + +\section{musixdbr} +Enables dashed and dotted bar lines (see Section~\ref{musixdbr}). + +\section{musixdia}\label{diam} +Enables notes with diamond-shaped heads as follows: +\begin{itemize}\setlength{\itemsep}{0ex} + \item Solid note heads (\raise.5ex\hbox to .6em{\musixchar37}) are obtained +using the macros + \keyindex{yqu}, \keyindex{yqup}, +\keyindex{yqupp}, \keyindex{yql}, \keyindex{yqlp}, \keyindex{yqlpp}, +\keyindex{yzq}, \keyindex{yzqp}, \keyindex{yzqpp}, \keyindex{yqb}, +\keyindex{ycu}, \keyindex{yccu}, \keyindex{ycccu}, \keyindex{yccccu}, +\keyindex{ycl}, \keyindex{yccl}, \keyindex{ycccl}, \keyindex{yccccl}, +\keyindex{ycup}, \keyindex{ycupp}, \keyindex{yclp}, \keyindex{yclpp}. +(Think of d{\it y}\kern.5pt amond). A solid diamond with no stem is obtained +with \keyindex{ynq} (spacing) or \keyindex{yznq} (non-spacing). + \item Open note heads (\raise.5ex\hbox to .6em{\musixchar38}) are obtained +using the macros +\keyindex{dqu}, \keyindex{dqup}, +\keyindex{dqupp}, \keyindex{dql}, \keyindex{dqlp}, \keyindex{dqlpp}, +\keyindex{dzq}, \keyindex{dzqp}, \keyindex{dzqpp}, \keyindex{dqb}, +\keyindex{dcu}, \keyindex{dccu}, \keyindex{dcccu}, \keyindex{dccccu}, +\keyindex{dcl}, \keyindex{dccl}, \keyindex{dcccl}, \keyindex{dccccl}, +\keyindex{dcup}, \keyindex{dcupp}, \keyindex{dclp}, \keyindex{dclpp}. +(Think of {\it d}\kern.5pt iamond). +An open diamond with no stem is obtained +with \keyindex{dnq} (spacing) or \keyindex{dznq} (non-spacing). + \end{itemize} + +One use of these note heads is for a string part with \itxem{harmonic notes}. +%(see \ref{othernotes}) +% DAS removed description which was misplaced in the samll=notes section 2.18 4/30/06 +For example, + +\begin{music} +\parindent0pt +\generalsignature{-2} +\generalmeter\allabreve +\startextract +\NOTes\dzq o\zh d\hu h\en +\Notes\ibu0k0\zq g\yqb0k\qb0j\zq e\yqb0i\tbu0\qb0j\en +\bar +\NOTes\dzq g\hu k\en +\NOTes\hpause\en +\bar +\NOTes\dzq o\zh d\hl h\en +\Notes\ibl0e0\zq g\yqb0k\qb0j\zq e\yqb0i\tbl0\qb0j\en +\bar +\NOTes\dzq g\hu k\en +\NOTes\hpause\en +\endextract +\end{music} +\noindent was coded as follows: +\begin{quote}\begin{verbatim} +\generalsignature{-2} +\generalmeter\allabreve +\startextract +\NOTes\dzq o\zh d\hu h\en +\Notes\ibu0k0\zq g\yqb0k\qb0j\zq e\yqb0i\tbu0\qb0j\en +\bar +\NOTes\dzq g\hu k\en +\NOTes\hpause\en +\bar +\NOTes\dzq o\zh d\hl h\en +\Notes\ibl0e0\zq g\yqb0k\qb0j\zq e\yqb0i\tbl0\qb0j\en +\bar +\NOTes\dzq g\hu k\en +\NOTes\hpause\en +\endextract +\end{verbatim}\end{quote} + +Another use is for percussion parts. In fact the file \verb|musixdia.tex| +is automatically loaded if you input {\tt musixper.tex} (see Section~\ref{perc}). + +\section{musixec}\label{ecfonts} + This package will replace the \texttt{OT1}-encoded Computer Modern fonts +by \texttt{T1}-encoded EC versions. +Use as follows: +\begin{quote}\begin{verbatim} +\input musixtex +\input musixec +... +\end{verbatim}\end{quote} + + + \section{musixeng} + This package is provided for music typesetters who are allergic to the default +rest names, which are +taken from French, German or Italian. It does not provide new features, only +new command names: +\medskip + \begin{quote}\begin{tabular}{ll}\hline +\ital{original}&\ital{alternate}\\\hline +\keyindex{PAUSe}&\keyindex{Qwr}\\ +\keyindex{PAuse}&\keyindex{Dwr}\\ +\keyindex{liftpause}&\keyindex{liftwr}\\ +\keyindex{pausep}&\keyindex{wrp}\\ +\keyindex{pause}&\keyindex{wr}\\ +\keyindex{lifthpause}&\keyindex{lifthr}\\ +\keyindex{hpausep}&\keyindex{hrp}\\ +\keyindex{hpause}&\keyindex{hr}\\ +\keyindex{qp}&\keyindex{qr}\\ +\keyindex{ds}&\keyindex{er}\\ +\keyindex{qs}&\keyindex{eer}\\ +\keyindex{hs}&\keyindex{eeer}\\ +\keyindex{qqs}&\keyindex{eeeer}\\\hline +\end{tabular}\end{quote} + +\section{musixext} +Defines the following two specific macros: + +\keyindex{slide}\itbrace{p}\itbrace{x}\itbrace{s}~, which provides a glissando +starting at pitch {\it p} and extending for {\it x} \verb|\internote|s with +slope {\it s} (ranging from $-8$ to $8$). + +\keyindex{raggedstoppiece}~, which inhibits right-justification of the last +line of a score. + + \section{musixf{}l{}l} + \input musixfll + Enables modification of \ixem{ledger lines}. Ledger lines normally exceed the +width of a note head by $25$ percent in each direction. If the space between +notes is insufficient, the ledger lines of +consecutive notes may meet, creating visual ambiguities. Therefore, +\musixtex{} shortens the +ledger lines if notes are set so close together that the ledger lines may +meet. But because \musixtex{} does not know whether consecutive notes need +ledger lines, this automatic shortening may be superfluous. The extension +file \ttxem{musixfll.tex} allows this feature to be switched off and on. +Upon inputting \verb|musixfll.tex|, the automatic shortening of ledger lines +is switched off. From then on, it may be switched on again using +\keyindex{autoledgerlines} and switched off again using +\keyindex{longledgerlines}. Both macros have global effect. + + The following example shows that narrowly set scales look better with +\keyindex{autoledgerlines} (the default behavior), whereas single notes +requiring ledger lines look better with \keyindex{longledgerlines}. + +\medskip +\begin{music} +\nostartrule +\startextract +\notes\multnoteskip{0.7}\Uptext{autoledgerlines}\autoledgerlines + \ibbbu0b0\qb0{cba`gfg'a}\tbu0\qb0b% + \ibbbl0{''b}0\qb0{abcdedc}\tbl0\qb0b% + \ibbbu0{``b}0\qb0{dad}\tbu0\qb0a% + \ibbbl0{''b}0\qb0{`g'c`g}\tbl0\qb0{'c}\en +\endextract +\medskip +\startextract +\notes\multnoteskip{0.7}\Uptext{longledgerlines}\longledgerlines + \ibbbu0b0\qb0{cba`gfg'a}\tbu0\qb0b% + \ibbbl0{''b}0\qb0{abcdedc}\tbl0\qb0b% + \ibbbu0{``b}0\qb0{dad}\tbu0\qb0a% + \ibbbl0{''b}0\qb0{`g'c`g}\tbl0\qb0{'c}\en +\endextract +\autoledgerlines +\end{music} + + \section{musixgre}\label{gregnotes}\index{gregorian chant} + +% \section{Gregorian chant: staffs and clefs} +Gregorian chant is often coded using four line staffs +(see +%sections \ref{gregorian} and +Section~\ref{stafflinenumber}) and using special notes called +\itxem{neumes} (which are described later in this section). It also requires +special clefs. One way to substitute them for the modern ones is for example +with commands like + +\keyindex{setaltoclefsymbol}\verb|3\gregorianCclef| + +\noindent or + +\keyindex{setbassclefsymbol}\verb|3\gregorianFclef| , + +\noindent which will cause instrument number~$3$ to display the selected gregorian +clef. The standard clefs can be restored for every instrument with +\keyindex{resetclefsymbols}. Note that when using this method you must +specify whether to substitute for the bass or alto clef +symbol (there is no treble clef in gregorian +chant). The reason is that \musixtex\ selects and +raises the F and C clefs differently, according to the arguments of the +\keyindex{setclef} command. Therefore, if one had substituted any F clef +symbol while saying \verb|\setclef1{1000}|, then an F clef would duly appear +on the staff, but it would be set at the position of an alto clef, thus +seriously misleading the musician. + +Another method of clef substitution employs \keyindex{setclefsymbol} (see +Section~ \ref{treblelowoct}), which substitutes the clef given by +the second argument \ital{for all clef symbols} of the instrument given by the first, +regardless of the actual musical meaning of the new clef symbol. This method is +generally appropriate only if you want to change the clef symbol(s) of +an instrument for the whole of the score. + + As an example, the same gregorian scale has been written with a gregorian C +clef on all four lines of the staff: + + \begin{music}\nostartrule + \parindent 19mm + \instrumentnumber{4} + \setname1{1st line} \setname2{2nd line} + \setname3{3rd line} \setname4{4th line} + \setlines1{4}\setlines2{4}\setlines3{4}\setlines4{4} + \sepbarrules + \generalmeter{\empty} + \setclef1{1000} \setclef2{2000} \setclef3{3000} \setclef4{4000} + \setaltoclefsymbol1\gregorianCclef + \setaltoclefsymbol2\gregorianCclef + \setaltoclefsymbol3\gregorianCclef + \setaltoclefsymbol4\gregorianCclef +\startextract +\Notes\squ{abcdefghi}&\squ{abcdefghi}&\squ{abcdefghi}&\squ{abcdefghi}&\en +\zendextract +\end{music} + + The coding was: + \begin{verbatim} + \instrumentnumber{4} + \setname1{1st line} \setname2{2nd line} + \setname3{3rd line} \setname4{4th line} + \setlines1{4}\setlines2{4}\setlines3{4}\setlines4{4} + \sepbarrules + \generalmeter{\empty} + \setclef1{1000} \setclef2{2000} \setclef3{3000} \setclef4{4000} + \setaltoclefsymbol1\gregorianCclef + \setaltoclefsymbol2\gregorianCclef + \setaltoclefsymbol3\gregorianCclef + \setaltoclefsymbol4\gregorianCclef +\startextract +\Notes\squ{abcdefghi}&\squ{abcdefghi}&\squ{abcdefghi}&\squ{abcdefghi}&\en +\zendextract + \end{verbatim} + +All of the special gregorian symbols available in \musixtex\ are described +in the following subsections. + +\subsection{Clefs} + +\begin{itemize}\setlength{\itemsep}{0ex} + \item Gregorian C clef: \raise 2.5pt\hbox to 1cm{\gregorianCclef\hfil}~= + \keyindex{gregorianCclef}, normally activated for instrument $n$ with the +command + \keyindex{setaltoclefsymbol}\itbrace{n}\keyindex{gregorianCclef} +\item Gregorian F clef: \raise 2.5pt\hbox to 1cm{\gregorianFclef\hfil}~= +\keyindex{gregorianFclef}, normally activated with the command +\keyindex{setbassclefsymbol}\itbrace{n}\keyindex{gregorianFclef} + \end{itemize} + + \subsection{Elementary symbols} + + + \begin{itemize}\setlength{\itemsep}{0ex} + + \item Diamond shaped \itxem{punctum} (This has a different shape compared to the +percussion diamond): \raise 2.5pt\hbox{\xgregchar1}~ = +\keyindex{diapunc}\pitchp\ . + \item Square \itxem{punctum}: \raise 2.5pt\hbox{\xgregchar5}~ = +\keyindex{squ}\pitchp\ or \keyindex{punctum}\pitchp\ . + \item Left stemmed \itxem{virga} (not in the 1905 gregorian standard): \raise +2.5pt\hbox{\xgregchar6}~ = \keyindex{lsqu}\pitchp\ . + \item Right stemmed \itxem{virga}: \raise 2.5pt\hbox{\xgregchar7}~ = +\keyindex{rsqu}\pitchp\ or \keyindex{virga}\pitchp\ . + \item \ital{Apostropha}\index{apostropha}: \raise 2.5pt\hbox{\xgregchar3}~ = +\keyindex{apostropha}\pitchp\ . + \item \ital{Oriscus}\index{oriscus}: \raise 2.5pt\hbox{\xgregchar10}~ = +\keyindex{oriscus}\pitchp\ . + + \item \ital{Quilisma}\index{quilisma}: \raise 2.5pt\hbox{\xgregchar125}~ = +\keyindex{quilisma}\pitchp\ . + \item \ital{Punctum auctum} (up)\index{punctum auctum}: \raise +2.5pt\hbox{\xgregchar9}~ = +\keyindex{punctumauctup}\pitchp\ . + \item \ital{Punctum auctum} (down)\index{punctum auctum}: \raise +2.5pt\hbox{\xgregchar8}~ = +\keyindex{punctumauctdown}\pitchp\ . + \item Diamond shaped \ital{punctum auctum} (down)\index{punctum auctum}: +\raise 2.5pt\hbox{\xgregchar2}~ = \keyindex{diapunctumauctdown}\pitchp\ . + \item \ital{Punctum deminutum}\index{punctum deminutum}: \raise +2.5pt\hbox{\xgregchar4}~ = \keyindex{punctumdeminutum}\pitchp\ . + \item \ital{Apostropha aucta}\index{apostropha aucta}: \raise +2.5pt\hbox{\xgregchar11}~ = \keyindex{apostropha aucta}\pitchp\ . + +\end{itemize} + All non-\ital{liquescens} symbols have non-spacing variants, namely +\keyindex{zdiapunc}, \keyindex{zsqu}, \keyindex{zlsqu}, \keyindex{zrsqu}, +\keyindex{zapostropha} and \keyindex{zoriscus}. + +\subsection{Plain complex neumes} +Other \itxem{neumes} can be obtained by combining two or more of these +symbols. Since \itxem{neumes} have a special note head width, an additional +shifting macro is provided, namely \keyindex{groff}. It is similar to +\verb|\roff|, but the offset is smaller. For use with comples neumes, another +shifting macro is provided, namely \keyindex{dgroff}, which causes an +offset twice the offset of \verb|\groff|. + + Since most of these symbols depend on relative pitches of their components, +we cannot provide all possible compact combinations as single symbols. The ones +that are available in \verb|musixgre| are described below. In the following, +$p_1$, $p_2$, $p_3$, and $p_4$ represent pitches specified as usual. Please refer to +the source file \verb|musixtex.tex| if you wish to see the coding of those +examples for which it is not quoted here. + +\def\twop{\itbrace{p_1}\itbrace{p_2}} +\def\threep{\twop\itbrace{p_3}} +\def\fourp{\threep\itbrace{p_4}} + +\begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{bivirga}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \bivirga ab\en + \notes \bivirga cc\en + \zendextract + \end{music} + + This example was coded as: + \begin{quote}\begin{verbatim} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \bivirga ab\en + \notes \bivirga cc\en + \zendextract + \end{verbatim}\end{quote} + + \item[\keyindex{trivirga}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \trivirga abc\en + \Notes \trivirga cca\en + \zendextract + \end{music} + + \item[\keyindex{bistropha}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \bistropha ab\en + \notes \bistropha cc\en + \zendextract + \end{music} + + \item[\keyindex{tristropha}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \tristropha abc\en + \Notes \tristropha cca\en + \zendextract + \end{music} + + \item[\keyindex{clivis}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \clivis ba\en + \notes \clivis ca\en + \zendextract + \end{music} + + \item[\keyindex{lclivis}\twop], for example: + + \begin{music}\nostartrule + \setsize1{\Largevalue} + \elemskip 10pt + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \lclivis ba\en + \notes \lclivis ca\en + \zendextract + \end{music} + + \item[\keyindex{podatus}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \podatus ab\en + \notes \podatus ac\en + \notes \podatus cf\en + \zendextract + \end{music} + + \item[\keyindex{podatusinitiodebilis}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \podatusinitiodebilis ab\en + \notes \podatusinitiodebilis ac\en + \notes \podatusinitiodebilis cf\en + \zendextract + \end{music} + + \item[\keyindex{lpodatus}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \lpodatus ab\en + \notes \lpodatus ce\en + \zendextract + \end{music} + + \item[\keyindex{pesquassus}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \pesquassus ab\en + \notes \pesquassus ae\en + \zendextract + \end{music} + + \item[\keyindex{quilismapes}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \quilismapes ab\en + \notes \quilismapes ae\en + \zendextract + \end{music} + + \item[\keyindex{torculus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \torculus aba\en + \notes \torculus cfd\en + \notes \torculus afc\en + \zendextract + \end{music} + + \item[\keyindex{torculusinitiodebilis}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \torculusinitiodebilis aba\en + \notes \torculusinitiodebilis cfd\en + \notes \torculusinitiodebilis afc\en + \zendextract + \end{music} + + \item[\keyindex{Porrectus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \Porrectus bab\en + \notes \Porrectus bac\en + \notes \Porrectus bNd\en + \notes \Porrectus bMe\en + \notes \Porrectus bLe\en + \zendextract + \end{music} +\noindent coded: + \begin{quote}\begin{verbatim} + \notes \Porrectus bab\en + \notes \Porrectus bac\en + \notes \Porrectus bNd\en + \notes \Porrectus bMe\en + \notes \Porrectus bLe\en + \end{verbatim}\end{quote} + + \verb|\Porrectus| exists in four different shapes, depending on the +difference between first and second argument. The constraint is that + $$ p_1-4 \leq p_2 \leq p_1-1 $$ otherwise a diagnostic occurs. Note also that +\keyindex{bporrectus} provides the first curved part of the \verb|porrectus| +command, if you should need it. It has two arguments, the starting pitch and the lower +pitch. + + \item[\keyindex{Porrectusflexus}\fourp], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \Porrectusflexus bacN\en + \notes \Porrectusflexus bNdb\en + \notes \Porrectusflexus bMeb\en + \notes \Porrectusflexus bLea\en + \zendextract + \end{music} +\noindent coded: + \begin{quote}\begin{verbatim} + \notes \Porrectusflexus bacN\en + \notes \Porrectusflexus bNdb\en + \notes \Porrectusflexus bMeb\en + \notes \Porrectusflexus bLea\en + \end{verbatim}\end{quote} + + + \item[\keyindex{climacus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \climacus cbN\en + \Notes \climacus cba\en + \Notes \climacus dbN\en + \zendextract + \end{music} + + \item[\keyindex{climacusresupinus}\fourp], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \climacusresupinus cbNa\en + \Notes \climacusresupinus cbab\en + \Notes \climacusresupinus dbNb\en + \zendextract + \end{music} + + \item[\keyindex{lclimacus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} +\instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \lclimacus cbN\en + \notes \lclimacus cfd\en + \notes \lclimacus afc\en + \zendextract + \end{music} + + \item[\keyindex{scandicus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \scandicus abe\en + \notes \scandicus ceg\en + \zendextract + \end{music} + + \item[\keyindex{salicus}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \salicus abe\en + \Notes \salicus ceg\en + \zendextract + \end{music} + + \item[\keyindex{salicusflexus}\fourp], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \salicusflexus abec\en + \Notes \salicusflexus cegd\en + \zendextract + \end{music} + + \item[\keyindex{trigonus}\threep], +%DAS ???????????? +%for example\footnote{The second example is in principle irrelevant, +%but it shows the possibilities, in case of.}: +for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \trigonus aaN\en + \Notes \trigonus cef\en + \zendextract + \end{music} + +\end{description} + +\subsection{Liquescens complex neumes}\index{liquescens neumes} +\begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{clivisauctup}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \clivisauctup ba\en + \notes \clivisauctup ca\en + \zendextract + \end{music} + \item[\keyindex{clivisauctdown}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \clivisauctdown ba\en + \notes \clivisauctdown ca\en + \zendextract + \end{music} + \item[\keyindex{podatusauctup}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \podatusauctup ab\en + \notes \podatusauctup ac\en + \notes \podatusauctup cf\en + \zendextract + \end{music} + \item[\keyindex{podatusauctdown}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \podatusauctdown ab\en + \notes \podatusauctdown ac\en + \notes \podatusauctdown cf\en + \zendextract + \end{music} + + \item[\keyindex{pesquassusauctdown}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \pesquassusauctdown ab\en + \notes \pesquassusauctdown ae\en + \zendextract + \end{music} + + \item[\keyindex{quilismapesauctdown}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \quilismapesauctdown ab\en + \notes \quilismapesauctdown ae\en + \zendextract + \end{music} + + \item[\keyindex{torculusauctdown}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \torculusauctdown aba\en + \notes \torculusauctdown cfd\en + \notes \torculusauctdown afc\en + \zendextract + \end{music} + + \item[\keyindex{Porrectusauctdown}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \Porrectusauctdown bac\en + \notes \Porrectusauctdown bNd\en + \notes \Porrectusauctdown bMe\en + \notes \Porrectusauctdown bLe\en + \zendextract + \end{music} + + \item[\keyindex{climacusauctdown}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \climacusauctdown cbN\en + \Notes \climacusauctdown caM\en + \Notes \climacusauctdown aNM\en + \zendextract + \end{music} + + \item[\keyindex{scandicusauctdown}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \scandicusauctdown abe\en + \notes \scandicusauctdown ceg\en + \zendextract + \end{music} + + \item[\keyindex{salicusauctdown}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \salicusauctdown abe\en + \Notes \salicusauctdown ceg\en + \zendextract + \end{music} + + \item[\keyindex{clivisdeminut}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \setsize1{\Largevalue} + \instrumentnumber 1 + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \clivisdeminut ba\en + \notes \clivisdeminut ca\en + \zendextract + \end{music} + + \item[\keyindex{podatusdeminut}\twop], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \podatusdeminut ab\en + \notes \podatusdeminut ac\en + \notes \podatusdeminut cf\en + \zendextract + \end{music} + + \item[\keyindex{torculusdeminut}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \torculusdeminut aba\en + \notes \torculusdeminut cfd\en + \notes \torculusdeminut afc\en + \zendextract + \end{music} + + \item[\keyindex{torculusdebilis}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \torculusdebilis aba\en + \notes \torculusdebilis cfd\en + \notes \torculusdebilis afc\en + \zendextract + \end{music} + + \item[\keyindex{Porrectusdeminut}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \Porrectusdeminut bac\en + \notes \Porrectusdeminut bNd\en + \notes \Porrectusdeminut bMe\en + \notes \Porrectusdeminut bLe\en + \zendextract + \end{music} + + \item[\keyindex{climacusdeminut}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \Notes \climacusdeminut cbN\en + \Notes \climacusdeminut caM\en + \Notes \climacusdeminut aML\en + \zendextract + \end{music} + + \item[\keyindex{scandicusdeminut}\threep], for example: + + \begin{music}\nostartrule + \elemskip 10pt + \instrumentnumber 1 + \setsize1{\Largevalue} + \setstaffs 1 1 + \setlines 1 4 + \setclef 1{3000} + \setaltoclefsymbol 1 \gregorianCclef + \startextract + \notes \scandicusdeminut abe\en + \notes \scandicusdeminut ceg\en + \zendextract + \end{music} +\end{description} + +\section{musixgui}\ixtt{musixgui.tex} Provides macros for +typesetting modern style \itxem{guitar chords}. For example: + +\begin{music} +\hsize130mm +\tenrm +\parindent0pt +\generalmeter{\meterfrac34} +\generalsignature1 +\startbarno0 +\def\txh{-6.5} +\def\tx#1*{\zchar\txh{\lrlap{\kern3\Internote#1}}} +\def\rtx#1*{\zchar\txh{\kern-3\Internote#1}} +\stafftopmarg10\Interligne +\raiseguitar{20} +\nostartrule +\startpiece +\addspace{.5\afterruleskip}% +\NOtes\tx We*\qa d\en +\bar +\NOtes\guitar G{}o-----\gbarre3\gdot25\gdot35\gdot44\tx wish*\qa g\en +\Notes\tx you*\ca g\en +\Notes\tx a*\ca h\en +\Notes\zchar\txh{merry}\ca g\en +\Notes\ca f\en +\bar +\NOtes\guitar C5o-----\gbarre4\gdot26\gdot36\gdot45\rtx christmas,*\qa e\en +\NOtes\qa e\en +\NOtes\guitar {e/H}5o-----\gbarre3\gdot35\gdot45\gdot54\tx we*\qa e\en +\bar +\NOtes\guitar {A$\!^7$}5o-----\gbarre1\gdot23\gdot42\tx wish*\qa h\en +\Notes\tx you*\ca h\en +\Notes\tx a*\ca i\en +\Notes\zchar\txh{merry}\ca h\en +\Notes\ca g\en +\bar +\NOtes\guitar D{}xxo---\gdot42\gdot53\gdot62\rtx christmas,*\qa f\en +\NOtes\qa d\en +\zbar +\NOtes\guitar{D/c}{}xo----\gdot23\gdot42\gdot53\gdot62\tx we*\qa d\en +\bar +\NOtes\guitar{B$^7$}{}xo----\gdot22\gdot31\gdot42\gdot62\tx wish*\qa i\en +\Notes\tx you*\ca i\en +\Notes\tx a*\ca j\en +\Notes\tx ~mer-*\ca i\en +\Notes\tx ry*\ca h\en +\bar +\NOtes\guitar e{}xxo---\gdot32\tx ~christ-*\qa g\en +\NOtes\tx mas*\qa e\en +\Notes\guitar {G/d}{}xxo---\gdot63\tx and*\ca d\en +\Notes\tx a*\ca d\en +\bar +\NOtes\guitar{C$^6$}{}xo----\gdot23\gdot32\gdot42\gdot51\tx ~~hap~-*\qa e\en +\NOtes\tx py*\qa h\en +\NOtes\guitar{D$^7$}{}xo---x\gdot25\gdot34\gdot45\gdot45\gdot53\tx new*\qa f\en +\bar +\NOTes\guitar G{}o-----\gbarre3\gdot25\gdot35\gdot44\tx ~year.*\ha g\en +\setdoublebar\endpiece +\end{music} + +\medskip +The macro \keyindex{guitar} sets the grid, chord name, barre type, +and on-off indicators for the strings. For example, the first +chord in above example was coded as + +\verb|\guitar G{}o-----\gbarre3\gdot25\gdot35\gdot44| + +\noindent where the first argument is the text to be placed above the grid, the +second is empty (relative barre), and the next six characters indicate if the string +is played or not with either \verb|x|, \verb|o| or \verb|-|. The dots are set with +\keyindex{gdot}~$sb$ where the $s$ is the string and $b$ is the barre. The +rule is set with \keyindex{gbarre}~$b$ where $b$ indicates the position of the barre. + +The whole symbol may be vertically shifted with +\keyindex{raiseguitar}\onen, where $n$ is a number +in units of \keyindex{internote}. When using guitar chords, it might be +useful to reserve additional +space above the chord by advancing \keyindex{stafftopmarg} to +something like \verb|stafftopmarg=10\Interligne|. + +For frequently used chords, it might be useful to define your own +macros, e.g. + +\verb|\def\Dmajor{\guitar D{}x-----\gdot42\gdot53\gdot62}%| + +\section{musixhv}\label{helvetica} + + +Replaces the default Computer Modern text fonts by Helvetica (sans serif) fonts; +see Section~\ref{UserFonts}. +Use as follows: +\begin{quote}\begin{verbatim} +\input musixtex +\input musixhv +... +\end{verbatim}\end{quote} + +The usual ``small'' type commands are supported: +\begin{quote} +\begin{tabular}{lr} +\keyindex{smalltype} & 8pt \\ +\keyindex{Smalltype} & 9pt \\ +\keyindex{normtype}& 10pt \\ +\keyindex{medtype} & 12pt \\ +\end{tabular} +\end{quote} +For all of these, the following variants are supported: +\begin{quote} +\begin{tabular}{ll} +\verb|\rm| & ``Roman'' (sans serif) \\ +\verb|\bf| & bold \\ +\verb|\it| & ``italic'' (oblique) \\ +\verb|\bi| & ``bold-italic'' (bold-oblique) \\ +\verb|\sc| & small capitals\\ +\end{tabular} +\end{quote} +The ``big'' type commands are as follows: +\begin{quote} +\begin{tabular}{lr} +\keyindex{bigtype} & 14pt\\ +\keyindex{Bigtype} & 17pt\\ +\keyindex{BIgtype}& 20pt\\ +\keyindex{BIGtype} & 25pt\\ +\end{tabular} +\end{quote} +The default variant for all of these is small-caps; +however, \keyindex{font} commands are defined +for all the usual variants at all of these sizes. +To letter-space a title, use the \verb|\so| +command in the \verb\soul\ package. + + +The following bold-oblique fonts for dynamic marks are defined: +\begin{quote}\begin{tabular}{lr} +\keyindex{ppffsixteen} & 10pt\\ +\keyindex{ppfftwenty} & 12pt \\ +\keyindex{ppfftwentyfour} & 14pt \\ +\keyindex{ppfftwentynine} & 17pt \\ +\keyindex{tinyppff} & 8pt \\ +\keyindex{smallppff} & 10pt \\ +\keyindex{normppff} & 12pt \\ +\keyindex{medppff} & 14pt \\ +\end{tabular}\end{quote} + +The default font for typesetting \keyindex{txt} and \keyindex{tuplettxt} +arguments +is \keyindex{eightit} (\verb\8pt\~oblique). + + \section{musixlit}\label{litu}\label{otherbars} + Provides a notation style intermediate between gregorian and baroque, for +example + +\makeatletter +\catcodesmusic +%\def\vnotes#1\elemskip{\noteskip#1\@l@mskip \multnoteskip\scal@noteskip +% \not@s} + +%\def\not@s{\def|{\nextstaff}\def&{\nextinstrument}\normaltranspose\transpose +% \check@nopen\notes@open\@ne +% \kern\n@skip\advance\x@skip\n@skip \locx@skip\x@skip +% \n@skip\noteskip \noinstrum@nt\z@ \begininstrument} + +%\def\en{\@ndstaff\notes@open\z@ +% \ifx\@ne\V@sw \widthtyp@\z@\t@rmskip \let\V@sw\empty \fi} + +\def\double#1{\roffset{1.2}{\advancefalse#1}#1} +\makeatother + + % Don't know if this example correct ??? But looks nice... +\begin{music} +\ninerm +\parindent0pt +\instrumentnumber{2} +\interstaff{11} +\generalsignature2 +\setclefsymbol2\oldGclef +\setstaffs1{2} +\setclef1\bass +\setinterinstrument1{-\Interligne} +\startpiece +\shortbarrules +\addspace\afterruleskip +\hardlyrics{Il nous a sign\'es de son + }\notes\zw d\wh K|\zw f\wh h&\rtx\thelyrics*\Hpause h1\en +\qspace\qspace +\NOTes\zhl N\hu d|\zhl g\hu i&\tx sang*\double{\cnql i}\en +\bar +\hardlyrics{Et nous avons \'e- + }\notes\zw d\wh K|\zw f\wh h&\rtx\thelyrics~-*\Hpause h1\en +\qspace\qspace +\NOTes\zhl M\hu c|\zhl f\hu h&\rtx t\'e*\double{\cnql i}\en +\NOtes\zql L\qu e|\zql b\qu g&\tx ~pro-*\cnqu g\en +\NOtes\zql b\qu d|\zql d\qu f&\tx ~t\'e-*\cnqu f\en +\NOTes\zhl a\hu c|\zhl e\hu h&\tx g\'es.*\double{\cnqu h}\en +\bar +\NOtes\zql M\qu d|\zql d\qu h&\tx ~~Al~-*\cnqu h\en +\NOtes\zql K\qu a|\zql f\qu k&\tx ~~le~-*\cnql k\en +\NOTes\zhl H\hu a|\zhl e\hu j&\tx ~~lu~-*\double{\cnql j}\en +\bar +\NOTEs\zhl K\hu a|\zhl f\hu k&\tx ~~ia !*\cnhl k\en +\sepbarrules +\endpiece + +\startpiece +\interbarrules +\addspace\afterruleskip +\hardlyrics{Il nous a sign\'es de son + }\notes\zw d\wh K|\zw f\wh h&\rtx \thelyrics*\Hlonga h1\en +\qspace\qspace +\NOTes\zhl N\hu d|\zhl g\hu i&\tx sang*\chl i\en +\bar +\hardlyrics{Et nous avons \'e + }\notes\zw d\wh K|\zw f\wh h&\rtx \thelyrics~-*\Hlonga h1\en +\qspace\qspace +\NOTes\zhl M\hu c|\zhl f\hu h&\rtx t\'e*\chl i\en +\NOtes\zql L\qu e|\zql b\qu g&\tx ~pro-*\cqu g\en +\NOtes\zql b\qu d|\zql d\qu f&\tx ~t\'e-*\cqu f\en +\NOTes\zhl a\hu c|\zhl e\hu h&\tx g\'es.*\chu h\en +\bar +\NOtes\zql M\qu d|\zql d\qu h&\tx ~~Al~-*\cqu h\en +\NOtes\zql K\qu a|\zql f\qu k&\tx ~~le~-*\cql k\en +\NOTes\zhl H\hu a|\zhl e\hu j&\tx ~~lu~-*\chl j\en +\bar +\NOTEs\zbreve K\breve a|\zbreve f\breve k&\tx ~~ia !*\zbreve k\en +\sepbarrules +\endpiece +\end{music} +\endcatcodesmusic + + This package provides: + \begin{itemize}\setlength{\itemsep}{0ex} + \item\keyindex{oldGclef} which replaces the ordinary G clef with an old one, +using (for instrument 2 as an example): + \verb|\settrebleclefsymbol2\oldGclef| + + \item\keyindex{cqu} $p$ provides a square headed quarter note with stem up at +pitch $p$. + + \item\keyindex{cql} $p$ provides a square headed quarter note with stem down at +pitch $p$. + + \item\keyindex{chu} $p$ provides a square headed half note with stem up at +pitch $p$. + + \item\keyindex{chl} $p$ provides a square headed half note with stem down at +pitch $p$. + + \item\keyindex{cnqu} $p$ and \keyindex{cnql} $p$ provide a stemless square +headed +quarter note at pitch $p$. + + \item\keyindex{cnhu} $p$ and \keyindex{cnhl} $p$ provide a stemless square +headed half note at pitch $p$. + + \item\keyindex{Hpause} $p$ $n$ provides an arbitrary length pause at pitch +$p$ and of length $n$ \keyindex{noteskip}. However, in the first of the above +example, this feature has been used to denote an arbitrary length note rather +than a rest! + + \item\keyindex{Hlonga} $p$ $n$ provides an arbitrary length note at pitch +$p$ and of length $n$ \keyindex{noteskip}. +This feature has been used to denote an arbitrary length note in the second of +the above examples. + + \item\keyindex{shortbarrules} has been used to provide bar rules shorter than +the staff vertical width. + + \item\keyindex{interbarrules} has been used to provide bars between the +staffs, rather that over them. This is an arbitrary question of taste... + \end{itemize} + + \section{musixlyr} \ixtt{musixlyr.tex} + Enables the recommended method for adding lyrics to a score (see Section~\ref{musixlyr}). + + \section{musixmad} \ixtt{musixmad.tex} Increases the number of +instruments, slurs and beams up to twelve. When using this extension, it is +not necessary to explicitly input \verb|musixadd.tex|. +If you need greater numbers of these elements, see Sections~\ref{musixmad_setmaxgroups}, +\ref{musixmad_setmaxinstruments_ccxviiibeams}, +\ref{musixmad_setmaxoctlines}, +\ref{musixmad_setmaxslurs} and +\ref{musixmad_setmaxtrills}. + +\section{musixtnt}\label{musixtnt} +This package (tnt = Transform Notes) provides a macro \keyindex{TransformNotes} which makes +possible several ``transformations'' of the effect of notes commands such as \keyindex{notes}. +The \verb\musixtnt\ package is distributed separately from \verb\musixtex\. + +In general the effect of \verb|\TransformNotes(|\textit{input}\verb|}{|\textit{output}\verb|}| +is that subsequent notes commands in the source will expect their arguments +to match the \textit{input} pattern but +the notes will be typeset according to the \textit{output} pattern. + +For example, +\begin{verbatim} + \TransformNotes{#2}{#2} +\end{verbatim} +would be appropriate for a four-instrument score (arguments \verb|#2|, \verb|#3|, \verb|#4|, and \verb|#5|, separated by three +\verb\&\s, but the third instrument (\verb|#4|) will be discarded. + +The instrument/staff numbers in the first argument must start at $2$ and increase +consecutively, using \verb|&| (or \| for multi-staff instruments) as a separator. +The reason that the segment identifiers start at $2$ is that the first argument for \keyindex{vnotes} +is a spacing parameter. + +It is +essential that every \verb|\znotes|, \verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc.\@ command in +the score match the pattern of the first argument to \keyindex{TransformNotes} exactly; for example, +too few (or too many) +note segments will result in unintentionally discarded material and possibly compilation failure. +Similarly, it is not possible to use \keyindex{nextinstrument}, \keyindex{nextstaff}, \keyindex{selectinstrument} or \keyindex{selectstaff}, or to hide the \verb|&| (or \|) tokens inside +a user-defined macro. +An auxiliary program \verb|msxlint| distributed in the \verb\musixtnt\ package can be used to detect such incompatibilities. + +\keyindex{TransformNotes} may be used anywhere between \keyindex{startpiece} +and the command that ends the piece. + +\subsection{Extracting single-instrument parts from multi-instrument scores} + +To extract +a single-instrument part from a (copy of a) multi-instrument \musixtex\ score: +\begin{itemize} +\item Set \verb|\nbinstrument| to 1; for example, with command \verb|\instrumentnumber1|. +\item Use \keyindex{TransformNotes} to discard all but one of the note segments in notes +commands. +For example, the following line placed after +\verb|\startpiece| (but before any note commands) would be appropriate for a +four-instrument score and will result in a single-instrument part for the second of +these: +\begin{verbatim} + \TransformNotes{#2}{#3} +\end{verbatim} +\end{itemize} +Caveats: +\begin{itemize} +\item +Some additional revisions to the source for the part might be necessary: +\begin{itemize} +\item adjusting \verb|\setname1|, \verb|\setclef1|, \verb|\setsign1|, +\verb|\setmeter1| and \verb|\setstaffs1| commands, as necessary; + +\item ensuring that tempo and roadmap markings (\textbf{D.C.}, \textbf{Fine}, etc.) are in + the appropriate instrument segment; +\end{itemize} +\item +When the extracted part score is compiled and viewed, it may be seen +that horizontal-spacing commands designed for \emph{multiple} instruments can produce bad +spacing when used for a \emph{single} instrument. Bad spacing can be corrected manually but +this is very tedious; an auxiliary program called \verb\fixprt\ +automates this process (for single-staff instruments only). +\end{itemize} + +\subsection{Other applications} + +The \keyindex{TransformNotes} macro may be used for other purposes. Here are some examples: +\begin{list}{}{}\item + \verb|\TransformNotes{#2}{#2&\transpose+7#3}| +\end{list} +will begin transposing\index{transpose@{\Bslash transpose}} just the second instrument (argument \verb|#3|). +\begin{list}{}{}\item + \verb|\TransformNotes{#2|\|\verb|#3}{#2|\|\verb|#3&\tinynotesize#4}| +\end{list} +will begin typesetting the notes of the second instrument (\verb|#4|) in tiny size. +\begin{list}{}{}\item + \verb|\TransformNotes{#2}{#3}| +\end{list} +will switch the order of the two instruments. +\begin{list}{}{}\item + \verb|\TransformNotes{#2}{#2}| +\end{list} +will restore normal two-instrument processing. + + +The \keyindex{TransformNotes} macro is currently not compatible with the +\texttt{musixlyr} extension +package for lyrics described in Section~\ref{musixlyr}. For extracting or omitting parts +in scores with lyrics, use the techniques described in Chapter~\ref{parts}. + + +\section{musixper}\label{perc} + +Provides special symbols intended for percussion parts. Included are a +\ital{drum clef}---comprising two vertical parallel lines---and notes with +various specially shaped heads. The note symbols that are available are as +follows: + + \begin{itemize}\setlength{\itemsep}{0ex} + \item The \raise.5ex\hbox{\musixchar113}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceded by a +``\verb|dc|'' (think of {\it d}iagonal {\it c}ross). +Available are +\keyindex{dcqu}, +\keyindex{dcql}, +\keyindex{dcqb}, +\keyindex{dczq}, +\keyindex{dccu}, +\keyindex{dcccu}, +\keyindex{dccl} and +\keyindex{dcccl}. + + \item The \raise.5ex\hbox{\musixchar112}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceded by a +``\verb|dh|'' +(think of {\it d}iagonal cross {\it h}alf open). +Available are +\keyindex{dhqu}, +\keyindex{dhql}, +\keyindex{dhqb}, +\keyindex{dhzq}, +\keyindex{dhcu}, +\keyindex{dhccu}, +\keyindex{dhcl} and +\keyindex{dhccl}. + + \item The \raise.5ex\hbox{\musixchar111}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceded by a +``\verb|do|'' +(think of {\it d}iagonal cross {\it o}pen). +Available are +\keyindex{doqu}, +\keyindex{doql}, +\keyindex{doqb}, +\keyindex{dozq}, +\keyindex{docu}, +\keyindex{doccu}, +\keyindex{docl} and +\keyindex{doccl}. + + \item The \raise.5ex\hbox{\musixchar114}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded by +``\verb|x|'' (e.g.\ for spoken text of songs). +Available are +\keyindex{xqu}, +\keyindex{xql}, +\keyindex{xqb}, +\keyindex{xzq}, +\keyindex{xcu}, +\keyindex{xccu}, +\keyindex{xcl} and +\keyindex{xccl}. + + \item The \raise.5ex\hbox{\musixchar115}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded by +``\verb|ox|'' . +Available are +\keyindex{oxqu}, +\keyindex{oxql}, +\keyindex{oxqb}, +\keyindex{oxzq}, +\keyindex{oxcu}, +\keyindex{oxccu}, +\keyindex{oxcl} and +\keyindex{oxccl}. + + \item The \raise.5ex\hbox{\musixchar118}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded by +``\verb|ro|'' (think of {\it r}h{\it o}mbus). +Available are +\keyindex{roqu}, +\keyindex{roql}, +\keyindex{roqb}, +\keyindex{rozq}, +\keyindex{rocu}, +\keyindex{roccu}, +\keyindex{rocl} and +\keyindex{roccl}. + + \item The \raise.5ex\hbox{\musixchar116}~{}~symbol which is obtained using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded by +``\verb|tg|'' (think of {\it t}rian{\it g}le). +Available are +\keyindex{tgqu}, +\keyindex{tgql}, +\keyindex{tgqb}, +\keyindex{tgzq}, +\keyindex{tgcu}, +\keyindex{tgccu}, +\keyindex{tgcl} and +\keyindex{tgccl}. + + \item The \raise.5ex\hbox to 1em{\musixchar117\hfil}~{}~symbol which is obtained +using the +\verb|\qu|, \verb|\qb|, \verb|\cu|, etc.~macros preceeded by +``\verb|k|'' . +Available are +\keyindex{kqu}, +\keyindex{kql}, +\keyindex{kqb}, +\keyindex{kzq}, +\keyindex{kcu}, +\keyindex{kccu}, +\keyindex{kcl} and +\keyindex{kccl}. + \end{itemize} + +The diamond shaped noteheads described in Section~\ref{diam} are also +available, because \verb|musixper.tex| inputs \verb|musixdia.tex|. + +If any of the foregoing notes need to be dotted, you must use the explicit +dotting macros \verb|\pt|, \verb|\ppt|, or \verb|\pppt| as described in +Section~\ref{dots}. + +Since the usage of these note symbols is +not standardized, it would be wise to include in the score a explanation +of which symbol corresponds to which specific percussion instrument. + +A special \itxem{drum clef}---comprising two heavy vertical bars---can +be made to replace the normal clef for the $n$-th intrument by saying +\keyindex{setclefsymbol}\onen\keyindex{drumclef} . +To cause this to appear at the right vertical position, the instrument should +previously have been assigned a treble clef (or not explicitly assigned any +clef, thereby giving it a treble clef by default). + +Percussion music might be written on a staff with either one or five lines. +If there are several different percussions instruments it may be useful to +use a five-line staff with a drum clef, and differentiate the instruments +by the type of the note heads and the apparent +pitch of the note on the staff. Here is an example of the +latter\footnote{provided by Agusti {\sc Mart\'in Domingo}}: + +\medskip +\begin{music} +\generalmeter{\meterfrac44} +\setclefsymbol1\drumclef +\parindent0pt\startpiece +\leftrepeat +\Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\en +\Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\en +\Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\en +\bar +\Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\en +\Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\en +\Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\en +\bar +\Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\en +\Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\en +\Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\en +\setrightrepeat\endpiece +\end{music} +\noindent Its coding is + \begin{quote}\begin{verbatim} +\begin{music} +\instrumentnumber{1} +\generalmeter{\meterfrac44} +\setclefsymbol1\drumclef +\parindent0pt\startpiece +\leftrepeat +\Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\en +\Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\en +\Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\en +\bar +\Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\en +\Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\en +\Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\en +\bar +\Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\en +\Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\en +\Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\en +\Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\en +\setrightrepeat\endpiece +\end{music} + \end{verbatim}\end{quote} + +Here is an example of a single-line percussion staff using +diamond-shaped note heads: + +\begin{music} +\parindent 19mm +\instrumentnumber{3} +\setname1{keyboard} \setname2{drum} \setname3{monks} +\setlines2{1} +\setlines3{4} +\setinterinstrument1{-2\Interligne}% less vertical space above +\setinterinstrument2{-2\Interligne}% and below the percussion +\sepbarrules +\setsign1{-1} % one flat at keyboard +\generalmeter{\meterfrac24} +\setmeter3\empty +\setclef3\alto +\setclef1\bass +\setstaffs12 % 2 staffs at keyboard +\setclefsymbol3\gregorianCclef % gregorian C clef at instrument 3 +\setclefsymbol2\drumclef % cancel G clef at instrument 2 +\startextract +\Notes\hu F|\zh c\hu h&\dnq4&\squ{acd}\en\bar +\NOtes\qu I|\zq N\qu d&\qp&\diapunc f\en +\NOtes\qu J|\zq a\qu e&\ynq4&\diapunc e\en\bar +\notes\hu G|\zh b\hu d&\dnq4&\zsqu d\rsqu g\squ{hgh}\en +\endextract +\end{music} +\noindent which is coded as follows: + +\begin{verbatim} +\parindent 19mm +\instrumentnumber{3} +\setname1{keyboard} \setname2{drum} \setname3{monks} +\setlines2{1} +\setlines3{4} +\setinterinstrument1{-2\Interligne}% less vertical space above +\setinterinstrument2{-2\Interligne}% and below the percussion +\sepbarrules +\setsign1{-1} % one flat at keyboard +\generalmeter{\meterfrac24} +\setmeter3{\empty} +\setclef3{\alto} +\setclef1{\bass} +\setstaffs1{2} % 2 staffs at keyboard +\setclefsymbol3{\gregorianCclef} % gregorian C clef at instrument 3 +\setclefsymbol2{\drumclef} % cancel G clef at instrument 2 +\startextract +\end{verbatim} + +% (DAS) Sorry, guys, I couldn't figure out how to get the |'s to work in this +% verbatim. +% +\vskip-11pt +\def\Vert{{\tt\char'174}} +\noindent\verb|\Notes\hu F|\Vert\verb|\zh c\hu h&\dnq4&\squ{acd}\en\bar|\\ +\verb|\NOtes\qu I|\Vert\verb|\zq N\qu d&\qp&\diapunc f\en|\\ +\verb|\NOtes\qu J|\Vert\verb|\zq a\qu e&\ynq4&\diapunc f\en\bar|\\ +\verb|\notes\hu G|\Vert\verb|\zh b\hu d&\dnq4&\zsqu d\rsqu g\squ{hgh}\en|\\ +\verb|\endextract| + + \section{musixplt}\index{musixplt@{\tt musixplt.tex}}\label{palatino} +Replaces the default Computer Modern text fonts by Palatino fonts; +see Section~\ref{UserFonts}. +Use as follows: +\begin{quote}\begin{verbatim} +\input musixtex +\input musixplt +... +\end{verbatim}\end{quote} + +The usual ``small'' type commands are supported: +\begin{quote} +\begin{tabular}{lr} +\keyindex{smalltype} & 8pt \\ +\keyindex{Smalltype} & 9pt \\ +\keyindex{normtype}& 10pt \\ +\keyindex{medtype} & 12pt \\ +\end{tabular} +\end{quote} +For all of these, the following variants are supported: +\begin{quote} +\begin{tabular}{ll} +\verb|\rm| & Roman \\ +\verb|\bf| & bold \\ +\verb|\it| & italic \\ +\verb|\bi| & bold italic \\ +\verb|\sc| & small capitals (and old-style figures)\\ +\verb|\sl| & oblique \\ +\end{tabular} +\end{quote} +The ``big'' type commands are as follows: +\begin{quote} +\begin{tabular}{lr} +\keyindex{bigtype} & 14pt\\ +\keyindex{Bigtype} & 17pt\\ +\keyindex{BIgtype}& 20pt\\ +\keyindex{BIGtype} & 25pt\\ +\end{tabular} +\end{quote} +The default variant for all of these is small-caps; +however, \keyindex{font} commands are defined +for all the usual variants at all of these sizes. +To letter-space a title, use the \verb|\so| +command in the \verb\soul\ package. + + +The following bold-italic fonts for dynamic marks are defined: +\begin{quote}\begin{tabular}{lr} +\keyindex{ppffsixteen} & 10pt\\ +\keyindex{ppfftwenty} & 12pt \\ +\keyindex{ppfftwentyfour} & 14pt \\ +\keyindex{ppfftwentynine} & 17pt \\ +\keyindex{tinyppff} & 8pt \\ +\keyindex{smallppff} & 10pt \\ +\keyindex{normppff} & 12pt \\ +\keyindex{medppff} & 14pt \\ +\end{tabular}\end{quote} + +The default font for typesetting \keyindex{txt} and \keyindex{tuplettxt} +arguments +is \keyindex{eightit} (\verb\8pt\~italic). + + \section{musixpoi} + Adds definitions of less common singly and doubly dotted notes. +Available are +\keyindex{ccup}, +\keyindex{zccup}, +\keyindex{cclp}, +\keyindex{zcclp}, +\keyindex{ccupp}, +\keyindex{zccupp}, +\keyindex{cclpp}, +\keyindex{zcclpp}, +\keyindex{cccup}, +\keyindex{zcccup}, +\keyindex{ccclp}, +\keyindex{zccclp}, +\keyindex{cccupp}, +\keyindex{zcccupp}, +\keyindex{ccclpp}, +\keyindex{zccclpp}, +\keyindex{ccccup}, +\keyindex{zccccup}, +\keyindex{cccclp}, +\keyindex{zcccclp}, +\keyindex{ccccupp}, +\keyindex{zccccupp}, +\keyindex{cccclpp} and +\keyindex{zcccclpp}. + + \section{musixppff}\label{musixppff}\index{musixppff@{\tt musixppff.tex}} + +This replaces the default definitions used for dynamic marks to use a ``mini-font'' +\verb\xppff10\ designed by Hiroaki \textsc{Morimoto}. It is used as follows: + +\begin{quote}\begin{verbatim} +\input musixtex +\input musixppff +... +\end{verbatim}\end{quote} +\noindent The new dynamic marks are as follows: +\font\xppff=xppff10 +\begin{quote} +\xppff +pppp\ ppp\ pp\ p\ mp\ mf\ f\ fp\ sf\ ff\ fff\ ffff\ sfz\ sfzp +\end{quote} +Note that the \verb|xppff10| font has defined glyphs only for the following five characters: f, m, p, s and~z; +use \keyindex{ppff} etc.\@ +for other bold-italic text in music. + + \section{musixps}\label{musixps}\index{musixps@{\tt musixps.tex}} + Activates type K Postscript slurs, ties, and hairpins; see Chapter~\ref{PostscriptSlurs}. + + \section{musixstr}\label{musixstr}\index{musixstr@{\tt musixstr.tex}} + Provides bowing and other symbols for \itxem{string instruments}\footnote{provided +by Werner {\sc Icking}}. The symbol can be posted at the desired position using + \verb|\zcharnote|\pitchp\verb|{|$command$\verb|}|. The available symbols and +their meanings are as follows: + +{\input musixstr +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} + + \item[\hbox to 1em{\AB}~: \keyindex{AB} or \keyindex{downbow}] down-bow + + \item[\hbox to 1em{\AUF}~: \keyindex{AUF} or \keyindex{upbow}] up-bow + + \item[\hbox to 1em{\SP}~: \keyindex{SP}] at the top of bow + + \item[\hbox to 1em{\FR}~: \keyindex{FR}] at the nut of bow + + \item[\GB\ or \Gb~: \keyindex{GB} or \keyindex{Gb}] whole bow + + \item[\UH\ or \Uh~: \keyindex{UH} or \keyindex{Uh}] lower half of bow + + \item[\OH\ or \Oh~: \keyindex{OH} or \keyindex{Oh}] upper half of bow + + \item[\MI\ or \Mi~: \keyindex{MI} or \keyindex{Mi}] middle of bow + + \item[\UD\ or \Ud~: \keyindex{UD} or \keyindex{Ud}] lower third of bow + + \item[\OD\ or \Od~: \keyindex{OD} or \keyindex{Od}] upper third of bow + + \item[\Pizz~: \keyindex{Pizz}] left hand pizzicato or trill + + \end{description}\end{quote} + } + + %\check + \section{musixsty}\index{musixsty@{\tt musixsty.tex}} + + Provides certain text-handling facilities for titles, footnotes, and other +items not related to lyrics. It should not be used with \LaTeX. It includes + \begin{itemize}\setlength{\itemsep}{0ex} + \item definitions of \keyindex{hsize}, \keyindex{vsize}, +\keyindex{hoffset}, \keyindex{voffset} suitable for A$4$ paper; those using +other sizes may wish to modify it once and for all; + \item a set of text size commands: + + \begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{eightpoint}] which sets the usual \keyindex{rm}, +\keyindex{bf}, \keyindex{sl}, \keyindex{it} commands to $8$ point font size; + \item[\keyindex{tenpoint}] which sets the usual \keyindex{rm}, +\keyindex{bf}, \keyindex{sl}, \keyindex{it} commands to $10$ point font size; + \item[\keyindex{twlpoint}] (or \keyindex{twelvepoint}) to get $12$ point font size; + \item[\keyindex{frtpoint}] to get $14.4$ point font size; + \item[\keyindex{svtpoint}] to get $17.28$ point font size; + \item[\keyindex{twtypoint}] to get $20.74$ point font size; + \item[\keyindex{twfvpoint}] to get $24.88$ point font size; + \end{description} + \item commands for creating titles: + \begin{itemize}\setlength{\itemsep}{0ex} \item \keyindex{author} or +\keyindex{fullauthor} to be put at the right of the first page, below the +title of the piece; the calling sequence is, for example + + \verb| \author{Daniel TAUPIN\\organiste \`a Gif-sur-Yvette}| + + \noindent where the \verb|\\| causes the author's name to be displayed on +two lines; + + \item \keyindex{shortauthor} to be put at the bottom of each page; + \item \keyindex{fulltitle} which is the main title of the piece; + \item \keyindex{subtitle} is displayed below the main title of the piece; + \item \keyindex{shorttitle} or \keyindex{title} + which is the title repeated at the bottom of each page; + \item \keyindex{othermention} which is displayed on the left of the page, +vertically aligned with author's name. It may contain \verb|\\| to display it on +several lines; + \item \keyindex{maketitle} which displays all the previous stuff; + \end{itemize} + + \item commands for making \itxem{footnotes}: + \begin{itemize}\setlength{\itemsep}{0ex} + \item The normal Plain-\TeX\ \keyindex{footnote} command, which has two +arguments---not just one as in \LaTeX\protect\index{LATEX@\LaTeX}---namely +the label of the footnote, which can be any sequence of characters, and +the text of the footnote. This command does not work inside +boxes, so it cannot be issued within music; + + \item The \keyindex{Footnote} command, which counts the footnotes and uses a +number as the label of the footnote (equivalent to \LaTeX's \verb|\footnote| +command). The same restriction as with \verb|\footnote| applies concerning +its use within the music coding; + + \item The \keyindex{vfootnote} command, taken from the Plain-\TeX, which +places a footnote at the bottom of the current page, but does not put +the footnote label at the place the command is entered in the main text. This +also may not be used within music, but if a footnote is needed whose reference +lies inside the music, it can be entered in two steps: + \begin{enumerate} + \item manually insert the reference inside the music, using e.g., \verb|zcharnote|; + \item post the footnote itself with \verb|\vfootnote| outside the music, +either before \keyindex{startpiece} or between \keyindex{stoppiece} and +\keyindex{contpiece} or equivalent commands. + \end{enumerate} + + \end{itemize} + + \end{itemize} + + \section{musixtmr}\index{musixtmr@{\tt musixtmr.tex}}\label{times} + Replaces the default Computer Modern text fonts by Times fonts; + see Section~\ref{UserFonts}. +Use as follows: +\begin{quote}\begin{verbatim} +\input musixtex +\input musixtmr +... +\end{verbatim}\end{quote} + +The usual ``small'' type commands are supported: +\begin{quote} +\begin{tabular}{lr} +\keyindex{smalltype} & $8$pt \\ +\keyindex{Smalltype} & $9$pt \\ +\keyindex{normtype}& $10$pt \\ +\keyindex{medtype} & $12$pt \\ +\end{tabular} +\end{quote} +For all of these, the following variants are supported: +\begin{quote} +\begin{tabular}{ll} +\verb|\rm| & Roman \\ +\verb|\bf| & bold \\ +\verb|\it| & italic \\ +\verb|\bi| & bold italic \\ +\verb|\sc| & small capitals \\ +\verb|\sl| & oblique \\ +\end{tabular} +\end{quote} +The ``big'' type commands are as follows: +\begin{quote} +\begin{tabular}{lr} +\keyindex{bigtype} & $14$pt\\ +\keyindex{Bigtype} & $17$pt\\ +\keyindex{BIgtype}& $20$pt\\ +\keyindex{BIGtype} & $25$pt\\ +\end{tabular} +\end{quote} +The default variant for all of them is Roman; +however, \keyindex{font} commands are defined +for all the usual variants at all of these sizes. +To letter-space a title, use the \verb|\so| +command in the \verb\soul\ package. + + +The following bold-italic fonts for dynamic marks are defined: +\begin{quote}\begin{tabular}{lr} +\keyindex{ppffsixteen} & 10pt\\ +\keyindex{ppfftwenty} & 12pt \\ +\keyindex{ppfftwentyfour} & 14pt \\ +\keyindex{ppfftwentynine} & 17pt \\ +\keyindex{tinyppff} & 8pt \\ +\keyindex{smallppff} & 10pt \\ +\keyindex{normppff} & 12pt \\ +\keyindex{medppff} & 14pt \\ +\end{tabular}\end{quote} + +The default font for typesetting \keyindex{txt} and \keyindex{tuplettxt} +arguments +is \keyindex{eightit} (\verb|8pt| italic). + + \section{musixtri}\index{musixtri@{\tt musixtri.tex}} +Provides triply dotted note symbols. +Available are: +\keyindex{lpppt}, +\keyindex{whppp}, +\keyindex{zwppp}, +\keyindex{huppp}, +\keyindex{hlppp}, +\keyindex{zhppp}, +\keyindex{zhuppp}, +\keyindex{zhlppp}, +\keyindex{quppp}, +\keyindex{qlppp}, +\keyindex{zquppp}, +\keyindex{zqlppp}, +\keyindex{zqppp}, +\keyindex{cuppp}, +\keyindex{zcuppp}, +\keyindex{clppp}, +\keyindex{zclppp}, +\keyindex{qbppp} and +\keyindex{zqbppp}. + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/extracting.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extracting.tex new file mode 100644 index 00000000000..e2d8c297fe3 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/extracting.tex @@ -0,0 +1,101 @@ +\chapter{Extracting Parts from a Multi-Instrument Score}\label{parts} +From the typesetting viewpoint, the major characteristic of orchestral and +chamber music is that the scores not only have several instruments, but +variants of the same basic score are needed in which one of the instruments is +highlighted while some others are typeset in smaller notes or are +omitted. +Of course, it must be possible to permute the highlighted instruments and +the small-type instruments or +omitted instruments, depending on the instrument to which the +version of the score is dedicated. + +The following is the most general approach to part extraction when +using \musixtex\ without \textbf{PMX} or \textbf{M-Tx} pre-processors. A +simpler approach which will work for most purposes is described in Section~\ref{musixtnt}. + +\section{Coding rules} + To make a ``selectable'' orchestral score you must prepare the master score +(i.e., the score with all instruments typed) as follows: + + \begin{enumerate} + \item Avoid referring to instrument numbers with roman +numerals. For example use \verb|\setclefs|~$n$ instead of +\verb|\cleftoksiii=| . + \item Introduce symbolic names for the instruments; for example, define: + \begin{verbatim} + \def\Piano{1}% + \def\Flute{2}% + \def\Oboe{3}% + \def\Soprano{4}% + \end{verbatim} +and code, for example + \smallskip + + \verb|\setstaffs\Piano2| rather than \verb|\setstaffs12|. + + \item If, initially, the Piano is the instrument number 1, replace all +\verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc., with +\verb|\notes\selectinstrument\Piano|, \verb|\Notes\selectinstrument\Piano|, +\verb|\NOtes\selectinstrument\Piano|, etc. + + \item Instead of using \verb|&| or \verb|\nextinstrument| to move to +instrument $n+1$, use \verb|\selectinstrument\Flute| and similar instead. + \end{enumerate} +For example, +\begin{verbatim} + \Notes\selectinstrument\Piano ... | ... + \selectinstrument\Flute ... + \selectinstrument\Oboe ... + \selectinstrument\Soprano ... \en +\end{verbatim} +With this coding, difficult things such as putting the Flute above the Oboe +are done easily: just say \verb|\def\Flute{3}| and \verb|\def\Oboe{2}|. + + \section{Selecting, hiding or putting instruments in the background} + + To put, for example, the Flute and the Oboe in the background, i.e., typesetting +them in small notes, state at the beginning: + \begin{quote} + \verb|\setsize\Flute\tinyvalue\setsize\Oboe\tinyvalue| + \end{quote} +where the value \keyindex{tinyvalue} for \keyindex{setsize} corresponds to notes and staffs +of size \keyindex{tinynotesize}. + If, instead of putting an instrument in the background, one wants to omit it, +this is done by: + \begin{quote} + \verb|\setstaffs\Flute{0}\setstaffs\Oboe{0}| + \end{quote} +since nothing is typeset for +instruments having \emph{zero} staffs (not to be confused with one-line staffs such +as percussions). + + \section{Recommendations} + \begin{itemize} + \item When hiding instruments, reduce +\keyindex{instrumentnumber} by the number of hidden instruments; otherwise +bars and leading braces will enclose the position of these dummy arguments, +which would be ugly. + + \item Exchange the actual instrument numbers so that hidden instruments have +numbers \emph{greater} than the value of \verb|\instrumentnumber|. + Hidden instruments with numbers +less than \verb|\instrumentnumber| will cause an excess of vertical +space at their phantom positions; this is not +recommended. + + \item In hidden instruments, rests no longer behave like \verb|\hbox{...}| and +\verb|raise|-ing them will result in an error. + + \item In hidden instruments, explicit \verb|\hbox|es will remain as empty +boxes, thus causing abnormal vertical spacings between instruments. Therefore, +anything suspect should be made conditional with: + +\begin{quote} +\keyindex{ifactiveinstrument}\ \textit{code to be omitted if instrument is hidden}\ \verb|\fi| +\end{quote} +Most \musixtex{} commands become properly hidden if requested. But +problematic +parts of code can nonetheless be protected with \verb|\ifactiveinstrument|. + + \end{itemize} + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/fonts.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/fonts.tex new file mode 100644 index 00000000000..2a3a0037cd5 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/fonts.tex @@ -0,0 +1,212 @@ +\chapter{Font Selection and Text Placement} + +\section{Predefined text fonts} +While any \TeX\ font can be used by \musixtex, there are certain styles and +sizes that can be selected using shortcut commands. +For ordinary text the shortcuts cover fonts of eight different +sizes and three styles. The sizes in points are $8$, $9$, $10$, $12$, $14$, $17$, $20$, and $25$; +the styles are from the standard Computer Modern family: Roman, bold and italic. The +four smallest sizes are each available in all three styles, while the larger +sizes, which are intended for titles, are available only in bold style. +The size selection macros from smallest to biggest are \keyindex{smalltype}, +\keyindex{Smalltype}, +\keyindex{normtype}, \keyindex{medtype}, \keyindex{bigtype}, +\keyindex{Bigtype} , +\keyindex{BIgtype} and \keyindex{BIGtype}. Following size selection, the +style may be selected or changed using \keyindex{rm} (Roman), \keyindex{bf} +(bold) or \keyindex{it} (italic). If no style is explicitly selected, Roman style +will be used for the sizes \verb|\medtype| or smaller. For the larger sizes, +only bold style is provided and no style selection is required. Thus, for example, +eight point italic is selected with \verb|\smalltype\it|, while +twelve point Roman is selected using \verb|\medtype\rm| or simply +\verb|\medtype|. To change between styles while maintaining the same size, +code \verb|\rm|, \verb|\it| or \verb|\bf| as in Plain \TeX. +When \musixtex\ is started, the default font for ordinary text is +ten point Roman, equivalent to \verb|\normtype\rm|. + +Another group of fonts, in bold extended italic style, is predefined in point sizes +$10$, $12$, $14$, and $17$ for dynamic markings. The appropriate font for the current +staff size may be selected simply by using \keyindex{ppff} as a +font specification. Macros \verb|\smalldyn|, \verb|\normdyn|, or \verb|\meddyn| may be +used to redefine \verb|\ppff| to represent one of the smallest three. + + +All predefined fonts are summarized in Table~\ref{predefinedfonts}. The second column gives an +explicit control sequence that can alternatively be used locally as a font specification. +\font\csmalltype=cmr8 +\font\csmalltypebf=cmbx8 +\font\csmalltypeit=cmti8 +\font\cSmalltype=cmr9 +\font\cSmalltypebf=cmbx9 +\font\cSmalltypeit=cmti9 +\font\cnormtype=cmr10 +\font\cnormtypebf=cmbx10 +\font\cnormtypeit=cmti10 +\font\cmedtype=cmr12 +\font\cmedtypebf=cmbx12 +\font\cmedtypeit=cmti12 +\font\cbigtype=cmbx12 scaled \magstep1 +\font\cBigtype=cmbx12 scaled \magstep2 +\font\cBIgtype=cmbx12 scaled \magstep3 +\font\cBIGtype=cmbx12 scaled \magstep4 +\font\cppffsixteen=cmbxti10 +\font\cppfftwenty=cmbxti10 scaled \magstep1 +\font\cppfftwentyfour=cmbxti10 scaled \magstep2 +\font\cppfftwentynine=cmbxti10 scaled \magstep3 +\font\cbigtype=cmbx12 scaled \magstep1 +\font\cBigtype=cmbx12 scaled \magstep2 +\font\cBIgtype=cmbx12 scaled \magstep3 +\font\cBIGfont=cmbx12 scaled \magstep4 +\begin{table} +\begin{center} + \begin{tabular}{lll} + \hline + Size and style & Font specification & Example \\ + \hline + \verb|\smalltype| & \verb|\eightrm| & {\csmalltype small Roman} \\ + \verb|\smalltype\bf| & \verb|\eightbf| & {\csmalltypebf small bold} \\ + \verb|\smalltype\it| & \verb|\eightit| & {\csmalltypeit small italic} \\ + \verb|\Smalltype| & \verb|\ninerm| & {\cSmalltype Small Roman} \\ + \verb|\Smalltype\bf| & \verb|\ninebf| & {\cSmalltypebf Small bold} \\ + \verb|\Smalltype\it| & \verb|\nineit| & {\cSmalltypeit Small italic} \\ + \verb|\normtype| & \verb|\tenrm| & {\cnormtype normal Roman} \\ + \verb|\normtype\bf| & \verb|\tenbf| & {\cnormtypebf normal bold} \\ + \verb|\normtype\it| & \verb|\tenit| & {\cnormtypeit normal italic}\\ + \verb|\medtype| & \verb|\twelverm| & {\cmedtype medium Roman} \\ + \verb|\medtype\bf| & \verb|\twelvebf| & {\cmedtypebf medium bold} \\ + \verb|\medtype\it| & \verb|\twelveit| & {\cmedtypeit medium italic}\\ + \verb|\bigtype| & \verb|\bigfont| & {\cbigtype big bold} \\ + \verb|\Bigtype| & \verb|\Bigfont| & {\cBigtype Big bold} \\ + \verb|\BIgtype| & \verb|\BIgfont| & {\cBIgtype BIg bold} \\ + \verb|\BIGtype| & \verb|\BIGfont| & {\cBIGtype BIG bold} \\ + \verb|\smalldyn| & \verb|\ppffsixteen| & {\cppffsixteen pp ff diminuendo}\\ + \verb|\normdyn| & \verb|\ppfftwenty| & {\cppfftwenty pp ff crescendo}\\ + \verb|\meddyn| & \verb|\ppfftwentyfour| & {\cppfftwentyfour pp ff crescendo}\\[.4ex] + ~ & \verb|\ppfftwentynine| & {\cppfftwentynine pp ff diminuendo}\\[.4ex] + \hline + \end{tabular} +\end{center} +\caption{Predefined fonts} +\label{predefinedfonts} +\end{table} + +\section{User-defined text fonts} + +Since \musixtex\ is a superset of \TeX, you are free to use the standard \TeX\ +machinery for defining and using any special font you desire. You must first +of course ensure that (a) all the necessary font files (e.g., \verb|bla10.tfm|, +\verb|bla10.pfb|, or equivalents) are installed in the right places in your system, (b) all +configuration files (e.g., \verb|config.ps| or equivalent) have been updated, and +(c) the \TeX\ system has been ``rehashed''. Then you can use the font just as +in any \TeX\ document, e.g., by coding \verb|\font blafont=bla10| and then +\verb|\zchar{10}{\blafont Text in user-defined font}|. + +You might also wish to replace once and for all the typefaces invoked by the +commands described in the previous section. Again, before doing this, you must +follow steps (a-c) of the previous paragraph for all fonts in questions. +\label{UserFonts} +You can use the standard bitmapped fonts which are converted to +Postscript by e.g.,~\verb|dvips|, but you also may replace them +by native Postscript fonts. + +The extension library +\verb|musixtmr.tex|\footnote{by Hiroaki {\sc Morimoto}} +replaces the default Computer Modern text fonts by +the Times series of fonts; see Section~\ref{times}. +Other extension libraries, \verb|musixplt.tex| and \verb|musixhv.tex|, replace the default text fonts by +Palatino and Helvetica fonts, respectively; see Sections~\ref{palatino} and \ref{helvetica}. +\font\tnormtype=ptmr7t +\font\tnormtypebf=ptmb7t +\font\tnormtypeit=ptmri7t +\font\tbigtype=ptmr7t scaled \magstep2 +\font\tBigtype=ptmr7t scaled \magstep3 +\font\pnormtype=pplr8r +\font\pnormtypebf=pplb8r +\font\pnormtypeit=pplri8r +\font\pbigtype=pplrc8r at 14pt +\font\pBigtype=pplrc8r at 17pt +\font\hnormtype=phvr8r at 10pt +\font\hnormtypebf=phvb8r at 10pt +\font\hnormtypeit=phvro8r at 10pt +\font\hbigtype=phvr8r at 14pt +\font\hBigtype=phvr8r at 17pt +Here is a comparison of some Times, +Palatino and Helvetica fonts: +\begin{center} + \begin{tabular}{lll} + \hline + {\tnormtype normal Times Roman} & {\pnormtype normal Palatino Roman} &{\hnormtype normal Helvetica Roman} \\ + {\tnormtypebf normal Times bold} & {\pnormtypebf normal Palatino bold}& {\hnormtypebf normal Helvetica bold} \\ + {\tnormtypeit normal Times italic} & {\pnormtypeit normal Palatino italic } & {\hnormtypeit normal Helvetica italic }\\ + {\tbigtype Times big} & {\pbigtype Palatino big } & {\hbigtype Helvetica big } \\ + {\tBigtype Times Big } & {\pBigtype Palatino Big } & {\hBigtype Helvetica Big } \\ + \hline + \end{tabular} +\end{center} + +For users who prefer to stick with the default Computer Modern +family but want to use the EC variants, the extension library +\verb|musixec.tex| is available; see Section~\ref{ecfonts}. + +\section{Text placement}\label{textplacement} +Special macros are provided to allow precise placement of any \TeX\ text, vertically +relative to the staff, and horizontally relative to any note in +the staff. + +The macros in the first group will vertically position the text with the +baseline at any specified pitch or staff line. They must be used +inside \verb|\notes...\en|. They will not insert any additional +horizontal space. They have the forms +\keyindex{zcharnote}\pitchp\verb|{|\ital{text}\verb|}|, \keyindex{lcharnote}\pitchp\verb|{|\ital{text}\verb|}|, +and \keyindex{ccharnote}\pitchp\verb|{|\ital{text}\verb|}|, +where \ital{p} is the pitch. With the first one, text will spill to the right +from the current insertion point, with the second it will spill to the left, and with the +third it will be centered horizontally. +The following abbreviations are available: +\begin{quote} +\begin{tabular}{lcl} +\keyindex{zcn}& for&\verb|\zcharnote| \\ +\keyindex{lcn}& for&\verb|\lcharnote| \\ +\keyindex{ccn}& for&\verb|\ccharnote| \\ +\end{tabular} +\end{quote} + +There are similar macros \keyindex{zchar}\pitchp\verb|{|\ital{text}\verb|}|, +\keyindex{lchar}\pitchp\verb|{|\ital{text}\verb|}|, and \keyindex{cchar}\pitchp\verb|{|\ital{text}\verb|}|, +which differ from the previous three in that the pitch \ital{must} be given with +a number (representing the number of staff positions up from the lowest line), +and that the number need not be an integer. + +To vertically position any text midway between two consecutive staves, use +\keyindex{zmidstaff}\verb|{|{\it text}\verb|}|, \keyindex{lmidstaff}\verb|{|{\it text}\verb|}|, +or \keyindex{cmidstaff}\verb|{|{\it text}\verb|}| at the appropriate point in the lower staff. + +The macros \keyindex{uptext}\verb|{|\ital{text}\verb|}| and +\keyindex{Uptext}\verb|{|\ital{text}\verb|}| +are simply shorthands for +\verb|\zchar{10}{|\ital{text}\verb|}| and +\verb|\zchar{14}{|\ital{text}\verb|}|, +respectively. + +The text items handled by all of the above macros can include any appropriate +string of \TeX\ +control sequences, including font definitions, \verb|\hbox|'es, etc. + +Material posted with any of the macros described in this section will not +create any additional horizontal or vertical space within the current system, +and will overwrite anything in the current system that gets in the way. It is +the typesetter's responsibility to ensure there is adequate white space +within the current system to accommodate any text placed with +these macros. On the other hand, if text is placed far above or below a +system, \musixtex\ will usually insert additional vertical space if needed. + +\section{Rehearsal marks} + +Rehearsal marks are usually +boxed or circled uppercase letters or digits. They can be defined using the macros +\keyindex{boxit}\verb|{|\ital{text}\verb|}| or +\keyindex{circleit}\verb|{|\ital{text}\verb|}|. For boxed text, +the margin between the text and box is controlled by the dimension +register \keyindex{boxitsep}, which can be reset to any \TeX\ dimension if the +default value of \verb|3pt| is unsatisfactory. To place the mark, use \verb|\Uptext| or +any of the other macros defined in the previous section. diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex new file mode 100644 index 00000000000..c0f52919c24 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/frontmatter.tex @@ -0,0 +1,135 @@ +\title{\Huge\bfseries\musixtex\\[\bigskipamount] +\LARGE\bfseries Using \TeX{} to write polyphonic\\or +instrumental music\\\Large\itshape Version 1.16} + + +%\author{\Large\rm Daniel \sc Taupin\\\large\sl +% Laboratoire de Physique des Solides\\\normalsize\sl +% (associ\'e au CNRS)\\\normalsize\sl +% b\^atiment 510, Centre Universitaire, F-91405 ORSAY Cedex\\\medskip +% \\\Large\rm Ross \sc Mitchell\\\large\sl +% CSIRO Division of Atmospheric Research,\\\normalsize\sl +% Private Bag No.1, Mordialloc, Victoria 3195,\\ Australia \\\medskip +% \\\Large\rm Andreas \sc Egler\\\large\sl +% (Ruhr--Uni--Bochum)\\ Ursulastr. 32\\ D-44793 Bochum} +\date{\today} +\maketitle +\vfill +\thispagestyle{empty} +\begin{flushright}\it +If you are not familiar with \TeX{} at all, I would recommend\\ +to find another software package to do musical typesetting.\\ +Setting up \TeX{} and \musixtex\ on your machine and mastering it is\\ +an awesome job which gobbles up a lot of your time and disk space.\\[\medskipamount] +But, once you master it\ldots\\[\smallskipamount] +Hans {\sc Kuykens} (ca.~1995) + +\vspace*{4ex} +In my humble opinion, that whole statement is obsolete.\\[\smallskipamount] +Christof\/ {\sc Biericher} (2006) +\end{flushright} + +\clearpage + +\pagenumbering{roman}\setcounter{page}{2} + + +\vspace*{20ex} +\begin{quote} +\musixtex{} may be freely copied, duplicated and used in conformance to +the GNU General Public License (Version 2, 1991, see included file {\tt +copying})\footnote{Thanks to the Free Software Foundation for advice. See +\href{http://www.gnu.org}{\underline{\tt http://www.gnu.org}}}. + +You may take it or parts of it to include in other packages, but no packages +called \musixtex{} without specific suffix may be distributed under the name +\musixtex{} if different from the original distribution (except obvious bug +corrections). + + Adaptations for specific implementations (e.g., fonts) should be provided as +separate additional \TeX\ or \LaTeX\ files which override original definitions. + \end{quote} + +\clearpage + +\chapter*{Preface} +\addcontentsline{toc}{chapter}{Preface} +\musixtex\ was developed by Daniel Taupin, Ross Mitchell and Andreas +Egler, +building +on earlier work by Andrea Steinbach and Angelika Schofer. +Unfortunately, Daniel Taupin, the main developer, died all too early in a 2003 +climbing accident. The \musixtex\ community was shocked by this tragic and unexpected +event. You may read tributes to Daniel Taupin that are archived at the +\href{http://icking-music-archive.org}{\underline{Werner Icking Music Archive}}. + +Since then, the only significant update to \musixtex\ has been in version 1.15 (April 2011) which +takes advantage of the greater capacity of the e\TeX\ version of \TeX. +The current version~1.16 (February~2015) incorporates some minor +corrections in cautionary accidentals and ``hiding'' staffs. The package +includes +new extension libraries for use of Palatino text fonts, the EC variants +of Computer Modern fonts, additional accents and improved dynamic marks. +This manual is the definitive reference to all features of +\musixtex\ version~1.16. + +Novice users should not start here. +Most +music typesetting tasks can be accomplished entirely by using the \textbf{PMX} +(for instrumental music) or \mbox{\textbf{M-Tx}} (for vocal music) +preprocessors to generate the \musixtex\ input file, relieving the user of +learning any of the commands or syntax of \musixtex\ itself. It is only +for out-of-the-ordinary constructions that one must learn these details in order +to insert the necessary \musixtex\ commands into the preprocessor's input file +as so-called inline \TeX. + +The \href{http://icking-music-archive.org/software/indexmt6.html} +{\underline{Werner Icking Music Archive}}\ (WIMA) contains excellent and detailed +instructions for installing \TeX, \musixtex{} and the strongly recommended +preprocessors \textbf{PMX} +and \mbox{\textbf{M-Tx}} on +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00022000000000000000} +{\underline{Linux/\unix}}, +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00021000000000000000} +{\underline{Windows}} and +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00023000000000000000} +{\underline{Mac OS}}. +See +\href{http://icking-music-archive.org/software/htdocs/Introduction.html#SECTION00012000000000000000} +{\underline{this}} +page at WIMA for documentation of +\textbf{PMX} and \mbox{\textbf{M-Tx}}. + +\begin{flushright} +Oliver Vogel\\ Don Simons\\ Andre van Ryckeghem\\ Cornelius Noack\\ +Hiroaki Morimoto\\ +Bob Tennent\\ \today +\end{flushright} + +\clearpage + +\makeatletter +\renewcommand\tableofcontents{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\contentsname + \@mkboth{% + \contentsname}{\contentsname}}% + \addcontentsline{toc}{chapter}{Contents} % added by RDT + \@starttoc{toc}% + \if@restonecol\twocolumn\fi + } +\makeatother + + +%\begin{small} +\tableofcontents +%\end{small} + +\clearpage +\setcounter{page}{1} +\pagenumbering{arabic} +\renewcommand{\thepage}{\arabic{page}} diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/index.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/index.tex new file mode 100644 index 00000000000..c56508b6d8f --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/index.tex @@ -0,0 +1,10 @@ +\makeatletter +\renewenvironment{theindex} + {\pagestyle{plain}\parindent\z@ + \parskip\z@ \@plus .3\p@\relax + \let\item\@idxitem} + {\thispagestyle{plain}} +\makeatother +\begin{multicols}{3}[\chapter*{Index}\addcontentsline{toc}{chapter}{Index}] + \printindex +\end{multicols} diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/introduction.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/introduction.tex new file mode 100644 index 00000000000..d54dbf23351 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/introduction.tex @@ -0,0 +1,823 @@ +\chapter{Introduction to \musixtex} + +This chapter is not a tutorial on the use of \musixtex, but instead serves as +an overview of some of its capabilities, quirks, and history. + +\musixtex\ is a set of macros and fonts which enables music typesetting +within the \TeX\ system. It requires as a prerequisite a working +installation of \TeX. +\musixtex\ might be regarded as the digital equivalent of a box of type. It +contains symbols for staves, notes, chords, beams, slurs and ornaments, +ready to be arranged to form a sheet of music. But it must be told how to position +those symbols on the page. This could be done by the typesetter +himself, if he or she elects to proceed by entering \musixtex\ commands manually +into an input file. However most users will find it far less taxing to let +such decisions be made largely by the preprocessor +\href{http://icking-music-archive.org/software/indexmt6.html#pmx} +{\underline{\textbf{PMX}}}, which in addition uses a much simpler input +language than \musixtex. + +Lyrics can also be handled by \musixtex. There is a set of primitive +commands for this which are described later. But there is also a far +more adaptable set of macros contained in the extension file +\verb|musixlyr.tex|, and there is the preprocessor +\href{http://icking-music-archive.org/software/indexmt6.html#mtx} +{\underline{\mbox{\textbf{M-Tx}}}}\ which provides easy, transparent access to +these macros. + +Most users of \TeX\ are familiar with \LaTeX, a set of \TeX\ macros +which eases document layout. In fact many may only use \LaTeX. +Until recently, \LaTeX\ and \musixtex\ coexisted only grudgingly, owing +primarily to the limited availabily of storage registers. But with modern +versions of \TeX\ and with the use of e\LaTeX, only a modest increase in +complexity is incurred with the addition of musical excerpts to a \LaTeX\ +document. Still, fortunately, for typesetting a musical score there is +rarely if ever any advantage to using \LaTeX. Only if one wanted to create a +text document with embedded musical examples would there be much use for it. +Even in that case there is a perfectly fine way to avoid using \musixtex\ +directly in the document file, namely, by using \musixtex\ to create +\verb|pdf| or \verb|eps| files for +each of the examples, and then embedding references to those in the file for +the larger document. But for anyone who still wants to use both together, there is +no better example than this manual, as generated with the files +\verb|musixdoc.tex| and \verb|musixdoc.sty|. A few further details about such +nonstandard applications are given in Section~\ref{excerpts}. + +\section{Primary features of \musixtex} + \subsection{Music typesetting is two-dimensional} Written music is not +usually a linear sequence of symbols like a literary text. Rather, +except for unaccompanied single-note instruments like clarinets, +trumpets and human voices, it has the form of a two-dimensional matrix. + Thus, a logical way of coding music consists +in horizontally accumulating a set of \ital{vertical combs} with +\ital{horizontal teeth} as depicted in Table~\ref{readtable}. +%\def\hboxit#1{\boxit{\rlap{#1}\hphantom{note sequence three}}} + \begin{table} + \begin{center} + \small + \renewcommand{\arraystretch}{1.4} + \setlength{\arrayrulewidth}{1.5pt} + \setlength{\tabcolsep}{2ex} + \begin{tabular}{|ll|ll|}\fbox{note sequence one} + &\fbox{note seq.\ four} + &\fbox{note seq.\ seven} + &\fbox{note seq.\ ten}\\\fbox{note sequence two} + &\fbox{note seq.\ five} + &\fbox{note seq.\ eight} + &\fbox{note seq.\ eleven}\\\fbox{note sequence three} + &\fbox{note seq.\ six} + &\fbox{note seq.\ nine} + &\fbox{note seq.\ twelve}\\ + \end{tabular} + \end{center} + \caption{A logical way of coding music}\label{readtable} + \end{table} +Accordingly, in \musixtex\ the fundamental macro used to represent +one of those vertical combs (or one of the columns in Table~\ref{readtable}) +is of the form +\begin{center} +\verb|\notes ... & ... & ... \en|\footnote{The command +\keyindex{en} is an abbreviation for the command \keyindex{enotes}, which may also be used.} +\end{center}\index{"&@{\tt\char'046}} +\noindent where the character \verb|&| is used to separate the notes to be +typeset on respective staves of the various instruments, starting from the +bottom. + +In the case of an instrument whose score has to be written with +several staves, they are separated by the +character \|\index{\tt\char'174@{\tt\char'174}}. + +Thus, a score written for a keyboard instrument and +a single-line instrument (e.g., piano and violin) +will be coded as follows: +\begin{center} +\verb=\notes ... | ... & ...\en= +\end{center} +\noindent for each column of simultaneous \ital{groups of notes}. +Each of those groups, represented by a single box in Table~\ref{readtable}\ +and by a sequence of three dots in the the two example macros above, may contain +not only chord notes to be played simultaneously, but short sequences of +consecutive +notes or chords. As we'll soon see, this implies the need for two fundamentally different +kinds of basic macros in \musixtex: those whose tokens are automatically followed +by some amount of space (called \ital{spacing} macros), and those that are not. +The former type, for example, +would be used to produce the notes and rests in a single-line score; +the latter would be used, for example, for chord notes and ornaments. + +\subsection{Horizontal spacing} +Deciding upon the proper horizontal spacing of notes is a very complicated matter +that we will not address in any detail here. Obviously short-duration notes +should be closer together than longer ones. Almost as obviously, the spacing +cannot be linearly proportional to the duration; otherwise for example a whole +note would occupy 32 times as much horizontal space as a thirty-second note. And +in polyphonic scores the spacing in one staff is often influenced by the notes +in another. This is a decision that the typesetter or preprocessor +must make. Once the decision is made, \musixtex\ can provide the desired spacing. +The main mechanism is through a set of macros described in +Section~\ref{newspacings}. At this point we shall only mention that to control +spacing, one of those +macros will be selected to replace the symbol \verb|\notes| in the two examples +above, and it will imply that whenever a spacing macro in encountered within +a group of notes, a +certain specific amount of horizontal space will be inserted. + + \subsection{Music tokens} +The tokens provided by \musixtex\ include +\begin{itemize}\setlength{\itemsep}{0ex} + \item note symbols without stems; + \item note symbols with stems, and flags for eighth notes and +shorter; + \item beam beginnings and endings; + \item beginnings and endings of ties and slurs; + \item accidentals; + \item ornaments: arpeggios, trills, mordents, turns, staccatos, +pizzicatos, fermatas, etc.; + \item bar lines; + \item meters, key signatures, clefs. +\end{itemize} +For example, \verb|\wh a| produces a whole note at nominal frequency 222.5~Hz, +\verb|\wh h| produces one an octave higher, \verb|\qu c| +produces an up-stemmed quarter note C (250~Hz), and \verb|\cl J| produces a down-stemmed C +eighth note an octave lower. + + To generate chords with solid note heads, the non-spacing macro \keyindex{zq} +can be used. It produces a solid note head at the specified pitch, +the vertical position of which +is memorized and recalled whenever the next stemmed note (possibly with a flag) is +coded. The stem length is automatically adjusted to link all simultaneous notes. Thus, the +\mbox{C-major} chord + +\begin{music}\nostartrule +\startextract\NOtes\zq{ceg}\qu j\en\zendextract +\end{music} + \noindent is coded \verb|\zq c\zq e\zq g\qu j| or more concisely, +\verb|\zq{ceg}\qu j|; the \verb|u| in the spacing note macro +\verb|\qu| is what generates the upstem. + + \subsection{Beams} +Each beam \index{beams} is generated by a pair of macros. The first defines +the beginning horizontal position (implicitly the current position), altitude, +direction (upper or lower), multiplicity (number of lateral bars), slope and +reference number. This latter feature is needed so independent beams +can overlap. The second macro of the pair specifies the termination +location (again implicitly) and the reference number. + + \subsection{Setting anything on the score} +A general macro (\keyindex{zcharnote}) provides a means of +putting any sequence of symbols (possibly contained in an \verb|\hbox{...}|) at any +pitch of any staff of any instrument. This allows any symbol defined in a font +(letters, math symbols, etc.) to be placed in the score at a position keyed +to the music both in time (horizontally) and pitch (vertically) on the staff, +\section{A simple example} + Before going into more detail, we give below an example of the two first +bars of the sonata in \mbox{C-major} KV545 by {\sc Mozart}\index{Mozart, W.A.@{\sc +Mozart, W.A.}}: + +\begin{music} +\parindent11mm +\setname1{Piano} +\setstaffs12 +\generalmeter{\meterfrac44} +\startextract +\Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en +\Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\ql l\sk\ql n\en +\bar +\Notes\ibu0f0\qb0{dgf}|\qlp i\en +\notes\tbu0\qb0g|\ibbl1j3\qb1j\tbl1\qb1k\en +\Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en +\zendextract +\end{music} + The coding is as follows: +\begin{quote}\begin{verbatim} +\begin{music} + \parindent10mm + \instrumentnumber{1} % a single instrument + \setname1{Piano} % whose name is Piano + \setstaffs1{2} % with two staffs + \generalmeter{\meterfrac44} % 4/4 meter chosen + \startextract % starting real score + \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en + \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\ql l\sk\ql n\en + \bar + \Notes\ibu0f0\qb0{dgf}|\qlp i\en + \notes\tbu0\qb0g|\ibbl1j3\qb1j\tbl1\qb1k\en + \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en + \zendextract % terminate excerpt +\end{music} + \end{verbatim}\end{quote} +\begin{itemize}\setlength{\itemsep}{0ex} + \item \verb|\ibu0f0| begins an upper beam, aligned on the +\ital{f}, reference number 0, slope 0 + \item \verb|\tbu0| terminates this beam before writing +the second \ital{g} by means of \verb|\qb0g| + \item \verb|\qb..| indicates a note belonging to a beam. + \item \verb|\sk| sets a space between the two quarters in the right +hand, so that the second one is aligned with the third eighth in the left hand. + \item\verb|\qlp| is a dotted quarter note. + \item\verb|\ibbl1j3| begins a double beam, aligned on the \ital{C} +(\verb|j| at this pitch) with slope 15\%. +\end{itemize} + +\section{The three pass system}\label{threepass} +\subsection{Introduction} +\TeX's line-breaking procedure implicitly assumes +that a normal line of text will contain many words, so that inter-word +glue need not stretch or shrink too much to justify the line. +One might at first consider extending this to music, treating each bar like a +word with no stretchable internal space. But typically this would lead to unsightly +gaps before each bar rule, simply because the number of bars per line +is normally many fewer than the number of words in a line of text. +\musixtex\ needs a more sophisticated horizontal spacing algorithm +than is used in \TeX. + +To understand how \musixtex\ solves this problem, we have to +recognize two different kinds of horizontal space, \ital{hard}\ and +\ital{scalable}. Hard space is fixed and always represents the same +physical distance. +Examples of hard space are the widths of bar rules, clefs, +and key signatures. Scalable space can be stretched as needed. It +is what is normally used for the space after notes or rests. At the +outset it is only defined in a relative sense. In other words, +scalable spaces are defined as multiples of \verb|\elemskip|, an +initially undefined basic spacing unit. For example, in \textbf{PMX}\ +all sixteenth notes +are typically assigned a scalable width of \verb|1.41\elemskip|. +One main job of \musixtex\ is to compute the physical value of +\verb|\elemskip|, often expressed in points (72nds of an inch). +The correct value is that which makes all the scalable space on +a line just fill up what's not occupied by hard space. Obviously +it may vary from line to line. + +To this end a three pass system was developed. To start the +first pass on the file \verb|jobname.tex|, you would enter\footnote{ +In many cases it will suffice to run {\tt tex}, but with \musixtex~1.15, +it is possible to create a file requiring the enhanced capacity of +{\tt etex}. Since {\tt etex} can handle any file {\tt tex} can, it's best +always to use {\tt etex}.} +\verb|etex jobname|. +Information about each bar is written to +an external file named \verb|jobname.mx1|. +This file begins with a header containing parameters +such as line width and paragraph indentation. Then the hard and +scalable space is listed for each bar. +\index{scalable width}\index{hard width} + +The second pass, which is started with \verb|musixflx jobname|, +determines optimal values of the basic spacing unit \verb|\elemskip| +for each line, so as to properly fill each line, and to spread +the piece nicely over an integral number of full lines. This routine was originally written +in \textsc{fortran} rather than \TeX, the main reason +being the lack of an array handling capability in \TeX; the current version +of \verb|musixflx| is a \textsc{lua} script, which may be executed without +compilation in any standard \TeX\ system. + +\verb|musixflx| reads in the file \verb|jobname.mx1|, and writes its +output to \verb|jobname.mx2|. The latter file contains a single entry for +each line of music in the reformatted output. The key piece of information +is the revised value of \keyindex{elemskip} for each line. + +Next, the file is \TeX-ed again, by entering \verb|etex jobname|. On this third pass, +the \verb|jobname.mx2| file is read in, and the information +is used to physically define the final score and embed the +page descriptions into a \verb|dvi|\ file. + +You may wonder how the same command can +cause something different to happen the second time it is issued. The explanation +is that \musixtex\ checks for the presence of \verb|jobname.mx2|. If it's +not present, the first pass is executed; if it is, the third pass. Obviously if +you've made some corrections that affect any horizontal spacing, you must remember +to delete the old \verb|jobname.mx2| and then rerun all three passes, or +build or use a script that does so. + +\subsection{An example} + +Here's an example. Here, no value for \verb|\elemskip| is explicitly specified, +so \musixtex\ assigns a single, default value. After the first pass you might get +the following output: + +\begin{music} +\hsize=100mm +\generalmeter{\meterfrac24}% +\parindent 0pt +\setsign1{-3} +\nostartrule +\startpiece\bigaccid +\NOtes\qu{ce}\en +\bar +\NOtes\qu{gh}\en +\bar +\NOtes\qu{=b}\en +\Notes\ds\cu g\en +\bar +\NOtes\qu{^f=f}\en +\raggedstoppiece\contpiece% this is cheated, the problem was to get +% pass 1 and pass 3 at the same time +\NOtes\qu{=e}\itied0e\qu{_e}\en +\bar +\Notes\ttie0\Qqbu ed{_d}c\en +\bar +\Notes\ibu0b{-2}\qb0{=b}\en +\notes\nbbu0\qb0{=a}\tqh0N\en +\Notes\Dqbu cf\en +\raggedstoppiece\contpiece +\NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\en +\bar +\NOtes\qu c\qp\en +\setdoubleBAR\raggedstoppiece +\end{music} + +\noindent Note that the space after every quarter note is the same, and +that lines are not justified. +After running \verb|musixflx| and \TeX-ing the second time you'll +get: + +\begin{music} +\hsize=100mm +\generalmeter{\meterfrac24}% +\parindent 0pt +\generalsignature{-3} +\nostartrule +\startpiece\bigaccid +\NOtes\qu{ce}\en +\bar +\NOtes\qu{gh}\en +\bar +\NOtes\qu{=b}\en +\Notes\ds\cu g\en +\bar +\NOtes\qu{^f=f}\en +\bar +\NOtes\qu{=e}\itied0e\qu{_e}\en +\bar +\Notes\ttie0\Qqbu ed{_d}c\en +\bar +\Notes\ibu0b{-2}\qb0{=b}\en +\notes\nbbu0\qb0{=a}\tqh0N\en +\Notes\Dqbu cf\en +\bar +\NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\en +\bar +\NOtes\qu c\qp\en +\Endpiece +\end{music} + +\noindent Now \musixtex\ has determined a number of lines +(which is different from the original number), the lines are justified, +and if you look carefully you +can see that the space after quarters in the first line +is smaller than in the second. This example was coded as: +\begin{verbatim} +\hsize=100mm +\generalmeter{\meterfrac24}% +\parindent 0pt +\generalsignature{-3} +\nostartrule +\startpiece\bigaccid +\NOtes\qu{ce}\en\bar +\NOtes\qu{gh}\en\bar +\NOtes\qu{=b}\en +\Notes\ds\cu g\en\bar +\NOtes\qu{^f=f}\en\bar +\NOtes\qu{=e}\itied0e\qu{_e}\en\bar +\Notes\ttie0\Qqbu ed{_d}c\en\bar +\Notes\ibu0b{-2}\qb0{=b}\en +\notes\nbbu0\qb0{=a}\tqh0N\en +\Notes\Dqbu cf\en\bar +\NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\en\bar +\NOtes\qu c\qp\en\Endpiece +\end{verbatim} + +\subsection{Adjusting the layout} + +One benefit of the 3-pass system is the quick and easy +alteration to the layout which can be achieved +by changing only one parameter, namely \keyindex{mulooseness}. This value +acts analogously to \TeX's \verb|\looseness| command. For non-\TeX-perts: if you +state \verb|\looseness=-1| somewhere inside any paragraph, then +\TeX\ will try to make the paragraph one line shorter than it normally would. +With \verb|\mulooseness|, \musixtex\ does the same, but for \ital{systems} +and \ital{sections} rather than lines and paragraphs. A system is just a group of +staves treated as a unit, and in this discussion is analogous to a line of text. +What is a \ital{section}? It's any chunk of coding not containing a +forced system break, System breaks can be forced with +\keyindex{stoppiece}, \keyindex{endpiece}, \keyindex{zstoppiece}, +\keyindex{Stoppiece}, \keyindex{Endpiece}, \keyindex{alaligne} +\keyindex{zalaligne}, \keyindex{alapage} or \keyindex{zalapage}. If none +of these is present, the section comprises the whole piece. +Somewhere\footnote{Advisably, at the beginning or +at the end of the section, for the sake of clarity.} +before the end of the section, you can change the value of +\keyindex{mulooseness} to something different from the default of 0, and +\musixtex\ will typeset that section with a different number of systems. + +To give an easy example, changing the last line in the previous example to: +\begin{verbatim} +\NOtes\qu c\qp\en\mulooseness=1\Endpiece +\end{verbatim} +yields: + +\begin{music} +\hsize=100mm +\generalmeter{\meterfrac24}% +\parindent 0pt +\generalsignature{-3} +\nostartrule +\startpiece\bigaccid +\NOtes\qu{ce}\en +\bar +\NOtes\qu{gh}\en +\bar +\NOtes\qu{=b}\en +\Notes\ds\cu g\en +\bar +\NOtes\qu{^f=f}\en +\bar +\NOtes\qu{=e}\itied0e\qu{_e}\en +\bar +\Notes\ttie0\Qqbu ed{_d}c\en +\bar +\Notes\ibu0b{-2}\qb0{=b}\en +\notes\nbbu0\qb0{=a}\tqh0N\en +\Notes\Dqbu cf\en +\bar +\NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\en +\bar +\NOtes\qu c\qp\en +\mulooseness1\Endpiece +\end{music} + +\noindent On the other hand, +\begin{verbatim} +\NOtes\qu c\qp\en\mulooseness=-1\Endpiece +\end{verbatim} +yields + +\begin{music} +\hsize=100mm +\generalmeter{\meterfrac24}% +\parindent 0pt +\generalsignature{-3} +\nostartrule +\startpiece\bigaccid +\NOtes\qu{ce}\en +\bar +\NOtes\qu{gh}\en +\bar +\NOtes\qu{=b}\en +\Notes\ds\cu g\en +\bar +\NOtes\qu{^f=f}\en +\bar +\NOtes\qu{=e}\itied0e\qu{_e}\en +\bar +\Notes\ttie0\Qqbu ed{_d}c\en +\bar +\Notes\ibu0b{-2}\qb0{=b}\en +\notes\nbbu0\qb0{=a}\tqh0N\en +\Notes\Dqbu cf\en +\bar +\NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\en +\bar +\NOtes\qu c\qp\en +\mulooseness-1\Endpiece +\end{music} + +\noindent which is tighter than you would ever want, but serves to further +demonstrate the use of \keyindex{mulooseness}. + +If you want to build up a \musixtex\ input file +manually (which in fact very few users will ever need to do, considering the +availability of \textbf{PMX}), here is a roadmap for one way to proceed: +\begin{enumerate} + \item Enter the data one \verb|\notes| group at a time, taking care to select the +relative horizontal spacing for each group (via the macros discussed in Section~\ref{newspacings}) +so as to maintain a consistent relationship between scalable space and note durations. +This will be discussed in a great deal more detail in Chapter~\ref{preparing}. + \item \TeX~$\Longrightarrow$ {\tt musixflx} $\Longrightarrow$ \TeX. + \item Look at the output and decide if you want to have more or fewer +systems, e.g.,~to fill the page or to get an even number of +pages.\index{musixflx@{\tt musixflx}} + \item If you want to change the number of systems in a section, adjust +\keyindex{mulooseness} accordingly. Keep in mind that each section cannot have fewer +systems than bars. +\item Delete \verb|jobname.mx2| and repeat the process\\ +\TeX~$\Longrightarrow$ \verb|musixflx| $\Longrightarrow$ \TeX. + +\end{enumerate} + +There is an alternate way to proceed if you know at the outset +how many systems +you want in a section. You can specify it directly by assigning a +positive number to \keyindex{linegoal} somewhere within the +section (\verb|\linegoal| requires +version 0.83 or later of \verb|musixflx|). +\keyindex{mulooseness} must be zero +for \keyindex{linegoal} to work. Both are automatically reset to +zero after processing the end of a section e.g., as defined by +\keyindex{stoppiece}. + +Finally, for large scores (more than 4 pages or so), having +only one section and an overall value of \verb|\mulooseness| becomes +impractical since one wants not only to have nicely spaced systems, but also +completely filled pages without empty top and +bottom margins on the last page. It is then wise to force the total number of +pages and possibly the line breaks in each page, which can be done using +\keyindex{alapage} and/or \keyindex{alaligne}\footnote{This is the technique +always used by \textbf{PMX} in constructing a \musixtex\ input file.}. +%avrb +%, or more automatically by +%means of the \keyindex{autolines} command borrowed from \musictex\ and +%implemented in the additional {\ttxem{musixcpt.tex}} file +%avre + +There is another advantage to \musixtex's way of using scalable space and +the three pass system. In +\TeX nical terms it eliminates the need for \ital{glue}, and enables +every horizontal position in a line to be computed. This in turn enables certain +variable length symbols such as slurs to be specified by macros entered at +their beginning and ending points, rather than having to estimate the +length of the symbol and enter it at the starting point. + + \subsection{Using \texttt{musixflx}} + +On most systems, \verb|musixflx| can be invoked by typing the name of the program +and the name of the file to be acted upon; i.e., +\begin{quote} +\verb|musixflx jobname.mx1| +\end{quote} +Optionally, you can add a letter to indicate one of the debug modes, which are: +\begin{quote} +\verb|d | for debug information to screen\\ +\verb|f | for debug information to file \verb|jobname.mxl|\\ +\verb|s | to get the computed lines immediately on screen +\end{quote} +To allow for ease of use with scripts, \verb|musixflx| can be fed +with either \verb|jobname.mx1|, \verb|jobname.tex| or only +\verb|jobname|, any one of which will open \verb|jobname.mx1|. + + \subsection{Unrecorded spaces: the novice's bugaboo} + +Because of the way \musixtex\ accounts for hard and scalable space and avoids +using glue, it is absolutely essential that every horizontal space be +properly entered into the input file. The most common error in this regard +is including a blank space in the midst \ital{or at the end} of an input line. +Such a blank space, or for that matter any stray character not entered with +an appropriate \musixtex\ macro, will not be properly +recognized and recorded by \musixtex, but it will still be treated like +ordinary text by \TeX. The symptoms of such a transgression will be an +{\bf Overfull hbox} warning during the third pass, and the appearance of +either excessive blank horizontal space or thick black vertical lines in +the page image. + +\medskip +\centerline{\fbox{Considerable discipline is needed to avoid this problem!}} +\smallskip + +The best technique for avoiding such unpleasantness is to avoid entering +any nonessential blanks within input lines, and to end every +input line with either \verb|%|\index{%@{\tt\char37}} or +\keyindex{relax}, unless it already ends with a control sequence +ending in a letter. + +There are other ways to enter unrecorded space which should be +avoided. Between \verb|\startpiece| and \verb|\stoppiece| or +\verb|\endpiece|, never use \verb|\hskip| or \verb|\kern| except +within \ital{zero}-boxes like \verb|\rlap|, \verb|\llap|, +\verb|\zcharnote|, \verb|\uptext|, etc., and never assign hard +values to scalable dimensions like \verb|\noteskip|, +\verb|\elemskip|, \verb|\afterruleskip| and \verb|\beforeruleskip|\footnote{Note that {\Bslash hardspace} does not fall in this +category; it is specifically designed to enter hard space in a way +the \musixtex\ can properly record it}. + +Here is a checklist of tips related to spacing issues. Because the +foregoing several paragraphs are so important, some of their content +is repeated in the list. + +\begin{enumerate} + \item +Between \verb|\startpiece| and \verb|\stoppiece| or \verb|\endpiece|, +end every input line with a either \verb|%| or a command with no arguments +(including \verb|\relax| and \verb|\en|). + \item \verb|\off| must only be used with scalable values, e.g., +\verb|\noteskip|, \verb|\elemskip|, \verb|\afterruleskip|, and + \verb|\beforeruleskip|. + \item Remember that \verb|\qqsk|, \verb|\qsk| and \verb|\hqsk| are scalable, i.e., \verb|\qsk| + doesn't necessarily mean exactly one note head width (it depends on \verb|\elemskip|). + \item Lyrics and any other non-\musixtex\ text must be put in zero-width boxes +such as + \verb|\zcharnote|, \verb|\zchar|, \verb|\rlap|, \verb|\lrlap|, \verb|\llap|, +\verb|\uptext|, or \verb|\zsong|. Additional specific capabilities for entering +lyrics are provided by + \verb|\hardlyrics|, \verb|\hsong|, and---most significantly---the +text-placement macros defined in \verb|musixlyr.tex| (see Chapter~\ref{lyrics}, +p.~\pageref{lyrics}). + \item +Between \verb|\startpiece| and \verb|\stoppiece| or \verb|\endpiece|, +don't assign hard values to \verb|\noteskip|, \verb|\beforeruleskip|, +or \verb|\afterruleskip|. +\end{enumerate} + + +\section{Further highlights} + %\check + \subsection{Key signatures} +\begin{sloppypar} +A single key signature can be assigned~to~all~instruments,~for~example~by +\keyindex{generalsignature}\verb|{-2}| +which sets two flats on each staff. \keyindex{generalsignature} +can be overridden for selected instruments, for example by +\keyindex{setsign}\verb|2{1}| which puts one sharp on each staff +of instrument number 2. Of course, the current signature as well +as meters and clefs may change at any time.\end{sloppypar} +\subsection{Transposition} +With some extra attention, a score can be input in such a way that it is +fairly easily transposed. There is an internal register +called \keyindex{transpose}, the default value of which is zero, but which may be +set to any reasonable positive or negative value. It defines a number of pitch +steps (lines or spaces on a staff) by which all pitched symbols with be offset, provided +they have been entered with letter values to represent their pitch. +However, +it will neither change the local accidentals nor the key signature. + +For +example, suppose a piece were originally input in F major, and it contained a +B natural, and you wanted to transpose it to G. If you simply set +\verb|\transpose| to 1 with no other special considerations, then +the key signature would not change, and +the B~natural would appear as a C~natural, whereas it should be a C~sharp. +So first you must explicitly change the key signature. Then, to +solve the problem with accidentals, you should declare +\verb|\relativeaccid|, which will cause the actual appearance of any +accidental to depend on the pitch of +the accidental as well as the current key signature. But the use of this +facility requires the typesetter to have entered the original set of accidentals +according to a nonstandard convention wherein an accidental does not +specifically refer to the black or white keys on a piano, but to the +amount by which the pitch is altered up or down from what it would naturally +have been, taking the key signature into account.\index{relative accidentals} This +is discussed in more detail in Section~\ref{transposeaccids}. Now, finally, you +can enter \verb|\transpose=1| with more or less the desired effect. + +More or less, because there is also an issue with stem +and beam directions. Normally a typesetter would want full control over them, +and would exercise that control by entering them with macros that explicitly +assign the direction. Naturally the assigned directions would persist +even after changing \verb|\transpose|. With respect to stems of unbeamed notes, +this matter can also be addressed at +the input level, by using special macros for notes that leave the +decision about stem directions up to \musixtex. These macros do the right +thing in the face of transposition. They are discussed in +Chapter~\ref{autostemdirections}. Unfortunately there is no corresponding +such facility for beams, so the typesetter will have to edit the transposed +score to adjust beam directions as required\footnote{\textbf{PMX} +will automatically adjust both stem and beam directions when transposing, which +is yet another reason to use it. However +if a piece is to be transposed, the typesetter must still explicitly activate relative accidentals +and enter accidentals according to the relative-accidental convention.}. + + %\check + \subsection{Extracting parts from a score} +It is possible to extract separate scores for +each individual instrument of a multi-instrument score. +If you use \textbf{PMX}, it is very easy; +see the documentation for \textbf{PMX}. +If you use \musixtex\ without a preprocessor, +see Chapter~\ref{parts}. + +%After assigning symbolic numbers to instruments, +%there are macros (see \ref{instrum-inhibit}) that permit +% \begin{itemize}\setlength{\itemsep}{0ex} +% \item choosing which instrument the following source code is attached to, +% \item choosing which staff of an instrument the following source code is +%attached to, +% \item hiding one or several instruments by zeroing out their staff sizes and staff +%numbers. +% \end{itemize} + + %\check + \subsection{Staff and note sizes} + Although the standard staff size is 20pt, \musixtex\ allows scores with +sizes of 16, 24, or 29pt. Furthermore, any instrument may be assigned its own special staff +size (usually smaller than the overall staff size), and there are special macros +(e.g., \verb|\smallnotesize|, \verb|\tinynotesize|) that cause notes, beams, and +accidentals all to take a different size. + +\subsection{Add-in macro libraries} +During the early stages of \musixtex's development, common versions of \TeX\ itself were +very limited in capacity, especially in terms of the numbers of registers that could +be defined for use in macros. For this historical reason, many important enhancements +to \musixtex\ are available only via add-in libraries. The user can thus pick and choose +which to include for any particular compilation. Most of these are included in +a \musixtex\ distribution, and their uses are discussed in this manual. The +libraries have names like \verb|blabla.tex|, and are activated by including a line +like \verb|\input blabla|\ within the the input file. The most common such files +are \ttxem{musixadd.tex} and \ttxem{musixmad.tex} which respectively increase the +number of instruments from the default 6 to 9 or 12 as well as increasing available numbers +of other features; \verb|musixps.tex| which enables Type~K Postscript slurs; and +\verb|musixlyr.tex| which greatly eases typesetting lyrics. In fact the latter two, +while now included in \musixtex\ distributions, are not documented in this manual but +in separate files, namely \verb|musixps.tex| itself and +\verb|mxlyrdoc.pdf| respectively. + + +\section{Installing and Using \musixtex}\label{using} + +As stated in the preface, +the \href{http://icking-music-archive.org/software/indexmt6.html} +{\underline{Werner Icking Music Archive}}\ (WIMA) contains excellent and detailed +instructions for installing \TeX, \musixtex{} and the strongly recommended +preprocessors \textbf{PMX} +(for instrumental music) and \mbox{\textbf{M-Tx}} (for vocal music) under +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00022000000000000000} +{\underline{Linux/\unix}}, +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00021000000000000000} +{\underline{Windows}} and +\href{http://icking-music-archive.org/software/htdocs/Getting_Started_Four_Scenar.html#SECTION00023000000000000000} +{\underline{Mac OS}}. + +As stated in Section~\ref{threepass}, to compile a \musixtex-formatted score, you must run +in sequence \verb|etex|, \verb|musixflx|, +and \verb|etex| again. This will produce a \verb|.dvi| file. From this point +forward, this file can be processed like the device-independent output file +for any \TeX\ document. The most common approach and the only one to +be discussed here is to next generate a Postscript file. This is accomplished +by running \verb|dvips|, which is included in every \TeX\ system. To view the +Postscript, most users run {\tt GSview} or {\tt gv}, a front-end to {\tt ghostscript}, which must +be separately downloaded and installed. Finally, you may produce a PDF file +using \verb|ps2pdf| or GSview, and view that with any PDF viewer, such as +the Adobe Reader or {\tt GSview}. + +You also can view the \verb|.dvi| file directly using a DVI viewer such as Yap or \verb|xdvi|, +but, if you are using type K Postscript slurs, some DVI viewers will not display them. + +Rather than executing all the foregoing programs separately, most users will +find it more convenient to use the \verb|musixtex| script that comes in most +distributions of \musixtex. For example, + +\verb|musixtex jobname| + +\noindent will run the three passes described in Section~\ref{threepass}, +convert the result to PDF and delete intermediate files. +There are many options available to +change the behavior; run + +\verb|musixtex --help| + +\noindent to get a summary. + + +\section{Where to get help using \musixtex} + +The home base for all matters related to \musixtex\ is the +Werner Icking Music Archive, at +\href{http://icking-music-archive.org}{\underline{http://icking-music-archive.org}}. +There is a +\href{http://tug.org/mailman/listinfo/tex-music}{\underline{mailing list}}, +hosted by TUG, the \TeX\ Users Group, where you will always find +someone willing to answer questions and help solve problems. + + \section{A very brief history of \musixtex} +The idea of using \TeX\ to typeset music appears to have originated +around 1987 with the master's thesis of Andrea +{\sc Steinbach} and Angelika {\sc Schofer}\footnote{Steinbach A. \& Schofer +A., \ital{Automatisierter Notensatz mit \TeX}, master's thesis, +Rheinische Friedrich-Wilhelms Universit\"at, +Bonn, Germany, 1987}. They called their package +\mutex\index{mutex@\protect\mutex}. It was limited to a single staff. +It introduced two key concepts: (1) using +a large number of font characters to construct beams and slurs, and (2) using +\TeX\ glue to help control horizontal spacing and justification. + +The next major step came around 1991 when Daniel {\sc Taupin} created \musictex. +Its major enhancement was to allow multiple staves. But this came at a +price: some flexibility was lost in controlling horizontal spacing and +a great deal of trial and error became necessary to avoid excessive or +insufficient gaps before and after bar lines. + +\musictex\ was a single-pass system. To remedy its shortcomings it became clear +that a multi-pass system would be required. Around 1997 Dr.~Taupin along with Ross {\sc Mitchell} +and Andreas {\sc Egler} created the first version of \musixtex. At last a fully +automatic procedure was coded so as to provide pleasing horizontal spacing in +multi-staff scores. + +Significant enhancements to \musixtex, which have already been mentioned, have been provided +by Stanislav {\sc Kneifl} (Type~K Postscript slurs) and +Rainer {\sc Dunker} (Lyrics handling via \verb|musixlyr.tex|). + +Since Dr.~Taupin passed away in 2003, \musixtex\ has been maintained by a +varying cast including Olivier {\sc Vogel}, Hiroaki {\sc Morimoto}, +Bob {\sc Tennent}, Andre {\sc Van Ryckeghem}, +Cornelius {\sc Noack}, and Don {\sc Simons}. + +No discussion of the history of \musixtex\ would be complete without mentioning +the contributions of Werner {\sc Icking}. From the early days of \mutex\ until +his untimely death in 2001, he served this line of software as its most prominent +proponent, beta tester, web site and mailing list editor, consultant, +problem solver, and inspiration for +many third-party enhancements including \textbf{PMX}. In fact he founded the +mailing list and the archive that now is named in his honor. The web site is +currently edited by Christian {\sc Mondrup}, the software page by Bob {\sc Tennent}, +and the mailing list by Maurizio {\sc Codogno}. + + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex new file mode 100644 index 00000000000..2c72dc1ed49 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/layout.tex @@ -0,0 +1,126 @@ +\chapter{Managing the Layout of your Score} +\section{Line and page breaking}\label{linebreak} +If every bar ends with \verb|\bar| and no other line- or page-breaking commands +are used, then the external program \verb|musixflx| will decide where to insert +line and page breaks. Line breaks will only come at bar lines. The total +number of lines will depend on the initial value of \verb|\elemskip|, which by +default is \verb|6pt| in \verb|\normalmusicsize|. + +You can force a line or page break by replacing \keyindex{bar} with +\keyindex{alaligne} or \keyindex{alapage} respectively. On the other hand, +to forbid line-breaking at a particular bar, replace \verb|\bar| +with \keyindex{xbar}. To force a line or page break where there is +no bar line, use \keyindex{zalaligne} or \keyindex{zalapage}. To mark any +mid-bar location as an optional line-breaking point, use \keyindex{zbar}. + +The heavy final double bar of a piece is one of the consequences of +\keyindex{Endpiece} or \keyindex{Stoppiece}. If you just want to terminate +the text with a simple bar, say \keyindex{stoppiece} or \keyindex{endpiece}. +To terminate it with no bar line at all, code \keyindex{zstoppiece}. + +Once you have stopped the score by any of these means, you may want to restart +it, and there are several ways to do so. If you don't need to change the key +signature, meter, or clef, +you can use \keyindex{contpiece} for no indentation, or \keyindex{Contpiece} +to indent by \keyindex{parindent}. If you do want to change some score +attribute that takes up space, for example +with \keyindex{generalsignature} after \verb|\stoppiece|, then to restart you +must use \keyindex{startpiece}. However, if you don't want \verb|\barno| reset +to 1, you must save its new starting value to \verb|\startbarno|. You may also +wish to modify instrument names or \verb|\parindent| before restarting. + +Recall that thin-thin or thin-thick double bars or blank bar lines can be +inserted without stopping by using the commands described in Section~\ref{doublebars}. +Those commands can also be used before \verb|\stoppiece|, +\verb|\alaligne|, or \verb|\alapage| + +\section{Page layout} +Blank space above and below each staff is controlled by the dimension +registers \keyindex{stafftopmarg} and \keyindex{staffbotmarg}. For more +info see Chapter~\ref{LayoutParameters}. + +The macro \keyindex{raggedbottom} will remove all vertical glue and +compact everything toward the top of page. +In contrast, the macro \keyindex{normalbottom} will restore default +behavior, in which vertical space between the systems is distributed +so that the first staff +on the page is all the way at the top and the last staff all the way at +the bottom. + +The macro \keyindex{musicparskip} will allow the existing space between +systems to increase by up to \verb|5\Interligne|. + +The following values of page layout parameters will allow the maximum material +to fit on each page, provided the printer allows the margins that are implied. + +\begin{center} +\begin{tabular}{|l|l|l|}\hline +\multicolumn{1}{|c|}{A4}&\multicolumn{1}{|c|}{letter}&\multicolumn{1}{|c|}{A4 or letter}\\\hline +\multicolumn{3}{|c|}{\tt\Bslash parindent= 0pt}\\\hline +\multicolumn{3}{|c|}{\tt\Bslash hoffset= -15.4mm}\\\hline +\multicolumn{3}{|c|}{\tt\Bslash voffset= -10mm}\\\hline +\verb+\hsize= 190mm+&\verb+\hsize= 196mm+&\verb+\hsize= 190mm+\\\hline +\verb+\vsize= 260mm+&\verb+\vsize= 247mm+&\verb+\vsize= 247mm+\\\hline +\end{tabular} +\end{center} +%avre +\zkeyindex{parindent}\zkeyindex{hoffset}\zkeyindex{voffset} +\zkeyindex{hsize}\zkeyindex{vsize} + + +\section{Page numbering, headers and footers}\index{page +number}\index{footnote} + +There are no special page numbering facilities in \musixtex; you must rely on +macros from plain \TeX. There is a count register in \TeX\ called +\verb|\pageno|. It is always initialized to $1$ and incremented by one +at every page break. By saying \keyindex{pageno}\verb|=|$n$, it can be reset to any +value at any time, and will continue to be incremented from the new value. + +By default, \TeX\ will place a page number on +every page, centered at the bottom. Unfortunately, this is not the preferred +location according to any standard practice. To suppress this default +behavior, say \keyindex{nopagenumbers}. + +One way to initiate page numbering in a more acceptable location is to take +advantage of the facts that (a) \TeX\ prints the contents of the control sequences +\keyindex{headline} and \keyindex{footline} at the top and bottom +respectively of every page, and (b) the value of \verb|\pageno| can be printed by +saying \keyindex{folio}. Therefore, for example, the following sequence of +commands, issued anywhere before the end of the first page, will cause page +numbers and any desired text to be printed at the top of every page, +alternating between placement of the number at the left and right margins, and +alternating between the two different text strings (the capitalized text in +the example): + +\begin{quote}\begin{verbatim} +\nopagenumbers +\headline={\ifodd\pageno\rightheadline\else\leftheadline\fi}% +\def\rightheadline{\tenrm\hfil RIGHT RUNNING HEAD\hfil\folio}% +\def\leftheadline{\tenrm\folio\hfil LEFT RUNNING HEAD\hfil}% +\voffset=2\baselineskip +\end{verbatim}\end{quote} + +\section{Controlling the total number of systems and pages}\index{page/line layout} + +Once all the notes are entered into a \musixtex\ score, it would be convenient +if there were a simple sequence of commands to +cause a specified number of systems to be uniformly distributed over a +specified number of pages. Unfortunately that's not directly +possible\footnote{It \textit{is} possible in \textbf{PMX}.}. +Rather, some trial and error will usually be required to achieve the desired final +layout. To this end, some combination of the following strategies may be used: + + \begin{enumerate}\setlength{\itemsep}{0ex} + \item Assign a value to the count register \keyindex{linegoal} representing +the total number of systems. The count register \keyindex{mulooseness} must be $0$ if using +\verb|\linegoal|. + \item Explicitly force line and page breaking as desired, using +the macros \verb|\alaligne|, \verb|\alapage|, \verb|\zalaligne| +or \verb|\zalapage|. + \item Adjust both \keyindex{mulooseness} and the initial value of +\keyindex{elemskip}: increasing \verb|\mulooseness| from its default of 0 will +increase the total number of systems, while changing the initial value of +\verb|\elemskip| (use \verb|\showthe\elemskip| to find its default value) may change the +total number of systems accordingly. + \end{enumerate} diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/lyrics.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/lyrics.tex new file mode 100644 index 00000000000..41d52fa221d --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/lyrics.tex @@ -0,0 +1,407 @@ +\chapter{Lyrics}\index{lyrics}\label{lyrics} +\musixtex{} itself doesn't manage lyrics very well. You should use +\verb+musixlyr+ instead, a \musixtex\ extension package for lyrics handling by Rainer Dunker. +The \TeX~source and +\href{http://icking-music-archive.org/software/musixtex/add-ons/mxlyrdoc.pdf} +{\underline{documentation}}~are included in the \musixtex~distribution. + +But first we recall briefly the older methods, which may still be useful when +only a small number of words are involved. + +\section{Native lyrics method: placing single words} +\subsection{Native \musixtex\ commands for lyrics} + \begin{enumerate}\setlength{\itemsep}{0ex} + \item An obvious solution is to use the commands +\keyindex{zcharnote} (expanded to the right), +\keyindex{lcharnote} (expanded to the left), +\keyindex{ccharnote} (centered), to post the text at any position (computed in +\verb|\internote|s) with respect to the lower line of the current staff. +The pitch should be usually negative, to have the text below the staff. + +Example:\quad +\raisebox{0ex}[4ex][3ex]{\musicintextnoclefn{\notes\sk\zcharnote{N}{Word}\wh g\sk\en}} +\quad is coded by \quad +\verb|\zcharnote{N}{Word}\wh g|~. + +\item The vertical position can also be given with a number in the commands +\keyindex{zchar} (expanded to the right), +\keyindex{lchar} (expanded to the left), +\keyindex{cchar} (centered). The number is internally multiplied by \verb|\internote|~. + +Example:\quad +\raisebox{0ex}[4ex][3ex]{\musicintextnoclefn{\notes\sk\cchar{-4}{Word}\wh g\sk\en}} +\quad is coded by \quad +\verb|\cchar{-5}{Word}\wh g|~. + +\item Of easier use are the commands \keyindex{zsong} (right of the note), +\keyindex{lsong} (left) and \keyindex{csong} (centered) which post the lyrics +at the lower staff line \ital{minus} the previous +\keyindex{interinstrument}~$n$ or the \keyindex{staffbotmarg} quantity. These +commands only have one argument, namely the lyrics text: +%\begin{center} +\keyindex{zsong}\verb|{|\ital{text}\verb|}|\quad +\keyindex{lsong}\verb|{|\ital{text}\verb|}|\quad +\keyindex{csong}\verb|{|\ital{text}\verb|}| +%\end{center} + Depending on the values of the inter-instrument spacings and margins, the +resulting vertical position might be inappropriate. Then it can be changed for +any specific $n$-th instrument until further change using +\begin{quote} +\keyindex{setsongraise}~$n$\verb|{|\ital{any \TeX-dimension}\verb|}| +\end{quote} +As an example, the following French song\\ + \begin{music} + \generalsignature{1} + \startextract + \geometricskipscale + \NOtes\zsong{Au }\qu g\en + \NOtes\zsong{clair }\qu g\en + \NOtes\zsong{de }\qu g\en + \NOtes\zsong{la }\qu h\en + \bar + \NOTes\zsong{lu- }\hu i\en + \NOTes\zsong{ne, }\hu h\en + \bar + \NOtes\zsong{mon }\qu g\en + \NOtes\zsong{a- }\qu i\en + \NOtes\zsong{mi }\qu h\en + \NOtes\zsong{Pier- }\qu h\en + \bar + \NOTes\zsong{rot, }\wh g\sk\en + \endextract + \end{music} + +\noindent was coded as: +\begin{quote}\begin{verbatim} + \generalsignature{1} + \startextract + \geometricskipscale + \NOtes\zsong{Au }\qu g\zsong{clair }\qu g\en + \NOtes\zsong{de }\qu g\zsong{la }\qu h\en\bar + \NOTes\zsong{lu- }\hu i\zsong{ne, }\hu h\en\bar + \NOtes\zsong{mon }\qu g\zsong{a- }\qu i\en + \NOtes\zsong{mi }\qu h\zsong{Pier- }\qu h\en\bar + \NOTes\zsong{rot, }\wh g\sk\en + \zendextract +\end{verbatim}\end{quote} +\end{enumerate} + +\subsection{Adapting note spacing for lyrics} + +The command \keyindex{hardlyrics}\verb|{longword}| provides a spacing that is equal to the length +of the text argument \verb|{longword}|. In the same time the argument \verb|{longword}| +is saved in \keyindex{thelyrics} + +As an example \quad +\raisebox{0ex}[5ex][4ex]% +{\musicintextnoclefn{\staffbotmarg2\Interligne% +\hardlyrics{clair}\notes\hsong{\thelyrics}\wh g\en\notes\wh{gg}\en}} +\quad is coded by: +\begin{tabular}{l} +\verb|\hardlyrics{clair}%|\\ +\verb|\notes\hsong{\thelyrics}\wh g\en|\\ +\verb|\notes\wh{gg}\en|\\ +\end{tabular} + +All notes with long lyrics need such a treatment. The commands only carry out on +\verb|\notes| (not on \verb|\Notes|, \verb|\NOtes|...). + +If you want to go back to the normal placing on an easy way, you simply can replace +'\verb|\hardlyrics|' by '\verb|\softlyrics|'. + + A complete score is given in example {\tt glorias.tex}\label{glorias} and in +{\tt gloriab.tex}, the latter exhibiting not only the song tune but also the +organ accompaniment. + +Alternate versions of \verb|\hsong| are \keyindex{dhsong} which has a fixed +length of \verb|2\noteskip| and \keyindex{thsong} whose fixed length is +\verb|3\noteskip|. These are useful when the text is set below (or above) a +collective coding of two or three notes. + +\section{Musixlyr}\label{musixlyr} + +Lyrics are best handled by the \texttt{musixlyr}\index{musixlyr} package by Rainer Dunker. +The package can be used by inserting a line in your source code: +\begin{quote}\begin{verbatim} +\input musixtex +\input musixlyr +... +\end{verbatim}\end{quote} + +The manual, the input file and a few examples are in \musixtex\ distributions, or they +may be downloaded +\href{http://icking-music-archive.org/software/musixtex/add-ons/musixlyr21c.zip} +{\underline{for Windows}} or \href{http://icking-music-archive.org/software/musixtex/add-ons/musixlyr21c.tgz} +{\underline{for \unix}}. Look at the manual for a detailed description. Here is an overview +of the commands and an example of use.\pagebreak + +\def\keyexample#1{\keyindex{#1}} + +\noindent\begin{small}\begin{tabbing} +\verb|\NOtes|\keyexample{assignlyricshere}\verb|{alto}\qa c\en|\quad\= assigning without staff number\kill +Example\> Explanation +\end{tabbing} +\vspace{-1ex} +\hrule +\vspace{-2ex} +\begin{tabbing} +\verb|\NOtes|\keyexample{assignlyricshere}\verb|{alto}\qa c\en|\quad\= assigning without staff number\kill +\keyexample{setlyrics}\verb|{sopr}{the ly_-ric words_}|\> defining the lyrics text\\ +\keyexample{copylyrics}\verb|{sopr}{alto}|\> alto has same lyrics as soprano\\ +\keyexample{appendlyrics}\verb|{alto}{more words}|\> alto lyrics is longer\\ +\keyexample{assignlyrics}\verb|2{sopr,alto}|\>soprano and alto lyrics at staff $2$\\ +\keyexample{assignlyricsmulti}\verb|{1}{2}{alto}|\>assign alto lyrics to staff $2$ of instrument $1$\\ +\verb|\NOtes|\keyexample{assignlyricshere}\verb|{alto}\qa c\en|\>assigning without staff number\\ +\keyexample{auxlyr}\verb|\assignlyrics{2}{sopr}|\> assign soprano above staff $2$\\[.8ex] +\keyexample{lyrrule}\verb|\qu c|...\keyexample{lyrruleend}\verb|\qu c|\>make a melisma by hand\\ +\keyexample{beginmel}\verb|\qu c|...\keyexample{endmel}\verb|\qu c|\>melisma, same as word extension underline\\[.8ex] +\keyexample{lyr}\verb|\qu c|\>force a syllable from lyrics text at this note or rest\\ +\keyexample{lyric}\verb|{word}\qu c|\>insert syllable 'word' at this note\\ +\verb|\loffset{2}{|\keyexample{lyric*}\verb|{1.}}\qu c|\>combine \verb|1.| with regular syllable\\ +\keyexample{lyrich}\verb|{syl}\qu c|\>same as \verb|\lyric|, but with hyphenation\\ +\keyexample{lyrich*}\verb|{}\qu c|\>same as \verb|\lyric*|, but with hyphenation\\ +\keyexample{lyricsoff}...\keyexample{lyricson}\>stop lyrics, then start again\\ +\keyexample{nolyr}\verb|\qu c|\>no syllable at this note\\[.8ex] +\keyexample{llabel}\verb|{labelname}name|\>labelling a ``go to'' target in text\\ +\keyexample{golyr}\verb|{labelname}\qu c|\>perform a jump, in music code\\[.8ex] +\keyexample{lyrpt}\verb|,\qu c|\>add a comma to the syllable under this note\\ +\keyexample{lyrnop}\verb|\qu c|\>remove last character in syllable\\ +\keyexample{lclyr}\verb|\qu c|\>make first character lower case\\ +\keyexample{llyr}\verb|\qu c|\>left justified syllable\\ +\keyexample{leftlyrtrue}\verb|\qu c|...\keyexample{leftlyrfalse}\verb|\qu c|\>start and stop left justification as the default\\ +\keyexample{lyroffset}\verb|{-4}\qu c|\>shift syllable $1$ notehead to the left\\[.8ex] +\keyexample{minlyrspace}\verb|{3pt}\qu c|\>define minimum space between the words\\ +\keyexample{forcelyrhyphenstrue}\verb|\qu c|\>always use a hyphen from now on\\ +\keyexample{forcelyrhyphensfalse}\verb|\qu c|\>remove hyphen and make one word if necessary \\ +\keyexample{showlyrshifttrue}\verb|\qu c|\>show the lyric shift\\[.8ex] +\keyexample{lyrraise}\verb|{1}{a 2\Interligne}|\>raise lyrics below staff $1$ by \verb|2\Interligne|\\ +\keyexample{lyrraisemulti}\verb|{1}{2}{a 2\Interligne}|\>raise alto lyrics above staff $2$ of instrument $1$\\ +\keyexample{lyrraisehere}\verb|{b 2\Interligne}\qu c|\>raise lyrics below this staff by \verb|2\Interligne|\\[.8ex] +\keyexample{minlyrrulelength}\verb|{2mm}|\>melismas shorter than $2$mm are not shown \\ +\keyexample{minmulthyphens}\verb|{15mm}|\>distance between hyphens in 'hyphen melisma'\\ +\verb|\def|\keyexample{lyrhyphenchar}\verb|{-}|\>chose a hyphen character\\ +\verb|\setlyrics{|\keyexample{lyrlayout}\verb|{\it}..}|\>apply italics to all lyrics lines\\ +\keyexample{verses}\verb|{,\beginmel}\qu c|\>initiate melisma at second verse\\[.8ex] +\verb|\small|\keyexample{setlyrstrut}\>adapt the vertical distance between lyrics lines\\ +\keyexample{lyrstrutbox}\verb|{10pt}|\> (re)define the distance between the lyrics lines\\[.8ex] +\keyexample{lyrmodealter}\verb|2|\>attach lyrics of staff $2$ to the upper voice\\ +\keyexample{lyrmodealtermulti}\verb|{1}{2}|\>attach lyrics of instr.\ $1$ staff $2$ to the upper voice\\ +\keyexample{lyrmodealterhere}\verb|\qu c|\>attach lyrics of this staff to the upper voice\\ +\keyexample{lyrmodenormal}\verb|2|\>restore the default behaviour\\ +\keyexample{lyrmodenormalmulti}\verb|{1}{2}|\>restore the default behaviour at staff $2$ of instr.\ $1$\\ +\keyexample{lyrmodenormalhere}\verb|\qu c|\>restore the default behaviour of this staff\\[.8ex] +\keyexample{lyrlink}\>linking two words with a '$_{_\smile}$'\\ +\keyexample{lowlyrlink}\>same as \verb|\lyrlink| but a little bit lower\\[.8ex] +\keyexample{resetlyrics}\>set word pointer to the first word in all lyrics lines\\[.8ex] +\keyexample{enableauxlyrics}\>don't use this anymore\\ +\keyexample{setsongraise}\verb|{1}{2\Interligne}|\>same as \verb|{\lyrraise}{1}{b 2\Interligne}|\\ +\keyexample{auxsetsongraise}\verb|{1}{2\Interligne}|\>same as \verb|{\lyrraisemulti}{1}{b 2\Interligne}|\\ +\keyexample{oldlyrlinestart}\>don't let the lyrics extend to the left margin\\ +\end{tabbing}\end{small} + +As a further illustration of the use of the commands, have a look at the following +example\footnote{The example is taken from the \texttt{musixlyr} manual.}: + +\medskip\medskip +%\oneversespace +\begin{music} +\input musixlyr + \resetlyrics \small +\lyrmodealter0 + \setlyrics{soprano}{bring her die Gans,} \auxlyr{\assignlyrics1{soprano}} + \copylyrics{soprano}{alto} \assignlyrics1{alto} + + \generalsignature{-2} + \advance\stafftopmarg1\Interligne + \advance\staffbotmarg2\Interligne + + \startextract\addspace\afterruleskip + \NOtes\zqu g\ql e\en + \bar + \Notes\zqu i\beginmel\ibslurd0f\ibl0f{-1}\qb0{fe}\en + \Notes\auxlyr\beginmel\ibsluru1i\zqup i\qb0d\en + \Notes\tqb0e\en + \Notes\endmel\tbslurd0e\ql c\en + \notes\ibbu0h{-1}\qb0h\tqh0g\en + \NOtes\auxlyr\endmel\tbsluru1h\zqu h\ql c\en + \bar + \NOTEs\auxlyr\lyr\zwh i% The lyrics of the whole notes + \lyr\wh b\en % must be given manually. + \endextract + \lyrmodenormal0 +\end{music} +\medskip + +%\oneversespace + +which was coded as: +\begin{quote} +\begin{verbatim} +% define lyrics above the staff +\setlyrics{soprano}{bring her die Gans,} +% lyric beneath the staff are the same +\copylyrics{soprano}{alto} +% assign alto lyrics below staff 1 on the notes with stem down +\assignlyrics1{alto} +% assign soprano lyrics above staff 1 on the notes with stem up +\auxlyr{\assignlyrics1{soprano}} +% attach both lyrics to the upper voice +\lyrmodealter0 +\generalsignature{-2} +% make place for the lyrics +\advance\stafftopmarg1\Interligne\advance\staffbotmarg2\Interligne +\startextract\addspace\afterruleskip +\NOtes\zqu g\ql e\en\bar +% start melisma in lower lyrics +\Notes\zqu i\beginmel\ibslurd0f\ibl0f{-1}\qb0{fe}\en +% start melisma in upper lyrics +\Notes\auxlyr\beginmel\ibsluru1i\zqup i\qb0d\tqb0e\en +% end melisma in lower lyrics +\Notes\endmel\tbslurd0e\ql c\en +\notes\ibbu0h{-1}\qb0h\tqh0g\en +% start melisma in upper lyrics +\NOtes\auxlyr\endmel\tbsluru1h\zqu h\ql c\en\bar +% The lyrics of the whole notes (without stem) must be given manually. +\NOTEs\auxlyr\lyr\zwh i\lyr\wh b\en +\endextract +\lyrmodenormal0 +\end{verbatim}\end{quote} + + \section{Getting enough vertical space for lyrics} + Since songs are +usually equivalent to a one-staff instrument (possibly with several voices) +the recommended solution consists in adjusting the distance between +instruments using either \keyindex{interinstrument}\verb|=|\ital{any +\TeX-dimension} to give more place below all instruments or using +\keyindex{setinterinstrument} to make more space above. Note that {\Bslash +setinterinstrument} defines spacing above and not below an instrument. Since +lyrics are usually set below the staff, the first argument of a +\verb|\setinterinstrument| should be the song instrument number \ital{minus +one}. + + In the case of a single staff tune, or if the song instrument is the lowest +one, then additional place can be provided using \keyindex{staffbotmarg}. + +\section{Fine tuning the placement of the lyrics} + When not using \verb|\hardlyrics|, on short notes, sometimes + the lyrics are shifted away from the notes or they collide with other words. + This are a few approaches to get around this: +\begin{enumerate}\setlength{\itemsep}{0ex} +\item Making more music lines for the notes to go further apart. This could be done with +\verb|\mulooseness|. +\item Stretch a bar with short notes in it by i.e.,~replacing \verb|\notes| by \verb|\NOTes|. +\item Insert space between the notes by using \verb|\sk|, \verb|\hsk|, \verb|\qsk|, \verb|\qqsk|, ... +\item Stretch a bar with short notes in it by using the command \keyindex{scale}: +\begin{verbatim} +\scale{1.6}\notes..\en\scale{1}% +\end{verbatim} +This method can be used in \textbf{PMX} but only with care, because it changes horizontal spacing +in a way that \textbf{PMX} will not be aware of. It will not move bars to the next line, but +will shorten the other bars on the line. + +As an example, the lyrics of this music line are better placed by using \verb|\scale| in +the first bar and moving to the left the word 'mon'. Note that the hyphen is removed +when there is no place for it: + + \begin{music} + \input musixlyr + \resetlyrics + \setlyrics{v1}{Au clair de la lu-ne, mon a-mi Pier-rot,}% + \assignlyrics1{}\assignlyrics1{v1}% + \staffbotmarg2\Interligne\generalsignature{1}% + \startextract + \geometricskipscale + \notes\qu{gggh}\en\bar + \Notes\hu{ih}\en\bar + \notes\qu{gihh}\en\bar + \Notes\wh g\en + \endextract +% \end{music} +%%%%% combined for saving registers %%%%% +% \begin{music}\nostartrule +% \input musixlyr + \resetlyrics + \setlyrics{v1}{Au clair de la lu-ne, \kernm1exmon a-mi Pier-rot,}% + \assignlyrics1{}\assignlyrics1{v1}% + \staffbotmarg2\Interligne\generalsignature{1}% + \startextract \geometricskipscale + \scale{1.4}\notes\qu{gggh}\en\bar\scale{1}% + \Notes\hu{ih}\en\bar + \notes\qu{gihh}\en\bar + \Notes\wh g\en + \endextract + \end{music} + +\medskip +The code of the second music line is (\verb|\assignlyrics1{}| is only needed because +lyrics are assigned before this in this manual): +\begin{quote}\begin{verbatim} + \begin{music} + \input musixlyr + \resetlyrics + \setlyrics{v1}{Au clair de la lu-ne, \kernm1exmon a-mi Pier-rot,}% + \assignlyrics1{}\assignlyrics1{v1}% + \staffbotmarg2\Interligne\generalsignature{1}% + \startextract \geometricskipscale + \scale{1.4}\notes\qu{gggh}\en\bar\scale{1}% + \Notes\hu{ih}\en\bar + \notes\qu{gihh}\en\bar + \Notes\wh g\en + \endextract + \end{music} +\end{verbatim}\end{quote} + +\item Moving a word in any direction + +\begin{small} +\noindent\begin{tabular}{ll} +\multicolumn{2}{l}{\Bslash setlyrics\{alto\}\{\Bslash kernm3ex1.$\sim\sim$firstsyllable...\}}\\ +& left-move verse number\\ +\verb|\setlyrics{alto}{...\kern1exword...}| &right-move a single word\\ +\verb|\setlyrics{alto}{...\lower2pt\hbox{word}...}|& lower a single word\\ +\verb|\setlyrics{alto}{...\raise2pt\hbox{word}...}|& raise a single word\\ +\multicolumn{2}{l}{\Bslash def\Bslash strut\{\Bslash vbox to 2\Bslash Interligne\{\}\}% +\Bslash setlyrics\{alto\}\{\Bslash lyrlayout\{\Bslash strut\}...\}} \\ +& control distance between verses\\ +\verb|\lyrlayout{\vphantom{Mp(\lowlyrlink}|& minimum distance between verses\\ +\multicolumn{2}{l}{\Bslash setbox\Bslash lyrstrutbox=\Bslash hbox\{\Bslash vphantom\{yM\Bslash lyrlink\}\}}\\ +& redefine default lyrstrut +\end{tabular} +\end{small} + +\item Placing of accents can be made easier as shows this example: +\begin{center} +\begin{minipage}{50mm} +\begin{music}\nostartrule +\input musixlyr +\catcode`\ä\active \defä{\"a} +\catcode`\ö\active \defö{\"o} +\catcode`\å\active \letå\aa +\setlyrics1{å ä ö} +\assignlyrics1{}\assignlyrics11 +\startextract + \setsongraise1{1ex}\NOtes\qa{ggg}\en +\zendextract +\end{music} +\end{minipage}% +\begin{minipage}{80mm} +\verb|\catcode`\|\"a\verb|\active \def|\"a\verb|{\"a}|\\ +\verb|\catcode`\|\"o\verb|\active \def|\"o\verb|{\"o}|\\ +\verb|\catcode`\|\aa\verb|\active \let|\aa\verb|\aa|\\ +\verb|\setlyrics1{|\aa\ \"a\ \"o\verb|} \assignlyrics1{}|\\ +\verb|\assignlyrics11|\\ +\verb|\startextract|\\ +\verb|\NOtes\qa{ggg}\en|\\ +\verb|\zendextract|\\ +\end{minipage} +\end{center} +\item Using an 8-bit encoded characterset.\label{8bit} +If you use default (Computer Modern) fonts, you will want to switch to +the EC variants +by putting +%\verb+\input plainenc\relax\inputencoding{cp850}+ % doesn't work! +\verb+\input musixec+ +after \verb+\input musixtex+ in your source file. + +\end{enumerate} + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex new file mode 100644 index 00000000000..aed55abdcfc --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/miscellaneous.tex @@ -0,0 +1,596 @@ +\chapter{Miscellaneous Other Notations} +%avre + \section{Metronomic indications} +%Metronomic indication deserves a special macro. The mention: +% +%\medskip +%\centerline{\def\nbinstruments{0}\metron{\hup}{60}} +% +%\smallskip\noindent +%is coded by \keyindex{metron}\verb|{\hup}{60}| (normally embedded in +%\keyindex{Uptext} which is in turn embedded within \verb|\notes...\en|). +% +% On the other hand, music writers sometimes want to specify that the duration +%of a previous note is equal to a distinct furthernote. Thus +% +% \smallskip +%\centerline{\def\nbinstruments{0}\metronequiv{\qup}{\qu}} +% +%\smallskip\noindent +%is coded by \keyindex{metronequiv}\verb|{\qup}{\qu}|. + +By way of example, the notations +\begin{quote} +\def\nbinstruments{0} +\metron{\hup}{60} +\quad and\quad +\def\nbinstruments{0}\metronequiv{\qup}{\qu} +\end{quote} +are +respectively coded as +\keyindex{metron}\verb|{\hup}{60}| and \keyindex{metronequiv}\verb|{\qup}{\qu}|, +which are normally placed using \keyindex{Uptext}. +Also, you can set a smaller metronomic indication like +\begin{quote} + \def\nbinstruments{0}\metron{\smallnotesize\lqu}{ca.~72} +\quad or \quad +\def\nbinstruments{0}\metron{\tinynotesize\lqu}{ca.~72} +\end{quote} +by writing +\begin{quote} +\verb|\metron{\smallnotesize\lqu}{ca.~72}| +\end{quote} +or +\begin{quote} +\verb|\metron{\tinynotesize\lqu}{ca.~72}| +\end{quote} + + + \section{Accents} + +You may use\footnote{Note from the editor: the reason the names of some of +these macros don't seem to be constructed to suggest the terms used in the +descriptions is that whoever originally defined the macros had in mind terms +that did not agree with normal English usage.} +\begin{itemize}\setlength{\itemsep}{0ex} + \item \keyindex{upz}\pitchp~(upper \itxem{staccato}) to put a dot above a note +head at pitch $p$, + \item \keyindex{lpz}\pitchp~(lower \ital{staccato}) to put a dot below a note +head at pitch $p$, + \item \keyindex{usf}\pitchp~(upper \itxem{sforzando}) to put a $>$ accent above +a note head at pitch $p$, + \item \keyindex{lsf}\pitchp~(lower \itxem{sforzando}) to put a $>$ accent below +a note head at pitch $p$, + \item \keyindex{ust}\pitchp~(upper \itxem{tenuto}) to put a +hyphen above a note head at pitch $p$, + \item \keyindex{lst}\pitchp~(lower \ital{tenuto}) to put a +hyphen below a note head at pitch $p$, + \item \keyindex{uppz}\pitchp~(upper \itxem{staccatissimo}) to put a solid vertical +wedge above a note head at pitch $p$, + \item \keyindex{lppz}\pitchp~(lower \ital{staccatissimo}) to put an inverted +solid vertical wedge below a note head at pitch $p$, + \item \keyindex{usfz}\pitchp~(upper \itxem{forzato}) to put a +``dunce cap'' above a note head at pitch $p$, + \item \keyindex{lsfz}\pitchp~(lower \ital{forzato}) to put an inverted +``dunce cap'' below a note head at pitch $p$, + \item \keyindex{upzst}\pitchp~(upper \itxem{staccato/tenuto}) to put a +dot and a hyphen above a note head at pitch $p$, + \item \keyindex{lpzst}\pitchp~(lower \ital{staccato/tenuto}) to put a +dot and a hyphen below a note head at pitch $p$, + \item \keyindex{flageolett}\pitchp~to put a +small circle above a note head at pitch $p$. +\end{itemize} +These marks are horizontally centered relative to solid note heads. To +compensate for the fact that whole notes are wider, you should use +\keyindex{wholeshift}\verb|{|\ital{Any nonspacing macro}\verb|}| to center accents +and other items (e.g.,~\verb|\Fermataup|) above a whole note. + +There are also variants of the most common accents\footnote{Thanks to Klaus +{\sc Bechert}'s corrections.} which will be automatically positioned +above or below a beam. They are spelled like the corresponding normal +accent, but preceded with the letter \verb|b|, and their argument, instead of +the pitch, is the beam reference number . Thus + +\medskip +\begin{music}\nostartrule +\startextract +\Notes\ibu0f3\busfz0\qb0f\bupz0\qb0g\bust0\qb0h% + \buppz0\qb0i\busf0\qb0j\butext0\tqh0k\en +\Notes\Ibl0lg5\blsfz0\qb0l\blpz0\qb0k\blst0\qb0j% + \blppz0\qb0i\blsf0\qb0h\bltext0\tqb0g\en +\zendextract +\end{music} +\noindent was coded as +\begin{quote}\begin{verbatim} \startextract +\Notes\ibu0f3\busfz0\qb0f\bupz0\qb0g\bust0\qb0h% + \buppz0\qb0i\busf0\qb0j\butext0\tqh0k\en +\Notes\Ibl0lg5\blsfz0\qb0l\blpz0\qb0k\blst0\qb0j% + \blppz0\qb0i\blsf0\qb0h\bltext0\tqb0g\en +\zendextract +\end{verbatim}\end{quote} +\zkeyindex{busfz} +\zkeyindex{bupz} +\zkeyindex{bust} +\zkeyindex{buppz} +\zkeyindex{busf} +\zkeyindex{butext} +\zkeyindex{blsfz} +\zkeyindex{blpz} +\zkeyindex{blst} +\zkeyindex{blppz} +\zkeyindex{blsf} +\zkeyindex{bltext} + +The macros \verb|\bltext| and \verb|\butext| are detailed in the next section, +where the mystery of why they produce the number~$3$ is resolved. + + +\section{Numbers and brackets for xtuplets}\label{tuplet} + +The following table lists all the special macros that place a number indicating +an xtuplet. Some also place a bracket above or below the notes, and are +intended for use with unbeamed notes. +In the table, $p$ is a pitch, $k$ is a number, $n$ is a beam number, +$w$ is a bracket width in \verb|\internote|s, and $s$ is the bracket slope as +a multiple of $1.125$~degrees. The macro \verb|\txt| contains a default number +which will be placed by the first and third through sixth macros, +and is initially defined as \verb|\def\txt{3}|. +The macro +\verb|\tuplettxt| serves the same role for the last two macros. +The font used is +\verb|\txtfont| which is by default \verb|\eightit| but may be re-defined. +The first four +are to be used with beamed xtuplets. As indicated in the +last column, the last four produce a sloping bracket and are to be used with +unbeamed xtuplets. + + +\begin{center} + \begin{tabular}{lclcc} + \hline + ~ & Number & ~ & Needs & ~ \\ + Macro and arguments & printed & Where invoked & Bracket \\ + \hline + \verb|\triolet|\pitchp & \verb|\txt| & before beam & none \\ + \verb|\xtuplet|\itbrace{k}\pitchp & $k$ & before beam & none \\ + \verb|\butext|\itbrace{n} & \verb|\txt| & before note at number & none \\ + \verb|\bltext|\itbrace{n} & \verb|\txt| & before note at number & none \\ + \verb|\uptrio|\pitchp\itbrace{w}\itbrace{s} & \verb|\txt| & before first note & solid \\ + \verb|\downtrio|\pitchp\itbrace{w}\itbrace{s} & \verb|\txt| & before first note & solid \\ + \verb|\uptuplet|\pitchp\itbrace{w}\itbrace{s} & \verb|\tuplettxt| & before first note & with gap \\ + \verb|\downtuplet|\pitchp\itbrace{w}\itbrace{s} & \verb|\tuplettxt| & before first note & with gap \\ + \hline + \end{tabular} +\end{center} +\medskip + +Here are some examples of the first six macros in the table:\\ +\vskip-3pt +\begin{music} +\parindent0mm +\generalmeter{\meterfrac24} +\nostartrule +\startpiece +\addspace\afterruleskip +\notesp\xtuplet6n\isluru0l\ibl0l0\qb0{lllll}\tslur0l\tqb0l\en\bar +\notesp\triolet n\isluru0l\Ibl0ln2\qb0{lm}\tslur0n\tqb0n\en +\notesp\ibslurd0k\Ibl0km2\qb0k\bltext0\qb0l\tdbslur0m\tqb0m\en\bar +\Notesp\triolet o\isluru0l\ql{lm}\tslur0n\ql n\en\bar +\Notesp\uptrio o16\ql l\en\notesp\cl n\en +%avrb +\Notesp\downtrio O16\qu e\en\notesp\cu g\en +%avre +\endpiece +\end{music} +whose coding is +\begin{quote}\begin{verbatim} +\notesp\xtuplet6n\isluru0l\ibl0l0\qb0{lllll}\tslur0l\tqb0l\en\bar +\notesp\triolet n\isluru0l\Ibl0ln2\qb0{lm}\tslur0n\tqb0n\en +\notesp\ibslurd0k\Ibl0km2\qb0k\bltext0\qb0l\tdbslur0m\tqb0m\en\bar +\Notesp\triolet o\isluru0l\ql{lm}\tslur0n\ql n\en\bar +\Notesp\uptrio o16\ql l\en\notesp\cl n\en +\Notesp\downtrio O16\qu e\en\notesp\cu g\en +\end{verbatim}\end{quote} +\zkeyindex{xtuplet}\zkeyindex{triolet} + +\medskip +Next are examples using \keyindex{uptuplet} and \keyindex{downtuplet}. +A re-definition of \verb|\tuplettxt| inside a notes group only applies +inside that group and leaves the default definition intact. +To get the +number properly centered in the gap, you must include some extra space after +the number in the definition of \verb|\tuplettxt|. As you can see in +the last bar, if the span becomes too small, the macros still won't provide +enough room for the number in the gap; in this case it would be better to +use the macros without gaps. + +% Examples: +% +% Draw a triplet bracket over the notes, starting at pitch "p", +% 1.25\noteskip wide, with a slope up of 3-3/8 degrees: +% +% \uptuplet p{1.25}3 +% +% Draw a sextuplet bracket under the notes, starting at pitch "a", +% 2.5\noteskip wide, with a slope down of 4-1/2 degrees: +% +% \def\tuplettxt{\smallppff 6\/\/} +% \downtuplet{a}{2.5}{-4} + +\begin{music} +%\input tuplet +\parindent0mm +\generalmeter{\meterfrac24} +%\startpiece +\nostartrule +\startextract +\addspace\afterruleskip +\notesp\triolet o\Ibl0ln2\qb0{lm}\tqb0n\en +\notesp\Ibl0km2\qb0k\bltext0\qb0l\tqb0m\en\bar +\notesp\def\tuplettxt{5\/\/}\uptuplet o{4.1}2\cl{jklmn}\en\bar +\Notesp\uptuplet o16\ql l\en\notesp\cl n\en +\Notesp\downtuplet O16\qu e\en\notesp\cu g\en\bar +\notesp\uptuplet o16\ccl l\en\notesp\cccl n\en +\notesp\downtuplet O16\ccu e\en\notesp\cccu g\en +%\endpiece +\endextract +\end{music} + +\noindent with coding + +\begin{quote}\begin{verbatim} +\parindent0mm +\generalmeter{\meterfrac24} +\startextract +\addspace\afterruleskip +\notesp\triolet o\Ibl0ln2\qb0{lm}\tqb0n\en +\notesp\Ibl0km2\qb0k\bltext0\qb0l\tqb0m\en\bar +\notesp\def\tuplettxt{5\/\/}\uptuplet o{4.1}2\cl{jklmn}\en\bar +\Notesp\uptuplet o16\ql l\en\notesp\cl n\en +\Notesp\downtuplet O16\qu e\en\notesp\cu g\en\bar +\notesp\uptuplet o16\ccl l\en\notesp\cccl n\en +\notesp\downtuplet O16\ccu e\en\notesp\cccu g\en +\end{verbatim}\end{quote} + + \section{Ornaments} + + \subsection{Arpeggios} +\ital{Arpeggios} (i.e.~~~\arpeggio{-2}3) can be coded with the macro +\keyindex{arpeggio}\pitchp\itbrace{m} +where $p$ is the pitch of +the base of the arpeggio symbol and $m$ is its height in units of +\verb|\interligne|, the distance from one staff line to the next. It should be +issued before the affected chord. It is +automatically positioned to the left of the chord, but inserts no spacing. +Its variant \keyindex{larpeggio} sets the arpeggio symbol roughly +one note head width to the left of the default position, and is intended to +avoid collision with single accidentals on chord notes. + + \subsection{Arbitrary length trills} + There are two styles of arbitrary length trills\index{trills}, each with two +variants. +For a trill with preassigned length, use \keyindex{trille}\pitchp\itbrace{l} +for \hbox to 1cm{\noteskip1cm\trille11\hss} or +\keyindex{Trille}\pitchp\itbrace{l} for~~\hbox to +2cm{\noteskip1cm\Trille12\hss}, where $p$ is the pitch and $l$ the length in +current \verb|\noteskips|. + +To let \musixtex\ compute the length of the trill, or if it extends across a +system break, you can use \keyindex{Itrille}$n$\pitchp\ to start a plain +trill, where $n$ is a trill reference number between 0 and 5; then +\keyindex{Ttrille}$n$ to terminate it. To get the {\it tr} at the +beginning, use \keyindex{ITrille}$n$\pitchp\ to start the trill and +\verb|\Ttrille|$n$ to close it. + +\begin{sloppypar} +As with other elements, you can specify the maximum number +directly with \keyindex{setmaxtrills}\verb|{|$m$\verb|}|, where $70$ is the number of \itxem{sharps} in the +signature and $s<0$ the number of \itxem{flats}\footnote{We once saw a +score in G-minor where the signature consisted of two flats (B and E) plus +one sharp (F). This is not directly supported by \musixtex.}. To override +the common key signature for instrument $n$, use +\keyindex{setsign}\verb|{|$n$\verb|}{|$s$\verb|}|. Note that differing +key signatures cannot be assigned to different staves of the same instrument. + +\subsection{Meters} + +A common \itxem{meter} for all staves can be specified by + \keyindex{generalmeter}\verb|{|$m$\verb|}|,\label{generalmeter} +where $m$ describes the appearance of the meter indication, and can take several +different forms. If the meter is a \ital{fraction} (e.g.,~$3/4$) the command is + \verb|\generalmeter{|\keyindex{meterfrac}\verb|{3}{4}}|. +Other possible tokens~$m$ are \keyindex{meterC}, +\keyindex{allabreve}, \keyindex{reverseC}, \keyindex{reverseallabreve} and +\keyindex{meterplus}. These are illustrated in the following example: + + %\check +\begin{music} +\generalmeter\meterC +\nostartrule +\parindent0pt\startpiece +\NOtes\qa{cegj}\en +\generalmeter\allabreve\changecontext +\NOTes\ha{ce}\en +\generalmeter\reverseC\changecontext +\NOTEs\zbreve g\en +\generalmeter\reverseallabreve\changecontext +\NOTEs\zwq g\en +\generalmeter{\meterfrac{3\meterplus2\meterplus3}8}\changecontext +\Notes\Tqbu ceg\Dqbl jg\Tqbu gec\en\setemptybar +\endpiece +\end{music} +\noindent which was coded as: +\begin{quote}\begin{verbatim} +\generalmeter\meterC +\nostartrule +\parindent0pt\startpiece +\NOtes\qa{cegj}\en +\generalmeter\allabreve\changecontext +\NOTes\ha{ce}\en +\generalmeter\reverseC\changecontext +\NOTEs\zbreve g\en +\generalmeter\reverseallabreve\changecontext +\NOTEs\zwq g\en +\generalmeter{\meterfrac{3\meterplus2\meterplus3}8}\changecontext +\Notes\Tqbu ceg\Dqbl jg\Tqbu gec\en\setemptybar +\endpiece +\end{verbatim}\end{quote} + +To override the common meter for any staff, use +\keyindex{setmeter}\verb|{|$n$\verb|}{{|$m_1$\verb|}{|$m_2$\verb|}{|$m_3$\verb|}{|$m_4$\verb|}}|.\linebreak +This works just like \verb|\setclef|. For example, +\verb|setmeter3{{\meterfrac{12}8}\allabreve}| +sets the meter to 12/8 for the first staff of the third instrument, and +\ital{alla breve} for the second staff. + +To insert extra space before the meter is +written, use \keyindex{meterskip}$d$ where $d$ is any hard \TeX\ +%dimension\footnote{{\Bslash\tt meterskip} is not a macro but a +dimension\footnote{{\tt\Bslash meterskip} is not a macro but a +dimension register. Whatever follows it +must be a \TeX\ dimension and {\it it must not be enclosed in braces}.}. +The assignment must occur outside \verb|\startpiece...\endpiece| and will be +reset to zero after first meter is posted. + +\subsection{Instrument names} + +To set an \itxem{instrument name}, use +\keyindex{setname}\verb|{|$n$\verb|}{|\ital{name of the instrument}\verb|}|. +This will place the name in the space to the left of the +first staff or group of staves for instrument $n$. To specify the amount of space +available, use \verb|\parindent|$d$ where $d$ is any hard \TeX\ dimension. + \section{Groupings of instruments}\label{curlybrackets} +By default, all staves in a system will be joined +at the left by a thin, vertical rule. In addition, if an instrument has more than +one staff, they will be joined by a big, curly brace. Now we introduce a way +to delineate groups of instruments or choirs with a square brace containing two parallel +vertical rules, the left one thick and the right one thin. This is commonly used +to group together the voices in a choir. + +If there is only one choir, this can be done with + \begin{quote} +\keyindex{songtop}\onen\\ +\keyindex{songbottom}\verb|{|$m$\verb|}| +\end{quote} +\noindent where $m$ and $n$ are the instrument numbers of the first +and last voices. An example is shown in Section~\ref{song}. + +If there is more than one choir to be set off with +square braces, each one can be specified with + \begin{quote} +\keyindex{grouptop}\verb|{|$g$\verb|}{|$n$\verb|}|\\ +\keyindex{groupbottom}\verb|{|$g$\verb|}{|$m$\verb|}| +\end{quote} +\noindent where $m$ and $n$ are the instrument numbers of the first +and last voices of group number~$g$. \musixtex{} allows up to three +groups, numbered from $1$ to $3$. The command \verb|\songtop| is equivalent +to \verb|\grouptop 1|; \verb|\songbottom| is equivalent to +\verb|\groupbottom 1|. + +With \ttxem{musixadd.tex} or \ttxem{musixmad.tex}, the allowable number of +groups is increased to four. +Alternatively, you can specify the allowable number of groups to $m$ by +\keyindex{setmaxgroups}\verb|{|$m$\verb|}|% +\footnote{Using $m>4$ may require e-\TeX.}. +\label{musixmad_setmaxgroups} + +If any of the instruments grouped this way has more than one staff, the +heavy curly brace will be shifted to the left of the square brace. + +Previously defined square braces can be removed by declaring +\verb|\songtop| less than \verb|\songbottom|. The same applies to +\verb|\grouptop| and \verb|\groupbottom| for the same group number. + + An alternate command allows you to specify all choirs at once: +\begin{quote} + \keyindex{akkoladen}\verb|{{|{\it lower\_1\/}\verb|}{|{\it upper\_1\/}% + \verb|}{|{\it lower\_2\/}\verb|}{|{\it upper\_2\/}\verb|}{|% + {\it lower\_3\/}\verb|}{|{\it upper\_3\/}\verb|}}| +\end{quote} +\noindent where {\it lower\_n\/} and {\it upper\_n\/} are instrument +numbers that denote the span of bracket number $n$. For +setting fewer than three brackets, just omit all unneeded +\verb|{|{\it lower\_n\/}\verb|}{|{\it upper\_n\/}\verb|}|~pairs. + +For example, + \verb|\instrumentnumber{5}\akkoladen{{1}{2}{3}{5}}| +\noindent yields the first example below, with five single-staff instruments +divided into two groups. +The second example has two instruments, the first (lower) with two staves and the +second with three. Each instrument is set off by default with a curly bracket. + +If for some reason you want more than one \ital{instrument}\ grouped +within a curly +bracket, then you can use the +command + + \keyindex{curlybrackets}\verb|{{|{\it lower\_1\/}\verb|}{|{\it upper\_1\/}% + \verb|}{|{\it lower\_2\/}\verb|}{|{\it upper\_2\/}\verb|}...| + +\noindent to be used as illustrated in the third example below.\\ +\begin{small} +\begin{minipage}[t]{29ex} +\begin{music} + % just to avoid wasting space ... + \sepbarrules + \smallmusicsize + \instrumentnumber{5} \akkoladen{{1}{2}{3}{5}} + \startextract\notes\en\bar\notes\en\zendextract +\end{music} +\begin{quote}is coded as: +\begin{verbatim} + \sepbarrules + \smallmusicsize + \instrumentnumber{5} + \akkoladen{{1}{2}{3}{5}} + \startextract + \notes\en\bar\notes\en + \zendextract +\end{verbatim}\end{quote} +\end{minipage} +\begin{minipage}[t]{27ex} +\begin{music} + \sepbarrules + \smallmusicsize + \instrumentnumber2 \setstaffs12\setstaffs23 + \startextract \notes\en\bar\notes\en\zendextract +\end{music} +\begin{quote}is coded as: +\begin{verbatim} + \sepbarrules + \smallmusicsize + \instrumentnumber2 + \setstaffs12 + \setstaffs23 + \startextract + \notes\en\bar\notes\en + \zendextract +\end{verbatim}\end{quote} +\end{minipage} +\begin{minipage}[t]{27ex} +\begin{music} + \sepbarrules + \smallmusicsize + \instrumentnumber5 %\setstaffs12\setstaffs23 + \curlybrackets{1235} + \startextract \notes\en\bar\notes\en\zendextract +\end{music} +\begin{quote}is coded as: +\begin{verbatim} + \sepbarrules + \instrumentnumber5 + \smallmusicsize + \curlybrackets{1235} + \startextract + \notes\en\bar\notes\en + \zendextract +\end{verbatim}\end{quote} +\end{minipage} +\end{small} + + + + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesTypeK.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesTypeK.tex new file mode 100644 index 00000000000..bd44a61f63d --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesTypeK.tex @@ -0,0 +1,366 @@ + \chapter{Postscript Slurs, Ties and Hairpins}\label{PostscriptSlurs} + +\input musixps + + +All of the aforementioned limitations of font-based slurs can be circumvented +by using type~K Postscript slurs\footnote{``K'' stands for Stanislav Kneifl, +the developer of the type~K Postscript slur package.}. As well as slurs, the package includes +ties and crescendos. +Its use is very similar to font-based slurs, and in fact identical if only +the elementary slur and tie initiation and termination macros are used. + +In order to use type~K Postscript slurs, ties and hairpins, you must first place \texttt{musixps.tex} +anywhere \TeX\ can find it. You must also place \texttt{psslurs.pro} +somewhere that \texttt{dvips} can find it. + +The \index{mxsk font}\texttt{mxsk} font is required for ``half ties,'' which +are special symbols that are used by default for the second portion of a tie +that crosses a line break. If you like +this treatment you must install the font in your \TeX\ system. However, perfectly +acceptable line-breaking ties will appear if you invoke \keyindex{nohalfties}, +and then you will not have to install this font. + +Once the software mentioned in the prior two paragraphs is installed and the +\TeX\ filename database is refreshed, the type~K package can be +invoked by including the command \verb|\input musixps| +near the beginning of your source file. +The resulting dvi file should then be converted into Postscript using \textbf{dvips}. +If desired, a PDF file can then be generated with \textbf{ps2pdf}, \textbf{ghostscript}, +or \textbf{Adobe Acrobat} (see Section~\ref{using} for more information on this). + +Two minor inconveniences with type~K Postscript slurs are that (1) they won't appear +in many dvi previewers, and (2) they won't appear in PDF files generated with +\textbf{pdftex} or \textbf{dvipdfm}. The former limitation can be circumvented by using a Postscript +viewer such as \textbf{GSview}. The latter simply requires that you create an intermediate +Postscript file with \textbf{dvips}, then make the PDF with any of the software +mentioned above. + + +\section{Initiating and terminating type K Postscript slurs} + +Basic usage of type K slurs is the same as for font-based slurs. To initiate one, +use for example \verb|\isluru0g| to start an upper slur with ID 0 above a virtual note +at pitch level {\tt g}. To terminate one, use a command like +\verb|\tslur0i| which terminates the slur with ID 0 on a +virtual note at pitch level {\tt i}. +Both types of commands are non-spacing and must precede the first or last +note under the slur. + +You can shift the starting or ending point slightly to the left +or right by substituting one of the commands \keyindex{ilsluru}, +\keyindex{ilslurd}, \keyindex{irsluru}, +\keyindex{irslurd}, \keyindex{trslur} or \keyindex{tlslur}. + +You can control the shape of type~K slurs with variants of +the termination command. To make the slur a bit flatter than default use +\keyindex{tfslur}0f; a bit higher, \keyindex{thslur}0f; higher still, +\keyindex{tHslur}0f; or +even higher, \keyindex{tHHslur}0f. These commands have an effect like +\keyindex{midslur} does for font-based slurs. + +All combinations of the shifting and curvature variants are allowed, +e.g.\ \verb|\trHHslur|. + + +The following examples demonstrate how much better the type K slurs perform +in the extreme situations of the prior two typeset examples. The coding is +exactly the same as above except that \verb|\input musixps| has been added: +\begin{quote}\begin{verbatim} +\begin{music}\nostartrule +\input musixps +\startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0s\ql s\en +.... +\end{verbatim}\end{quote} + +\begin{music}\nostartrule +\instrumentnumber{1} +\generalmeter{\meterfrac34} +\startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0j\ql j\en + \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0n\ql n\en\zendextract +\startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0s\ql s\en + \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0z\ql z\en\zendextract + +\startextract +\NOTes\isluru0c\ql c\en\notes\tslur0j\ql j\en\bar +\NOTes\isluru0c\ql c\en\notes\tslur0n\ql n\en +\NOTes\isluru0c\ql c\en\notes\tslur0s\ql s\en\bar +\NOTes\isluru0c\ql c\en\notes\tslur0z\ql z\en +\zendextract +\end{music} + + + + +For maximal control over type K slurs, you can use one of the commands +\keyindex{iSlur}~$npvh$ and +\keyindex{tSlur}~$npvhca$, where the characters in +$npvhca$ respectively stand for ID number, height, vertical offset, horizontal offset, +curvature, and angularity. +All offsets are in \verb|internote|, and the slur direction is determined +by the sign of the vertical offset. See the comments in \verb|musixps.tex| +for precise definitions of the other parameters. Examples of permissible forms for +these commands are +\verb|iSlur0c11| and \verb|tSlur0{!d}11{.2}0|. + +The next example shows how you can use \verb|iSlur| in difficult +circumstances: + + +\begin{music}\nostartrule +\nobarnumbers +\generalsignature1% +\generalmeter{\meterfrac{2}{4}}% +\nostartrule +\startextract +\NOtes\zchar{-8}{\Bslash irslur...\Bslash tlslur}\irslurd0{'b}\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tlslur0{'b}\ql b\ql b\en\bar +% +\NOtes\zchar{-8}{\Bslash irslur...\Bslash tlfslur}\irslurd0{'b}\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tlfslur0{'b}\ql b\ql b\en\bar +% +\NOtes\zchar{-8}{\Bslash iSlur...\Bslash tSlur}\iSlur0{'b}{-.5}3\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tSlur0{'b}{.5}{-1}{.3}0\ql b\ql b\en +\zendextract +\end{music} +\noindent with this coding: + +\begin{quote}\begin{verbatim} +\NOtes\irslurd0{'b}\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tlslur0{'b}\ql b\ql b\en\bar +% +\NOtes\irslurd0{'b}\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tlfslur0{'b}\ql b\ql b\en\bar +% +\NOtes\iSlur0{'b}{-.5}3\zhl b\sk\zq{!e}\qu{'c}\en\bar +\NOtes\zh{'d}\zhu{`f}\off{7.2pt}\tSlur0{'b}{.5}{-1}{.3}0\ql b\ql b\en +\end{verbatim}\end{quote} + + +The ID number for a slur, tie or crescendo should +normally range from $0$ to $9$. If it is bigger +than nine but less than $15$, +the object can cross a line break but not a page break. If bigger than +14 but less than $2^{31}$, it can't be broken at all, + nor can a slur termination be positioned at a beam with + e.g., \verb|\tbsluru{17684}{16}|; however \verb|\ibsluru{152867}{16}| is okay. + +It's also okay to have opened simultaneously a slur, tie and crescendo all +with the same ID, or a slur, tie and decrescendo, but not a crescendo and +decrescendo. + +\def\emen{{\tt\char123}$n${\tt\char125\char123}$m${\tt\char125}} + +` +\section{Type~K Postscript beam slurs} +Type~K beam slurs are defined differently than the font-based ones: +They require as parameters both a slur ID number $n$ and a beam ID number $m$, +but that's all. The commands are +\keyindex{iBsluru}\emen, \keyindex{iBslurd}\emen, and +\keyindex{tBslur}\emen. +They must be placed \ital{after} the beam initiation or termination command. +Type~K slurs may start on one beam and end on another. +For example, + +\begin{quote}\begin{verbatim} +\Notes\ibu0i0\iBsluru00\qb0{eh}\tbu0\qb0i\ibu0j0\qb0{jl}\tbu0% + \slurtext{6}\tBslur00\qb0e\en +\end{verbatim}\end{quote} + +\noindent produces +%\begin{center} +%\includegraphics[scale=1]{./mxdexamples/psbeamslur.eps} +%\end{center} + +\begin{music}\nostartrule\startextract +\Notes\ibu0g2\iBsluru00\qb0{eh}\tbu0\qb0i\ibu0j0\qb0{jl}\tbu0% + \slurtext{6}\tBslur00\qb0e\en +\zendextract +\end{music} + +This example also illustrates the use of the macro +\keyindex{slurtext}. It has just one parameter---some text to be +printed---and it centers it just above or below the midpoint of +the next slur that is closed. +This works only for non-breaking slurs; if the slur is broken, +the text +disappears\footnote{If you insist on viewing files with a dvi viewer that +doesn't display +type~K slurs, you may also find that +figures placed with \keyindex{slurtext} will appear at the end of the +slur rather than the middle.}. +%The placing of the slur text is done with a very dirty Postscript +%hack, so I am not really sure that everything you want to typeset +%will be placed at the correct position (if you are interested, see +%the end of psslurs.pro for details). If you find something that won't +%work, let me know. + +% DAS: why do we need this ??? +%\paragraph{General coding for Postscript slurs and ties of type K.} +%This can be done by: +%\begin{quote}\begin{verbatim} +%\i[h.shift]slur[u|d]{slur ID}{note height} +%\t[h.shift][slur height]slur{slur ID}{note height} +%\iBslur[u|d]{slur ID}{beam ID} +%\tB[slur.height]slur{slur ID}{beam ID} +%\end{verbatim}\end{quote} +%\noindent where h.shift can be 'l', 'r' or nothing +%and slur.height can be 'f', nothing, 'h', 'H' or 'HH' +% +%Example: \keyindex{tlfslur} means 'terminate left flat slur'. +% +% +%There are also simple slurs with same invocation and parameters as the +%original ones. + +\section{Type~K Postscript ties} +All of the foregoing Type~K slur commands +except the shape-changing ones +have counterparts for ties. Simply +replace ``\verb|slur|'' with ``\verb|tie|'', and for terminations omit +the pitch parameter. Type~K ties not only are positioned differently by +default, but they also have different shapes than slurs. If you want to change +the shape of a tie, redefine \verb|\pstiehgt| from its default of $0.7$. + +\section{Dotted type K slurs and ties.}%please check the capital D(otted) +A slur or tie can be made dotted simply by entering \keyindex{dotted} anywhere before +the beginning of the slur or tie. Only the first slur or tie following this +command will be affected. On the other hand, if you enter \keyindex{Dotted}, then \emph{all} +slurs and ties from this point forward will be dotted until you say +\keyindex{Solid}. Furthermore, inside \verb|\Dotted...\Solid| you can make any individual +slur or tie solid saying \verb|\solid| before its beginning. + +\section{Avoiding collisions with staff lines.} +In Postscript it is possible to do computations that would be very hard +to implement directly in TeX. Type~K slurs can use this facility to check whether +the curve of a slur or tie is anywhere nearly tangent to any staff line, and if +so, to adjust +the altitude of the curve to avoid the collision. By default this feature is turned +on. +You can disable it either +globally (\keyindex{Nosluradjust}, \keyindex{Notieadjust}) or locally +(\keyindex{nosluradjust}, \keyindex{notieadjust}), and you can also turn it +back on globally (\keyindex{Sluradjust}, +\keyindex{Tieadjust}) or locally (\keyindex{sluradjust}, \keyindex{tieadjust}). +Here ``locally'' +means that the command will only affect the next slur or tie to be opened. + +\section{Type K Postscript hairpins}\label{kcresc} + +There are two different types. The first type is normally initiated with either +\keyindex{icresc}\onen~or \keyindex{idecresc}\onen, and terminated with +\keyindex{tcresc}\onen, where $n$ is a hairpin index, +which is virtually unlimited but certain restrictions apply if it exceeds $14$. +The altitude is set by the value of \keyindex{setcrescheight}, which by default +is $-5$ and which must be expressed numerically. Note that +\keyindex{tcresc}~is the same as \keyindex{tdecresc}. + +You can shift the starting or ending point horizontally by replacing the +foregoing macros with +\keyindex{ilcresc}, \keyindex{ildecresc}, +\keyindex{ircresc}, \keyindex{irdecresc}, +\keyindex{tlcresc}, \keyindex{tldecresc}, +\keyindex{trcresc}, \keyindex{trdecresc}, +for example to make space for an alphabetic dynamic mark. + +The second form of Postscript hairpin macros allows individual and arbitrary +specification of the altitude and horizontal offset. The syntax is +\keyindex{Icresc}\itbrace{n}\itbrace{h}\itbrace{s}, where $h$ is the +altitude---which must be numerical---and $s$ is the horizontal offset +in \verb|\internote|. Similar syntax obtains for \keyindex{Idecresc}\ +and \keyindex{Tcresc}. + +These hairpins may span several lines. If one of them spans three systems +then the height of the middle section can be adjusted with +\keyindex{liftcresc}\itbrace{n}\itbrace{h}. The height of the first and last +parts of a broken crescendo will be defined by the height parameter in +\keyindex{Icresc}~or \keyindex{Tcresc}. + +There are numerous other nuances and shorthand macros that are described +in the comments in \verb|musixps.tex|. + +As an example of a Postscript hairpin, + +\begin{music}\nostartrule +\generalmeter{\meterfrac{12}8} +\startextract +\Notes\ccharnote{-8}{\ppp}\Icresc0{-7}6\ca{bdegh'bde}\en +\Notes\Tcresc0{-4}{-2}\zcharnote{-5}{\fff}\ca{'f}\en +\zendextract +\end{music} + +\noindent was coded as +\begin{quote}\begin{verbatim} +\input musixps +\generalmeter{\meterfrac{12}8} +\startextract +\Notes\ccharnote{-8}{\ppp}\Icresc0{-7}6\ca{bdegh'bde}\en +\Notes\Tcresc0{-4}{-2}\zcharnote{-5}{\fff}\ca{'f}\en +\zendextract +\end{verbatim}\end{quote} + + +\section{Line-breaking slurs, ties and hairpins} +Tyle K slurs, ties and crescendos going across line breaks are handled +automatically. In fact they can go over more lines than two (this is +true also for ties, though it would be somewhat strange). + +There is a switch \verb|\ifslopebrkslurs| that controls the default +height of the end point +of the first segment of all broken slurs. By default the height will be +the same as the beginning. To have it raised by \verb|3\internote|, simply +issue the command \keyindex{slopebrkslurstrue}. To revert to the default, +use \keyindex{slopebrkslursfalse}. + +To locally override the default height of the end of the first segment, +use the command \keyindex{breakslur}\enpee, +which sets the height for slur number $n$ to pitch $p$, just like with +font-based slurs. + +You can raise or lower the starting point of the second segment of a broken slur +with the command \keyindex{liftslur}\verb|{|$n$\verb|}{|$h$\verb|}|, with +parameters slur ID and relative offset in +\verb|\internote|s measured from the slur beginning. Its effect is +the same as \keyindex{Liftslur} for font-based slurs, except it is not +necessary to code +it within \verb|\atnextstaff{}|, just anywhere inside the slur. + +As already mentioned, anything with $\mathrm{ID}<10$ is broken fully automatically, but +you should be careful about slurs, ties and crescendos with $10\le\mathrm{ID}<15$. +These cannot cross page breaks, although they can cross line breaks. + +If the second segment of a broken tie is less than 15pt long, then by +default it will have a special shape which begins horizontally. These shapes are +called \ital{half ties} and are contained in the font \index{mxsk font}\verb|mxsk|. +Of course if they are to be used, the font files must be integrated into the +\TeX\ installation. Their use can be turned off with \keyindex{nohalfties} +and back on with \keyindex{halfties}. + +%\paragraph{Backwards compatibility.} +%There are several ``aliases'' which allow to use the old, bitmapped slur +%commands for PS slurs without any change. There are however a few differences: +%the \keyindex{invertslur} is not implemented yet and +%the \keyindex{curve} and \keyindex{midslur} macros have no effect. + +%\paragraph{Memory requirements.} +\enlargethispage*{4ex} +\section{A few final technical details} +Each \verb|\i...| and \verb|\t...| +produces a \verb|\special| command, which must be stored in TeX's main memory. +Therefore, if too many slurs occur in one page, some memory problems could +occur. The only solution is to use font-based slurs. +%The only solutions are to use Big\TeX\ +%BigTex? it is apparently the mascot for the Texas State Fair + +Type~K slurs need the Postscript header file +\index{psslurs.pro}\texttt{psslurs.pro} to be included in the +output Postscript file. This is made to happen by the \TeX\ command +\verb|\special{header=psslurs.pro}|, which is automatically +included when you \verb|\input musixps|. So normally this is not +of concern. However if you wish to extract a subset of pages from +the master \verb|dvi| file using \index{dvidvi}\texttt{dvidvi}, then +you have three options: (1)~include the first page in the subset, +(2)~manually issue the +\verb|\special| command in the \TeX\ source for the first page of the subset, or +(3)~use the option \texttt{-h psslurs.pro} when you run \texttt{dvips}. + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesfont.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesfont.tex new file mode 100644 index 00000000000..233db6e0360 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/slurstiesfont.tex @@ -0,0 +1,566 @@ +\chapter{Font-based Slurs, Ties and Hairpins} +Two fundamentally different implementations of slurs, ties, and hairpins are +available. First, there are the +original \ital{font-based} versions. These are constructed with traditional +\TeX\ font characters that were created with \MF\ and stored in \TeX\ font files. +Second, it is now possible +to generate these shapes directly with Postscript, dispensing altogether with +the font characters\footnote{Please do not be confused by the availability of +Postscript versions of the font-based slur fonts (along with all other \musixtex\ fonts). +Once installed in a \TeX\ system, +their function and use are 100\% transparently identical with bitmapped versions +of the slur fonts. On the other +hand, Postscript slurs are functionally distinct from font-based slurs, and only + share some of the same syntax.}. We shall first describe the font-based versions, +then Type~K Postscript slurs, which are one of two available Postscript slur +options\footnote{An +alternate approach to Postscript slurs, called {\it Type~M} after its developer +Hiroaki {\sc Morimoto}, is available from the +\href{http://icking-music-archive.org/software/indexmt6.html} +{\underline{Icking Music Archive}}.}. If you plan to use Type~K Postscript slurs, +you may skip directly to Chapter~\ref{PostscriptSlurs}. + +Font-based slurs and ties provided by \musixtex\ can be divided into two categories: +\label{simpleslur} +\begin{itemize}\setlength{\itemsep}{0ex} + \item Those where the complete slur symbol is composed of a single + character from one of the slur fonts, and + \item those where the slur symbol is composed of three distinct + characters, to form the beginning, middle and end of the slur. +\end{itemize} +The former are called \ital{simple slurs} and the latter, +\ital{compound slurs}. In many cases the distinction between the two is +invisible to the user, in that many of the macros described below will +automatically select between the two types. However, there are other macros +that allow simple slurs to be forced. + +The next few sections describe the usual method of slur coding, where the +choice between simple or compound slurs is made automatically. +In this case, slurs are initiated and terminated by separate macros, +similar to beams. + + \section{Font-based slur initiation} +A slur must be initiated \ital{before} +the spacing note on which the slur begins, and terminated \ital{before} the +note on which it ends. + +The basic slur initiation macro is +\keyindex{isluru}\enpee, which initiates an upper slur, with reference +number $n$, beginning on a note at pitch $p$. The starting point of the slur is +centered above a virtual quarter note head at pitch~$p$\footnote{The slur will start in the same place regardless of whether there is +{\it actually} a note at pitch $p$.}. +Similarly, \keyindex{islurd}\enpee\ initiates a lower slur. +These slurs are terminated by coding +\keyindex{tslur}\enpee\ where $n$ is the reference number and $p$ is the +termination pitch. + +As with beams, the reference number $n$ by default can take values from $0$ to $5$, or +up to $8$ or $11$ respectively if \ttxem{musixadd.tex} or \ttxem{musixmad.tex} is included. +You can also specify the maximum number +directly with \keyindex{setmaxslurs}\verb|{|$m$\verb|}| where +$7\hu{>f}% + \zchar{12}{\bs hl}\loff{\zchar{-4}{\bs cdsh}}\cdsh l\hl l% + \zchar{12}{\bs qu}\zchar{-4}\^\qu{^f}% + \zchar{12}{\bs ql}\loff{\zchar{-4}{\bs csh}}\csh l\ql l% + \zchar{12}{\bs cu}\zchar{-4}=\cu{=f}% + \zchar{12}{\bs cl}\loff{\zchar{-4}{\bs cna}}\cna l\cl l% + \zchar{12}{\bs ccu}\zchar{-4}\_\ccu{_f}% + \zchar{12}{\bs ccl}\loff{\zchar{-4}{\bs cfl}}\cfl l\ccl l% + \zchar{12}{\bs cccu}\zchar{-4}<\cccu{\csname end#1 + \endcsname \@checkend {#1}\expandafter \endgroup \if@e... +<*> \end + +If you really absolutely need more capacity, +you can ask a wizard to enlarge me. + + +Here is how much of TeX's memory you used: + 1 string out of 493724 + 10 string characters out of 6145898 + 54450 words of memory out of 5000000 + 3432 multiletter control sequences out of 15000+600000 + 3640 words of font info for 14 fonts, out of 8000000 for 9000 + 1328 hyphenation exceptions out of 8191 + 5000i,0n,5000p,10b,8s stack positions out of 5000i,500n,10000p,200000b,80000s +No pages of output. diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/transposition.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/transposition.tex new file mode 100644 index 00000000000..0303abac690 --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/transposition.tex @@ -0,0 +1,221 @@ + \chapter{Transposition and Octaviation}\label{octaviation} +Two different subjects are discussed in this section. First, there +are commands that cause notes to be printed at different pitches than +entered. We shall refer to this as \ital{logical} transposition. +Second, there are notations for octaviation that do +not otherwise alter the appearance of the score, which we'll call +\ital{octaviation lines}. + +\section{Logical transposition and octaviation} + +Logical transposition is controlled by an integer-valued \TeX\ register +\keyindex{transpose}. Its default value is 0. If you enter +\verb|\transpose=|$n$, then all subsequent pitches specified by +letters will be transposed by $n$ positions. Normally this method would be +used to transpose an entire piece. Pitches specified with +numbers will not be affected, so if you think you will ever want to +transpose a piece, you should enter all note pitches with letters. + +One way to transpose up or down by one octave would be to set +\keyindex{transpose} to $7$ or $-7$. For example, to make a quarter note +octave as a chord, you could define a macro as +\verb|\def\soqu#1{\zq{#1}{\transpose=7 \qu{#1}}}|. +Note that because \verb|\transpose| is altered inside a pair of braces, the +effect of the alteration is only local and does not reach outside the braces. + + Another more convenient way to transpose locally up or down by one octave +makes use respectively of the characters +\verb|'| (close-quote, interpreted as an \itxem{acute accent}) and \verb|`| (open-quote, interpreted as +a \itxem{grave accent}), +placed immediately before the letter specifying the pitch. So +for example \verb|\qu{'ab}| is equivalent to \verb|\qu{hi}| and +\verb|\qu{`kl}| is equivalent to \verb|\qu{de}|. These characters have +cumulative effects but in a somewhat restricted sense. They will alter the value of +\verb|\transpose|, but only until changing to a different staff or +instrument or encountering \verb|\en|, at which time it will be reset to the +value it had before the accents were used. (That value is stored in +another register called \keyindex{normaltranspose}). Thus for example +\verb|\qu{''A'A}| and \verb|\qu{''A}\qu{'A}| +are both equivalent to \verb|\qu{ah}|. + +At any point it is possible to reset the \verb|\transpose| register +explicitly to the value it had +when entering \verb|\notes|, by prefacing a pitch indication with +``\verb|!|''. Thus \verb|\qu{!a'a}| always +gives the note \verb|a| and its upper octave \verb|h|, shifted by the +value of {\Bslash transpose} at the beginning of the current +\verb|\notes...\en| group, regardless of the number of grave and +acute accents occurring previously within that group. + + \section{Behavior of accidentals under logical transposition}\label{transposeaccids} + The above processes indeed change the vertical position of the note heads +and associated symbols (e.g., stems and beams), but they don't take +care of the necessary changes of accidentals when transposing. For example, +suppose an F$\sharp$ occurs in the key of C major. If the piece is +transposed up three steps to the key of F, the F$\sharp$ should logically +become a +B$\natural$. But if all you do is set \verb|\transpose=3|, the note will +be typeset as a B$\sharp$. In other words, \musixtex\ will interpret the~\verb|\sh| +or~\verb|^| to mean ``print a $\sharp$''. + +Naturally there is a solution, but it requires the typesetter to plan +ahead: To force accidentals to behave well under transposition, they +must be entered according to the \ital{relative +accidental convention}. To alert \musixtex\ that you are using this +convention to enter notes, you must issue the command +\keyindex{relativeaccid}. Once you have done this, the meaning of +accidental macros and characters (accents) in the input file is changed. +Under the convention, when for example a +\verb|\sh| is entered, it indicates a note that is supposed to sound +\ital{one half step higher than what it would normally be under the +current key signature}. Flats and naturals on entry similarly indicate +notes one half step lower or at the same pitch as what the key signature +dictates. \musixtex\ will take account of the key signature, and print +the correct symbol according to the modern notational convention, +provided you have explicitly entered the transposed key signature using +for example \verb|\generalsignature|. + +Many people have a difficult time understanding how this works, so +here are two simple examples in great detail. Consider the case already mentioned +of the F$\sharp$ in the key of C major. With +\verb|\relativeaccid| in effect, it should still be entered as \verb|\sh f|, and +with no transposition it will still appear as F$\sharp$. With +\verb|\transpose=3| and \verb|\generalsignature{-1}| it will appear +(correctly) as B$\natural$. Conversely, suppose you want to enter a +B$\natural$ when originally in the key of F. With \verb|\relativeaccid| in effect, it +should be entered as \verb|\sh i|. (That's the part that people +have the most trouble with: ``If I want a natural, why do I have to enter a sharp?'' Answer: +``Go back and re-read the previous paragraph very carefully.'') With no transposition, it will be +printed as B$\natural$. Now to transpose this to C major, set +\verb|\transpose=-3| and \verb|\generalsignature0|, and it will appear +as F$\sharp$. + +If you have invoked \verb|\relativeaccid| and then +later for some reason wish to revert to the ordinary convention, +enter \keyindex{absoluteaccid}. + +\section{Octaviation lines} +The first kind of notation for octave transposition covers a +horizontal range that must be specified at the outset. The sequence + +\medskip +\begin{music}\nostartrule +\startextract +\NOTEs\octfinup{10}{3.5}\ql{!'a}\ql b\ql c\ql d\en +\zendextract +\end{music} +\noindent can be coded as +\verb|\NOTEs\octfinup{10}{3.5}\qu a\qu b\qu c\qu d\en|. +\zkeyindex{octfinup} +Here, the dashed line is at staff level 10 and extends \verb|3.5\noteskip|. +Conversely, lower octaviation can be coded. For example + +\begin{music}\nostartrule +\startextract +\NOTEs\octfindown{-5}{2.6}\ql j\ql i\ql h\en +\zendextract +\end{music} +\noindent is coded as +\verb|\NOTEs\octfindown{-5}{2.6}\ql j\ql i\ql h\en|. +\zkeyindex{octfindown} + To change the text that is part of these notations, redefine one of +the macros \keyindex{octnumberup} or \keyindex{octnumberdown}. The reason for +the distinction between up and down is that, traditionally, upper octaviation +only uses the figure +``8'' to denote its beginning, while lower octaviation uses a more +elaborate indication such as \hbox{\ppffsixteen8$^{va}$\kern 0.2em\eightit bassa}. Thus + +\bigskip +\begin{music}\nostartrule +\startextract +\NOTEs\def\octnumberup{\ppffsixteen8$^{va}$}\octfinup{10}{2.5}\qu c\qu d\qu e\en +\zendextract +\end{music} +\noindent is coded + +\noindent\verb|\NOTEs\def\octnumberup{\ppffsixteen8$^{va}$}\octfinup{10}{2.5}\qu c\qu d\qu e\en| + +\noindent while + +\begin{music} +\startextract +\NOTEs\def\octnumberdown{\ppffsixteen8$_{ba}$}\octfindown{-5}{2.5}\ql l\ql +k\ql j\en +\endextract +\end{music} +\noindent is coded as +\begin{quote}\begin{verbatim} +\NOTEs\def\octnumberdown{\ppffsixteen8$_{ba}$}% + \octfindown{-5}{2.5}\ql l\ql k\ql j\en +\end{verbatim}\end{quote} + +The foregoing constructions have the drawbacks that (a) the span must be +indicated ahead of time and (b) they cannot extend across a line break. +Both restrictions are removed with the use of the alternate macros \keyindex{Ioctfinup}, +\keyindex{Ioctfindown} and +\keyindex{Toctfin}. + +{\Bslash Ioctfinup}~$np$ indicates an upward octave transposition line with reference number +$n$ and with dashed line at pitch $p$. +By default $n$ must be in the range $[0,5]$, but +you can specify a larger maximum number +directly with \keyindex{setmaxoctlines}\verb|{|$m$\verb|}| +where $79$, +but it can also be a letter. +{\Bslash Ioctfindown}~$np$ starts a lower octave transposition line at pitch $p$ +(usually $p<-1$). Both extend until terminated with {\Bslash Toctfin}. The +difference between {\Bslash Ioctfinup}~$n$ and {\Bslash Ioctfindown}~$n$ is +the relative position of the figure ``8'' with respect to the dashed line, and +the sense of the terminating hook As shorthand, \keyindex{ioctfinup} is equivalent to +\verb|\Ioctfinup 0| and \keyindex{ioctfindown} is equivalent to +\verb|\Ioctfindown 0|. + +For example, + +\medskip + \begin{music}\nostartrule +\instrumentnumber{1} +\setstaffs12 +\setclef1{6000} +% +\startextract +\notes\wh{CDEFGH}|\wh{cde}\Ioctfinup 1p\wh{fgh}\en +\bar +\notes\Ioctfindown 2A\wh{IJKLMN}|\wh{ijklmn}\en +\bar +\Notes\wh{NMLKJI}|\wh{nmlkji}\Toctfin1\en +\bar +\Notes\wh{HGFED}\Toctfin2\wh C|\wh{hgfedc}\en +\zendextract +\end{music} +\noindent is coded as +\begin{quote}\begin{verbatim} +\begin{music}\nostartrule +\instrumentnumber{1} +\setstaffs12 +\setclef1{6000} +% +\startextract +\notes\wh{CDEFGH}|\wh{cde}\Ioctfinup 1p\wh{fgh}\en +\bar +\notes\Ioctfindown 2A\wh{IJKLMN}|\wh{ijklmn}\en +\bar +\Notes\wh{NMLKJI}|\wh{nmlkji}\Toctfin1\en +\bar +\Notes\wh{HGFED}\Toctfin2\wh C|\wh{hgfedc}\en +\zendextract +\end{music} +\end{verbatim}\end{quote} + %\check + + The elevation of octaviation lines may be changed in midstream using +\keyindex{Liftoctline}~$n$$p$, where $n$ is the reference number of the + octave line, and $p$ a (possibly negative) number of +\keyindex{internote}s (staff pitch positions) by which elevation of the dashed line should be changed. +This may be useful when octaviation lines extend over several systems and the +elevation needs to be changed in systems after the one where it was initiated. + diff --git a/Master/texmf-dist/doc/generic/musixtex/musixdoc/writingnotes.tex b/Master/texmf-dist/doc/generic/musixtex/musixdoc/writingnotes.tex new file mode 100644 index 00000000000..7c52700cb7c --- /dev/null +++ b/Master/texmf-dist/doc/generic/musixtex/musixdoc/writingnotes.tex @@ -0,0 +1,283 @@ + \chapter{Writing Notes}\label{autostemdirections} +There are two major kinds of note macros, those that include a space (of +length \keyindex{noteskip}) after +the printed symbol, and those that don't cause any space. A single-line melody would be +written using the first type. All notes of a chord except the last would +use the second. + +Another distinction concerns stemmed notes. Some macros explicitly set the +stem direction with either ``\verb|u|'' or ``\verb|l|'' contained in the name of +the macro. On the other hand, an ``\verb|a|'' in the macro's name usually signifies +\ital{automatic} stem direction selection. In this case notes below the middle +staff line will get up stems, otherwise down. + +Note pitches can be specified either by letters or numbers. If no transposition +or octaviation is in effect, letters ranging +from \verb|a| to \verb|z| represent notes starting with the A below +middle C. Upper case letters from \verb|A| to \verb|N| represent pitches +two octaves lower than their lower case counterparts. Any letter can be used in +any clef, but some users may +prefer to use the lower case letters in treble clef, and the upper case ones +in bass clef. + +Alternatively, a one- or two-digit, positive or negative integer can always be used. +The number represents +the vertical position on the staff, with \verb|0| for the lowest line and +\verb|1| for the space right above, \ital{regardless of the clef}. +Unlike with letters, the +associated pitch will depend on the clef, and notes entered this way are +immune to transposition and octaviation. + +Notes lower than \verb|A| and higher than \verb|z| can be entered, with +either numbers as just described, or with octaviation as will be explained in +Chapter~\ref{octaviation}. + + \section{Normal (unbeamed) spacing notes}\label{NormalNotes} +In the following, \verb|{|$p$\verb|}| signifies a pitch specification as +described above. However it +is understood that if the pitch is a single character, the brackets are +not necessary, provided that if it is a letter, a space separates the +macro from the letter. + + +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{breve}{\tt\char123}$p${\tt\char125} :]breve (\hbox to 8pt{\zbreve1\hss}) . + \item[\keyindex{longa}{\tt\char123}$p${\tt\char125} :]longa (\hbox to8pt{\zlonga1\hss}) . + \item[\keyindex{longaa}{\tt\char123}$p${\tt\char125} :]longa with automatic stem direction\footnote{Editor's note: Evidently there is no explicit up-stemmed longa} . + \item[\keyindex{zmaxima}{\tt\char123}$p${\tt\char125} :]maxima(\hbox to16pt{\zmaxima1\hss}) . + \item[\keyindex{wq}{\tt\char123}$p${\tt\char125} :]arbitrary duration note (\hbox to8pt{\zwq1\hss}) +(also used as alternate representation of a \ital{breve}). + \item[\keyindex{wqq}{\tt\char123}$p${\tt\char125} :]long arbitrary duration note +(\hbox to8pt{\zwqq1\hss}) (also used as alternate +representation of a \ital{longa}). + \item[\keyindex{wh}{\tt\char123}$p${\tt\char125} :]whole note. + \item[\keyindex{hu}{\tt\char123}$p${\tt\char125} :]half note with stem up. + \item[\keyindex{hl}{\tt\char123}$p${\tt\char125} :]half note with stem down. + \item[\keyindex{ha}{\tt\char123}$p${\tt\char125} :]half note with automatic stem direction + \item[\keyindex{qu}{\tt\char123}$p${\tt\char125} :]quarter note with stem up. + \item[\keyindex{ql}{\tt\char123}$p${\tt\char125} :]quarter note with stem down. + \item[\keyindex{qa}{\tt\char123}$p${\tt\char125} :]quarter note with automatic stem direction. + \item[\keyindex{cu}{\tt\char123}$p${\tt\char125} :]eighth note\footnote{The ``{\tt c}'' +within this macro name stands for the equivalent British term ``crotchet''} with stem up. + \item[\keyindex{cl}{\tt\char123}$p${\tt\char125} :]eighth note with stem down. + \item[\keyindex{ca}{\tt\char123}$p${\tt\char125} :]eighth note with automatic stem direction. + \item[\keyindex{ccu}{\tt\char123}$p${\tt\char125} :]sixteenth note with stem up. + \item[\keyindex{ccl}{\tt\char123}$p${\tt\char125} :]sixteenth note with stem down. + \item[\keyindex{cca}{\tt\char123}$p${\tt\char125} :]sixteenth note with automatic stem direction. + \item[\keyindex{cccu}{\tt\char123}$p${\tt\char125} :]$32$nd note with stem up. + \item[\keyindex{cccl}{\tt\char123}$p${\tt\char125} :]$32$nd note with stem down. + \item[\keyindex{ccca}{\tt\char123}$p${\tt\char125} :]$32$nd note with automatic stem direction. + \item[\keyindex{ccccu}{\tt\char123}$p${\tt\char125} :]$64$th note with stem up. + \item[\keyindex{ccccl}{\tt\char123}$p${\tt\char125} :]$64$th note with stem down. + \item[\keyindex{cccca}{\tt\char123}$p${\tt\char125} :]$64$th note with automatic stem direction. + \item[\keyindex{cccccu}{\tt\char123}$p${\tt\char125} :]$128$th note with stem up. + \item[\keyindex{cccccl}{\tt\char123}$p${\tt\char125} :]$128$th note with stem down. + \item[\keyindex{ccccca}{\tt\char123}$p${\tt\char125} :]$128$th note with automatic stem direction. +\end{description}\end{quote} + As an example, the sequence + + %\check +\begin{music}\nostartrule +\startextract +\Notes\cu c\cl j\en\bar +\Notes\ccu c\ccl j\en\bar +\Notes\cccu c\cccl j\en\bar +\Notes\ccccu c\ccccl j\en\bar +\Notes\cccccu c\cccccl j\en +\zendextract +\end{music} + \noindent was coded as +\begin{quote}\begin{verbatim} +\Notes\cu c\cl j\en\bar +\Notes\ccu c\ccl j\en\bar +\Notes\cccu c\cccl j\en\bar +\Notes\ccccu c\ccccl j\en\bar +\Notes\cccccu c\cccccl j\en +\end{verbatim}\end{quote} + + + +For \keyindex{breve} there is a possibility of +confusion with a command in \TeX's math mode that has exactly the same name. +However, there will generally be no problem, because inside +\verb|\startpiece...\endpiece|, +\verb|\breve| will take the musical meaning, while outside, it will have the +mathematical one. +If for some reason you need the math \verb|\breve| inside, you can use +\verb|\endcatcodesmusic...\breve...\catcodesmusic|. + + \section{Non-spacing note heads} +These macros are used to create chords. Any number of them can be entered +in sequence, followed by a spacing note. All of the note heads will be +joined to the spacing note and the stem length will automatically be adjusted +as needed. + +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{zq}{\tt\char123}$p${\tt\char125} :]quarter (or shorter) note head. + \item[\keyindex{zh}{\tt\char123}$p${\tt\char125} :]half note head. +\end{description}\end{quote} +%das ??? +% \begin{remark} Notes of duration longer than whole notes are +%always non-spacing. This saves one useless definition, since these notes are +%always longer than other simultaneous ones. If needed they can be followed by +%\keyindex{sk} to force spacing. +%\end{remark} + + \section{Shifted non-spacing note heads} +These symbols are used mainly +in chords containing an interval of a \ital{second}. They provide note +heads shifted either to the left or right of the default position by +the width of one note head. + +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} +\item[\keyindex{rw}{\tt\char123}$p${\tt\char125} :]whole note head shifted right. +\item[\keyindex{lw}{\tt\char123}$p${\tt\char125} :]whole note head shifted left. +\item[\keyindex{rh}{\tt\char123}$p${\tt\char125} :]half note head shifted right\footnote{Some may not +have realized that half and whole note heads have different shapes}. +\item[\keyindex{lh}{\tt\char123}$p${\tt\char125} :]half note head shifted left. +\item[\keyindex{rq}{\tt\char123}$p${\tt\char125} :]quarter note head shifted right. +\item[\keyindex{lq}{\tt\char123}$p${\tt\char125} :]quarter note head shifted left. +\end{description}\end{quote} + + \section{Non-spacing notes} +These macros provide normal notes, with stems if applicable, but without any +following space. +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} + \item[\keyindex{zhu}\pitchp~:]half note with stem up but no spacing. It acts like +\verb|\hu| for chord building, i.e., it will join together any immediately +preceding non-spacing note heads. + \item[\keyindex{zhl}\pitchp~:]half note with stem down but no spacing. It acts like +\keyindex{hl} for chord building. + \item[\keyindex{zqu}\pitchp~:]quarter note with stem up but no spacing. It acts like +\verb|\qu| for chord building. + \item[\keyindex{zql}\pitchp~:]quarter note with stem down but no spacing. It acts +like \verb|\ql| for chord building. + \item[\keyindex{zcu}\pitchp, \keyindex{zccu}, \keyindex{zcccu}, + \keyindex{zccccu}, \keyindex{zcccccu} +:]eighth, ..., note with stem up but no spacing. They act like +\verb|\cu| for chord building. + \item[\keyindex{zcl}\pitchp, \keyindex{zccl}, \keyindex{zcccl}, + \keyindex{zccccl}, \keyindex{zcccccl} +:]eighth, ..., note with stem down but no spacing. They act +like \verb|\cl| for chord building. + \item[\keyindex{rhu}\pitchp, \keyindex{rhl}, \keyindex{rqu}, \keyindex{rql}, + \keyindex{rcu}, \keyindex{rcl} :] \verb|\rhu| acts like \verb|\zhu|, + but the note is shifted one note width to the right; others analogous. + \item[\keyindex{lhu}\pitchp, \keyindex{lhl}, \keyindex{lqu}, \keyindex{lql}, + \keyindex{lcu}, \keyindex{lcl} :]same + as above, but the note is shifted one note width to the left. + \item[\keyindex{zw}\pitchp~:]whole note with no following space. + \item[\keyindex{zwq}\pitchp~:]arbitrary duration note + (\hbox to8pt{\zwq1\hss}) with no following space. + \item[\keyindex{zbreve}\pitchp~:]breve + (\hbox to8pt{\zbreve1\hss}) with no following space. + \item[\keyindex{zlonga}\pitchp~:]longa + (\hbox to8pt{\zlonga1\hss}) with no following space. + \item[\keyindex{zmaxima}\pitchp~:]maxima + (\hbox to16pt{\zmaxima1\hss}) with no following space. +\end{description}\end{quote} + %\check + +\section{Spacing note heads} + +Although not needed in normal music scores, these may be useful in +very special cases. + +\begin{quote}\begin{description}\setlength{\itemsep}{0ex} +\item[\keyindex{nh}{\tt\char123}$p${\tt\char125} :]spacing half note head. +\item[\keyindex{nq}{\tt\char123}$p${\tt\char125} :]spacing quarter note head. +\end{description}\end{quote} + +\noindent As an example, the sequence + +\begin{music}\nostartrule + \startextract +\notes\nq c\nq j\en\barre +\Notes\nh c\nh j\en\barre +\notes\nq {cdef}\en +\zendextract +\end{music} + +\noindent was coded as + +\begin{quote}\begin{verbatim} +\notes\nq c\nq j\en\barre +\Notes\nh c\nh j\en\barre +\notes\nq {cdef}\en +\end{verbatim}\end{quote} + +Non spacing variants are also provided, namely +\keyindex{znh} and \keyindex{znq}. +% DAS: why??? + + \section{Dotted notes}\label{dots} + +By appending one or two \verb|p|'s (for ``pointed'') to the name, many of the +macros just introduced provide one or two dots after the notehead: +\keyindex{whp}\pitchp, \keyindex{whpp}, +\keyindex{zwp}, \keyindex{zwpp}, +\keyindex{hup}, \keyindex{hupp}, +\keyindex{hlp}, \keyindex{hlpp}, +\keyindex{zhp}, \keyindex{zhpp}, +\keyindex{qup}, \keyindex{qupp}, +\keyindex{qlp}, \keyindex{qlpp}, +\keyindex{zqp}, \keyindex{zqpp}, +\keyindex{cup}, \keyindex{cupp}, +\keyindex{clp}, \keyindex{clpp}, +\keyindex{qbp} and \keyindex{qbpp}. +Naturally, the ones that start with ``\verb|z|'' are used in chords. +The dot(s) will be raised if the note is on a line. + +A more explicit way uses one of the macros \keyindex{pt}{\tt\char123}$p${\tt\char125}, +\keyindex{ppt}, or \keyindex{pppt} right +before any note macro to place one to three dots after the normal note +head at pitch $p$. Again they will be raised if on a line. In fact this is the only +way to get a triple-dotted note. +For example a +quarter note with one dot could be coded \verb|\pt h\qu h|, with two dots +as \keyindex{ppt}\verb| h\qu h| and with three as +\keyindex{pppt}\verb| h\qu h|. + +Yet another method for posting a dot is to insert a \ital{period} before +the letter representing the pitch. Thus \verb|\qu{.a}| is equivalent to +either \verb|\pt a\qu a| or \verb|\qup a| . This may be useful when +using \ital{collective coding}, which will be discussed in the next +section. + +Non-spacing dotted notes can be produced using +\keyindex{zhup}, \keyindex{zhlp}, \keyindex{zqup}, \keyindex{zqlp}, +\keyindex{zcup}, \keyindex{zclp}, \keyindex{zqbp}, +and similarly with two \verb|p|'s for +double-dotted notes. + +As a matter of style, if two voices share one staff, the dots in +the lower voice should be lowered if the note is on a line. For +this you can use \keyindex{lpt}{\tt\char123}$p${\tt\char125} and +\keyindex{lppt}{\tt\char123}$p${\tt\char125}. + +\section{Sequences of equally spaced notes; collective coding} +\label{CollectiveCoding} + +It isn't necessary to write a separate macro +sequence \verb|\notes...\en| for every individual column of notes. +Rather, a single such macro can contain all the notes in all staves +over an extended horizontal range, as long as all spacings are equal or +multiples of a unique value of \keyindex{noteskip}. +The notes in each staff could be entered one after another as normal +spacing notes as already described in Section~\ref{NormalNotes}. Then +each spacing note will cause the insertion point to advance horizontally by the +operative value of \verb|\noteskip| defined by the choice of +\verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc. Of course in such sequences +non-spacing chord notes can be entered right before their associated +spacing note. If you need to skip forward by one \verb|\noteskip|, for +example after a quarter note when there are two eighth notes in +another staff, you can use \keyindex{sk}. + +If there are only spacing notes in such a sequence, a further +simplification is available, called \ital{collective coding}. For instance +\verb|\qu{cdefghij}| writes the C major scale in quarters with +up stems. Similarly \verb|\cl{abcdef^gh}| writes the +\ital{A-minor} scale in non-beamed eighths. (Here ``\verb|^|'' represents +a sharp). If necessary a void can be inserted in a collective coding sequence +by using~\verb|*|\index{*}. Not all note-generating macros can be +used to perform collective coding, but most of them can. -- cgit v1.2.3