% % This file is part of MusiXTeX % % MusiXTeX is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2, or (at your option) % any later version. % % MusiXTeX is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with MusiXTeX; see the file COPYING. If not, write to % the Free Software Foundation, Inc., 59 Temple Place - Suite 330, % Boston, MA 02111-1307, USA. % % % musixdoc.tex : the document % \documentclass[twoside,11pt,a4paper]{report} \usepackage{multicol} \usepackage{musixdoc} \usepackage{etex} \usepackage[dvips,bookmarks=true,bookmarksnumbered=true,bookmarksopen=false,colorlinks=true,pdfborder={0 0 0},pdfstartview={FitH},pdfmenubar=false]{hyperref} \usepackage{url} \usepackage{indentfirst} \usepackage[ansinew]{inputenc} \makeatletter \def\notesintext#1{% no staff lines, no clefs {\let\extractline\relax \setlines10\smallmusicsize \nobarnumbers \nostartrule \staffbotmarg0pt \setclefsymbol1\empty \global\clef@skip0pt \startextract\addspace{-\afterruleskip}#1\zendextract}} \makeatother \def\musicintext#1#2{% normal {\let\extractline\relax \smallmusicsize \nobarnumbers \staffbotmarg0pt \setclef1{#1} \startextract\addspace{-\afterruleskip}#2\endextract}} % macro adapted to insert music without clef: \def\musicintextnoclef#1{% no clef small {\let\extractline\relax \smallmusicsize \nobarnumbers \staffbotmarg0pt \setclefsymbol1\empty \startextract\addspace{-\afterruleskip}#1\endextract}} \def\musicintextnoclefn#1{% no clef normal {\let\extractline\relax \nobarnumbers \staffbotmarg0pt \setclefsymbol1\empty \startextract\addspace{-\afterruleskip}#1\endextract}} \def\musictex{Music\TeX{}} \def\onen{{\tt\char123}$n${\tt\char125}} \def\pitchp{{\tt\char123}$p${\tt\char125}} \def\itbrace#1{{\tt\char123}$#1${\tt\char125}} \def\nochange{(\ital{NOT to be changed})} \ifx\setendvolta\undefined\def\setendvolta{\endvolta}\fi \ifx\setendvoltabox\undefined\def\setendvoltabox{\endvoltabox}\fi \startmuflex\makeindex \begin{document} %\changebarsep 10 pt \title{\Huge\bf\musixtex\raise1.5ex\hbox{\large\copyright}\\[\bigskipamount] \LARGE\bf Using \TeX{} to write polyphonic\\or instrumental music\\\Large\sl Version 1.15~-- April, 2011} \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{} \maketitle \clearpage %\check \pagenumbering{roman}\setcounter{page}{2} %\thispagestyle{empty} \null \vfill \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...\\[\smallskipamount] Hans {\sc Kuykens} \end{flushright} \begin{center} \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 Free Software Foundation for advising us. 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{center} \clearpage \chapter*{Preface to Version T.113} %\thispagestyle{empty} The main author of \musixtex{}, Daniel Taupin, died all too early in a 2003 climbing accident. The \musixtex\ community was shocked by this tragic and unexpected event. You may read some tributes to Daniel Taupin which are archived at the \href{http://icking-music-archive.org}{\underline{Werner Icking Music Archive}}. Now, almost two years after his death, we would like to help keep his excellent work alive and current by assembling a new release. This new version corrects various minor bugs without adding any new functionality. At the same time it incorporates directly into the distribution some additional packages: \begin{itemize}\setlength{\itemsep}{0ex} \item Type 1 (postscript) versions of all the \musixtex{} fonts, created by Takanori Uchiyama; \item Postscript Slur Package K (Ver 0.92, 12~May~02) by Stanislav Kneifl; \item musixlyr (Ver 2.1c, 12 June 03) a \musixtex{} extension package for lyrics handling, by Rainer Dunker. \end{itemize} We would like to thank the authors of these packages for generously agreeing to allow their contributions to be included in the main \musixtex{} package. We have left the remainder of this manual largely as Daniel Taupin left it, except we have updated various references and provided dynamic links to archived versions where possible. This documentation is rather technical and is probably not the best way to begin typesetting music. If you are a beginner, you should visit the software section of the \href{http://icking-music-archive.org/software/indexmt6.html} {\underline{Werner Icking Music Archive}}. In particular, we recommend \href{http://icking-music-archive.org/software/pmx/pmxccn.pdf} {\underline{Cornelius Noack's tutorial}}. It contains helpful information for getting started with \musixtex, as well as a tutorial for \textbf{PMX}, a preprocessor for \musixtex\ with a much simpler input language, and a brief introduction to \textbf{M-Tx}, a preprocessor for \textbf{PMX}~which eases the inclusion of lyrics. \bigskip \begin{flushright} In the name of the community, Olivier Vogel, July 30, 2005 \end{flushright} %\clearpage \chapter*{Preface to Version T.114} %\thispagestyle{empty} In order to expedite the release of version T.113 of \musixtex, only the most essential modifications were made to the manual. With version T.114 the manual has been extensively edited from cover to cover. Some material has been rearranged, and references to \musictex, the immediate predecessor to \musixtex, have been removed. The software itself remains very stable. Only the slightest changes have been made since version T.113. It remains true that this is the definitive reference to all features of \musixtex, but also that it is not the best place for a novice user to start. The \href{http://icking-music-archive.org/software/indexmt6.html} {\underline{Werner Icking Music Archive}}\ contains excellent and detailed instructions for installing \musixtex{} and the strongly recommended preprocessors \textbf{PMX} (for instrumental music) and \textbf{M-Tx} (for vocal) under \href{http://icking-music-archive.org/software/musixtex/musixtex-for-unix.html} {\underline{Linux/\unix}} or \href{http://icking-music-archive.org/software/musixtex/musixwinstall.pdf} {\underline{Windows 2000}}. Once the software is installed, most common music typesetting tasks can be accomplished entirely by using one of these 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, so he may insert the necessary \musixtex\ commands into the preprocessor's input file as so called inline \TeX. \href{http://icking-music-archive.org/software/pmx/pmxccn.pdf} {\underline{Cornelius Noack's tutorial}} is an important resource which, in addition to gently introducing the novice to \textbf{PMX} and \textbf{M-Tx}, gives further details on installing Postscript slur facilities. \begin{flushright} Don Simons, Andre van Ryckeghem, Cornelius Noack, August 30, 2005 \end{flushright} \chapter*{Preface to Version 1.15} From the time of \musixtex's predecessor \musictex\ until the previous version of \musixtex~(T.114), the maximum numbers of simultaneous appearances of certain basic musical elements were limited: 12 instruments, 12 or 6 beams depending on the type, 12 font-based slurs% \footnote{\texttt{musixps.tex} by Stanislav Kneifl provides different limits.}% , and 6 trills or octave lines, even with \texttt{musixmad.tex}. For some purposes these limits are too tight, and because of them, developers of open-source GUI music editors may deem \musixtex{} unworthy of support in their software. Without such support or enhanced capacity, \musixtex{} risks consignment to the junk heap of obsolete software. It has been the \musixtex{} community's long-cherished desire to have a new official version with greater capacity. However, for quite some time the limits were due not only to the design of \musixtex{} itself but also to limitations in older versions of \TeX\ on the maximum numbers of available registers---256 each for counts (\texttt{\string\count}), dimensions (\texttt{\string\dimen}), skips (\texttt{\string\skip}), and tokens (\texttt{\string\toks}). But now, an extended variation of \TeX{}---$\varepsilon$\hbox{-}\nobreak\TeX---is available.\footnote{ $\varepsilon$\hbox{-}\nobreak\TeX{} (e-\TeX) is a trademark of the NTS group.} One of $\varepsilon$\hbox{-}\nobreak\TeX's features is that it can handle 32768 registers. Furthermore, \LaTeXe\ and other well-known extension packages require the $\varepsilon$\hbox{-}\nobreak\TeX{} engine, so it has spread widely among many \TeX\ users. In fact, the current executable file called \texttt{latex} relies on the $\varepsilon$\hbox{-}\nobreak\TeX{} engine. Many other advanced branches based on $\varepsilon$\hbox{-}\nobreak\TeX{} are also available. Here we provide the new \musixtex{} 1.15 as the solution for typesetting larger musical scores, taking advantage of $\varepsilon$\hbox{-}\nobreak\TeX's 32768-register capacity. We have made the new version 1.15 as compatible as possible with earlier versions of \musixtex, existing scores, extension packages, and Prof.~Knuth's original (non~$\varepsilon$\hbox{-}\nobreak) \TeX. With it, you can use many more instruments and other musical elements within the capacity of $\varepsilon$\hbox{-}\nobreak\TeX{} or even with original \TeX. Also, as of version 2.6, the preprocessor \textbf{PMX} has been enhanced to allow up to 24 lines of music, and requires both \musixtex{} 1.15 and $\varepsilon$\hbox{-}\nobreak\TeX.\footnote{This should pose no problems for users, owing to the free availability of all the software, and to capacities of all modern computer hardware.} Unfortunately, we have found a few rarely used old extensions not compatible with 1.15; we will provide information for adapting them to the new version. We hope the new version 1.15 will keep \musixtex{} relevant well into the twenty-first century. \begin{flushright} Hiroaki Morimoto, Andre van Ryckeghem, Don Simons, April 2011 \end{flushright} \clearpage %\pagenumbering{roman} \renewcommand{\baselinestretch}{.8}\footnotesize\normalsize \tableofcontents \setcounter{secnumdepth}3 \renewcommand{\baselinestretch}{1}\footnotesize\normalsize %avrb page 4 was on top \clearpage %avre \setcounter{page}{1} \pagenumbering{arabic} \renewcommand{\thepage}{\arabic{page}} \pagestyle{headings} \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\footnote{See section \ref{installation}~for guidance on installing \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 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{\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|eps| files for each of the examples, then embedding references to those in the file for the book. 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} %avrb \small %avre \begin{tabular}{|ll|ll|}\hboxit{note sequence one} &\hboxit{note seq.\ four} &\hboxit{note seq.\ seven} &\hboxit{note seq.\ ten}\\\hboxit{note sequence two} &\hboxit{note seq.\ five} &\hboxit{note seq.\ eight} &\hboxit{note seq.\ eleven}\\\hboxit{note sequence three} &\hboxit{note seq.\ six} &\hboxit{note seq.\ nine} &\hboxit{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 ... & ... & ... \enotes|\footnote{The abbreviation \keyindex{en} can be used in place of \keyindex{enotes}.} \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 ... | ... & ...\enotes= \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 elemental macros in \musixtex, those that 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 represent all 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} \smallskip Thus 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 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 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|. Here the \verb|u| in the spacing note macro \verb|\qu| is what causes 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 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}\nostartrule \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} \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 elemental spacing unit. For example, in \textbf{PMX}\ all sixteenth notes are typically assigned a scalable width of 1.41\verb|\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 elemental 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 written in FORTRAN and now converted to C rather than \TeX, the main reason being the lack of an array handling capability in \TeX. \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 batch script that does so. Here's an example. Here, no value for \verb|\elemskip| is explicitly specified, so \musixtex\ assign a single, default value. After the first pass you might get the following output: \begin{music} \hsize=100mm \generalmeter{\meterfrac24}% \parindent 0pt \setsign1{-3} \startpiece\bigaccid \NOtes\qu{ce}\enotes \bar \NOtes\qu{gh}\enotes \bar \NOtes\qu{=b}\enotes \Notes\ds\cu g\enotes \bar \NOtes\qu{^f=f}\enotes \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}\enotes \bar \Notes\ttie0\Qqbu ed{_d}c\enotes \bar \Notes\ibu0b{-2}\qb0{=b}\enotes \notes\nbbu0\qb0{=a}\tqh0N\enotes \Notes\Dqbu cf\enotes \raggedstoppiece\contpiece \NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\enotes \bar \NOtes\qu c\qp\enotes \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} \startpiece\bigaccid \NOtes\qu{ce}\enotes \bar \NOtes\qu{gh}\enotes \bar \NOtes\qu{=b}\enotes \Notes\ds\cu g\enotes \bar \NOtes\qu{^f=f}\enotes \bar \NOtes\qu{=e}\itied0e\qu{_e}\enotes \bar \Notes\ttie0\Qqbu ed{_d}c\enotes \bar \Notes\ibu0b{-2}\qb0{=b}\enotes \notes\nbbu0\qb0{=a}\tqh0N\enotes \Notes\Dqbu cf\enotes \bar \NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\enotes \bar \NOtes\qu c\qp\enotes \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} \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}\enotes \notes\nbbu0\qb0{=a}\tqh0N\enotes \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} 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} \startpiece\bigaccid \NOtes\qu{ce}\enotes \bar \NOtes\qu{gh}\enotes \bar \NOtes\qu{=b}\enotes \Notes\ds\cu g\enotes \bar \NOtes\qu{^f=f}\enotes \bar \NOtes\qu{=e}\itied0e\qu{_e}\enotes \bar \Notes\ttie0\Qqbu ed{_d}c\enotes \bar \Notes\ibu0b{-2}\qb0{=b}\enotes \notes\nbbu0\qb0{=a}\tqh0N\enotes \Notes\Dqbu cf\enotes \bar \NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\enotes \bar \NOtes\qu c\qp\enotes \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} \startpiece\bigaccid \NOtes\qu{ce}\enotes \bar \NOtes\qu{gh}\enotes \bar \NOtes\qu{=b}\enotes \Notes\ds\cu g\enotes \bar \NOtes\qu{^f=f}\enotes \bar \NOtes\qu{=e}\itied0e\qu{_e}\enotes \bar \Notes\ttie0\Qqbu ed{_d}c\enotes \bar \Notes\ibu0b{-2}\qb0{=b}\enotes \notes\nbbu0\qb0{=a}\tqh0N\enotes \Notes\Dqbu cf\enotes \bar \NOtes\uptext{\it tr}\qu e\uptext{\it tr}\qu d\enotes \bar \NOtes\qu c\qp\enotes \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 2. \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{External executable \texttt{musixflx}} One issue that compromises portability between computers is the need for the executable {\tt musixflx}\index{musixflx@{\tt musixflx}}. %avrb To address this, the C source and compiled versions for various OS's are included in \verb|musixtex.zip| and are available from the \href{http://icking-music-archive.org}{\underline{Werner Icking Music Archive}}. %avre On most computers, the executable is invoked by typing the name of the program and the name of the file to be acted upon. \ital{i.e.} \verb|musixflx jobname.mx1| 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 a batch file, \verb|musixflx| can either be fed with \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{\boxit{Considerable discipline is needed to avoid this problem!}} 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|). \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|\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 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-emplacement macros defined in \verb|musixlyr.tex| (see \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 section~\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} Another question is: \ital{``Can I write a full score and then extract separate scores for each individual instrument?''} The answer is yes, but only with a great deal of special attention---so much, in fact, that we shall strongly recommend that if you want to do this, you should use \textbf{PMX}, which makes the process very easy. If for some reason you choose to ignore this advice, you may refer to the details that were provided in Section 1.4.3 of an earlier version of this manual, \href{http://icking-music-archive.org/software/musixtex/musixdoc-T112.pdf} {\underline{musixdoc-T112.pdf}}. %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 \verb|musixtex.zip|, 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 \verb|musixtex.zip|, are not documented in this manual but in separate files inside \verb|musixtex.zip|, namely \verb|musixps.tex| itself and \verb|mxlyrdoc.pdf| respectively. \section{Where to get the software and help using it} 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}}. The most up-to-date versions of \musixtex\ and friends are located in the \href{http://icking-music-archive.org/software/indexmt6.html}{\underline{software}} section of the archive. Assuming you already have \TeX\ and only want to install \musixtex, the file you need to download will be named \href{http://icking-music-archive.org/software/musixtex/musixtex.zip} {\underline{\texttt{musixtex.zip}}} . Further details about the installation process are given in section \ref{installation}. 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 Don {\sc Simons}, and the mailing list by Maurizio {\sc Codogno}. %\check \chapter{Elements of \musixtex} \section{Setting up the input file} \subsection{What makes a \TeX\ file a \musixtex\ file?} A \musixtex\ input file is a special kind of \TeX\ input file. What makes it special is that it must contain the command \verb|\input musixtex| before any reference to \musixtex\ macros. After that might follow \verb|\input musixadd| or \verb|\input musixmad| if you want to have respectively up to nine or twelve instruments or simultaneous beams, ties, or slurs.\ixtt{musixtex.tex}\ixtt{musixadd.tex}\ixtt{musixmad.tex} If you want to have greater numbers of these elements, you can assign them directly by including one or more of these commands: \verb|\setmaxinstruments|, \verb|\setmaxcxxviiibeams|, \verb|\setmaxcclvibeams|, \verb|\setmaxgroups|, \verb|\setmaxslurs|, \verb|\setmaxtrills|, \verb|\setmaxoctlines|. Since it is still a \TeX\ file, after that, if you wished to, you could write a whole non-musical book using normal \TeX\ commands provided that you did not use \verb|&| as a tab character like in plain \TeX\ (In \TeX\ lingo, its \keyindex{catcode} has been changed). \subsection{Cautions for the non \TeX pert} When \TeX\ reads anything, it inputs one \ital{token} at a time. A token may be either a \ital{command} or a character. A command (or \ital{macro}, or \ital{control sequence}) is a \ital{backslash} (``{\Bslash}'') immediately followed by sequence of letters with no intervening spaces. For practical purposes, any single symbol (letter, digit, special character, or space) that is not part of a command counts as a character and therefore as a token. Each command expects a specific number of parameters. The tokens ``\verb|{|'' and ``\verb|}|'' are very special, in that (1) they must occur in matched pairs, and (2) any matched pair together with the stuff inside counts as a single parameter. If the first parameter expected is a single letter, it must either be separated from the command by a space or enclosed in braces (otherwise it would be interpreted as part of the command). For example the command \verb|\ibu| expects three parameters, so the following are all OK: \verb|\ibu123|, \verb|\ibu1A3|, \verb|\ibu1{`A}3|, \verb|\ibu{1}{2}{3}|, \verb|\ibu1{-2}3|, or \verb|\ibu1{23}4|, but \verb|\ibu1234| is not OK; the first three digits are taken as parameters, leaving the ``4'' with no purpose other than to cause some of the dreaded unrecorded space that we have already mentioned. In the rest of this manual, when describing commands we will write things like \verb|\qb{|$n$\verb|}{|$p$\verb|}|. It should be understood that when $n$ and $p$ are replaced by their literal values, the braces may or may not be necessary. In particular, if both are single digits, no braces are needed; but if $n$ has two digits, or if $p$ has more than one character, they must be surrounded by braces. Spaces (blank characters) in the input file must be handled very carefully. They are ignored at the beginning of a line, enabling logical indentation schemes to help make the file human-readable. There are also a few other places within lines where blank spaces are OK (such as mentioned in the prior paragraph), but in general is it safest to avoid any unnecessary blanks between the beginning and end of an input line. At the end of a line, the truth is that a command with no parameters, such as \verb|\bar| or \verb|\enotes| will cause no trouble. However if a command with one or more parameters is the last item in an input line, it will cause unrecorded space. The way around this is to end the line with either ``\verb|%|'' or \verb|\relax|. \subsection{Usual setup commands}\label{whatspecify} The first decision is what size type to use. \musixtex\ offers four sizes: ``small'' (16-pt-high staves), ``normal'' (20pt),\index{sizes} ``large'' (24pt), and ``Large'' (29pt). The default is \keyindex{normalmusicsize}. If you want a different size, then you have to enter \keyindex{smallmusicsize}, \keyindex{largemusicsize}, or \keyindex{Largemusicsize}. Each of these commands defines not only the desired staff size but many other related sizes such as note heads, ornaments, stem lengths, etc. The command \keyindex{instrumentnumber}\onen~defines the number of instruments to be $n$. If not entered, the default is 1. This number is used in loops that build staves, set key signatures, set meters, etc., so if it differs from 1 it must be explicitly defined before any further commands. An instrument may have one or more staves (e.g.~a piano would normally have 2 staves). The differences between one instrument of several staves and several instruments with one staff each are as follows: \begin{itemize}\setlength{\itemsep}{0ex} \item Different instruments may have different \itxem{key signatures}, while different staves of an instrument will all have the same key signature. \item A \itxem{beam} may include notes in different staves of the same instrument. \item A \itxem{chord} may extend across several staves of the same instrument. \item If an instrument has more than one staff, they will be linked together with a big, curly brace at the beginning of each line. \end{itemize} The default number of staves per instrument is 1. If it is different, then it must be specified by \keyindex{setstaffs}\verb|{|$n$\verb|}{|$p$\verb|}| where $p$ is the number of staves and $n$ is the number of the instrument. In \musixtex, instruments are numbered \ital{starting with the lowest}. So for example \verb|setstaffs32| assigns two staves to the third instrument from the bottom. The default clef for every staff is the \ital{treble} clef. To assign any other clef, the command is \keyindex{setclef}\verb|{|$n$\verb|}{|$s_1s_2s_3s_4$\verb|}| where $n$ is the number of the instrument, $s_1$ is a digit specifying the clef for the first (lowest) staff, $s_2$ for the second staff, and so forth. Note that like instruments, staves of a given instrument are numbered starting with the lowest. The parameters $s_2$, $s_3$ and $s_4$ can be omitted, in which case any unspecified staves will be assigned a treble clef. The digits $s$ can range from 0 to 9, with the following meanings: $s=0$ signifies treble or G clef. $s=1$ to $4$ mean C-clef, respectively on the first (lowest) through fourth staff line. $1$ is also called \ital{soprano}, $3$ \ital{alto} and $4$ \ital{tenor}. $s=5$ to $s=7$ mean F-clef, respectively on the third through fifth staff line. $5$ is also called \ital{baritone} and $6$ is the normal \ital{bass}. $s=8$ is not used. $s=9$ represents a G clef on the first line, also called \ital{French violin} clef. The three tokens \verb|\treble|, \verb|\alto|, and \verb|\bass| can be used instead of a digit for $s$, but only if there would have been but one digit in the string. So for example the clefs for a standard piano score could be specified by \keyindex{setclef}\verb|1{\bass}|. Treble and bass clefs with the digit 8 above or below are also possible; see section~\ref{treblelowoct}. To set a common key signature for all instruments, use \keyindex{generalsignature}\verb|{|$s$\verb|}|, where $s>0$ 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. 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}\enotes \generalmeter\allabreve\changecontext \NOTes\ha{ce}\enotes \generalmeter\reverseC\changecontext \NOTEs\zbreve g\enotes \generalmeter\reverseallabreve\changecontext \NOTEs\zwq g\enotes \generalmeter{\meterfrac{3\meterplus2\meterplus3}8}\changecontext \Notes\Tqbu ceg\Dqbl jg\Tqbu gec\enotes\setemptybar \endpiece \end{music} \noindent which was coded as: \begin{quote}\begin{verbatim} \generalmeter\meterC \nostartrule \parindent0pt\startpiece \NOtes\qa{cegj}\enotes \generalmeter\allabreve\changecontext \NOTes\ha{ce}\enotes \generalmeter\reverseC\changecontext \NOTEs\zbreve g\enotes \generalmeter\reverseallabreve\changecontext \NOTEs\zwq g\enotes \generalmeter{\meterfrac{3\meterplus2\meterplus3}8}\changecontext \Notes\Tqbu ceg\Dqbl jg\Tqbu gec\enotes\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. 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. \subsection{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 2 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 extension file %\ttxem{curly.tex}\footnote{Submitted \href{http://icking-music-archive.org/software/musixtex/add-ons/curly.tex} {\underline{\ttxem{curly.tex}}}\footnote{Submitted by Mthimkhulu {\sc Molekwa} to the mutex list}, which defines 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{minipage}[t]{50mm} \begin{music} % just to avoid wasting space ... \sepbarrules \smallmusicsize \setsize1\smallvalue\setsize2\smallvalue \setsize3\smallvalue\setsize4\smallvalue\setsize5\smallvalue \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 \setsize1\smallvalue \setsize2\smallvalue \setsize3\smallvalue \setsize4\smallvalue \setsize5\smallvalue \instrumentnumber{5} \akkoladen{{1}{2}{3}{5}} \startextract \notes\en\bar\notes\en \zendextract \end{verbatim}\end{quote} \end{minipage} \begin{minipage}[t]{50mm} \begin{music} \sepbarrules \smallmusicsize \setsize1\smallvalue\setsize2\smallvalue \instrumentnumber2 \setstaffs12\setstaffs23 \startextract \notes\en\bar\notes\en\zendextract \end{music} \begin{quote}is coded as: \begin{verbatim} \sepbarrules \smallmusicsize \setsize1\smallvalue \setsize2\smallvalue \instrumentnumber2 \setstaffs12 \setstaffs23 \startextract \notes\en\bar\notes\en \zendextract \end{verbatim}\end{quote} \end{minipage} \begin{minipage}[t]{50mm} \begin{music} \input curly \sepbarrules \smallmusicsize \setsize1\smallvalue\setsize2\smallvalue \smallmusicsize \setsize3\smallvalue\setsize4\smallvalue\setsize5\smallvalue \instrumentnumber5 %\setstaffs12\setstaffs23 \curlybrackets{1235} \startextract \notes\en\bar\notes\en\zendextract \end{music} \begin{quote}is coded as: \begin{verbatim} \input curly \sepbarrules \instrumentnumber5 \smallmusicsize \setsize1\smallvalue \setsize2\smallvalue \setsize3\smallvalue \setsize4\smallvalue \setsize5\smallvalue \curlybrackets{1235} \startextract \notes\en\bar\notes\en \zendextract \end{verbatim}\end{quote} \end{minipage} \section{Preparing to enter notes} \subsection{After the setup, what next?} The command \keyindex{startmuflex} initiates the serious business of \musixtex. On the first \TeX\ pass it opens \ital{jobname}{\tt .mx1} for writing bar-by-bar tabulations of all hard and scalable space to be fed to \verb|musixflx| on the second pass. \verb|musixflx| generates \ital{jobname}{\tt .mx2} which defines the number of bars in each system and the factors relating scalable space to hard space in each system. On the third pass both files will be opened and read to define the final spacing. These files should be closed before leaving \TeX, preferably before \keyindex{bye} or \keyindex{end}, with \keyindex{endmuflex}. Normally \TeX\ closes all open files on its own when terminating the program, but it is still cleaner to do this explicitly. After \verb|\startmuflex|, the command \keyindex{startpiece} will initiate the first system, containing all instruments you have previously defined. The indentation will be \keyindex{parindent}, so if you want nonzero indentation, this register should be set to the desired hard dimension before issuing \verb|\startpiece|. \subsection{Horizontal spacing commands}\label{newspacings} \subsubsection{Basic note spacing} \musixtex\ provides a set of macros each of which defines a particular increment of scalable spacing. The default set is tabulated below: \begin{center} \tinynotesize \renewcommand{\arraystretch}{1.5}% I hate LaTeX \begin{tabular}{|l|l|l@{~~~~}l|} \multicolumn{1}{c}{usage}& \multicolumn{1}{c}{spacing}& \multicolumn{2}{c}{suggested use for}\\\hline \keyindex{znotes}\verb| ... & ... & ... \enotes|&(non spacing) &&specials\\ \keyindex{notes}\verb| ... & ... & ... \enotes|&\verb=2=\keyindex{elemskip} &\ccu1&16th\\ \keyindex{notesp}\verb| ... & ... & ... \enotes|&\verb=2.5\elemskip= &\pt1\ccu1&dotted 16th, 8th triplet\\ \keyindex{Notes}\verb| ... & ... & ... \enotes|&\verb=3\elemskip= &\cu1&8th\\ \keyindex{Notesp}\verb| ... & ... & ... \enotes|&\verb=3.5\elemskip= &\cup1&dotted 8th, quarter triplet\\ \keyindex{NOtes}\verb| ... & ... & ... \enotes|&\verb=4\elemskip= &\qu1&quarter\\ \keyindex{NOtesp}\verb| ... & ... & ... \enotes|&\verb=4.5\elemskip= &\qup1&dotted quarter, half triplet\\ \keyindex{NOTes}\verb| ... & ... & ... \enotes|&\verb=5\elemskip= &\hu1&half\\ \keyindex{NOTesp}\verb| ... & ... & ... \enotes|&\verb=5.5\elemskip= &\hup1&dotted half\\ \keyindex{NOTEs}\verb| ... & ... & ... \enotes|&\verb=6\elemskip= &\wh1&whole\\\hline \end{tabular}\end{center} \smallskip \noindent What each of these macros actually does is to set an internal dimension register \keyindex{noteskip} to the given multiple of the fundamental spacing unit \keyindex{elemskip} (which has dimensions of length, usually given in points). Normally, every \itxem{spacing note} (e.g., \keyindex{qu}, \keyindex{qb}, \keyindex{hl}) will then be followed by a spacing of width \keyindex{noteskip}. By selecting a particular note spacing macro from the above table, the typesetter can thus control the relative spacing between notes. The actual spacing will therefore be determined by the value of \verb|\elemskip|. On the first pass, \TeX\ will set a default value for \verb|\elemskip| based on the declared music size, or the user can set it to any hard dimension he chooses. However, the value on the first pass doesn't matter as much as you might think (more about that later). On the second pass, \verb|musixflx| determines where the system breaks will come, and then computes the final value of \verb|\elemskip| for each system. If the arthmetic progression of note spacings in the above table does not meet your wishes, you may activate an alternate set with the command \keyindex{geometricskipscale}. As implied by the name, this is a geometric progression, where {\Bslash Notes} is $\sqrt{2}$ times wider than {\Bslash notes}, {\Bslash NOtes} is $\sqrt{2}$ times wider than {\Bslash Notes}, and so forth. Then the factors in the middle column of the above table will be replaced by the sequence 2.00, 2.38, 2.83, 3.36, 4.00, 4.76, 5.66, 6.72, and 8.00. Two additional macros, \verb|\NOTEsp| and \verb|\NOTES|, will be defined corresponding to factors 9.52 and 11.32. The original arithmetic progression can be restored by \keyindex{arithmeticskipscale}. If neither of the predefined progressions satisfies you, you may define your own, using the more general macro \verb|\vnotes| in the same manner that \musixtex\ uses it for the predefined progressions. So for example \verb|\def\NOtes{\vnotes5.34\elemskip}| will redefine \verb|\NOtes| in the obvious way, and the extension to the other spacing macros should likewise be obvious. In addition, inside any pair \verb|\notes...\enotes| there are two equivalent ways to locally redefine \verb|\noteskip| to another scalable value, namely by issuing a command like \verb|\noteskip=2.4\noteskip| or \keyindex{multnoteskip}\verb|{2.4}|, which have the expected effect until the notes group is terminated or \verb|\noteskip| is further redefined. Finally, by issuing a command like \keyindex{scale}\verb|{2.4}| outside any notes group, you can scale all subsequent \verb|\noteskip|s by any desired factor. These facilities may be useful, for example, to control spacing when there are three equal duration notes in one staff against two in another. %\subsubsection{\Bslash{\tt elemskip}, \Bslash{\tt beforeruleskip} and %\Bslash{\tt afterruleskip}} % % avr wants to call these "commands", but das doesn't. %\subsubsection{Commands {\Bslash\texttt{elemskip}}, %{\Bslash\texttt{beforeruleskip}} %and {\Bslash\texttt{afterruleskip}}} \subsubsection{{\Bslash\texttt{elemskip}}, {\Bslash\texttt{beforeruleskip}} and {\Bslash\texttt{afterruleskip}}} We've just seen how \verb|\elemskip| is used to scale the spacings between notes. There are two other spacing units that share some behavior with \verb|\elemskip|. \verb|\beforeruleskip| is the horizontal space that is automatically inserted \ital{before} every bar line, while \verb|\afterruleskip| goes \ital{after} every bar line. (In practice \verb|\beforeruleskip| is almost aways set to \verb|0pt| because there will typically already be a space of \verb|1\noteskip| before every barline.) On the first pass, just as with \verb|\elemskip|, \musixtex\ assigns them default values according to the following table: %\begin{quote}\begin{tabular}{lrrr}\hline %\ital{using}&\keyindex{elemskip}&\keyindex{afterruleskip} % &\keyindex{beforeruleskip}\\\hline %\keyindex{normalmusicsize}&6pt&8pt&0pt\\ %\keyindex{smallmusicsize}&4.8pt&6pt&0pt\\\hline %\end{tabular}\end{quote} \begin{center}\begin{tabular}{lrrr}\hline \ital{using}&\keyindex{elemskip}&\keyindex{afterruleskip} &\keyindex{beforeruleskip}\\\hline \keyindex{normalmusicsize}&6pt&8pt&0pt\\ \keyindex{smallmusicsize}&4.8pt&6pt&0pt\\\hline \end{tabular}\end{center} \noindent In the second pass, \verb|musixflx| assigns new values to each of these dimensions, a different set for each line or system. It does this in such a way that available scalable horizontal space in each system is exactly filled up. The values that are assigned to these dimensions on the first pass, whether by default or explicitly by the user or in some combination, only matter insofar as their relative sizes. That's why we earlier stated that the first-pass value of \verb|\elemskip| didn't matter as much as you might think. For both music sizes in the table above, it appears that by default \verb|\afterruleskip| is \verb|1.3333\elemskip|\footnote{Editor's note: It is a mystery why the authors %of \musixtex\ didn't simply define \Bslash{\tt beforeruleskip} and \Bslash{\tt afterruleskip} as %specific multiples of \Bslash{\tt elemskip}}. of \musixtex\ didn't simply define \Bslash\texttt{beforeruleskip} and \Bslash\texttt{afterruleskip} as specific multiples of \Bslash\texttt{elemskip}}. Note that if you do want to change any of these values, you have to do so \ital{after} setting the music size and before \verb|\startpiece|. Here is an example that illustrates the various dimensions under discussion:\\ %\check \begin{music}\nostartrule \afterruleskip7pt \beforeruleskip2pt \parindent0pt \setclefsymbol1\empty % special problems afford special solutions \makeatletter\global\clef@skip\z@ \makeatother \startpiece \zchar{16}{\hbox to\afterruleskip{\downbracefill}}% \zchar{19}{\hbox to\afterruleskip{\hss a\hss}}% \addspace\afterruleskip \zchar{16}{\hbox to2\elemskip{\downbracefill}}% \zchar{19}{\hbox to2\elemskip{\hss b\hss}}% \zchar{3}{\hbox to\elemskip{\upbracefill}\hbox to\elemskip{\upbracefill}}% \zchar{-1}{\hbox to\elemskip{\hss e\hss}\hbox to\elemskip{\hss e\hss}}% \notes\qa l\en \znotes\en \zchar{16}{\hbox to4\elemskip{\downbracefill}}% \zchar{19}{\hbox to4\elemskip{\hss c\hss}}% \zchar{3}{\hbox to\elemskip{\upbracefill}\hbox to\elemskip{\upbracefill}% \hbox to\elemskip{\upbracefill}\hbox to\elemskip{\upbracefill}}% \zchar{-1}{\hbox to\elemskip{\hss e\hss}\hbox to\elemskip{\hss e\hss}% \hbox to\elemskip{\hss e\hss}\hbox to\elemskip{\hss e\hss}}% \NOtes\qa l\en \znotes\en \zchar{16}{\hbox to\beforeruleskip{\downbracefill}}% \zchar{19}{\hbox to\beforeruleskip{\hss d\hss}}% \setemptybar\endpiece \end{music} \begin{quote}\begin{tabular}{l@{~$\rightarrow$~}l} a&\keyindex{afterruleskip}\\ b&\keyindex{notes}\verb| = \vnotes 2\elemskip|\\ c&\keyindex{NOtes}\verb| = \vnotes 4\elemskip|\\ d&\keyindex{beforeruleskip}\\ e&\keyindex{elemskip} \end{tabular}\end{quote} \subsection{Moving from one staff or instrument to another} \label{movingtostaffs} When entering notes inside \verb|\notes ... \enotes|, the usual way to suspend input for one instrument and start the next (higher) is with the character ``\verb|&|''\index{"&@{\tt\char'046}}. If the instrument has more than one staff, to switch to the next (higher) one you can use the character ``\verb+|+''\index{\tt\char'174@{\tt\char'174}}. There are some alternate navigation commands that may be useful in special situations. Due to ``catcode problems'' (see section~\ref{catcodeprobs}) it may sometimes be necessary to use the more explicit commands \keyindex{nextinstrument} and \keyindex{nextstaff}, which have the same meanings as ``\verb|&|'' and ``\verb+|+'' respectively. To switch to the previous (next lower) staff of the same instrument, use \keyindex{prevstaff}. This might be useful if a beam starts in a higher staff than where it ends. More generally, to switch to an arbitrary instrument $n$, use \keyindex{selectinstrument}\onen, and to switch to an arbitrary staff $n$ of the current instrument, use \keyindex{selectstaff}\verb|{|$n$\verb|}|. In the latter case if $n$ exceeds the number of staves defined for the instrument, you will receive an error message. You can enter part of a successive voice on \ital{same} staff by using \verb|\selectstaff{|$n$\verb|}| with $n$ for the \ital{current} staff. %\check \section{Note pitch specification}\label{pitchspec} 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 section~\ref{octaviation}. \section{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. \subsection{Normal (unbeamed) spacing notes}\label{NormalNotes} In the following, \verb|{|$p$\verb|}| signifies a pitch specification as described in sections~\ref{pitchspec} and \ref{octaviation}. However it is understood that if the pitch is a single character, the brackets are not neecessary, 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} :]32nd note with stem up. \item[\keyindex{cccl}{\tt\char123}$p${\tt\char125} :]32nd note with stem down. \item[\keyindex{ccca}{\tt\char123}$p${\tt\char125} :]32nd note with automatic stem direction. \item[\keyindex{ccccu}{\tt\char123}$p${\tt\char125} :]64th note with stem up. \item[\keyindex{ccccl}{\tt\char123}$p${\tt\char125} :]64th note with stem down. \item[\keyindex{cccca}{\tt\char123}$p${\tt\char125} :]64th note with automatic stem direction. \item[\keyindex{cccccu}{\tt\char123}$p${\tt\char125} :]128nd note with stem up. \item[\keyindex{cccccl}{\tt\char123}$p${\tt\char125} :]128nd note with stem down. \item[\keyindex{ccccca}{\tt\char123}$p${\tt\char125} :]128nd note with automatic stem direction. \end{description}\end{quote} As an example, the sequence %\check \begin{music}\nostartrule \startextract \Notes\cu c\cl j\enotes\bar \Notes\ccu c\ccl j\enotes\bar \Notes\cccu c\cccl j\enotes\bar \Notes\ccccu c\ccccl j\enotes\bar \Notes\cccccu c\cccccl j\enotes \zendextract \end{music} \noindent was coded as \begin{quote}\begin{verbatim} \Notes\cu c\cl j\enotes\bar \Notes\ccu c\ccl j\enotes\bar \Notes\cccu c\cccl j\enotes\bar \Notes\ccccu c\ccccl j\enotes\bar \Notes\cccccu c\cccccl j\enotes \end{verbatim}\end{quote} \subsection{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} \subsection{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} \subsection{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{zqb}\pitchp~:]note belonging to a beam but no spacing. (DAS: put this later!) \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 \subsection{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\enotes\barre \Notes\nh c\nh j\enotes\barre \notes\nq {cdef}\enotes \zendextract \end{music} \noindent was coded as \begin{quote}\begin{verbatim} \notes\nq c\nq j\enotes\barre \Notes\nh c\nh j\enotes\barre \notes\nq {cdef}\enotes \end{verbatim}\end{quote} Non spacing variants are also provided, namely \keyindex{znh} and \keyindex{znq}. % DAS: why??? \subsection{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}. \subsection{Sequences of equally spaced notes; collective coding} \label{CollectiveCoding} It isn't necessary to write a separate macro sequence \verb|\notes...\enotes| 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. \section{Beams} \subsection{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 8th to 64th beams directly\footnote{8th to 64th beams are so basic that the maximum number of these beams are related with 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| 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\enotes \NOtes\upperna m\qa m\enotes \NOtes\upperfl l\qa l\enotes \zendextract \end{music} 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\enotes \NOtes\cfl h\qa h\enotes \NOtes\cna i\qa i\enotes \NOtes\cdfl j\qa j\enotes \NOtes\cdsh k\qa k\enotes \zendextract \end{music} \noindent The distance between all 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 value of \verb|0pt|. \section{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}. \subsection{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|'| (\itxem{acute accent}) and \verb|`| (\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|\enotes|, 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...\enotes| group, regardless of the number of grave and acute accents occurring previously within that group. \subsection{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}. \subsection{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 3.5\verb|\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}$ \it 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}\enotes \bar \notes\Ioctfindown 2A\wh{IJKLMN}|\wh{ijklmn}\enotes \bar \Notes\wh{NMLKJI}|\wh{nmlkji}\Toctfin1\enotes \bar \Notes\wh{HGFED}\Toctfin2\wh C|\wh{hgfedc}\enotes \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}\enotes \bar \notes\Ioctfindown 2A\wh{IJKLMN}|\wh{ijklmn}\enotes \bar \Notes\wh{NMLKJI}|\wh{nmlkji}\Toctfin1\enotes \bar \Notes\wh{HGFED}\Toctfin2\wh C|\wh{hgfedc}\enotes \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 a systems after the one where it was initiated. \section{Slurs and ties} Two fundamentally different implementations of slurs, ties, and hairpins are available. (The hairpins ``go along for the ride'' with slurs and ties.) 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 section~\ref{PostscriptSlurs}. \subsection{Font-based slurs} 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 subsections 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. \subsubsection{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$ 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. \subsection{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 and its font, which will be emplaced by the first and third through sixth macros, and is initially defined as \verb|\def\txt{\eightit 3}|. The macro \verb|\tuplettxt| serves the same role for the last two macros. 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. The last two require the extension file \verb|tuplet.tex| to be input right after \verb|\input musixtex|. \begin{center} \begin{tabular}{lclcc} \hline ~ & Number & ~ & Needs & ~ \\ Macro and arguments & printed & Where invoked & \verb|tuplet.tex|? & Bracket \\ \hline \verb|\triolet|\pitchp & \verb|\txt| & before beam & no & none \\ \verb|\xtuplet|\itbrace{k}\pitchp & $k$ & before beam & no & none \\ \verb|\butext|\itbrace{n} & \verb|\txt| & before note at number & no & none \\ \verb|\bltext|\itbrace{n} & \verb|\txt| & before note at number & no & none \\ \verb|\uptrio|\pitchp\itbrace{w}\itbrace{s} & \verb|\txt| & before first note & no & solid \\ \verb|\downtrio|\pitchp\itbrace{w}\itbrace{s} & \verb|\txt| & before first note & no & solid \\ \verb|\uptuplet|\pitchp\itbrace{w}\itbrace{s} & \verb|\tuplettxt| & before first note & yes & with gap \\ \verb|\downtuplet|\pitchp\itbrace{w}\itbrace{s} & \verb|\tuplettxt| & before first note & yes & 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} \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 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} \end{music} \zkeyindex{xtuplet}\zkeyindex{triolet} \medskip Next are examples using the macros from \verb|\tuplet.tex|. Comparison of the coding with the printed result reveals that (a) a redefinition of \verb|\tuplettxt| inside a notes group only applies inside that group and leaves the default definition intact (bar 2), (b) the default definition is \verb|\def\tuplettxt{\ppffsixteen3}|, a 10-pt bold extended italic numeral 3 which may be larger and heavier than desired (first set, bar 3) (c) to get the number properly centered in the gap, you must include some extra spaces after the number in the definition of \verb|\tuplettxt|, and (d) as you can see in the last bar, if the span becomes to small, the macros still won't provide enough room for the number in the gap; in this case it would be better to use to 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 \startextract \addspace\afterruleskip \notesp\triolet o\Ibl0ln2\qb0{lm}\tqb0n\en \notesp\Ibl0km2\qb0k\bltext0\qb0l\tqb0m\en\bar \notesp\def\tuplettxt{\eightit 5\/\/}\uptuplet o{4.1}2\cl{jklmn}\en\bar \Notesp\uptuplet o16\ql l\en\notesp\cl n\en \def\tuplettxt{\eightit 3\/\/} \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} \input tuplet \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{\eightit 5\/\/}\uptuplet o{4.1}2\cl{jklmn}\en\bar \Notesp\uptuplet o16\ql l\en\notesp\cl n\en \def\tuplettxt{\eightit 3\/\/} \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 \endextract \end{verbatim}\end{quote} \subsection{Ornaments} \subsubsection{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. \subsubsection{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. As with other elements, you can specify the maximum number directly with \keyindex{setmaxtrills}\verb|{|$m$\verb|}| where $7 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 '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 2mm 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 2 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 extent to the left margin\\ \end{tabbing} As a further illustration of the use of the commands, have a look at the following example\footnote{The example is taken from the 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} \subsection{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}. \subsection{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|... \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 \noindent\begin{tabular}{ll} \multicolumn{2}{l}{\Bslash setlyrics\{alto\}\{\Bslash kernm3ex1.$\sim\sim$firstsyllable...\}}\\ & left moving for numbering verses\\ \verb|\setlyrics{alto}{...\kern1exword...}| &right moving a single word\\ \verb|\setlyrics{alto}{...\lower2pt\hbox{word}...}|& lowering a single word\\ \verb|\setlyrics{alto}{...\raise2pt\hbox{word}...}|& raising a single word\\ \multicolumn{2}{l}{\Bslash def\Bslash strut\{\Bslash vbox to 2\Bslash Interligne\{\}\}% \Bslash setlyrics\{alto\}\{\Bslash lyrlayout\{\Bslash strut\}...\}} \\ & controlling 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\}\}}\\ & redefining default lyrstrut \end{tabular} \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} This can be achieved by putting \verb+\input plainenc\relax\inputencoding{cp850}+ at the beginning of the file. Here you must adapt the character set to your region. To do this, if necessary, replace \verb+cp850+ by \verb+cp1250+ (Czech, Croation region), \verb+cp1251+ (Russian, Bulgarian region), \verb+cp1252+ (most other European regions), \verb+cp1253+ (Greek region) or check your \TeX distribution for the right file. This is the coding for the previous example by using an 8-bit characterset: \begin{center} \begin{minipage}{25mm} \begin{music}\nostartrule % this manual is in latex, the 8bit is taken by % \usepackage[ansinew]{inputenc} % %\input plainenc\relax\inputencoding{cp850} \input musixtex \input musixlyr \setlyrics1{á ä ö}\assignlyrics1{}\assignlyrics11% \startextract% \znotes\zcharnote{12}{Poème naïf}\en% \Notes\qa{ggg}\en% \zendextract% \end{music} \end{minipage} ~~~~~~ \begin{minipage}{100mm}% program to run apart from musixdoc \verb+\input plainenc\relax\inputencoding{cp850}+\\ \verb+\input musixtex+\\ \verb+\input musixlyr+\\ \verb+\startpiece%+\\ \verb+\znotes\zcharnote{16}{Poème naïf}\en%+\\ \verb+\setlyrics1{á ä ö}\assignlyrics11%+\\ \verb+\Notes\qa{ggg}\en%+\\ \verb+\Endpiece\vfill\eject \bye+ \end{minipage} \end{center} \end{enumerate} \section{Embedding musical excerpts in text documents} Here we discuss the options for including music in text documents. The first decision is whether or not to use \LaTeX\footnote{We'll assume a user wanting to embed a musical excerpt in a \LaTeX\ document is already familiar with the fundamentals of \LaTeX. For more information about it, see for example the manual \ital{\LaTeX: A Document Preparation System} by Leslie {\sc Lamport}}. Because \LaTeX\ so effectively simplifies production of text-based \TeX\ documents, most users take that path, and most of the descriptions given here will assume that's the case\footnote{Please do not be confused; while \LaTeX\ is recommended for text-based documents containing musical exceprts, its use is definitely discouraged for ordinary self-contained musical scores of any sort.}. If for some reason you choose not to use \LaTeX\ to emplace musical excerpts, the basic approach is simply to set off the musical parts between \verb|\startpiece| or \verb|\contpiece| and \verb|\stoppiece| or \verb|\endpiece|, or between \verb|\startextract| and \verb|\zendextract|. But some details in what follows will also apply with no \LaTeX. There are two basic approaches to embedding musical excerpts in \LaTeX\ documents. The first method is to directly include the \musixtex\ code in the \LaTeX\ source file. That will be the subject of the next subsection. The other is to create an EPS (encapsulated Postscript) file containing only the excerpt, and then ``paste'' it into the \LaTeX\ file. That will be covered in subsection \ref{embedeps}. The advantages of using the direct method are that all of the source code for all excerpts can be kept in the same file as the text, and that there is no limit on the length of the excerpt. The advantage of the EPS method is that you don't have to burden the \LaTeX\ source with any of the \musixtex\ paraphernalia. That in turn permits use of primitive versions of the \TeX\ compiler that may not have the capacity to handle the direct method (due to the number of registers consumed by \LaTeX\ and \musixtex). The disadvantages are that you must create and keep track of a separate \TeX\ and EPS file for every excerpt, and that the excerpt must not span any page breaks. On balance, the direct method is probably to be preferred. \subsection{Directly embedding excerpts in \LaTeX\ documents}\label{excerpts} To use the direct method, you should include ``\verb|musixtex|'' as one of the arguments of the \keyindex{documentstyle} command. This will cause the file \ttxem{musixtex.sty} to be loaded, so naturally you must make that file available in a place where \TeX\ can find it. That file simply inputs two other files, \verb|musixtex.tex| and \ttxem{musixltx.tex}, which again must obviously be available to \TeX. Now you are in position to directly embed an excerpt by inserting code at the appropriate place in the source file. The most common type of excerpt is one that occupies less than a full line and is to be horizontally centered. In that case, the extract should begin with the command \keyindex{begin\LBR music\RBR}, followed by any preliminary commands. Then, instead of \verb|\startpiece|, use \keyindex{startextract}. Now comes the normal \musixtex\ coding. Finally, end the extract with \keyindex{endextract} instead of \verb|\endpiece| or \verb|\stoppiece|, followed by \keyindex{end\LBR music\RBR}. To terminate an extract without any bar line, use \keyindex{zendextract} instead of \verb|\endextract|. To create a left-justified excerpt, use the sequence \keyindex{let\Bslash extractline\Bslash leftline}. If several extracts are to be placed on the same line, you can redefine \keyindex{extractline} as demonstrated in the following example\footnote{The macro {\tt\Bslash extractline} is defined once and for all in {\tt musixtex.tex} as {\tt\Bslash centerline}. You might think that the suggested coding would permanently redefine {\tt\Bslash extractline}, thereby upsetting the normal function of {\tt\Bslash startextract ... \Bslash endextract} for subsequent use. But it doesn't, because any actions within \keyindex{begin\LBR music\RBR}...\keyindex{end\LBR music\RBR} are local, not global.}: % DAS temp (where is the reference???) %An example of this is given at \ref{extractline} on page \pageref{extractline}. % end DAS temp \begin{quote}\begin{verbatim} \begin{music}\nostartrule \let\extractline\hbox \hbox to \hsize{% \hss\startextract ... \zendextract\hss% \hss\startextract ... \zendextract\hss} \end{music} \end{verbatim}\end{quote} An even shorter type of extract is one that is embedded \ital{within} a line of text. To insert \musixtex\ symbols within a line of text, you could begin by defining \keyindex{notesintext} as follows\footnote{provided by Rainer {\sc Dunker}}: \begin{quote}\begin{verbatim}\begin{music}\nostartrule \makeatletter \def\notesintext#1{% {\let\extractline\relax \setlines10\smallmusicsize \nobarnumbers \nostartrule \staffbotmarg0pt \setclefsymbol1\empty \global\clef@skip0pt \startextract\addspace{-\afterruleskip}#1\zendextract}} \makeatother \end{music}\end{verbatim}\end{quote} Then, for example, the code \begin{verbatim} Use \raisebox{0ex}[0ex][0ex]{\notesintext{\notes\rql1\qu2\en}} not \raisebox{0ex}[0ex][0ex]{\notesintext{\notes\ql2\lqu1\en}} \end{verbatim} \noindent would produce: ``Use \raisebox{0ex}[0ex][0ex]{\notesintext{\notes\rql1\qu2\en}} not \raisebox{0ex}[0ex][0ex]{\notesintext{\notes\ql2\lqu1\en}}~''. \noindent The \verb|\raisebox| voids the vertical space that is introduced by the notes. Finally, you may want to insert an extract containing more than one line of music. Once having mastered \musixtex, this is the easiest of all: Between \verb|\begin{music}\nostartrule| and \verb|\end{music}|, use \ital{exactly} the same coding you would to make an ordinary score. The best way to learn how to apply these methods is to study \verb|musixdoc.tex|, the source file for this document\footnote{Do note, however, that {\tt musixdoc.tex} includes {\tt musixdoc} but not {\tt musixtex} as an argument of {\tt\Bslash documentstyle}. The former performs the functions of the latter as well as numerous tasks peculiar to this particular document.}. %DAS I don't think this section is worth including. % \subsection{Wide music in \LaTeX}\label{musixblx} % Another difficulty appears with \LaTeX: internal \LaTeX\ macros handle the %page size in a way which is not supposed to be changed within a given document. %This means that text horizontal and vertical sizes are somewhat frozen so that %one can hardly insert pieces of music of page size different from the size %specified by the \LaTeX{} \itxem{style}. %Although a \ttxem{musixblx.tex} has been provided, which makes the %\ital{environment} \verb|bigmusic| available. %\zkeyindex{begin\LBR bigmusic\RBR} %The main drawback is an unpredictable behaviour of top and bottom %printouts, especially page numberings. % % If the whole of a document has wide pages, it can be handled with the %\ttxem{a4wide} style option, or any derivate of it. \subsection{Embedding musical excerpts as encapsulated postscript files} \label{embedeps} To use this method of including excerpts, you first must create a separate \musixtex\ input file for each excerpt. Process each such file with \TeX\ and \verb|musixflx| to generate a \verb|.dvi| file. Generate a postscript file from each \verb|.dvi| using \verb|dvips|. Then convert each postscript file to an \verb|.eps| file. One way to do that is with \textbf{ghostscript} and---if you are using Windows---\textbf{GSview}. In general this is possible only for single-page postScript files. To set up your \LaTeX\ document for including \verb|.eps| files, you must post the command \verb|\usepackage[dvips]{graphicx}| in the preamble of the document. Now, you may include each \texttt{.eps} file at the appropriate place in the {\LaTeX} document with a command like \keyindex{includegraphics}\verb|{sample.eps}|. \subsection{Issues concerning \texorpdfstring{{\Bslash catcodes}}{catcodes}} \label{catcodeprobs} \musixtex\ uses the following symbols differently from plain \TeX: \verb|>|, \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. \section{Extension Library} All 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. \subsection{curly} Allows you to group more than 1 instrument with curly brackets (see \ref{curlybrackets}). \subsection{musixadd}\ixtt{musixadd.tex} Increases the number of instruments, slurs and beams from six to nine. \subsection{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}. \subsection{musixbbm}\label{musixbbm} Provides 256th 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 256th 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$. \subsection{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} \tenrm \parindent11.5mm \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{Sopran}\centerline{Alt}}} \setname1{\vbox{\hsize\parindent\centerline{Tenor}\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{\kernm2\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} \subsection{musixcpt} Empowers \musixtex\ to run files created under Musi\textbf{c}TeX, the predecessor of \musixtex, such as some of the examples provided by Dani\"el {\sc Taupin}. It is not needed for any files created under \musixtex, and is included mainly for historical completeness. \subsection{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} \subsection{musixdbr} Enables dashed and dotted bar lines (see \ref{musixdbr}). \subsection{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\enotes \Notes\ibu0k0\zq g\yqb0k\qb0j\zq e\yqb0i\tbu0\qb0j\enotes \bar \NOTes\dzq g\hu k\enotes \NOTes\hpause\enotes \bar \NOTes\dzq o\zh d\hl h\enotes \Notes\ibl0e0\zq g\yqb0k\qb0j\zq e\yqb0i\tbl0\qb0j\enotes \bar \NOTes\dzq g\hu k\enotes \NOTes\hpause\enotes \endextract \end{music} \noindent was coded as follows: \begin{quote}\begin{verbatim} \generalsignature{-2} \generalmeter\allabreve \startextract \NOTes\dzq o\zh d\hu h\enotes \Notes\ibu0k0\zq g\yqb0k\qb0j\zq e\yqb0i\tbu0\qb0j\enotes \bar \NOTes\dzq g\hu k\enotes \NOTes\hpause\enotes \bar \NOTes\dzq o\zh d\hl h\enotes \Notes\ibl0e0\zq g\yqb0k\qb0j\zq e\yqb0i\tbl0\qb0j\enotes \bar \NOTes\dzq g\hu k\enotes \NOTes\hpause\enotes \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 \ref{perc}). \subsection{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} \subsection{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. \subsection{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), while single notes requiring ledger lines look better with \keyindex{longledgerlines}. \medskip \begin{music} \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 \bar \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} \subsection{musixgre}\label{gregnotes}\index{gregorian chant} % \subsection{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}&\enotes \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}&\enotes \zendextract \end{verbatim} All of the special gregorian symbols available in \musixtex\ are described in the following subsections. \subsubsection{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} \subsubsection{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}. \subsubsection{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\enotes \notes \bivirga cc\enotes \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\enotes \notes \bivirga cc\enotes \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\enotes \Notes \trivirga cca\enotes \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\enotes \notes \bistropha cc\enotes \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\enotes \Notes \tristropha cca\enotes \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\enotes \notes \clivis ca\enotes \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\enotes \notes \lclivis ca\enotes \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\enotes \notes \podatus ac\enotes \notes \podatus cf\enotes \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\enotes \notes \podatusinitiodebilis ac\enotes \notes \podatusinitiodebilis cf\enotes \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\enotes \notes \lpodatus ce\enotes \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\enotes \notes \pesquassus ae\enotes \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\enotes \notes \quilismapes ae\enotes \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\enotes \notes \torculus cfd\enotes \notes \torculus afc\enotes \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\enotes \notes \torculusinitiodebilis cfd\enotes \notes \torculusinitiodebilis afc\enotes \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\enotes \notes \Porrectus bac\enotes \notes \Porrectus bNd\enotes \notes \Porrectus bMe\enotes \notes \Porrectus bLe\enotes \zendextract \end{music} \noindent coded: \begin{quote}\begin{verbatim} \notes \Porrectus bab\enotes \notes \Porrectus bac\enotes \notes \Porrectus bNd\enotes \notes \Porrectus bMe\enotes \notes \Porrectus bLe\enotes \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\enotes \notes \Porrectusflexus bNdb\enotes \notes \Porrectusflexus bMeb\enotes \notes \Porrectusflexus bLea\enotes \zendextract \end{music} \noindent coded: \begin{quote}\begin{verbatim} \notes \Porrectusflexus bacN\enotes \notes \Porrectusflexus bNdb\enotes \notes \Porrectusflexus bMeb\enotes \notes \Porrectusflexus bLea\enotes \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\enotes \Notes \climacus cba\enotes \Notes \climacus dbN\enotes \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\enotes \Notes \climacusresupinus cbab\enotes \Notes \climacusresupinus dbNb\enotes \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\enotes \notes \lclimacus cfd\enotes \notes \lclimacus afc\enotes \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\enotes \notes \scandicus ceg\enotes \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\enotes \Notes \salicus ceg\enotes \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\enotes \Notes \salicusflexus cegd\enotes \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\enotes \Notes \trigonus cef\enotes \zendextract \end{music} \end{description} \subsubsection{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\enotes \notes \clivisauctup ca\enotes \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\enotes \notes \clivisauctdown ca\enotes \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\enotes \notes \podatusauctup ac\enotes \notes \podatusauctup cf\enotes \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\enotes \notes \podatusauctdown ac\enotes \notes \podatusauctdown cf\enotes \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\enotes \notes \pesquassusauctdown ae\enotes \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\enotes \notes \quilismapesauctdown ae\enotes \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\enotes \notes \torculusauctdown cfd\enotes \notes \torculusauctdown afc\enotes \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\enotes \notes \Porrectusauctdown bNd\enotes \notes \Porrectusauctdown bMe\enotes \notes \Porrectusauctdown bLe\enotes \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\enotes \Notes \climacusauctdown caM\enotes \Notes \climacusauctdown aNM\enotes \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\enotes \notes \scandicusauctdown ceg\enotes \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\enotes \Notes \salicusauctdown ceg\enotes \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\enotes \notes \clivisdeminut ca\enotes \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\enotes \notes \podatusdeminut ac\enotes \notes \podatusdeminut cf\enotes \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\enotes \notes \torculusdeminut cfd\enotes \notes \torculusdeminut afc\enotes \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\enotes \notes \torculusdebilis cfd\enotes \notes \torculusdebilis afc\enotes \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\enotes \notes \Porrectusdeminut bNd\enotes \notes \Porrectusdeminut bMe\enotes \notes \Porrectusdeminut bLe\enotes \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\enotes \Notes \climacusdeminut caM\enotes \Notes \climacusdeminut aML\enotes \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\enotes \notes \scandicusdeminut ceg\enotes \zendextract \end{music} \end{description} \subsection{musixgui}\ixtt{musixgui.tex} Provides macros for typesetting modern style \itxem{guitar tablatures}. 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 tablatures, 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}%| \subsection{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} \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} 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} \subsection{musixlyr} \ixtt{musixlyr.tex} Enables the recommended method for adding lyrics to a score (see \ref{musixlyr}). \subsection{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}. \subsection{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 preceeded with 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 preceeded with 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 preceeded with 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}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \bar \Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \bar \Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \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}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \bar \Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \bar \Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \Notes\zql f\rlap\qp\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \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}\enotes\bar \NOtes\qu I|\zq N\qu d&\qp&\diapunc f\enotes \NOtes\qu J|\zq a\qu e&\ynq4&\diapunc e\enotes\bar \notes\hu G|\zh b\hu d&\dnq4&\zsqu d\rsqu g\squ{hgh}\enotes \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}\enotes\bar|\\ \verb|\NOtes\qu I|\Vert\verb|\zq N\qu d&\qp&\diapunc f\enotes|\\ \verb|\NOtes\qu J|\Vert\verb|\zq a\qu e&\ynq4&\diapunc f\enotes\bar|\\ \verb|\notes\hu G|\Vert\verb|\zh b\hu d&\dnq4&\zsqu d\rsqu g\squ{hgh}\enotes|\\ \verb|\endextract| \subsection{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}. %\check \subsection{musixps}\label{musixps}\index{musixps@{\tt musixps.tex}} Activates type K postscript slurs, ties, and hairpins (see \ref{PostscriptSlurs}). \subsection{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 \subsection{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 for commonly used fonts such as \verb|\tenrm|, \verb|\eightrm|, etc.; \item definitions of \keyindex{hsize}, \keyindex{vsize}, \keyindex{hoffset}, \keyindex{voffset} suitable for A4 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}] 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} \subsection{musixtmr}\index{musixtmr@{\tt musixtmr.tex}} Replaces the standard \texttt{musixtex} fonts by the Times series fonts, as default (see \ref{musixtmr}). \subsection{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}. \subsection{tuplet}\index{tuplet@{\tt tuplet.tex}} Causes the figure in xtuplets to be printed within a small gap in the bracket (see \ref{tuplet}). % DAS Discussed elsewhere %\section{The \TeX-music Mailing List} % %If you decide to learn to use \musixtex, you are likely to wish that there were %someone to answer your questions. That is exactly what you'll find on the \TeX-music %mailing list: experts from all over the world with lots of experience with %\musixtex{} and related software, who are glad to answer questions and help solve %problems. You can find out more about the list and sign up at %\href{http://icking-music-archive.org/mailman/listinfo/tex-music} %{\underline{\tt http://icking-music-archive.org/mailman/listinfo/tex-music}}. \chapter{Acquiring, Installing, and Using \musixtex}\label{installation} This chapter will assume that \TeX\ is installed. Most \unix\ or Linux systems come with \TeX\ already installed. If using MS Windows, you'll need to have manually installed some version of \TeX. MiK\TeX\ is the most common variant by far and therefore will be assumed. If you need to install MiK\TeX, you can get the software from \href{http://www.miktex.org/}{\underline{\texttt{http://www.miktex.org}}} or from CTAN. % DAS Out of date! %The Werner Icking Archive contains excellent %\href{http://icking-music-archive.org/software/musixtex/musixwinstall.pdf}% %{\underline{instructions for installing MiK\TeX}}% %\footnote{Thanks to Eva {\sc Jaksch}}. \section{Where to get \musixtex: the Werner Icking Archive}\label{getstuff} As already mentioned, 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}}. The most up-to-date versions of \musixtex\ and friends are located in the \href{http://icking-music-archive.org/software/indexmt6.html}{\underline{software}} section of the archive. The stable distribution of \musixtex\ will be contained in \href{http://icking-music-archive.org/software/musixtex/musixtex.zip} {\underline{\verb|musixtex.zip|}}. This will serve any operating system, but has detailed Windows-specific installation instructions and batch scripts that simplify installing and running the software. There is a somewhat differently organized distribution on the CTAN servers at\\ \href{http://www.ctan.org/tex-archive/macros/musixtex/} {\underline{http://www.ctan.org/tex-archive/macros/musixtex/}} with FTP link\\ \href{ftp://ftp.ctan.org/tex-archive/macros/musixtex/} {\underline{ftp://ftp.ctan.org/tex-archive/macros/musixtex/}}. This one is "TDS compliant," which means that it adheres to a recently announced standard directory structure for \TeX\ systems. It is accompanied by installation instructions for \unix\ and other OS's, but does not contain any installation scripts. \subsection{End of line characters in text files} The files in the Werner Icking Archive and in \verb|musixtex.zip| have been contributed by such a wide range of authors that there is no common standard for the line endings in text files. But the key text files serve as input to programs such as \TeX\ and \MF\ which are insensitive to this. If you use a PC and run into problems using any of these text files, you might be able to solve them with the program \verb|flip.exe| which comes with the \musixtex\ distribution. Run it from a command window by typing \verb|flip -m| $<$filename$>$, and it will convert line endings from the \unix\ to MS-DOS convention. \subsection{Pre-installed \musixtex} Many versions of \TeX\ include \musixtex\ as a package. The included version is likely to be out of date and probably should not be used. When an archived version is downloaded and properly installed, it will supersede the pre-installed version. \section{Installing \musixtex} Installation of the \TeX~ and \musixtex~ software is very system dependent and will not be detailed here. The distribution \href{http://icking-music-archive.org/software/musixtex/musixtex.zip} {\underline{\verb|musixtex.zip|}} is Windows-centric but does include all the \musixtex\ files needed for any OS. For Windows installation, the distribution includes very detailed instructions in \href{http://icking-music-archive.org/software/musixtex/musixtex.zip} {\underline{\verb|mxinsuse.pdf|}} and a batch file {\tt instmus.bat} which greatly simplifies the installation process. Users of other OS's may refer to \href{http://icking-music-archive.org/software/musixtex/mxinsuse.pdf} {\underline{\verb|mxinsuse.pdf|}} or to %DAS Out of date! %either %\href{http://icking-music-archive.org/software/musixtex/musixwinstall.pdf} %{\underline{Windows}}\ or \href{http://icking-music-archive.org/software/musixtex/musixtex-for-unix.html} {\underline{HOWTO file for \unix}} in the archive. Whatever your OS or installation method, there are really just a few fundamental tasks you must accomplish for a usable install: \begin{itemize}\setlength{\itemsep}{0ex} \item \musixtex\ comprises some \TeX\ source files (\verb|.tex|, \verb|.sty|), font files, and the executable \verb|musixflx|. The \TeX\ sources and font files must be placed in locations where \TeX\ can find them; \item \TeX\ must be advised of the locations of those files; \item If you are installing any postscript fonts, you'll have to add a map file somewhere in the \TeX\ file structure, and locate and modify a configuration file such as \verb|config.ps| to record the addition of the map file. \item \verb|musixflx| must be placed in a folder that is in your search path, so it can be executed from your working directory. \end{itemize} \section{Running \musixtex} As first stated in Section~\ref{threepass}, to compile a 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 ghostscript}, which must be separately downloaded and installed. Finally, you may produce a PDF file also using GSview, and view that with Acrobat Reader or {\tt GSview}. You also can view the \verb|.dvi| file directly using a DVI viewer such as Yap, but if you are using type K postscript slurs, DVI viewers will not display them. Rather than executing all the foregoing programs separately, most users will find it more convenient to use either a batch file or a shell. The distribution \verb|musixtex.zip| includes various batch files for compiling and viewing \musixtex\ files in Windows. Their use is discussed in detail in \href{http://icking-music-archive.org/software/musixtex/mxinsuse.pdf} {\underline{\verb|mxinsuse.pdf|}}. \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 \verb|musixdoc.tex| 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 to 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. Here, the European character set is used. See section \ref{8bit} on page \pageref{8bit} for other sets. \end{itemize} \section{Full examples} The small examples above and the longer ones mentioned below are included in the folder \verb|MUSIXTEXdistribution\doc\musixtex\manualexa| of \verb|musixtex115.zip|. Many others are available in \href{http://icking-music-archive.org/software/musixtex/musixexa.zip} {\underline{\texttt{musixexa.zip}}} or \href{http://icking-music-archive.org/software/musixtex/musixexa-T112.tar.gz} {\underline{\texttt{musixexa-T112.tar.gz}}}. Some of them require the presence of \verb|musixcpt.tex| which makes examples created in Music\TeX\ compatible with \musixtex. Here we only 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 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 auxilliary 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 -l musixdoc latex musixdoc latex musixdoc dvips -e0 -t a4 -P pdf -G0 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 many musical examples. \verb|makeindex| 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| (making PostScript type K slurs visible). To produce \verb|musixdoc.pdf|, open \verb|musixdoc.ps| in \texttt{GSview}. Go to {\tt File\|Convert}, select \verb|pdfwrite| at 600 dpi resolution, and click \verb|OK|. 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. \clearpage {\parindent0pt \hoffset-15.4mm \voffset-42mm \hsize190mm \vsize285mm \parskip0pt plus 2pt % not fine, not clean, but works % !!! don't look at this !!! %>>> \makeatletter \textheight\vsize \@colht\vsize \@colroom\vsize \makeatother %<<< \let\MYTEMP\addcontentsline \def\addcontentsline#1#2#3{} \chapter{} \let\addcontentsline\MYTEMP \addcontentsline{toc}{chapter}{% \protect\numberline\thechapter{Summary of denotations}} \vglue-20mm \centerline{\bigfont Pitches} \medskip \tentt \def\bs{\tentt\char92} \setclef1\bass \afterruleskip2pt \startpiece % % Pitches % \addspace\afterruleskip \notes\wh{`ABCDEFG}\wh{!ABCDEFG}\wh{HIJKLMNabcde}\off{-26\noteskip}% \zchar{14}{\llap`A}\sk \zchar{14}{\llap`B}\sk \zchar{14}{\llap`C}\sk \zchar{14}{\llap`D}\sk \zchar{14}{\llap`E}\sk \zchar{14}{\llap`F}\sk \zchar{14}{\llap`G}\sk \zchar{14}A\sk \zchar{14}B\sk \zchar{14}C\sk \zchar{14}D\sk \zchar{14}E\sk \zchar{14}F\sk \zchar{14}G\sk \zchar{-5}{\llap'A}\zchar{14}H\sk \zchar{-5}{\llap'B}\zchar{14}I\sk \zchar{-5}{\llap'C}\zchar{14}J\sk \zchar{-5}{\llap'D}\zchar{14}K\sk \zchar{-5}{\llap'E}\zchar{14}L\sk \zchar{-5}{\llap'F}\zchar{14}M\sk \zchar{-5}{\llap'G}\zchar{14}N\sk \zchar{14}a\sk \zchar{14}b\sk \zchar{14}c\sk \zchar{14}d\sk \zchar{14}e\sk\en \stoppiece\vskip-3\Interligne\setclef1\treble\contpiece \notes\wh{abcdefg}\wh{hijklmno}\wh{pqrstuvwxyz}\off{-26\noteskip}% \zchar{-8}a\sk \zchar{-8}b\sk \zchar{-8}c\sk \zchar{-8}d\sk \zchar{-8}e\sk \zchar{-8}f\sk \zchar{-8}g\sk \zchar{-8}h\zchar{-4}{\llap'a}\sk \zchar{-8}i\zchar{-4}{\llap'b}\sk \zchar{-8}j\zchar{-4}{\llap'c}\sk \zchar{-8}k\zchar{-4}{\llap'd}\sk \zchar{-8}l\zchar{-4}{\llap'e}\sk \zchar{-8}m\zchar{-4}{\llap'f}\sk \zchar{-8}n\zchar{-4}{\llap'g}\sk \zchar{-8}o\zchar{-4}{\llap{'\kern-2pt'}a}\sk \zchar{-8}p\zchar{-4}{\llap{'\kern-2pt'}b}\sk \zchar{-8}q\zchar{-4}{\llap{'\kern-2pt'}c}\sk \zchar{-8}r\zchar{-4}{\llap{'\kern-2pt'}d}\sk \zchar{-8}s\zchar{-4}{\llap{'\kern-2pt'}e}\sk \zchar{-8}t\zchar{-4}{\llap{'\kern-2pt'}f}\sk \zchar{-8}u\zchar{-4}{\llap{'\kern-2pt'}g}\sk \zchar{-8}v\zchar{-4}{\llap{'\kern-2pt'\kern-2pt'}a}\sk \zchar{-8}w\zchar{-4}{\llap{'\kern-2pt'\kern-2pt'}b}\sk \zchar{-8}x\zchar{-4}{\llap{'\kern-2pt'\kern-2pt'}c}\sk \zchar{-8}y\zchar{-4}{\llap{'\kern-2pt'\kern-2pt'}d}\sk \zchar{-8}z\zchar{-4}{\llap{'\kern-2pt'\kern-2pt'}e}\sk\en \stoppiece \medskip \centerline{\bigfont Notes, Accidentals, Accents, Clefs and Rests} \medskip % % Notes& Accidentals % \contpiece \Notes \zchar{-4}{Accidentals:}% \zchar9{\bs maxima}\maxima i\relax \zchar{12}{\bs longa}\longa i% \zchar9{\bs breve}\breve i% \zchar{12}{\bs wq}\wq i% \zchar{12}{\bs wqq}\wqq i% \zchar{12}{\bs wh}\wh i% \zchar{12}{\bs hu}\zchar{-4}>\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{