% % 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. % \ifx\documentclass\undefined \documentstyle[twoside,11pt,musixdoc,multicol,backgrnd]{report} \else \documentclass[twoside,11pt]{report} \usepackage{multicol} \usepackage{musixdoc} \usepackage{backgrnd} % \usepackage{amsmath} % \usepackage[emtex]{changebar} \fi \def\musictex{Music\TeX{}} \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 T.104~-- \today} \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\\ E-mail : {\tt taupin@lps.u-psud.fr}\\\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\ddag\\\large\sl (Ruhr--Uni--Bochum)\\ Ursulastr. 32\\ D-44793 Bochum} \date{} %\show\maketitle \let\endtitleORI\endtitlepage \def\endtitlepage{\vfill\noindent $^\ddag$ {\it For personal reasons, Andreas Egler decided to retire from authorship of this work. Nevertherless, he has done an important work about that, and I decided to keep his name on this first page. {\sc D. Taupin}}\endtitleORI} \maketitle \clearpage %\check \thispagestyle{empty} \null \vfill \begin{flushright}\it %.. All the possible is done,\\ %the impossible is being done,\\ %for miracles I ask for some delay.\\[\smallskipamount] %{\sc N.N.}\\[\bigskipamount] %...~time after time~...\\[\smallskipamount] %{\sc Cindy Lauper}\\[\bigskipamount] 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] {\sc Hans Kuykens} \end{flushright} \begin{center} Although one of the authors contested that point once the common work had begun, \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 {\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 definition. \end{center} \clearpage \setcounter{page}1 \tableofcontents \setcounter{secnumdepth}3 \pagestyle{headings} \chapter{What is \musixtex{} ?} \hrule\smallskip \section*{Preface} \noindent Dear user, This is still an imperfect version, which means that some features will be added or corrected. However our intent is to avoid removing existing commands, in order to spare your own adaptation problems or your typing time correcting scores you already have in your archive. Sections marked with a star, or paragraphs marked ``???'' or ``.!.'', indicate either that text is partly missing, or that something might change at a next release. \smallskip \noindent{\bf Remarque, Bemerkung, Cuidado, etc.:} If you have problems understanding technical musical terms in english, please look at: \begin{center} ftp://ftp.gmd.de/music/lists/glossary/glossary.ps \end{center} which gives the translation of most terms into French, German, Dutch, Danish and Swedish. This file {\tt glossary.eps.gz} is also included in the distribution. \index{glossary}\index{glossaire}\index{lexique}\index{traduction}\index{dictionnaire} \smallskip\hrule\medskip \musixtex\ is a set of \TeX\ macros to typeset polyphonic, orchestral or polyphonic music. Therefore, it is mainly supposed to be used to type wide scores -- just because true musicians seldom like to have to frequently turn pages -- and this is not really compatible with \LaTeX's standard page formats. Even with \verb|A4.sty|, the \verb|\textheight| and \verb|\textwidth| are too small for musician needs. However, a \LaTeX\ style has also been provided (and it is used for the typing of the present paper) but this \verb|musixtex| style is fit for musicographic books rather than for normal scores to be actually played. It should be emphasized that \musixtex\ is not intended to be a compiler which would translate some \ixem{standard musical notation}s into \TeX\, nor to decide by itself about aesthetic problems in music typing. \musixtex\ only typesets staves, notes, chords, beams, slurs and ornaments as requested by the composer. Since it makes very few typesetting decisions, \musixtex\ appears to be a versatile and rather powerful tool. However, due to the important amount of information to be provided to the typesetting process, coding \musixtex\ might appear to be as awfully complicated as the real keyboard or orchestral music. It should therefore be interfaced by some pre-compiler in the case of the composer/typesetter wanting aesthetic decisions to be automatically made by somebody (or something) else. % %\footnote{A short description to all known compilers for \musixtex\ can be %found on page \pageref{compiler}f.}. \section{\musixtex\ principal features} %\check \subsection{Music typesetting is two-dimensional} Most people who have just learned a bit of music at college, probably think that music is a linear sequence of symbols, similar to literary texts to be \TeX-ed. On the contrary, with the exception of strictly monodic instruments like most orchestral wind instruments and solo voices, one should be aware that reading music is actually a matricial operation: the non-soloist musician successively reads \ital{columns} of simultaneous notes which he plays if he is a pianist, clavichordist or organist, which he reads and watches if he conducts an orchestra, and which he is supposed to check and partially play when he is a soloist who wants to play in time with the accompanying instrument or choir. In fact, our personal experience of playing piano and organ as well as sometimes helping as an alternate Kapellmeister leads us to think that music reading and composing is actually a slightly more complicated intellectual process: music reading, music composing and music thinking seem to be a three layer process. The musician usually reads or thinks several consecutive notes (typically a long \ital{beat} or a group of logically connected notes), then he goes down to the next instrument or voice and finally assembles the whole to build a sequence of music lasting roughly a few seconds. He then proceeds to the next \ital{beat} or \ital{bar} of his score. Thus, it appears that the humanly logical way of coding music consists in horizontally accumulating a set of \ital{vertical combs} with \ital{horizontal teeth} as described in Table \ref{readtable}. \def\hboxit#1{\boxit{\rlap{#1}\hphantom{note sequence three}}} \begin{table} \begin{center} \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{The order in which a musician reads music}\label{readtable} \end{table} This is the reason why, in \musixtex\ the fundamental \ital{macro} is of the form \begin{center} \verb|\notes ... & ... & ... \enotes|\footnote{Also available for \keyindex{enotes} is the abbreviation \keyindex{en}.} \end{center}\index{\&} \noindent where the character \verb|&| is used to separate the notes to be typeset on respective staffs of the various instruments, starting from the bottom. In the case of an instrument whose score has to be written with several staffs, these staffs are separated by the character \|. \index{"|@{\tt\char'174}} Thus, a score written for a keyboard instrument and a monodic instrument (for example 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}. It is worth emphasizing that we actually said \ital{``groups of notes''}: this means that in each section of the previous macro, the music typesetter is welcome to insert, not only chord notes to be played at once, but small sequences of consecutive notes which build something he understands as a musical phrase. This is why note typing macros are of two kinds in \musixtex, namely the note macros which are not followed by spacing afterwards, and those which induce horizontal spacing afterwards. \subsection{The spacing of the notes} It seems that many books have dealt with this problem. Although it can lead to interesting algorithms, we think it is not an important point in practice. In fact, each column of notes has not necessarily the same spacing and, in principle, this \itxem{spacing} should depend on the shortest duration of the simultaneous notes. But this cannot be established as a rule, for at least two reasons: \begin{enumerate} \item spacing does not depend only on the local notes, but also on the context, at least in the same bar. \item in the case of polyphonic music, exceptions can easily be found. Here is an example: \begin{music} \generalmeter{\meterfrac44} \startextract\NOtes\zhu j\ql h\hl g\hu k\ql f\enotes\endextract \end{music} \noindent where it can be clearly seen that the half notes at beats 2 and 3 must be spaced as if they were quarter notes since they overlap, which is obvious only because of the presence of the indication of the \itxem{meter} 4/4. \end{enumerate} So the typesetter has to take care of good readable spacings on his own. Therefore, we preferred to provide the composer/typesetter with a set of macros which can be found in \ref{newspacings}. \subsection{Music tokens, rather than a ready-made generator} The tokens provided by \musixtex\ are: \begin{itemize} \item the note symbols \ital{without stem}; \item the note symbols \ital{with stems, and hooks for eighth notes and shorter}; \item the indication of beam beginnings and beam ends; \item the indication of beginnings and ends of ties and slurs; \item the indication of accidentals; \item the ornaments: arpeggios, trills, mordents, pinc\'es, turns, staccatos and pizzicatos, fermatas, etc.; \item the bars, the meter and signature changes, etc. \end{itemize} Thus, \verb|\wh a| produces an \ital{A (of nominal frequency 222.5~Hz, unless transposed)} of duration being a \ital{whole note}. In the same way, \verb|\wh h| produces an \ital{A (445~Hz)} of duration represented by a \ital{whole note}, \verb|\qu c| produces a \ital{C (250~Hz approx.)} whose value is a \ital{quarter note with stem up}, \verb|\cl J| produces a \ital{C (125~Hz approx.)} of duration equal to an \ital{eighth note with stem down}, etc. To generate quarter, eighth, sixteenth, etc. chords, the macro \keyindex{zq} can be used: it produces a quarter note head, the vertical position of which is memorized and recalled when another stemmed note (possibly with a hook) is coded; then the stem is adjusted to link all simultaneous notes. Thus, the perfect C-major chord, i.e. \begin{music} \startextract\NOtes\zq{ceg}\qu j\en\endextract \end{music} \noindent is coded \verb|\zq c\zq e\zq g\qu j| or, in a more concise way, \verb|\zq{ceg}\qu j| (stem up): in fact, single notes are treated\dots\ like one-note chords. %\check \subsection{Beams} \ital{Beams}\index{beams} are generated using macros which define their beginning (at the current horizontal position), together with their altitude, their direction (upper or lower), their multiplicity, their slope and their reference number. This latter feature -- the reference number -- appears to be necessary, since one may want to write beams whose horizontal extents overlap: therefore, it is necessary to specify which beam the notes belong to and which beam is terminated at a given position. \subsection{Setting anything on the score} A general macro (\keyindex{zcharnote}) provides a means of putting any sequence of symbols (in fact, some \verb|\hbox{...}|) at any pitch of any staff of any instrument. Thus, any symbol defined in a font (letters, math symbols, etc.) can be used to typeset music. \section{A simple example} Before giving more details, 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} \parindent10mm \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 \endextract \end{music} The \ital{coding} is set as follows: \begin{quote}\begin{verbatim} \begin{music} \parindent10mm \instrumentnumber{1} % a single instrument \setname1{Piano} % whose name is Piano \setstaffs1{2} % with two staffs \generalmeter{\meterfrac44}% 4/4 meter chosen \startextract % starting real score \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\ql l\sk\ql n\en \bar \Notes\ibu0f0\qb0{dgf}|\qlp i\en \notes\tbu0\qb0g|\ibbl1j3\qb1j\tbl1\qb1k\en \Notes\ibu0f0\qb0{cge}\tbu0\qb0g|\hl j\en \endextract % terminate excerpt \end{music} \end{verbatim}\end{quote} \begin{itemize} \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 is aligned with the third eighth of the left hand. \item\verb|\qlp| is a quarter with a point. \item\verb|\ibbl1j3| begins a double beam, aligned on the \ital{C} (\verb|j| at this pitch) of slope 15\%. \end{itemize} \section{The three pass system} \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. This strategy does not work very well for music. If each bar of music is treated as a word, in the sense that inter-bar glue is placed at the end of each bar, then the usual result is the appearance of unsightly gaps before each bar rule. This follows naturally from the fact that the number of bars per line is normally many fewer than the number of words in a line of text. To address the above aim, a three pass system was developed. On the first pass, information about each bar is written to an external file, by default \verb|jobname.mx1|. This file begins with a header listing parameters such as line width, paragraph indentation, clef, sign and meter widths, and the first-pass elemental spacing \keyindex{elemskip}. Width information within the bars is classified either as ``soft'' or ``hard'': ``soft'' widths are those amenable to subsequent rescaling (e.g. a note box), while ``hard'' widths represent unscalable material such as clef symbols, key signatures and bar rules.\index{soft width}\index{hard width} After the first pass, an external routine is run to determine optimal values of the elemental spacing (\verb|\elemskip|) for each line, so as to properly fill each line, and to lead to the piece filling an integral number of 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, and the concern that if such a routine were added to \musixtex, storage problems might be exacerbated. The resulting routine 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 re-\TeX-ed. On this third pass, the \verb|jobname.mx2| file is read in, and the information used as described above. To give an easy example: after pass 1 you 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} 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} which 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} The biggest advantage of using a 3-pass system is the very easy and fast alteration to the layout which is possible, especially of a long masterpiece, by changing only one parameter, namely \keyindex{mulooseness}. This value acts analogous to \TeX's \verb|\looseness| command. For non-\TeX-perts: if you end a paragraph and state \verb|\looseness=-1| somewhere inside, then \TeX\ will try to make this paragraph one line shorter than it normally would. \musixtex\ does the same, but instead for paragraphs, for \ital{sections}. What is a \ital{section}? As long as you don't force a line break, this means the whole piece. When you force a line break with either \keyindex{stoppiece}, \keyindex{endpiece}, \keyindex{zstoppiece}, \keyindex{Stoppiece}, \keyindex{Endpiece}, \keyindex{alaligne} \keyindex{zalaligne}, \keyindex{alapage} or \keyindex{zalapage} you start a new \ital{section}. Somewhere\footnote{Advisably, at the beginning or at the end of the section, for the sake of clarity.} before the end of the \ital{section}, you can change the value of \keyindex{mulooseness} to something different from the default of 0. 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} or: \begin{verbatim} \NOtes\qu c\qp\en\mulooseness=-1\Endpiece \end{verbatim} yields (a little bit tight, but only for the sake of demonstration of \keyindex{mulooseness}): \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} Here is the fastest way to get a satisfactory output: \begin{enumerate} \item build up the piece bar\footnote{Or two or three, whatever you prefer.} by bar. Pay much attention to correct spacings, and go on only when you are really satisfied with them. \item \TeX~$\Longrightarrow$ {\tt musixflx} $\Longrightarrow$ \TeX. \item Look at the output and decide if you want to have more or fewer systems lines, e.g.~to fill the page or to get an even number of pages.\index{musixflx@{\tt musixflx}} \item Adjust \keyindex{mulooseness}. However, {\large\bf beware~:} \verb|\mulooseness| increases the target number of lines by its value. This is of no serious trouble for large pieces, but if you say \verb|\mulooseness=3| in a piece or in a section which only has 3 bars (three in the musical sense, i.e. two \verb|\bar| in the text), then {\tt musixflx} will not be able to split 3 bars into 4 lines... and it will hopefully result in a diagnostic by {\tt musixflx}, but possibly also in an arithmetic fault... \item Delete the \verb|jobname.mx2| and again\\ \TeX~$\Longrightarrow$ \verb|musixflx| $\Longrightarrow$ \TeX \quad\ital{(For hackers: watch the difference in {\tt jobname.mx1}!)} \end{enumerate} \begin{remark} Instead of looking at the output of the previous run and modifying the number of systems using \keyindex{mulooseness} one can directly specify the number of lines in a section by assigning a positive number to \keyindex{linegoal}. Use \keyindex{linegoal} in the same way as \keyindex{mulooseness} somewhere in a section, preferable at start or end. \keyindex{mulooseness} must be zero for \keyindex{linegoal} to work. Both are automatically set to zero after processing the end of a section e.g. by \keyindex{stoppiece}. \keyindex{linegoal} requires the latest version of musixflx (0.83). \end{remark} \noindent If you have really followed this step by step, then your whole layout will be ready and you will not have to generate \verb|jobname.mx2| again. This only holds as long as you don't change any spacings. If you get the warning: \verb|You can't use \raise ...|, than read the upper paragraph again and follow the instruction of point 5. There are some more advantages. Without using \ital{glue}, every horizontal position in a line can be computed. This enables using, e.g.~octave lines, without specifying a dimension, but by saying \verb|\i...| and \verb|\t...|. \subsection{External executable {\tt musixflx}} One drawback affecting portability between computers is the executable {\tt musixflx}\index{musixflx@{\tt musixflx}}. We are still searching for people who are able to compile the C-source and maintain it. 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|, all of which opens \verb|jobname.mx1|. \medskip For large scores (more than 4 pages approximately), having only one section and an overall value of \verb|\mulooseness| becomes impractical since one wants not only to have nicely spaced systems, but one also usually wants to have completely filled pages to avoid empty top and bottom margins on the last page. It is then wise to force the total number of pages and maybe the line breaks in each page, which can be done by either using explicit \keyindex{alapage} and \keyindex{alaligne}, or more automatically by means of the \keyindex{autolines} command borrowed from \musictex\ and implemented in the additional {\ttxem{musixcpt.tex}} file. \subsection{Restrictions and warnings} If you have worked with \musictex\ before, you must be aware that two main things have changed, namely the spacing (and spacing commands) and the line breaking, see section~\ref{spacing}, p.~\pageref{spacing} and section~\ref{linebreak} p.~\pageref{linebreak}. %\check A serious practical problem concerns the effect of unrecorded spaces, such as those created by source lines not ended by \verb|%| \index{%@{\tt\char37}} or \keyindex{relax} or another control sequence ending in a letter. These will result in the dreadful {\bf Overfull hbox} messages appearing during pass 3. \medskip \centerline{\boxit{Considerable discipline is needed to avoid this problem!}} When you start using this software package, you will spend a lot of time searching for the cause of over/underfull-hbox warnings, which will appear during pass 3. You may ignore them during pass 1, but \ital{you must} find their cause when they appear during pass 3. In \musixtex\ there is no glue (only $\pm$ 1pt behind \verb|\writesignatures|), so it works only if every space is recorded in the correct way. As a result, never use \verb|\hskip| or \verb|\kern| with the exception of \ital{zero}-boxes, like \verb|\rlap|, \verb|\llap|, \verb|\zcharnote|, \verb|\uptext|, etc., or (apparently) fixed length boxes like \verb|\hsong|. But that is not all---all spacing commands\footnote{Except {\Bslash hardspace} which is an exception and has the opposite purpose.} must be fed with scalable values (\ital{e.g.} \verb|\noteskip|, \verb|\elemskip|, \verb|\afterruleskip| and \verb|\beforeruleskip|, optionally preceded by an integer or decimal number). \verb|musixflx| can't work if the values of \verb|\noteskip|, \verb|\afterruleskip|, \verb|\beforeruleskip|, are directly assigned ``hard''\footnote{Hard values are all values which are not scalable} values in between \verb|\startpiece| and \verb|\stoppiece|\footnote{{\Bslash endpiece} has the same meaning}.\index{hard spacing} These restrictions make it hardly compatible with most sources designed for \musictex\footnote{Most examples provided by D. {\sc Taupin} in \musictex's distribution can be run with \musixtex\ without serious problems... However, they will eventually have to be corrected for the sake of compatibility.}. Most of them have to be adjusted to get things going. Some values are much more important than in \musictex, namely \verb|\elemskip|, \verb|\afterruleskip| and \verb|\beforeruleskip|. The ratio between them is especially very important if you use \keyindex{mulooseness} often to adjust the number of lines: all of them are multiplied by the same factor in each section. %\check \subsection{\musixtex's laws} \begin{enumerate} \item Never have a line that doesn't finish either with a control sequence or with a \verb|%| inside of \verb|\startpiece...\stoppiece| \begin{center} \Large\bf !!! \musixtex\ forgives NOTHING !!! \end{center} (a space in the default font (using plain-\TeX) causes 3.33pt of unrecorded space, but there is only $\pm$ 1pt of glue in \musixtex) \item \verb|\off| must be used with relative values, like \verb|\noteskip|, \verb|\elemskip|, \verb|\after[before]ruleskip| \item \verb|\qsk| and \verb|\hqsk| are now scalable, e.g. \verb|\qsk| doesn't mean exactly one note head width (it depends on \verb|\elemskip| and \verb|flex_factor|) \item Text of songs and any non-\musixtex\ text must be put in zero boxes, like \verb|\zcharnote|, \verb|zchar|, \verb|rlap|, \verb|lrlap|, \verb|llap|, \verb|uptext|, \verb|zsong...|. However, specific features are now provided, namely \verb|\hardlyrics| and \verb|\hsong| (see \ref{lyrics}, p.~\pageref{lyrics}). \item Don't touch either \verb|\noteskip| with hard values, or \verb|\after[before]ruleskip| at all inside of \verb|\startpiece (\debutmorceau) ... \stop[end]piece (\susp[fin]morceau)| \end{enumerate} \section{Some highlights} %\check \subsection{Signatures} Signatures can be stated either for all instruments, for example by \keyindex{generalsignature}\verb|{-2}| which sets two flats on each staff, or separately for each instrument. Thus, the \keyindex{generalsignature} can be partly overridden by \keyindex{setsign}\verb|2{1}| which puts one sharp on the staffs of \itxem{instrument number} 2. Of course, the current signature may change at any time as well as the meters and clefs. \subsection{Transposition} An important question is: \ital{``can \musixtex\ transpose a score~?''}. The answer is now 99.5~\% \ital{yes}. If fact, there is an internal register named \keyindex{transpose} the default value of which is zero, but it may be set to any reasonable positive or negative value. In that case, it offsets all symbols pitched with letter symbols by that number of pitch steps. However, it will neither change the signature nor the local accidentals, and if -- for example -- you transpose a piece written in $C$ by 1 pitch, \musixtex\ will not know whether you want it in $D\flat$, in $D$ or in $D\sharp$. This might become tricky if accidentals occur within the piece, which might have to be converted into flats, naturals, sharps or double sharps, depending on the new chosen signature. To avoid this trouble, \ital{relative} accidentals have been implemented, the actual output of which depends on the pitch of this accidental and on the current signature.\index{relative accidentals} %\check \subsection{Selecting special instrument scores} Another question is: \ital{``can I write an orchestral score and extract the separate scores for individual instruments~?''} The answer is 95~\% \ital{yes}: in fact, you can define your own macros \verb|\mynotes...\enotes|, \verb|\myNotes...\enotes| with as many arguments as there are in the orchestral score (hopefully this is less than, or equal to 9, but \TeX perts know how to work around) and change its definition depending on the selected instrument (or insert a test dependent on the value of some selection register). But the limitation is that the numbering of instruments may change, so that \verb|\setsign3| may have to become \verb|\setsign1| if instrument 3 is alone. But, in turn, this is not a serious problem for average \TeX\ wizard apprentices. %\check \subsection{Variable staff and note sizes} Although the standard staff size is 20pt, \musixtex\ allows scores of 16pt and 24pt staff sizes. In addition, any instrument may have a special staff size (usually smaller than the overall staff size) and special commands \verb|\smallnotesize| or \verb|\tinynotesize| enable notes (and also beams or accidentals) to be of a smaller size, in order to quote optional notes or \ital{cadenzas}. %\check \section{How to get it} Primary site is {\tt hprib.lps.u-psud.fr} (anonymous {\tt ftp}); say: \verb|cd pub/musixtex| \verb|mget musix*.tex| (to get the macros) \verb|cd /pub/musixtex/mf| \verb|mget *.mf| (to get the source of the fonts) \verb|cd /pub/musixtex/tfm| \verb|binary| \verb|mget *.tfm| (to get the font metrics) \noindent or: \verb|cd /pub/music\_zips| \verb|binary| \verb|mget musix*.zip| (to get the zipped packages specific to \musixtex) \medskip\noindent Official mirrors are the CTAN servers. To get it you have tou say: \verb|cd ctan| (to go to the CTAN server) \verb|cd macros/musixtex/taupin| \verb|binary| \verb|mget *.zip| (to get the zipped packages) \medskip The whole \itxem{distribution} can fit into a single 1.2Mbyte or 1.44Mbyte diskette. All sources (including fonts) are provided, either separately or ``zipped''. {\sl REMARK: normally, the {\tt musixtex.zip} file expands into binary files valid for any system, and text files (the \TeX{} and \MF{} sources) in the \unix{} representation, namely with a ``LF'' character between each record. PC users might complain that their own coding is ``CR+LF'' (``CR'' usually appears as a ``{\tt \^{}M}''), but we checked that: \begin{itemize} \item the \ixem{MS-DOS} editor handles both denotations, \item the ``emacs'' and ``microemacs'' also do, \item the \TeX{} and \MF{} executable routines (et least the emTeX ones) also accept both representations. \end{itemize} However, for the sake of compatibility, we now provide two routines for PC's, namely {\tt dtou.exe} and {\tt utod.exe}, which convert text/source files from/to the MS-DOS denotation to/from the \unix{} denotation. } %\check \section{Enhancements} \subsection{Recent easy enhancements} Many enhancements have been asked for, to the ``father'' of \musixtex, namely \musictex, and this is a proof that it is considered as useful by many people. Some of these enhancements which seemed hard were in fact rather easy to implement, for example small notes to represent grace notes and cadenzas, or gregorian chant features. Some of them were more difficult, such as handling of lyrics now provided since version T.40. %\check \subsection{Enhancement limitations} Many requested improvements have not been \ital{yet} implemented for several reasons: \begin{itemize} \item The authors' natural laziness (!) \item More seriously: many of them would require using some more registers; unfortunately, \TeX\ registers are not numerous (256 of each kind and the limit of \keyindex{dimen} registers is nearly reached (especially using \LaTeX), but we do our best). \item We do not think it is wise to introduce in \musixtex\ itself a great number of macros which would be poorly used by most users: the reason is that \TeX\ memory and --- moreover --- \TeX\ registers are severely limited and that unused macros may occupy many of these, leading to things crashing because of \verb|TeX capacity exceeded|. Therefore, many additional library files are now provided, which may be invoked or not, depending on the user's specific needs. Most of them are used to compile this \LaTeXe\ manual... except the {\tt musixadd.tex} and {\tt musixmad.tex}. \end{itemize} %\check \section{Acknowledgements} The idea of implementing the present package is due to the previous work (\mutex)\index{mutex@\protect\mutex} of \mbox{Andrea {\sc Steinbach}} and Angelika {\sc Schofer}\footnote{Steinbach A. \& Schofer A., \ital{Theses} (1987, 1988), Rheinische Friedrich-Wilhelms Universit\"at, Bonn, Germany.}. This work provided the basis of the Metafont codes which are still used here... with 100\% corrections and updates.\index{Schofer, A.@{\sc Schofer, A.}}\index{Steinbach, A.@{\sc Steinbach, A.}} English language is progressively checked thanks to Cecil {\sc Churms} from National Accelerator Center (South Africa). %\check \chapter{Practical use} \section{Heading statements} Before any reference to \musixtex\ macros: \verb|\input musixtex|\footnote{It is highly recommended to build up a format. If you don't know how to do, you can refer to the same instruction you perhaps heard or read before: ``Ask you local \TeX-wizard.''. Otherwise it might be a good idea to look at chapter \ref{installation} (``Installation'') where some hints are given to build a \musixtex\ format (ref{formatbuild}).} %\check \noindent which may be followed by \verb|\input musixadd| in the case you have more than six instruments or more than 6 simultaneous beams or ties or slurs.\index{musixtex.tex@{\tt musixtex.tex}} \index{musixadd.tex@{\tt musixadd.tex}} %\check After that, you may write a complete book of \TeX\ provided that you do not use \verb|&| as a tabulation character (its \keyindex{catcode} has been changed) inside the music score and that you do not overwrite \musixtex's definitions. This means that no special macros have been designed to help you write titles, author names, comments, literature excerpts, etc., unless you use \LaTeX\ with the \verb|musixtex| style.\index{\&} %\check \section{Before you begin to write notes} \subsection{Warnings for the non \TeX pert} \begin{quote} %\check When \TeX\ reads a parameter, it inputs one \ital{token}. This means \ital{one} figure or \ital{one} character or \ital{one} command\footnote{Syntactically, a \ital{command} is made of a \ital{backslash} (``{\Bslash}'') immediately followed by sequence of \ital{letters}.}. If you want to give more than one char or e.g. a negative number(`-' is one token and a digit is one) or a command which reads another parameter, then you have to use braces to transfer the parameter correctly. For example, the command \verb|\meterfrac| reads two parameters; if you want to declare a $\frac{8}{12}$ timing and you code: \verb|\meterfrac812|, then you will get a $\frac{8}{1}$ timing and a misplaced ``\verb|2|''. The correct coding is \verb|\meterfrac{8}{12}| or \verb|\meterfrac8{12}|. %\check The next problem is due to spaces. Spaces are ignored at the beginning of a line. Spaces are ignored immediately behind a \TeX-command (they indicate the end of that command unless \TeX\ finds characters which are not \ital{letters}). All other spaces insert \ital{unexpected} space and they will cause a lot of trouble during third pass. Same remark holds for end of lines. Thus \verb|\bar| or \verb|\enotes| as last statement in current line cause no trouble, because an end of line indicates to \TeX\ the end of a command. %\check If you state \verb|\qu g| and start a new line, then you get into trouble, but if you say \hbox{\verb|\qu g%|\relax $$}, you have no more problem and this is better readable. If this sounds complicated, remember that \TeX\ was designed to typeset text and not music... \end{quote} %\check \subsection{What you have to specify}\label{whatspecify} \leavevmode You should first specify whether you want to typeset music in ``normal'' size (20pt\index{sizes} per staff) or ``small'' size (16pt) or ``large'' size (24pt). This is only optional, the default setting is \keyindex{normalmusicsize}. If you want the smaller size, then you have to say\footnote{This sets up not only the size of staff, but also the elementary spacing and the space behind the bar rule.} \keyindex{smallmusicsize}, \keyindex{largemusicsize}, and \keyindex{Largemusicsize} to have the larger sizes of 24pt and 28.8pt. Then, the first compulsory declaration is: \keyindex{instrumentnumber}\verb|{|$n$\verb|}| \noindent where $n$ is the number of instruments, used by \musixtex\ to performs loops building staffs, setting signatures, meters, etc. Therefore, it must be defined before any other statements. If not then default value is one. An instrument may consist of several staffs, e.g.~the piano. The difference between one instrument of several staffs and several instruments is as follows: \begin{itemize} \item distinct instruments may have distinct \itxem{signatures}, distinct staffs of a unique instrument share the same signature. \item \itxem{stems} may be hung to \itxem{beams} belonging to differents staffs of the same instrument. \item \itxem{chords} may extend across several staffs of the same instrument. \item staffs of a unique \itxem{instrument} are tied together with a big brace at the beginning of each line. \end{itemize} If the number of staffs is not equal to one, this number must be specified by: \keyindex{setstaffs} $n$\verb|{|$p$\verb|}| \noindent where $p$ is the number of staffs, and where $n$ is the number of the instrument considered (e.g.~\verb|setstaffs3| for the 3rd instrument, starting from the bottom). %\check Unless all your instruments only use the \ital{violin} clef, you have to specify all the clefs used for all the instruments. This is done by coding: \keyindex{setclef}\verb|{|$n$\verb|}{|$s_1s_2s_3s_4$\verb|}%| \noindent where $n$ is the number of the instrument, $s_1$ is one figure specifying the clef of the lower staff, $s_2$ the clef of the second staff, etc. The value $s_1=0$ means the \ital{violin} clef (G clef or \itxem{clef de sol} in French) for the lower staff, $s_2=0$ means the violin clef for the second staff, etc. If $s_2$, $s_3$ or $s_4$ are omitted in the second argument of the \verb|\setclef|, these staffs have de default clef, namely 0, i.e. the violin clef. The values $s_1=1$ through $s_1=4$ mean the \ital{alto} clef (\itxem{clef d'ut} in French) set on first (lower) through fourth (next to upper) line of the staff. The value $s_1=5$ means the \ital{bass} clef at third (middle) line, $s_1=6$ means the usual \ital{bass} clef (F clef or \itxem{clef de fa} in French) at the usual fourth line, and $s_1=7$ means the \ital{bass} (\itxem{subbass}) clef (F clef or \itxem{clef de fa} in French) at the fifth line. The value $s_1=8$ is not used. The value $s_1=9$ means the \itxem{french violin clef}, an ancient feature which sets the G clef (\ital{clef de sol} in French) at the fist line of the staff. If remembering the digits associated with usual clefs seems too difficult, one can also say \verb|\setclef{|$n$\verb|}{|\keyindex{treble}\verb|}| \noindent to get the \ixem{violin clef} on all staffs of the specified instrument. In the same way the most used \itxem{alto clef} (alto clef on 3rd line) can also be called with \verb|\setclef{|$n$\verb|}{|\keyindex{alto}\verb|}| \noindent which sets the lower staff of thet instrument to the alto clef, but sets other staffs above to the violin clef. The usual \itxem{bass clef} on fourth line can also be called with \verb|\setclef{|$n$\verb|}{|\keyindex{bass}\verb|}| \noindent {\sl IMPORTANT: the commands \verb|\alto| and \verb|\bass| only set these clefs at the first staff. Other staffs still have the default value of violin clef.} As an example, a standard piano score should include: \keyindex{setclef}\verb|1{\bass}%| \quad or\quad \keyindex{setclef}\verb|1\bass| \noindent taking account of the fact that the bass clef is set on the lower staff, but the upper one has the default value of violin clef. If the signature is not void, one should code: \keyindex{generalsignature}\verb|{|$s$\verb|}| \noindent where $s>0$ indicates the number of \itxem{sharps} in the signature and $s<0$ the number of \itxem{flats}\footnote{We have seen once 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.} If a \itxem{meter} indication is to be posted, it should be specified using the macro \keyindex{generalmeter}\verb|{|$m$\verb|}%| %\check \noindent where $m$ is the description of the meter indication which should appear on each staff. If it is a \ital{fraction} (e.g.~3/4) on should code \verb|\generalmeter{\meterfrac{3}{4}}%| \noindent or, in a simpler way (if the numbers are less than 10): \verb|\generalmeter{\meterfrac34}%| You can suppress the beginning vertical rule with saying \keyindex{nostartrule} and restore the default with \keyindex{startrule} after that. Special denotations can be used, such as \keyindex{meterC}, \keyindex{allabreve}, \keyindex{reverseC}, \keyindex{reverseallabreve} and \keyindex{meterplus}. %\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 \endpiece \end{music} 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 \endpiece \end{verbatim}\end{quote} However, not all music scores have the same meter in each staff. Especially, some staffs may have \ital{ternary} meters while others have \ital{binary}. This can be specified by using the \keyindex{generalmeter} macro to set the meter for most of the scores and overriding it by: \keyindex{setmeter}\verb|2{{\meterfrac{12}8}\allabreve}%| \noindent which sets the meter to 12/8 for the first (lower) staff, and \ital{alla breve} for the second staff of the instrument number 2. Sometimes it might be useful to insert additional space before the meter is written. This is possible by assigning a value to \keyindex{meterskip} in the preamble. It is reset to zero after first meter indication. \subsection{Instrument names} If you want the \itxem{name of the instrument}s (or the \itxem{name of the voice}s) to be displayed in front of their respective staffs at the beginning, you may code: \keyindex{setname} $n$\verb|{|\ital{name of the instrument}\verb|}%| %\check \noindent where $n$ is the number of the instrument considered. In this case, you should also adjust the \keyindex{parindent} dimension so that the long name of an instrument does not spill too far into the left margin. \subsection{Polyphonic songs} Except staffs of a unique instrument tied together with a big brace, staffs normally begin on the left with a thin vertical rule. However, it is usual to tie all human voices together with a left heavy and right thin vertical rule. \subsubsection{Case of only one choir} In the usual case where you have only one choir, this can be specified by: \begin{quote} \keyindex{songtop}\verb|{|$n$\verb|}|\\ \keyindex{songbottom}\verb|{|$m$\verb|}| \end{quote} \noindent where $m$ and $n$ are the instrument numbers of the first and last choral voices. Example is shown in \ref{song}. No heavy square brace is produced when the bottom instrument has a number greater than the top one. This feature can be used to remove choir heavy braces between distinct parts of the same score. \subsubsection{Case of several choirs or several orchestras} Your may divide your instruments into up to three groups linked together with a left square brace. Each of these groups is 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 choral voices of group number $g$. \musixtex{} allows up to three groups, numbered from 1 to 3, plus the ``zero'' group consisting of the voices or instruments which belong to no declared group. \verb|\songtop| is equivalent to \verb|\grouptop 1| and \verb|\songbottom| is equivalent to \verb|\groupbottom 1|. With {\tt musixadd.tex}, this number of groups is raised to four. This grouping feature can also be used to collect not only voices but also instruments with one or several staffs. In that case the normal brace is shifted left of the square havy brace. \subsection{Removing square choir braces} Previously defined square choir braces can be removed by stating a \verb|\songtop| less than the \verb|\songbottom|. The same applies to \verb|\grouptop| and \verb|\groupbottom| of the same group number. \subsection{Specifying all brackets together} Alternatively, you can use the following command for specifying all required brackets together: \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; \verb|\akkoladen{}| cancels all brackets. Example: \begin{quote} \verb|\instrumentnumber{5} \akkoladen{{1}{2}{3}{5}}| \end{quote} yields:\par\nopagebreak \begin{music} % just to avoid wasting space ... \smallmusicsize\setsize1\smallvalue\setsize2\smallvalue \setsize3\smallvalue\setsize4\smallvalue\setsize5\smallvalue \instrumentnumber{5} \akkoladen{{1}{2}{3}{5}} \startextract \hardspace{2cm}\zendextract \end{music} which was coded as: \begin{verbatim} \smallmusicsize\setsize1\smallvalue\setsize2\smallvalue \setsize3\smallvalue\setsize4\smallvalue\setsize5\smallvalue \instrumentnumber{5} \akkoladen{{1}{2}{3}{5}} \startextract \hardspace{2cm}\zendextract \end{verbatim} %\check \section{Starting your masterpiece} \subsection{Typing the first system} Just code \keyindex{startmuflex} \noindent which opens the \ital{jobname}{\tt .mx1} during \TeX ing the first time your masterpiece. All informations are now written to it. During pass 3 it will be open for read in and all computed values are used to set the lines\footnote{The files must be closed before leaving \TeX, preferably before \keyindex{bye} or \keyindex{end}, with \keyindex{endmuflex}. Normally \TeX\ closes all open files on his own when terminating the program, but it is still wiser to do this explicitly.}. \begin{remark} do not worry too much if you forget \verb|\startmuflex|; in most cases --- since version T.39 --- the \verb|\startpiece| command will do it, if necessary. Conversely, only the first \verb|\startmuflex| is effective, the others are inefficient... for safety. \end{remark} Then code %\check \keyindex{startpiece} \noindent which will initiate (with indentation \keyindex{parindent}) the first set of staffs for all instruments you have previously defined. But that is not sufficient to begin writing notes and silences. In fact, you must also choose the spacing of the notes. \subsection{Easy selecting note spacing}\label{newspacings} Therefore, we preferred to provide the composer/typesetter with a set of macros (incidentally, this can be adjusted): \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&16th pointed, 8th triplet\\ \keyindex{Notes}\verb| ... & ... & ... \enotes|&\verb=3\elemskip= &\cu1&8th\\ \keyindex{Notesp}\verb| ... & ... & ... \enotes|&\verb=3.5\elemskip= &\cup1&8th pointed, 4th triplet\\ \keyindex{NOtes}\verb| ... & ... & ... \enotes|&\verb=4\elemskip= &\qu1&4th\\ \keyindex{NOtesp}\verb| ... & ... & ... \enotes|&\verb=4.5\elemskip= &\qup1&4th pointed, 2th triplet\\ \keyindex{NOTes}\verb| ... & ... & ... \enotes|&\verb=5\elemskip= &\hu1&2th\\ \keyindex{NOTesp}\verb| ... & ... & ... \enotes|&\verb=5.5\elemskip= &\hup1&2th pointed\\ \keyindex{NOTEs}\verb| ... & ... & ... \enotes|&\verb=6\elemskip= &\wh1&1th\\\hline \end{tabular}\end{center} \noindent If you don't like them, define your own using e.g.: \verb|\def\NOtes{\vnotes5.34\elemskip}| %\check \noindent which means, when you use this \keyindex{NOtes} definition, that all \ital{spacing} notes and commands, results a spacing of 5.34 $\times$ \keyindex{elemskip}. The size of the spatial unit (\keyindex{elemskip}) can be freely adjusted (it shows only effect outside \verb|\startpiece...\endpiece|). In practice, the choice of the macro \verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc., to initiate of column of notes sets an internal dimension register, named \keyindex{noteskip} to the given multiple of \keyindex{elemskip}. Thus, each \itxem{spacing note} (\keyindex{qu}, \keyindex{qb}, \keyindex{hl}, etc.) will be followed by a spacing of \keyindex{noteskip}. Then, the advantage of the definition of \verb|\elemskip| is that, whenever it is changed, all subsequent \verb|\noteskip|s will be updated proportionally so that a simple change of \verb|\elemskip| can expand or shrink all consecutive note spacings as a whole. \medskip {\bf All said above counts only for first pass.} \medskip If the arthmetic progression of note spacings does not meet your wishes, your may force a geometric progression, where {\Bslash Notes} is $\sqrt{2}$ times wider as {\Bslash notes}, {\Bslash NOtes} is $\sqrt{2}$ times wider as {\Bslash Notes}, etc. In that case, {\Bslash Notesp} is approximately $\sqrt{\sqrt{2}}=1.189$ times wider as {\Bslash Notes} and so on. The geometric progression if forced by the command \keyindex{geometricskipscale}, and the original arithmetic progression is restored by \keyindex{arithmeticskipscale}. Inside the pair \verb|\notes...\enotes| you may freely change the value of \verb|\noteskip| (not \verb|\elemskip|) provided you keep it scalable in the normal situation\footnote{But: provided you keep it \ital{not scalable} if you use the {\Bslash hardnotes} or {\Bslash hardlyrics} features (see \ref{lyrics}).}. \verb|\noteskip| can be changed with a command like \verb|\noteskip=2.4\noteskip| \noindent which obviously keeps it scalable, or by means of \keyindex{multnoteskip}\verb|{2.4}| \noindent which performs the same multiplication in a smarter way. You can also force all \verb|\noteskip|s to be re-scaled by a factor of 3.1415 using \keyindex{scale}\verb|{2.4}| \noindent or \verb|\def|\keyindex{scalenoteskip}\verb|{2.4}| which is more dangerous and not advises although compatible with \musictex. \medskip To fill the music line (system) without glue, the values of \verb|\elemskip|, \verb|\afterruleskip| and \verb|\beforeruleskip| are adjusted from the external program {\tt musixflx}\index{musixflx@{\tt musixflx}}. So what spacing you really get, depends on the internal line-breaking routine. Spacings for advanced \musixtex'ers: a `normal' bar (slightly~!) magnified: \medskip %\check \begin{music} \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}}% \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} As default the values are set up as follows: \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{quote} If you want to change upper values, you have to do that behind \verb|\normalmusicsize| or \verb|\smallmusicsize| and before \verb|\startpiece|. \end{quote} %\check \section{Note pitch specification} Note pitches are usually specified by letters ranging from \verb|a| to \verb|z| for those which are usually written under the G-clef (\verb|a| corresponds to the $A$ of nominal frequency 222.5~Hz; the \ital{G} of the G-clef is denoted \verb|g|). Lower pitch notes are specified using upper case letters ranging from \verb|A| to \verb|N| (the \ital{F} of the F-clef is denoted \verb|M|, and \verb|F| is one octave below). If necessary, a numeric symbol can be used to place a symbol independently of the active clef, which has the drawback not to be transposable. Besides, notes below \verb|A| (i.e. the $A$ of nominal frequency 55.625~Hz), namely the lowest octave of the modern pianos, can only be coded using the transposition features (see below: \ital{transposition} and \ital{octaviation}) or in absolute vertical position using numbers. \section{Writing notes} There are two major kinds of note macros: \begin{enumerate} \item those which terminate a note/chord stem and are followed by a horizontal spacing of value \keyindex{noteskip}, \item those which initiate or extend a note/chord stem and do not cause horizontal spacing. \end{enumerate} The first kind is used to type a melody, the second kind is used to type chords. \subsection{Single spacing notes} \begin{quote}\begin{description} \item[\keyindex{breve}~$p$ :]breve note (\hbox to 8pt{\zbreve1\hss}) at pitch $p$. \item[\keyindex{longa}~$p$ :]longa note (\hbox to8pt{\zlonga1\hss}) at pitch $p$. \item[\keyindex{longaa}~$p$ :]same as \verb|\longa|, with an ``automatic'' stem up or down. \item[\keyindex{zmaxima}~$p$ :]maxima note (\hbox to16pt{\zmaxima1\hss}) at pitch $p$. \item[\keyindex{wq}~$p$ :]arbitrary duration note (also used as alternate representation of \ital{breve} note) (\hbox to8pt{\zwq1\hss}) at pitch $p$. \item[\keyindex{wqq}~$p$ :]long arbitrary duration note (also used as alternate representation of \ital{longa} note) (\hbox to8pt{\zwqq1\hss}) at pitch $p$. \item[\keyindex{wh}~$p$ :]whole note at pitch $p$. \item[\keyindex{hu}~$p$ :]half note at pitch $p$ with stem up. \item[\keyindex{hl}~$p$ :]half note at pitch $p$ with stem down. \item[\keyindex{ha}~$p$ :]half note at pitch $p$ with automatic stem\footnote{This means all stems belonging to notes below the third line are stemmed up, the other down, they work with every clef, but only for single notes.} choice. \item[\keyindex{qu}~$p$ :]quarter note at pitch $p$ with stem up. \item[\keyindex{ql}~$p$ :]quarter note at pitch $p$ with stem down. \item[\keyindex{qa}~$p$ :]quarter note at pitch $p$ with ``automatic'' stem. \item[\keyindex{cu}~$p$ :]eighth note\footnote{The {\Bslash c} of this macro name is taken from the French word ``croche'' which is by the way one half of the english ``crotchet''; {\Bslash cc...}, {\Bslash ccc...} are standing for ``double croche'', ``triple croche'', etc.} at pitch $p$ with stem up. \item[\keyindex{cl}~$p$ :]eighth note at pitch $p$ with stem down. \item[\keyindex{ca}~$p$ :]eighth note at pitch $p$ with ``automatic'' stem. \item[\keyindex{ccu}~$p$ :]sixteenth note at pitch $p$ with stem up. \item[\keyindex{ccl}~$p$ :]sixteenth note at pitch $p$ with stem down. \item[\keyindex{cca}~$p$ :]sixteenth note at pitch $p$ with ``automatic'' stem. \item[\keyindex{cccu}~$p$ :]32-th note at pitch $p$ with stem up. \item[\keyindex{cccl}~$p$ :]32-th note at pitch $p$ with stem down. \item[\keyindex{ccca}~$p$ :]32-th note at pitch $p$ with ``automatic'' stem. \item[\keyindex{ccccu}~$p$ :]64-th note at pitch $p$ with stem up. \item[\keyindex{ccccl}~$p$ :]64-th note at pitch $p$ with stem down. \item[\keyindex{ccccl}~$p$ :]64-th note at pitch $p$ with ``automatic'' stem. \end{description}\end{quote} As an example, the sequence: %\check \begin{music} \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 \endextract \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 \end{verbatim}\end{quote} If these notes are preceded by \ital{non-spacing} notes (i.e. macros \keyindex{zq} or \keyindex{zh}) their stem is extended up or down so as to join all notes into a single chord. \subsection{Non-spacing (chord) notes} \begin{quote}\begin{description} \item[\keyindex{zq}~$p$ :]quarter (or shorter) note head at pitch $p$ with no spacing after. \item[\keyindex{zh}~$p$ :]half note head at pitch $p$ with no spacing after. \end{description}\end{quote} It must be pointed out that the pitch $p$ of these notes is memorized so that the stem of the further spacing note will join them into a chord. This stem top and bottom pitch is \ital{reset} at each spacing note. \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 (chord) heads} These symbols are used mainly in chords where \ital{second} intervals are present. It is the responsibility of the typist to choose which heads should be shifted left or right. \begin{quote}\begin{description} \item[\keyindex{rw}~$p$ :]whole note head shifted right by one note width ($\approx$ 6pt), no spacing. \item[\keyindex{lw}~$p$ :]whole note head shifted left by one note width ($\approx$ 6pt), no spacing. \item[\keyindex{rh}~$p$ :]half note head shifted right by one note width ($\approx$ 6pt), no spacing. \item[\keyindex{lh}~$p$ :]half note head shifted left by one note width ($\approx$ 6pt), no spacing. \item[\keyindex{rq}~$p$ :]quarter note head shifted right by one note width ($\approx$ 6pt), no spacing. \item[\keyindex{lq}~$p$ :]quarter note head shifted left by one note width ($\approx$ 6pt), no spacing. \end{description}\end{quote} %\check Except that they are shifted left of right, these macros act like \verb|\z...| macros for stem building. \subsection{Single non-spacing notes} \begin{quote}\begin{description} \item[\keyindex{zhu} :]half note with stem up but no spacing. It acts like \verb|\hu| for stem building. \item[\keyindex{zhl} :]half note with stem down but no spacing. It acts like \keyindex{hl} for stem building. \item[\keyindex{zqu} :]quarter note with stem up but no spacing. It acts like \verb|\qu| for stem building. \item[\keyindex{zql} :]quarter note with stem down but no spacing. It acts like \verb|\ql| for stem building. \item[\keyindex{zcu}, \keyindex{zccu}, \keyindex{zcccu}, \keyindex{zccccu} :]eighth, ..., note with stem up but no spacing. It acts like \verb|\cu| for stem building. \item[\keyindex{zcl}, \keyindex{zccl}, \keyindex{zcccl}, \keyindex{zccccl} :]eighth, ..., note with stem down but no spacing. It acts like \verb|\cl| for stem building. \item[\keyindex{zqb} :]note belonging to a beam but no spacing. \item[\keyindex{rhu}, \keyindex{rhl}, \keyindex{rqu}, \keyindex{rql}, \keyindex{rcu}, \keyindex{rcl} :] \verb|\rhu| acts like \verb|\zhu|, but the note is shifted one note width on the right, other analogous. \item[\keyindex{lhu}, \keyindex{lhl}, \keyindex{lqu}, \keyindex{lql}, \keyindex{lcu}, \keyindex{lcl} :]same as above, but the whole of the note is shifted one note width on the left. \item[\keyindex{zw}~$p$ :]whole note at pitch $p$ with no spacing after. \item[\keyindex{zwq}~$p$ :]arbitrary duration note (\hbox to8pt{\zwq1\hss}) at pitch $p$ with no spacing after. \item[\keyindex{zbreve}~$p$ :]breve note (\hbox to8pt{\zbreve1\hss}) at pitch $p$ with no spacing after. \item[\keyindex{zlonga}~$p$ :]longa note (\hbox to8pt{\zlonga1\hss}) at pitch $p$ with no spacing after. \item[\keyindex{zmaxima}~$p$ :]maxima note (\hbox to16pt{\zmaxima1\hss}) at pitch $p$ with no spacing after. \end{description}\end{quote} %\check \subsection{Single (spacing) stemless notes} Although not standard in real music scores, one may need to have stemless quarter and half note heads posted in the same way as whole notes. This can be done with the following commands: \begin{quote}\begin{description} \item[\keyindex{nh}~$p$ :]half note head at pitch $p$. \item[\keyindex{nq}~$p$ :]quarter note head at pitch $p$. \end{description}\end{quote} \medskip As an example, the sequence: \begin{music} \startextract \notes\nq c\nq j\enotes\barre \Notes\nh c\nh j\enotes\barre \notes\nq {cdef}\enotes \endextract \end{music} \medskip \noindent was coded as: %\check \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} In case of special need, non spacing variants have been provided, namely \keyindex{znh} and \keyindex{znq}. \subsection{Pointed notes} One simple way of doing consists in putting \keyindex{pt $p$} to get a \ital{dot} after the normal note head at pitch $p$. Thus a quarter note with one point can be coded \verb|\pt h\qu h|, with two points as \keyindex{ppt}\verb|\qu h| and with three points as \keyindex{pppt}\verb|\qu h|. A simpler way of doing consists in using compact macros, namely: \keyindex{whp}, \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}. Where all \verb|\z...p| are useful in chords. You may also introduce pointed notes, especially in groups by coding a \ital{period} before (not after) the letter representing the pitch: \verb|\qu{.a.^b.c}| which is equivalent to: \begin{quote}\begin{verbatim} \pt{a}\qu{a}\pt{b}\sh{b}\qu{b}\pt{c}\qu{c} \end{verbatim}\end{quote} Finally, pointed notes can also be produced without spacing after, using \keyindex{zhup}, \keyindex{zhlp}, \keyindex{zqup}, \keyindex{zqlp}, \keyindex{zcup}, \keyindex{zclp}, \keyindex{zqbp}, and the same with two \verb|p|'s for double-pointed notes, like \keyindex{zhupp}, \keyindex{zhlpp}, \keyindex{zqupp}, \keyindex{zqlpp}, \keyindex{zcupp}, \keyindex{zclpp} and \keyindex{zqbpp}. If two voices share one staff, the points of the lower voice are lowered, if the note is on a note line. Therefore you can use \keyindex{lpt}~$p$ and \keyindex{lppt}~$p$. %\check \section{Beams} Beams are not automatically handled, but they must be declared explicitely, \ital{before} the first spacing note involving them is coded. Two kinds of macros are provided: \begin{enumerate} \item fixed slope beams have an arbitrary slope chosen by the user in the range -45\% to +45\% (by multiples of 5\%); \item semi-automatic beams have their slope computed knowing the number of \keyindex{noteskip} over which they are supposed to extend, and knowing the initial and final pitch of the notes they are supposed to link. \end{enumerate} %\check \subsection{Fixed slope beams} \subsubsection{Beam initiation} \begin{quote}\begin{description} \item[\keyindex{ibu}~$nps$ :]initiates an \ital{upper beam} 3 horizontal line spacings above the pitch $p$~; $n$ is its reference number, which must be in the range [0-5] ([0-8] if \verb|musixadd| file has been \verb|\input|); $s$ is the slope of the beam. \end{description}\end{quote} $s$ is an integer in the range [-9,9]. $s=1$ means a slope of 5\%, $s=9$ means a slope of 45\%, $s=-3$ means a slope of -15\%, etc. With usual spacings a slope of 2 or 3 is fit for ascending scales. A slope of 6 to 9 is fit for ascending arpeggios. \begin{quote}\begin{description} \item[\keyindex{ibl}~$nps$ :]initiates a \ital{lower beam} 3 horizontal line spacings below the pitch $p$. Other parameters as above. \item[\keyindex{ibbu}~$nps$ :]initiates a \ital{double upper beam} (same parameter meaning). \item[\keyindex{ibbl}~$nps$ :]initiates a \ital{double lower beam} (same parameter meaning). \item[\keyindex{ibbbu}~$nps$ :]initiates a \ital{triple upper beam} (same parameter meaning). \item[\keyindex{ibbbl}~$nps$ :]initiates a \ital{triple lower beam} (same parameter meaning). \item[\keyindex{ibbbbu}~$nps$ :]initiates a \ital{quadruple upper beam} (same parameter meaning). \item[\keyindex{ibbbbl}~$nps$ :]initiates a \ital{quadruple lower beam} (same parameter meaning). \end{description}\end{quote} Notes belonging to beams are coded in the form \keyindex{qb}~$np$ where $n$ is the beam number and $p$ the pitch of the note head. \musixtex\ adjusts the length of the note stem to link the bottom of the chord to a beam. \subsubsection{Beam termination} Beam termination is also not automatic. The termination of a given beam must be explicitely declared \ital{before} coding the last spacing note connected to that beam. \begin{quote}\begin{description} \item[\keyindex{tbu}~$n$ :]terminates upper beam number $n$ at current position. \item[\keyindex{tbl}~$n$ :]terminates lower beam number $n$ at current position. \end{description}\end{quote} \keyindex{tbu} and \keyindex{tbl} terminate beams of any multiplicity. Therefore 32-th notes hanging on a triple beam are initiated by \keyindex{ibbbu}~$nps$ and terminated by \keyindex{tbu}~$n$. Since beams usualy finish with a \verb|\qb| to link the last note, shorter macros have been provided: \begin{itemize} \item \keyindex{tqb} $np$ is equivalent to \verb|\tbl| $n$\verb|\qb| $np$ \item \keyindex{tqh} $np$ is equivalent to \verb|\tbu| $n$\verb|\qb| $np$ \item \keyindex{ztqb} $np$ is equivalent to \verb|\tbl| $n$\verb|\zqb| $np$ (no spacing after) \item \keyindex{ztqh} $np$ is equivalent to \verb|\tbu| $n$\verb|\zqb| $np$ (no spacing after) \end{itemize} \subsubsection{Beams of increasing multiplicity} It is also possible to code beams whose multiplicity is not the same at the beginning. The multiplicity can be increased at any position. For instance, \keyindex{nbbu}~$n$ which sets the multiplicity of upper beam number $n$ to 2 starting at the current position, \keyindex{nbbbu}~$n$ sets its multiplicity to 3 and \keyindex{nbbbbu}~$n$ sets its multiplicity to 4. \keyindex{nbbl}~$n$ \dots \keyindex{nbbbbl}~$n$ perform the same functions for lower beams. Note that the difference between upper and lower beams does not mainly consist in the beam being above or below the note heads; rather, it specifies whether the abscissa of the beginning and the end of this beam is aligned on the right (upper beam) or on the left (lower) beam. Thus, the sequence: \begin{music} \startextract \Notes\ibu0h0\qb0e\nbbu0\qb0e\nbbbu0\qb0e\nbbbbu0\qb0e\tbu0\qb0e\enotes \endextract \end{music} \noindent has been coded as \begin{quote}\begin{verbatim} \Notes\ibu0h0\qb0e\nbbu0\qb0e\nbbbu0\qb0e\nbbbbu0\qb0e\tbu0\qb0e\enotes \end{verbatim}\end{quote} It is quite possible to terminate with \keyindex{tbu} a beam initiated with \keyindex{ibl}. This may give: \begin{music} \startextract \Notes\ibl0p0\qb0p\nbbl0\qb0p\nbbbl0\qb0p\tbu0\qb0e\enotes \endextract \end{music} \noindent which has been coded as \begin{quote}\begin{verbatim} \Notes\ibl0p0\qb0p\nbbl0\qb0p\nbbbl0\qb0p\tbu0\qb0e\enotes \end{verbatim}\end{quote} \subsubsection{Beams of decreasing multiplicity} Partial termination of beams is also possible, by using \keyindex{tbbu} or \keyindex{tbbl}~: these macros terminate the current beam except that of order 1 (eighths). \keyindex{tbbbu} or \keyindex{tbbbl} terminate the current beam except those of order 1 and 2, etc. \begin{music} \startextract \Notes\ibbbu0h0\qb0e\tbbbu0\qb0e\tbbu0\qb0e\tbu0\qb0e\enotes \endextract \end{music} \noindent has been coded as \begin{quote}\begin{verbatim} \startextract \Notes\ibbbu0h0\qb0e\tbbbu0\qb0e\tbbu0\qb0e\tbu0\qb0e\enotes \endextract \end{verbatim}\end{quote} The macros \keyindex{tbbu} and \keyindex{tbbl} and higher order may also be invoked when only a single beam is active. Then, a second beam or third or ... (upper or lower according the initiating procedure) is opened \ital{one note width before the current position, and closed immediately}. Thus the following sequences \begin{music} \let\extractline\hbox \hbox to \hsize{% \hss \startextract \Notes\ibu0e0\qbp0e\tbbu0\tbu0\qb0e\en \endextract \hss\hss \startextract \Notes\ibu0e0\qbpp0e\tbbbu0\tbbu0\tbu0\qb0e\en \endextract \hss} \end{music} \noindent are coded: \hspace*{\fill}\begin{minipage}{.4\textwidth}\begin{verbatim} \Notes\ibu0e0\qbp0e% \tbbu0\tbu0\qb0e\en \end{verbatim}\end{minipage}\hfill \begin{minipage}{.4\textwidth}\begin{verbatim} \Notes\ibu0e0\qbpp0e% \tbbbu0\tbbu0\tbu0\qb0e\en \end{verbatim}\end{minipage}\hfill \noindent The same behaviour occurs in the case of \keyindex{tbbbu}, \keyindex{tbbbl}, \keyindex{tbbbbu} and \keyindex{tbbbbl}. The symmetrical pattern is also possible. For example: \begin{music} \startextract \Notes\ibbl0j0\roff{\tbbl0}\qb0j\tbl0\qbp0j\enotes \endextract \end{music} \noindent has been coded as: \begin{quote}\begin{verbatim} \Notes\ibbl0j0\roff{\tbbl0}\qb0j\tbl0\qbp0j\enotes \end{verbatim}\end{quote} \begin{remark} these codings may seem complicated. In fact, it is the responsibility of the user to define macros which perform the most common sequences in his masterpiece. For example, one could define sets of four sixteenths by the macro: \verb|\def\qqh#1#2#3#4#5{\ibbl0#2#1\qb#2\qb#3\qb#4\tbl0\qb#5}| \noindent where the first argument is the slope and the other four arguments are the pitches of the four consecutive sixteenths wanted. \end{remark} \noindent A slightly more complicated example is: \begin{music} \startextract \notes\ibbbu0e0\roff{\tbbbu0}\qb0f\en \notesp\tbbu0\qbp0f\en \Notes\tbu0\qb0f\en \notesp\ibbu0f0\roff{\tbbu0}\qbp0f\en \Notes\qb0f\en \notes\tbbbu0\tbbu0\tbu0\qb0f\en \endextract \end{music} \noindent has been coded as: \begin{quote}\begin{verbatim} \notes\ibbbu0e0\roff{\tbbbu0}\qb0f\en \notesp\tbbu0\qbp0f\en \Notes\tbu0\qb0f\en \notesp\ibbu0f0\roff{\tbbu0}\qbp0f\en \Notes\qb0f\en \notes\tbbbu0\tbbu0\tbu0\qb0f\en \end{verbatim}\end{quote} %\check \subsection{Repeated pattern beams}\index{repeated patterns} Note heads hanging on beams are not necessarily quarter (or higher order) note heads. It is possible to hang half note heads on beams using \keyindex{hb} macro, e.g.: \begin{music} \startextract \Notes\ibbl0j0\hb0j\tbl0\hb0j\enotes \Notes\ibbu0g0\hb0g\tbu0\hb0g\enotes \endextract \end{music} \noindent has been coded as: \begin{quote}\begin{verbatim} \Notes\ibbl0j0\hb0j\tbl0\hb0j\enotes \Notes\ibbu0g0\hb0g\tbu0\hb0g\enotes \end{verbatim}\end{quote} It is also possible to write \begin{music} \startextract \Notes\ibbl0j3\wh j\tbl0\wh l\enotes \Notes\ibbu0g3\wh g\tbu0\wh i\enotes \endextract \end{music} \noindent which was coded as: \begin{quote}\begin{verbatim} \Notes\ibbl0j3\wh j\tbl0\wh l\enotes \Notes\ibbu0g3\wh g\tbu0\wh i\enotes \end{verbatim}\end{quote} \noindent However, a better look could be obtained in a more sophisticated way\footnote{You are suggested to make your own macro if you have to type many of these, or better: use a pre-compiler.}: \begin{music} \startextract \Notes\loff{\zw j}\ibbl0j3\sk\tbl0\wh l\enotes \Notes\ibbu0g3\wh g\tbu0\roff{\wh i}\enotes\qspace \endextract \end{music} \noindent which was simply coded as: \begin{quote}\begin{verbatim} \Notes\loff{\zw j}\ibbl0j3\sk\tbl0\wh l\enotes \Notes\ibbu0g3\wh g\tbu0\roff{\wh i}\enotes\qspace \end{verbatim}\end{quote} Single repeated notes can also be made --- in a much more sophisticated way\footnote{But you can write your own macro, thinking of using {\tt\char92transpose} to lift the oblique beams.}, for example: \begin{music} \startextract \Notes\ibl0h0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibu0j0\qb0{jjj}\tbu0\qb0j\en \NOTes\loffset{0.5}{\ibl0j9}\roffset{0.5}{\tbl0}\zhl h% \loffset{0.5}{\ibu0g9}\roffset{0.5}{\tbu0}\hu j\en\bar \notes\ibbl0i0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibbu0i0\qb0{jjj}\tbu0\qb0j% \ibbl0i0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibbu0i0\qb0{jjj}\tbu0\qb0j\en \NOTes\loffset{0.5}{\ibbl0k9}\roffset{0.5}{\tbl0}\zhl h% \loffset{0.5}{\ibbu0f9}\roffset{0.5}{\tbu0}\hu j\en \endextract \end{music} \noindent whose coding (due to W. {\sc Icking}) is; \begin{quote}\begin{verbatim} \Notes\ibl0h0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibu0j0\qb0{jjj}\tbu0\qb0j\en \NOTes\loffset{0.5}{\ibl0j9}\roffset{0.5}{\tbl0}\zhl h% \loffset{0.5}{\ibu0g9}\roffset{0.5}{\tbu0}\hu j\en\bar \notes\ibbl0i0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibbu0i0\qb0{jjj}\tbu0\qb0j% \ibbl0i0\qb0{hhh}\tbl0\qb0h\bsk\bsk\bsk\bsk \ibbu0i0\qb0{jjj}\tbu0\qb0j\en \NOTes\loffset{0.5}{\ibbl0k9}\roffset{0.5}{\tbl0}\zhl h% \loffset{0.5}{\ibbu0f9}\roffset{0.5}{\tbu0}\hu j\en \end{verbatim}\end{quote} \subsection{Beams across bars} The usual way most composers wrote their scores was beams inside bars, at least until the beginning of the XIX-th century. Unfortunately, later composers ({\sc Brahms}, {\sc Scriabin}, {\sc Grieg}, etc.) wanted to write beams jumping across bars. This is possible without any problems. We give an example from {\sc Brahms}'s Intermezzo op.~118,1 provided by Miguel {\sc Filgueiras}:\index{Brahms, J.@{\sc Brahms, J.}}\medskip \begin{music} \interstaff{12} \setstaffs1{2} \setclef1\bass \generalmeter\allabreve \startextract \NOtes\qp\nextstaff\isluru0q\zq{q}\ql{j}\enotes \bar \nspace \Notes\ibu0L2\qb0{CEJLcL}% \nextstaff\roff{\zw{l}}\pt{p}\zh{_p}\pt{i}\hl{_i}\enotes \Notes\qb0J\itied1a\qb0a\nextstaff\tslur0o\zq{o}\ql{h}\enotes \bar \Notes\ttie1\zh{.L.a}\hl{.e}% \nextstaff\qb0{chj}\tbl0\qb0l\cl{q}\ds\enotes \NOtes\qp\nextstaff\zq{q}\ql{j}\enotes \endextract \end{music} %\check \noindent whose coding is: \begin{verbatim} \interstaff{13} \instrumentnumber{1} \setstaffs1{2} \setclef1\bass \generalmeter\allabreve \startextract \NOtes\qp\nextstaff\isluru0q\zq{q}\ql{j}\enotes \bar \nspace \Notes\ibu0a1\qb0{CEJLcL}% \nextstaff\roff{\zw{l}}\pt{p}\zh{_p}\pt{i}\hl{_i}\enotes \Notes\qb0J\itied1a\qb0a\nextstaff\tslur0o\zq{o}\ql{h}\enotes \bar \Notes\ttie1\zh{.L.a}\hl{.e}% \nextstaff\qb0{chj}\tbl0\qb0l\cl{q}\ds\enotes \NOtes\qp\nextstaff\zq{q}\ql{j}\enotes \endextract \end{verbatim} Still to be done manually is the cut and prolongation across line breaks, which can be easily be done with shifting using \keyindex{roff} and/or \keyindex{loff}, or with insert of a spacing command (here done with \keyindex{hsk}). We give an example from {\sc Grieg}'s ``Hochzeit auf Troldhaugen'':\index{Grieg, E.@{\sc Grieg, E.}}\medskip \begin{music} \parindent0pt \def\rqs{\lower\Interligne\rlap\qs} \def\snotes{\vnotes1\elemskip} \setstaffs1{2} \generalsignature{2} \setclef1{\bass} \interstaff{12} \startpiece %%% bar 1 \addspace\afterruleskip \snotes|\tinynotesize\ibsluru0n\ibbu0m5\qb0{=m}\tqh0n\en \qspace \Notes\zchar{-7}\sPed\loffset{.3}{\fl E}\zq E\qu{_I}% |\zql g\ibu2l0\busf2\qb2{=m}\en \Notes|\tubslur0o\qb2{_l}\en \Notes\loffset{.3}{\fl L}\zq L\ibl0L0\qb0{_b}% |\ibl1h0\zqb1g\bupz2\qb2l\en \Notes\zq L\tqb0b|\tbl1\zqb1g\bupz2\tqh2l\en \NOtes\zq L\ql b|\zql g\qu l\en \notes\zchar{-7}\sPed\zchar{-7}{\eightit ~~~sempre}% \zchar{14}{\pp\eightit~sempre}\zq I\ibbu1J0\qb1L|\qs\en \notes\qs|\zq N\ibbu3d0\qb3{_d}\en \notes\qb1E|\rqs\en \notes\qs|\fl e\zq N\rq e\qb3d\en %%% bar 2 \bar \notes\loffset{.3}{\fl I}\zq I\qb1{_L}|\rqs\en \qspace \notes\qs|\lfl d\zq d\zq {=f}\qb3N\en \notes\tqh1{_E}|\rqs\en \notes\qs|\zq d\zq g\tqh3N\en \notes\zq I\ibbu0J0\qb0L|\rqs\en \notes\qs|\zq d\ibbu1d0\qb1N\en \notes\qb0E|\rqs\en \notes\qs|\fl e\rq e\zq d\qb1N\en \notes\zq I\qb0L|\rqs\en \notes\qs|\zq f\zq d\qb1N\en \notes\tqh0E|\rqs\en \notes\qs|\zq g\zq d\tqh1N\en \notes\zq I\ibbu0J0\qb0L|\rqs\en \notes\qs|\zq d\ibbu1d0\qb1N\en \notes\qb0E|\rqs\en \notes\rlap\qs\hsk\tbu0|\rq e\zq d\zqb1N\hsk\tbu1\en \endpiece \end{music} \noindent where the prolongation was coded as: \begin{verbatim} \notes\rlap{\qs}\hsk\tbu0|\rq e\zq d\zqb1N\hsk\tbu1\en \end{verbatim} %\check \subsection{Semi-automatic beams} In order to avoid tedious checks to adjust the slope (and even the starting pitch) of beams in music with a lot of steep beams, a set of automatically slope computing has recently been implemented. If you say \verb|\Ibu2gj3| \musixtex\ will understand that`you want to build an upper beam (beam number 2) horizontally extending \verb|3\noteskip|, the first note of which is a \verb|g| and the last note is a \verb|j|. Knowing these parameters it will choose the highest slope number which corresponds to a slope not more than $(\hbox{\tt j}-\hbox{\tt g})/(3\keyindex{noteskip})$. Moreover, if there is no sufficiently steep beam slope available, then it will raise the starting point. Eight such macros are available: \keyindex{Ibu}, \keyindex{Ibbu}, \keyindex{Ibbbu}, \keyindex{Ibbbbu}, \keyindex{Ibl}, \keyindex{Ibbl}, \keyindex{Ibbbl} and \keyindex{Ibbbbl}. Also available are ready definitions for often needed sets of double, triple and quadruple notes with computed slopes. These are: \keyindex{Dqbu}, \keyindex{Dqbl}, \keyindex{Dqbbu}, \keyindex{Dqbbl}, \keyindex{Tqbu}, \keyindex{Tqbl}, \keyindex{Tqbbu}, \keyindex{Tqbbl}, \keyindex{Qqbu}, \keyindex{Qqbl}, \keyindex{Qqbbu} and \keyindex{Qqbbl}. %\check \medskip \begin{music} \parindent0pt\startpiece \Notes\Dqbu gh\Dqbl jh\en \notes\Dqbbu fg\Dqbbl hk\en\bar \Notes\Tqbu ghi\Tqbl mmj\en \notes\Tqbbu fgj\Tqbbl njh\en\bar \Notes\Qqbu ghjh\Qqbl jifh\en \notes\Qqbbu fgge\Qqbbl jhgi\en\endpiece \end{music} \noindent which was simply coded as: \begin{quote}\begin{verbatim} \Notes\Dqbu gh\Dqbl jh\en \notes\Dqbbu fg\Dqbbl hk\en\bar \Notes\Tqbu ghi\Tqbl mmj\en \notes\Tqbbu fgj\Tqbbl njh\en\bar \Notes\Qqbu ghjh\Qqbl jifh\en \notes\Qqbbu fgge\Qqbbl jhgi\en \end{verbatim}\end{quote} %\check \section{Rests} Except that difference that they have no specific pitch, rests are coded in a very simple way. \subsection{Ordinary rests} Full bar rests (also called ``pauses'') are coded as \keyindex{pause}, with a point behind as \keyindex{pausep}; smaller rests are \keyindex{hpause} (of duration equal to a \ital{half note}), with a point behind as \keyindex{hpausep}, \keyindex{qp} (duration equal to a \ital{quarter note}, also \keyindex{soupir}), \keyindex{ds} (duration equal to an \ital{eighth note}), \keyindex{qs} (duration equal to an \ital{sixteenth note}), \keyindex{hs} (duration equal to an \ital{thirty second note}), \keyindex{qqs} (duration equal to an \ital{sixty fourth note}). Long rests (lasting several bars) can be coded as \keyindex{PAuse} and \keyindex{PAUSe}, which respectively yield: \begin{music} \generalmeter{\meterfrac44} \startextract \def\atnextbar{\znotes\centerbar\PAuse\en}% \NOTEs\en\bar \def\atnextbar{\znotes\centerbar\PAUSe\en}% \NOTEs\en\endextract \end{music} %\check \subsection{Lifted rests}\index{lifting rests}\index{rest lifting} All the previous rests with exception of \keyindex{pausep} (pause with a point) and \keyindex{hpausep} (half rest with a point) are \ital{hboxes}; this means that they can be vertically offset to meet polyphonic music requirements using the standard \TeX\ command \keyindex{raise}. For example: \begin{quote} \begin{verbatim} \raise 2\Interligne\qp \raise 3mm\qq \end{verbatim} \end{quote} \noindent{\sl{\bfseries CAUTION:} do not try to lift rests (or notes but this looks so silly that...) using codings like \verb|\raise2mm|\keyindex{hbox}\verb|{\qp}|. The reason is that the rest symbol (e.g. \verb|\qp|) is embedded in braces, so that local counting of spaces (register \verb|\loc@skip|) will be lost, resulting in turn in overfull/undfull boxes, beam errors, erratic slurring, etc. In general, all rests and all notes should be coded at the brace level of the \verb|\notes| command, unless they are deliberately embedded in \keyindex{rlap} or \keyindex{llap} which actually overlook spacing counting but finally force no horizontal spacing, a behaviour which compensates the forgotten spacing count.} In addition, two symbols have been provided to put a \itxem{full rest} or a \itxem{half rest} above or below the staff. Then the ordinary \verb|\pause| or \verb|\hpause| cannot be used since there is a need for small horizontal line to distinguish between the full and the half rest. They are: \begin{itemize} \item \keyindex{liftpause}~$n$ (non spacing) to get a \hbox to10pt{\liftpause{-2}\hss} raised from original position by $n$ staff line intervals, \item \keyindex{lifthpause}~$n$ (non spacing) to get \hbox to10pt{\lifthpause{-1}\hss} raised the same way. \item \keyindex{liftpausep}~$n$ (non spacing) to get a \hbox to10pt{\liftpausep{-2}\hss} raised from original position by $n$ staff line intervals, \item \keyindex{lifthpausep}~$n$ (non spacing) to get \hbox to10pt{\lifthpausep{-1}\hss} raised the same way. \end{itemize} %\check \subsection{Bar centered rests}\label{barcentered} Sometimes it is necessary to place a rest (or other) exactly in the middle of a bar. This can be done with more sophisticated commands: %\keyindex{atnextbar} \keyindex{centerbar}, \keyindex{centerPAUSe}, \keyindex{centerPAuse}, \keyindex{centerpause}, \keyindex{centerhpause}. For example: \begin{music} \generalmeter\meterC \setclef1\bass \setstaffs1{2} \parindent0pt \startpiece\addspace\afterruleskip \NOtes|\qa{cegj}\en \def\atnextbar{\znotes\centerpause\en}\bar \NOtes|\qa{jgec}\en \def\atnextbar{\znotes\centerpause\en}\bar \Notes\ca{`jihgfedc}\en \def\atnextbar{\znotes|\centerpause\en}\bar \NOTes\ha{Nc}\en \def\atnextbar{\znotes|\centerpause\en}\bar \addspace{10\elemskip}% \def\atnextbar{\znotes\centerbar\duevolte|\centerbar\duevolte\en}\endpiece \end{music} \begin{verbatim} \generalmeter\meterC \setclef1\bass \setstaffs1{2} \parindent0pt \startpiece\addspace\afterruleskip \NOtes|\qa{cegj}\en \def\atnextbar{\znotes\centerpause\en}\bar \NOtes|\qa{jgec}\en \def\atnextbar{\znotes\centerpause\en}\bar \Notes\ca{`jihgfedc}\en \def\atnextbar{\znotes|\centerpause\en}\bar \NOTes\ha{Nc}\en \def\atnextbar{\znotes|\centerpause\en}\bar \addspace{10\elemskip}% \def\atnextbar{\znotes\centerbar{\duevolte}|\centerbar{\duevolte}\en}\endpiece \end{verbatim} %\check \section{Phantom notes and spacing commands}\label{spacing} It may be interesting, when coding a sequence of notes within a unique pair \verb|\notes...\enotes|, to skip one note place in order -- for example -- to set the third note of one staff at the same abscissa as that of the second note of another staff. This can be done by inserting \keyindex{sk} which causes a spacing of one \keyindex{noteskip}\footnote{Never use \keyindex{kern} nor \keyindex{hskip}~: in fact \keyindex{sk} not only causes a space but also records that space for correct handling of beams, slurs, trills, octaviation dashed lines, line-breaking, etc.}. Sometimes it is useful to \ital{skip back} one noteskip, this can be done with \keyindex{bsk}. The spacing of a half \verb|\noteskip| can be yielded with \keyindex{hsk}. %\check If you just want to shift a note or a symbol by one note head width, you may write \keyindex{roff}\verb|{|\ital{note/symbol}\verb|}| (shift right) or \keyindex{loff}\verb|{|\ital{note/symbol}\verb|}| (shift left). If you just want to shift a note or a symbol by one half note head width, you may write \keyindex{hroff}\verb|{|\ital{note/symbol}\verb|}| (shift right) or \keyindex{hloff}\verb|{|\ital{note/symbol}\verb|}| (shift left). For example, to get %\check \begin{music} \startextract \Notes\roff{\zwh g}\qu g\qu h\qu i\enotes \endextract \end{music} you code: %\check \begin{quote}\begin{verbatim} \Notes\roff{\zwh g}\qu g\qu h\qu i\enotes \end{verbatim}\end{quote} If you want to shift notes or symbols right by more or less than one note head width, then you can use \keyindex{roffset} (or \keyindex{loffset} in the other direction) which has an additional first argument which is the number of note head widths the second argument should be shifted by. For example \begin{music} \startextract \Notes\roffset{1.5}{\zwh g}\qu g\qu h\qu i\enotes \endextract \end{music} was coded: \begin{quote}\begin{verbatim} \Notes\roffset{1.5}{\zwh g}\qu g\qu h\qu i\enotes \end{verbatim}\end{quote} \begin{important} the offset specified or implicitly specified in \verb|\roff|, \verb|\loff|, \verb|\roffset| and \verb|loffset| does not add to the total spacing amount; in other words this is just an offset, not a spacing. Conversely, the possible spacing of commands included in the argument of \verb|\roff|/\verb|\loff| and in the second argument of \verb|\roffset|/\verb|\loffset| actually adds to the total spacing in that bar of the current staff. Therefore, the symbol/note argument of these offset commands should usually produce no spacing, i.e. begin with \verb|\z|. Besides, it is not advised to insert several consecutive spacing notes in the \verb|\roff|/\verb|\loff| or \verb|\roffset|/\verb|\loffset| arguments, since it could mess up the global spacing accounting. \end{important} %\check To insert spacing of \ital{nearly} one \ital{note head width}, you can use \keyindex{qsk}(which has the drawback, that it is scalable, so what spacing you really get depends on the computed \verb|\elemskip| from \verb|musixflx| and the user chosen value of \verb|\elemskip|). The half of this spacing can be forced with \keyindex{hqsk}. Note that these two latter macros must be used inside a pair \verb|\notes...\enotes|. If you want to insert additional spacing before a group of notes, especially to avoid a collision with an accidental, you can write \keyindex{nspace} --- outside the \verb|\notes...\enotes| group --- and this will produces an additional spacing of a half note head width; in the same way, \keyindex{qspace} will yield a spacing of a note head width. Note that \verb|\nspace| and \verb|\qspace| are ``hard'' spacings, whose general feature is \verb|\hardspace|, described below. Sometimes the additional space behind \keyindex{changecontext} disturbs the eye of a typesetter, but this ugly spacing can be reduced with: \keyindex{addspace}\verb|{-|\keyindex{afterruleskip}\verb|}%| It should be emphasized that all these spacing commands work correctly, only when their dimension arguments are \itxem{scalable values} and not fixed dimensions; the scalable dimensions are \keyindex{elemskip}, \keyindex{beforeruleskip}, \keyindex{afterruleskip}, \keyindex{noteskip} and their multiples. The only spacing command which can work with ``normal'' (that is, \ital{not scalable}) dimensions is:\label{hardspace}\index{hard spacing} \keyindex{hardspace}\verb|{|\ital{any \TeX~dimension}\verb|}%| \noindent but both \verb|\addspace| and \verb|\hardspace| can only be used outside of \verb|\notes...\enotes|. Conversely, a more general spacing is allowed within the \verb|\notes...\enotes| pairs, namely: \keyindex{off}\verb|{|$D$\verb|}%| \noindent where $D$ is a \itxem{scalable dimension}, for example \verb|\noteskip| or \verb|\elemskip|. In fact, if you look to the \musixtex\ source, you will find that \verb|\off| is the basic control sequence used to define \keyindex{sk}, \keyindex{qsk}, etc. %\check \section{Collective coding: sequences of notes} As seen in the {\sc Mozart} example, it is not necessary to write a macro sequence \verb|\notes...\enotes| for each column\footnote{Although the compiler compiles it faster.}. If, on all staffs of all instruments, spacings are equal or multiple of a unique value, the notes may be concatenated in each staff: each note in each staff makes the current position horizontally advance by the elementary spacing specified by the choice of \verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc. The major interest of this feature resides in that fact that the note macros are able to write several items; for instance \verb|\qu{cdefghij}| writes the \ital{C-major} scale in quarters with stem up. In the same way \verb|\cl{abcdef^gh}| writes the \ital{A-minor} scale in eighths. Not all note generating macros can be used to perform collective coding, but most of them can. If necessary a void space\footnote{same behaviour as {\Bslash sk}} can be inserted in a collective coding by using \verb|*|\index{*}. %\check \section{Accidentals} Accidentals can be introduced in two ways. The first way, the \ital{manual} way of coding them, consists for example in coding \keyindex{fl}\verb|a| to put a \ital{flat} at the pitch $a$, supposedly before the further note of that pitch. There is no control upon the fact that a note will be put at this position and at this pitch. Naturals, sharps, double flats and double sharps are coded \keyindex{na}~$p$, \keyindex{sh}~$p$, \keyindex{dfl}~$p$ and \keyindex{dsh}~$p$ respectively. Alternate procedures \keyindex{lfl}, \keyindex{lna}, \keyindex{lsh}, \keyindex{ldfl} and \keyindex{ldsh} place the same accidentals, but their abscissa is shifted one note head width on the left. The purpose of this is to avoid collision of accidentals in a chord with narrow intervals. The second way of coding accidentals consists in putting the symbol \verb|^| (sharp), the symbol \verb|_| (flat), the symbol \verb|=| (natural), the symbol \verb|>| (double sharp), or the symbol \verb|<| (double flat) within the coding of the note, e.g.: \verb|\qb{^g}| yields a $G\sharp$. This may very well be combined with collective coding, e.g.: \verb|\qu{ac^d}|. Two sizes are available for accidentals. They revert to the small version when notes are supposed to be too close to each other. These two sizes can be forced by coding \keyindex{bigfl}, \keyindex{bigsh}, etc., or \keyindex{smallfl}, \keyindex{smallsh}, etc. If one does not want to have any small accidentals, then one can declare \keyindex{bigaccid} (conversely \keyindex{smallaccid} or \keyindex{varaccid} -- the latter restoring variable sizes). Small accidentals can also be put \ital{above} the note heads. This is done using \keyindex{uppersh}~$p$, \keyindex{upperna}~$p$ or \keyindex{upperfl}~$p$: \begin{music} \startextract \NOtes\uppersh l\qa l\enotes \NOtes\upperna m\qa m\enotes \NOtes\upperfl l\qa l\enotes \endextract \end{music} It also possible to introduce \ital{\ixem{cautionary accidental}s} on a score, i.e.\ small size accidentals between parentheses. This done by preceding the name of the accidental keyword by a \verb|c|,\label{cautionary} e.g.~by coding \keyindex{cfl}~$p$ to get a cautionary flat. Available cautionary accidentals are \keyindex{csh}, \keyindex{cfl}, \keyindex{cna}, \keyindex{cdfl} and \keyindex{cdsh}, which give: \begin{music} \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 \endextract \end{music} \noindent Besides, the distance between note and accidental is influenced by \keyindex{accshift}\verb|=|\ital{any \TeX\ dimension} \noindent positive values shift to left, negative to right, default is \verb|0pt|. \section{Transposition and octaviation} An important feature is the existence of a special register \keyindex{transpose} the normal value of which is 0. If you say \verb|\transpose=3| \noindent all subsequent pitches specified by upper or lower case letters\footnote{Pitches specified with figures are absolute and not transposed.} will be transposed 3 positions. If you set \keyindex{transpose} to 7 you may write your music one octave below its final pitch. Thus, you can define \ital{octaviation} macros like \verb|\def\soqu#1{\zq{#1}{\transpose=7 \qu{#1}}}| \noindent to build quarter note octaves in a single call. Note that the octaviated note is coded within braces so that the transposition is only local. \ital{Octaviation}\index{octaviation} can also be performed in another way, namely using special codes to transpose by multiples of 7 intervals. For example \verb|\qu{'ab}| is equivalent to \verb|\qu{hi}| and \verb|\qu{`kl}| is equivalent to \verb|\qu{de}|. It should be emphasized here that the \verb|'| (\itxem{acute accent}) and the \verb|`| (\itxem{grave accent}) have cumulative effects, so that \verb|\qu{''A'A}| is equivalent to \verb|\qu{ah}| and that the \verb|\transpose| parameter is only reset to its initial value (not necessarily zero) when changing staff or instrument (i.e. \| or \verb|&|) or at \verb|\enotes|. Since this may be confusing, it is useful to use the \verb|!| prefix to reset the \verb|\transpose| register explicitely to the value it had when entering \verb|\notes|\footnote{This value is saved in another register named \keyindex{normaltranspose}.}. Thus \verb|\qu{!a'a}| always gives the note \verb|a| and its upper octave \verb|h| \ital{shifted by the value of {\Bslash transpose} at the beginning of the current} \noindent \verb|\notes...\enotes| group (or \verb|\Notes...\enotes|, etc.) whatever the number of previous grave and acute accents occurring inbetween. \subsection{Typical piano octave transposition} \subsubsection{Local octave transposition of fixed length} \begin{music} \startextract \NOTEs\octfinup{10}{3.5}\qu a\qu b\qu c\qu d\en \endextract \end{music} \noindent can be coded as \begin{quote}\begin{verbatim} \startextract \NOTEs\octfinup{10}{3.5}\qu a\qu b\qu c\qu d\en \endextract \end{verbatim}\end{quote}\zkeyindex{octfinup} \noindent that is, the dashed line extends 3.5$\times${\Bslash noteskip}. Conversely, lower octaviation can also be coded, for example: \begin{music} \startextract \NOTEs\octfindown{-5}{2.6}\ql j\ql i\ql h\en \endextract \end{music} \noindent which is coded as \begin{quote}\begin{verbatim} \startextract \NOTEs\octfindown{-5}{2.6}\ql j\ql i\ql h\en \endextract \end{verbatim}\end{quote}\zkeyindex{octfindown} If a more sophisticated posting is wanted, this can be achieved refefining the macro \keyindex{octnumber}, e.g.: \begin{music} \startextract \NOTEs\def\octnumber{\ppffsixteen8$^{va}$}\octfinup{10}3\qu c\qu d\qu e\en \endextract \end{music} \noindent whose coding is \begin{quote}\begin{verbatim} \startextract \NOTEs\def\octnumber{\ppffsixteen8$^{va}$}\octfinup{10}3\qu c\qu d\qu e\en \endextract \end{verbatim}\end{quote} \noindent or \begin{music} \startextract \NOTEs\def\octnumber{\ppffsixteen8$^{va\,bassa}$}\octfindown{-5}4\ql l\ql k\ql j\en \endextract \end{music} \noindent coded as: \begin{quote}\begin{verbatim} \startextract \NOTEs\def\octnumber{\ppffsixteen8$^{va\,bassa}$}% \octfindown{-5}4\ql l\ql k\ql j\en \endextract \end{verbatim}\end{quote} \subsubsection{Long or variable range octave transposition} Long range octave transpositions are better handled using \keyindex{Ioctfinup}, \keyindex{Ioctfindown} and \keyindex{Toctfin} whose effect extends over line breaks. {\Bslash Ioctfinup}~$np$ starts an octave transposition of reference number $n$ (with $0\le n<6\equiv$\keyindex{maxoctlines}) dashed line at pitch $p$ (usually $p>10$ but it can also be an alphabetic pitch specification), {\Bslash Ioctfindown}~$np$ starts a lower octave transposition at pitch $p$ (usually $p<-2$), and both extend until terminated with {\Bslash toctfin}. The difference between {\Bslash Ioctfinup}~$n$ and {\Bslash Ioctfindown}~$n$ is the relative position of the ``8'' figure with respect to the dashed line, and the sense of the terminating hook (note that {\Bslash Ioctfinup} has a hook under the dashed line, and conversely). For the sake of backward compatibility, \keyindex{ioctfinup} is equivalent to \verb|\Ioctfinup 0| and \keyindex{ioctfindown} is equivalent to \verb|\Ioctfindown 0|. For example: \medskip \begin{music} \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 \endextract \end{music} whose coding is \begin{quote}\begin{verbatim} \begin{music} \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 \endextract \end{music} \end{verbatim}\end{quote} %\check %\begin{changebar} The elevation of octaviation lines may be raised/lowered using \keyindex{Liftoctline}~$n$~$p$ where $n$ is the reference number of the wanted ocave line, and $n$ a number (possibly negative) number of \verb|\internote| by which the dashed line should be lifted. This is particularly useful when octaviation lines last several systems and need to be lifted in the systems occuring farther than the initiation. %\end{changebar} \subsection{Transposition of accidentals} The above processes indeed change the vertical position of the note heads and associated symbols (note stems, accents and beams) but they do not take care of the necessary changes of accidentals when transposing, i.e. the fact that an $F\sharp$ occurring with a zero signature should become a $B\natural$ when transposing from the tonality of $C$ major to $F$ major where the normal $B$ is the $B\flat$. Since the intent of the composer is not obvious -- he may want to shift a group of notes within the same tonality or conversely to transpose it in another tonality -- this is not done automatically. Thus the \keyindex{sh}, \keyindex{fl}, \keyindex{na}, \keyindex{dsh} and \keyindex{dfl} symbols \ital{are not affected} by a change of the \keyindex{transpose} register. But the composer/typesetter may ask \musixtex\ to do that work. In this case, he should code \keyindex{relativeaccid}. In that case, a \verb|\sh| command means that the corresponding pitch\footnote{The musical output note, not the typesetting position.} has to be raised by \ital{one half pitch} with respect to its normal value \ital{according to the current signature}. Thus \verb|\sh b| (using \keyindex{relativeaccid}) means a $B\sharp$ if the signature is zero or positive, and a $B\natural$ if it is negative. The same logic applies for all accidentals using \keyindex{relativeaccid}. In the same way, the compact codes \verb|^|, \verb|_|, \verb|=| are normally not affected by transposition and signatures, but their behaviour will be changed by saying \keyindex{relativeaccid} and reset by \keyindex{absoluteaccid} (the default situation)\footnote{Note that the behaviour of {\Bslash sh}, {\Bslash na} and {\Bslash fl} with \musixtex\ corresponds to the behaviour of {\Bslash Sh}, {\Bslash Na} and {\Bslash Fl} with \musictex+{musictrp.tex}. But the {\tt musixcpt.tex} file forces the same behaviour as \musixtex\ in that respect, see page \pageref{compatibility}.}. Although \ital{relative accidental coding} is an easy and safe way of coding \ital{transposable} scores, care should be exercised in getting rid of the habit of saying \verb|\na b| to raise the pitch of a $B$ when the tonality is $F$ major (i.e. with \keyindex{setsign$n$}\verb|=-1| or \keyindex{generalsignature}\verb|{-1}|). An example of sophisticated transposition is given in the score \verb|souvenir.tex| (which \verb|\input|s \verb|souvenix.tex|). %\check \section{Slurs and ties} The slurs and ties provided by \musixtex\ can be divided into two categories: \label{simpleslur} \begin{itemize} \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 three discrete characters, to form the beginning, middle and end of the slur. \end{itemize} The former are called \ital{simple slurs} and the latter are called \ital{compound slurs}. To some extent the division between the two is invisible to the user, in that a number of the macros described below will select between the two types automatically. However, other macros are provided to enable simple slurs to be specified. Note that slurs of both types must be coded within the pair \verb|\notes...\enotes|. \subsection{General slur coding} This section describes 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, as is the case for beams. \subsubsection{Slur initiation} The slur must be initiated {\em before} the spacing note at which the slur begins, and terminated {\em before} the note at which the slur ends. The simplest slur initiation macro is \keyindex{isluru}~$np$ \noindent which initiates an upper slur, with reference number $n$, beginning at pitch $p$. The starting point of the slur is centred above an imaginary quarter note head at pitch $p$. As for beams, the reference number $n$ takes values from 0 to 5, or 0 to 8 if \ttxem{musixadd.tex} is included. Similarly, \keyindex{islurd}~$np$ initiates a lower slur. These slurs are terminated by coding \keyindex{tslur}~$np$ where $n$ is the reference number and $p$ is the termination pitch. To illustrate with a simple example, the following passage \begin{music} \startextract \NOtes\islurd0g\qu g\tslur0{'c}\qu c\en \Notes\isluru0{'e}\ibl0e{-2}\qb0{edc}\tslur0b\tqb0b\en \bar \NOtes\islurd0{'a}\qu a\tslur0{`f}\qu f\en \NOTes\hu g\en \endextract \end{music} \noindent was coded as: \begin{quote}\begin{verbatim} \NOtes\islurd0g\qu g\tslur0{'c}\qu c\en \Notes\isluru0{'e}\ibl0e{-2}\qb0{edc}\tslur0b\tqb0b\en \bar \NOtes\islurd0{'a}\qu a\tslur0{`f}\qu f\en \NOTes\hu g\en \end{verbatim}\end{quote} Other macros are provided to change the starting and ending point of the slur in relation to the initial and final notes. Thus, \keyindex{issluru}~$np$ initiates a ``short'' upper slur suitable for linking notes involved in chords. The starting point is shifted to the right, and is vertically aligned with the centre of an imaginary quarter note head at pitch $p$. If a lower short slur is wanted, one should use \keyindex{isslurd}~$np$. Sometimes, busy scores call for slurs which are vertically aligned with the ends of note stems rather than note heads. These ``beam'' slurs --- so called because the slur is written at usual beam height --- are provided by the macros \keyindex{ibsluru}~$np$ and \keyindex{ibslurd}~$np$. These macros initiate slurs raised or lowered by the current stem height to accommodate stems or beams above or below. %\check \subsubsection{Slur termination}\label {slurtermin} Termination of slurs can be achieved in two ways. First, macros matching each of the initialization macros are provided, as shown below.\\ \begin{center} \begin{tabular}{ll} Initiation & Termination \\ \hline \keyindex{isluru}, \keyindex{islurd} & \keyindex{tslur} \\ \keyindex{issluru}, \keyindex{isslurd} & \keyindex{tsslur} \\ \keyindex{ibsluru} & \keyindex{tbsluru}\\ \keyindex{ibslurd} & \keyindex{tbslurd}\\ \hline \end{tabular} \end{center} These specific termination macros enable slurs started in one way to be terminated in another. For example, a slur beginning as a ``beam'' slur may be terminated as a normal slur. This would be achieved using the macro pair \verb|\ibslur...\tslur|. \subsubsection{Ties} The coding of \itxem{ties} follows from the above discussion as a special case of slurs, i.e. when there is no pitch change. Upper ties are initiated by \keyindex{itieu}~$np$ which starts an upper tie of reference number $n$ at pitch $p$. Lower ties are initiated by \keyindex{itied}~$np$ which starts an lower tie of reference number $n$ at pitch $p$. The starting position of the tie is the same as \verb|\issluru| and \verb|\isslurd| respectively. The tie is terminated by coding \keyindex{ttie}~$n$. Some simple examples of slurs and ties are illustrated below. \begin{music} \startextract \NOTes\isluru0g\hl g\tslur0h\hl h\en \NOTes\islurd0c\issluru1g\zh{ce}\hu g\tslur0d\tsslur1h\zh{df}\hu h\en \NOTes\ibsluru0g\islurd1g\hu g\tubslur0h\hu h\en \NOTes\itieu0k\hl k\ttie0\tdbslur1f\hl k\en \endextract \end{music} \noindent This was coded as: \begin{quote}\begin{verbatim} \begin{music} \startextract \NOTes\isluru0g\hl g\tslur0h\hl h\en \NOTes\islurd0c\issluru1g\zh{ce}\hu g\tslur0d\tsslur1h\zh{df}\hu h\en \NOTes\ibsluru0g\islurd1g\hu g\tubslur0h\hu h\en \NOTes\itieu0k\hl k\ttie0\tdbslur1f\hl k\en \endextract \end{music} \end{verbatim}\end{quote} \subsubsection{Short ties} Usual music coding makes ties not different of slurs, i.e. a tie is typed exactly like a slur linking two notes of same pitch. However, this traditional way of doing has two the drawback: \begin{itemize} \item in some special cases, a slur might be confused with a tie and conversely, \item chord ties cannot be implemented with the slur starting above or below the note, but only starting just right of the noetead and finishing just left of the other note head. \end{itemize} This can be done using \verb|\issluru| (\ref{slurtermin}, p. \pageref{slurtermin}) or \keyindex{itenu}~$np$, \keyindex{itenl}~$np$ for tie initiation, and \keyindex{tten}~$n$ to terminate it. As an example: \begin{music} \startextract \NOTes\itenl0d\itenl1e\itenu2g\itenu3j\zh{ceg}\hu j\enotes \bar \NOTes\tten0\tten1\tten2\tten3\zh{ceg}\hu j\enotes \endextract \end{music} \noindent was coded as: \begin{quote}\begin{verbatim} \begin{music} \startextract \NOTes\itenl0d\itenl1e\itenu2g\itenu3j\zh{ceg}\hu j\enotes \bar \NOTes\tten0\tten1\tten2\tten3\zh{ceg}\hu j\enotes \endextract \end{music} \end{verbatim}\end{quote} %\check \subsubsection{Slur limitations} The vertical gap between slur initiation and slur termination is limited to 16\verb|\Internote|. Thus exceedingly ascending slurs lead to unfortunate results, such as~: \begin{music} \instrumentnumber{1} \generalmeter{\meterfrac34} \startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0j\ql j\enotes \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0n\ql n\enotes\endextract \startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0s\ql s\enotes \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0z\ql z\enotes\endextract \end{music} whose coding was: \begin{quote}\begin{verbatim} \startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0j\ql j\enotes \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0n\ql n\enotes\endextract \startextract\NOTes\multnoteskip3\isluru0c\ql c\tslur0s\ql s\enotes \bar\NOTes\multnoteskip3\isluru0c\ql c\tslur0z\ql z\enotes\endextract \end{music} \end{verbatim}\end{quote} Besides, tentative slurs of excessive slope may also yield unexpected shapes, such as: \begin{music} \instrumentnumber{1} \generalmeter{\meterfrac34} \startextract\NOTes\isluru0c\ql c\enotes\notes\tslur0j\ql j\enotes \bar\NOTes\isluru0c\ql c\enotes\notes\tslur0n\ql n\enotes \NOTes\isluru0c\ql c\enotes\notes\tslur0s\ql s\enotes \bar\NOTes\isluru0c\ql c\enotes\notes\tslur0z\ql z\enotes \endextract \end{music} \subsection{Dotted slurs} Compound and simple slurs (\ref{simpleslur}, p.\pageref{simpleslur}) may be drawn dotted\footnote{Thanks to Werner {\sc Icking}.} specifying \keyindex{dotted} just before slur initiation. \begin{music} \startextract \NOtes\dotted\islurd0g\qu g\tslur0{'c}\qu c\en \Notes\dotted\isluru0{'e}\ibl0e{-2}\qb0{edc}\tslur0b\tqb0b\en\bar \NOtes\dotted\slur{'a}{`f}d1\qu{'a`f}\en \NOTes\hu g\en \endextract \end{music} \noindent This was coded as: \begin{quote}\begin{verbatim} \NOtes\dotted\islurd0g\qu g\tslur0{'c}\qu c\en \Notes\dotted\isluru0{'e}\ibl0e{-2}\qb0{edc}\tslur0b\tqb0b\en\bar \NOtes\dotted\slur{'a}{`f}d1\qu{'a`f}\en \NOTes\hu g\en \end{verbatim}\end{quote} \subsection{*Modifying slur properties} Several macros are provided to modify the shape of slurs already initiated. These macros must be coded before the slur termination. Note that only compound slurs can be modified. Hence, calling any modification macro forces the slur type to be compound. \subsubsection{*Changing the rise or fall} By default, the arch of a slur rises and falls from its original height by three times the vertical note spacing. This can be changed using the macro \keyindex{midslur}~$h$ where $h$ is the revised vertical displacement. For example, \verb|\midslur{6}| coded before \verb|\tslur| causes an upper slur to rise to a maximum height of \verb|6\internote| above the starting position. Note that \verb|\midslur| must be coded {\em immediately} before the slur termination (eg, \verb|\tslur|). Coding \verb|\midslur| before setting a simple slur causes problems and should be avoided.\\[20pt] \begin{music} \startextract \NOtes\multnoteskip8\isluru0g\ql g\en \notes\tslur0g\ql g\en \endextract \startextract \NOtes\multnoteskip8\isluru0g\ql g\en \notes\midslur7\tslur0g\ql g\en \endextract \startextract \NOtes\multnoteskip8\isluru2g\ql g\en \notes\midslur{11}\tslur2g\ql g\en \endextract \end{music} This was coded as: \begin{quote}\begin{verbatim} \startextract \NOtes\multnoteskip8\isluru0g\ql g\en \notes\tslur0g\ql g\en \endextract \startextract \NOtes\multnoteskip8\isluru0g\ql g\en \notes\midslur7\tslur0g\ql g\en \endextract \startextract \NOtes\multnoteskip8\isluru2g\ql g\en \notes\midslur{11}\tslur2g\ql g\en \endextract \end{verbatim}\end{quote} \subsubsection{*Changing the curvature} The degree of curvature depends primarily on the initial and terminal gradient of the slur, relative to its mean slope. The macro \keyindex{curve}~$hij$ allows these to be modified. The first parameter $h$ is the vertical deviation as for \verb|\midslur| described above. The second parameter $i$ sets the initial gradient, while the third parameter $j$ sets the final gradient. The latter parameters are defined as the horizontal distance required to attain maximum vertical deviation. Thus smaller numbers for $i$ and $j$ lead to more extreme gradients. The default setting is \verb|\curve344|. Hence, coding \verb|\curve322| doubles the initial and final gradient relative to the default. As with \verb|\midslur|, \verb|\curve| must be coded {\em immediately} before the slur termination. Likewise, coding \verb|\curve| before a simple slur causes problems and should be avoided. The example below illustrates the use of \verb|\curve| more clearly. \begin{music} \startextract \NOtes\multnoteskip8\itieu0g\ql g\en \notes\ttie0\ql g\en \endextract \startextract \NOtes\multnoteskip8\itieu1g\ql g\en \notes\curve 322\ttie1\ql g\en \endextract \startextract \NOtes\multnoteskip8\itieu2g\ql g\en \notes\curve 111\ttie2\ql g\en \endextract \end{music} This was coded as: \begin{quote}\begin{verbatim} \startextract \NOtes\multnoteskip8\itieu0g\ql g\en \notes\ttie0\ql g\en \endextract \startextract \NOtes\multnoteskip8\itieu1g\ql g\en \notes\curve 322\ttie1\ql g\en \endextract \startextract \NOtes\multnoteskip8\itieu2g\ql g\en \notes\curve 111\ttie2\ql g\en \endextract \end{verbatim}\end{quote} %\check \subsubsection{*Breaking slurs across a line} Two macros are provided to control the behaviour of slurs which extend across line breaks. Normally, the part of the slur before the line break is treated as a tie. This can be changed using \keyindex{breakslur}~$np$, which sets the termination height of the broken slur at the line break to pitch $p$, for slur reference number $n$. After the line break, the slur is normally resumed at the initial pitch reference, the one coded in \verb|\islur|. To change this, the macro \keyindex{Liftslur}~$np$ may be used. Here $n$ is again the slur reference number and $p$ is the change in height relative to the initialization height. This macro is normally used following line breaks, in which case it is best coded using the \verb|\atnextline| macro. For example, coding \verb|\def\atnextline{\Liftslur06}| raises the continuation of slur zero by \verb|6\internote| relative to its initialization height. These macros are illustrated by the following example. %% % Example %% %\check \subsubsection{*Inverting slur termination} Occasionally in keyboard works one needs to begin a slur in one stave but end it in another. This can be done using the macro \keyindex{invertslur}~$n$ which is best described by reference to the example shown below. % Finding the final pitch is try and error, sorry, no way out. \begin{music} \setstaffs1{2} \setclef1\bass \startextract \NOtes\multnoteskip5\isluru0a\ql a\en \notes\invertslur0\curve311\tslur0g|\qu d\en \NOtes\multnoteskip{10}\isluru0a\ql a\en \notes\invertslur0\curve333\tslur0g|\qu d\en \endextract \end{music} This was coded as: \begin{quote}\begin{verbatim} \setstaffs1{2} \setclef1{\bass} \startextract \NOtes\multnoteskip5\isluru0a\ql a\en \notes\invertslur0\curve311\tslur0g|\qu d\en \NOtes\multnoteskip{10}\isluru0a\ql a\en \notes\invertslur0\curve333\tslur0g|\qu d\en \endextract \end{verbatim}\end{quote} \begin{remark} Slur inversion is achieved at a place where its slope ise zero~; therefore it only works with ascending slurs started with \verb|\isluru|, and with descending slurs started with \verb|\islurd|. Otherwise no horizontal place can be found and the result is erratic. This second situation can be solved manually, stopping the slur at a reasonable place with \verb|\tslur| and restarting in the other sense at the same place. Stopping and restarting obviously refer to virtual note pitches (a vertical position without actual note) which should be adjusted to have the minimum discontinuity. \end{remark} To make this drawing easier, three commands have been provided: \begin{itemize} \item \keyindex{Tslurbreak}$np$ stops slur number $n$ exactly at pitch $p$, not above or below the virtual note head. \item \keyindex{Islurubreak}$np$ restarts an upper slur at the same position, not above a virtual note head. \item \keyindex{Islurdbreak}$np$ restarts an lower slur at the same position, not below a virtual note head. \end{itemize} Thus, the following pattern \begin{music} \setclef1\treble \startextract \NOTes\multnoteskip 3\isluru0a\ql a\en \NOTes\multnoteskip 3\Tslurbreak0d\Islurdbreak0d\sk\en \Notes\tslur0h\qu h\en \NOTes\multnoteskip 3\islurd0a\ql a\en \NOTes\multnoteskip 3\Tslurbreak0d\Islurubreak0d\sk\en \Notes\tslur0h\qu h\en \endextract \end{music} was coded as \begin{quote}\begin{verbatim} \begin{music} \setclef1\treble \startextract \NOTes\multnoteskip 3\isluru0a\ql a\en \NOTes\multnoteskip 3\Tslurbreak0d\Islurdbreak0d\sk\en \Notes\tslur0h\qu h\en \NOTes\multnoteskip 3\islurd0a\ql a\en \NOTes\multnoteskip 3\Tslurbreak0d\Islurubreak0d\sk\en \Notes\tslur0h\qu h\en \endextract \end{music} \end{verbatim}\end{quote} \subsection{Simple slurs} Simple slurs and ties have the advantage of optimal aesthetics and simple coding, but are limited in length to 68pt for slurs and 220pt for ties. Also, the maximum vertical extent of simple slurs is 8 times the internote spacing, and the slurs may not extend across a line break. Despite all these limitations, simple slurs are extremely useful in many applications where the slurs are short and contained within a bar. Simple slurs extend to the right of the note immediately following. Hence they must be coded {\em before} the note at which the slur begins. The primary macro call is \keyindex{slur}~$p_1p_2sl$ where $p_1$ and $p_2$ are respectively the initial and final pitches, $s$ is the sense, either {\tt u} or {\tt d}, and $l$ is the length, in units of the current value of {\tt noteskip}. Thus, thirds slured in pairs can be coded: %\check \begin{quote}\begin{verbatim} \NOtes\slur ced1\qu{ce}\en \NOtes\slur dfd1\qu{df}\en \NOtes\slur egd1\qu{eg}\en \NOtes\slur{'e}cu1\ql{ec}\en \NOtes\slur{'d}bu1\ql{db}\en \NOtes\slur{'c}au1\ql{ca}\en \end{verbatim}\end{quote} which yields: \begin{music} \startextract \NOtes\slur ced1\qu{ce}\en \NOtes\slur dfd1\qu{df}\en \NOtes\slur egd1\qu{eg}\en \NOtes\slur{'e}cu1\ql{ec}\en \NOtes\slur{'d}bu1\ql{db}\en \NOtes\slur{'c}au1\ql{ca}\en \endextract \end{music} %% Similarly, ties may be set using \keyindex{tie}~$psl$ where $p$ is the (single) pitch, and the other parameters are as described above. Variants on these macros are provided to change the slur length and vertical offset relative to the starting note, as follows. \begin{itemize} \item \keyindex{sslur}~$p_1p_2sl$, which sets a `short' slur, designed for the case when a slur is required to link notes which form part of a chord (see \verb|\isslur| above). The macro \keyindex{stie}~$psl$ sets analagous ties. %! \item \keyindex{bslur}~$p_1p_2sl$, which sets a `beam' slur, raised or %! lowered so that the slur links the ends of note stems rather than %! note heads. \end{itemize} %\check \subsection{Restrictions} Generation of some of the slur fonts is problematic for \MF. In particular, the long ties tend to exceed \MF's maximum dimension for high resolution printers. However, for normal 300 dpi printers there is no problem. A solution to this limitation is planned for Postscript\raise1.5ex\hbox{\small\copyright} printers using DVIPS \verb|\special| commands. \section{Bars} \subsection{Bars and spacing} Ordinary \ital{bars} are coded using the macro \keyindex{bar}. Its drawback is that it does not differ from \verb|\bar| which is already defined in \TeX's mathematical mode. \index{bar (original meaning)@{\Bslash bar} \ital{(original meaning)}} Therefore, inside \verb|\startpiece...\endpiece| \ital{our} \verb|\bar| means a musician \ital{bar}\footnote{\ital{Mesure} in French, \ital{Takt} in German.} and outside, it keeps its original meaning. If you \ital{really} need the original \verb|\bar| inside, you can say \verb|\endcatcodesmusic...\bar...\catcodesmusic|. %\check \subsection{Bar numbering} Unless otherwise specified, \index{bar numbering}bars are numbered. This is a good means of finding errors provided that the \musixtex\ user has put comments in his source text recording the (expected) bar number. However, this can look unpleasant for final outputs, since the habit is to number bars only each other five or ten bars. This is not a serious problem since the frequency of bar numbering is defined as: \verb|\def|\keyindex{freqbarno}\verb|{1}| If you replace the {\tt1} by {\tt5}, bar numbering will occur each other five bars. You can also inhibit any bar number\footnote{default inside this manual} printing by telling: \keyindex{nobarnumbers} \noindent If you want to restore bar numbering after \verb|\nobarnumbers|, you can say \keyindex{barnumbers} The bar counter is also accessible, its name is \keyindex{barno}. You can change it without any dramatic consequence. Sometimes there is need for to start with a \verb|\barno| value which differs from 1. Perhaps the piece starts with an \ital{upbeat}, then you can code \keyindex{startbarno}\verb|=0| \noindent in front of \verb|\startpiece|; or you may want to typeset only an excerpt starting for example with bar number 198, then you can code \verb|\startbarno=198|. Pay attention because saying \verb|\startbarno=|$n$ has a global meaning. So if you want to \verb|\input| several pieces whose starting bar numbers differ, you have to adjust the value of \verb|\startbarno| each time.\label{startbarno} %\check The best compromise between information of the bar number and a pleasant lookout is the command \keyindex{systemnumbers} which draws the bar numbers only at the left top of every system (or staff? then the command will be renamed to \verb|\staffnumbers| or \verb|\staffbarnumbers|). You can influence the height of the system numbers by coding \verb|\def|\keyindex{raisebarno}\verb|{|\ital{any \TeX~dimension}\verb|}| \noindent whose default is set to \verb|4\internote| to fit above a violin clef. You can influence its horizontal position with \verb|\def|\keyindex{shiftbarno}\verb|{|\ital{any \TeX~dimension}\verb|}| \noindent which default value is \verb|0pt|. If you don't like the box around the bar number or its font, you can redefine the macro which sets the system bar number; its default is \verb|\def|\keyindex{writebarno}% \verb|{\boxit{\eightbf\the\barno\barnoadd}}| \noindent where \keyindex{boxit} is a utility macro provided by \musixtex{} whose purpose is to enclose its argument in a \raise-\boxitsep\hbox{\boxit{box}}. \medskip \begin{music} \let\extractline\hbox \startbarno=36 \hbox to \hsize{% \hss \raise20pt\hbox{(a) }% \systemnumbers\startextract \Notes\wh g\en \zendextract \hss \def\writebarno{\tenrm\the\barno\barnoadd}% \def\raisebarno{2\internote}% \def\shiftbarno{2.5\Interligne}% \raise20pt\hbox{(b) }% \systemnumbers\startextract \Notes\wh g\en \zendextract \hss \def\writebarno{\llap{\tenbf\the\barno\barnoadd}}% \def\raisebarno{2\internote}% \def\shiftbarno{1.3\Interligne}% \raise20pt\hbox{(c) }% \systemnumbers\startextract \Notes\wh g\en \zendextract \hss} \end{music} which was coded as \begin{itemize} \item[(a)] (default) \item[(b)] \begin{verbatim} \def\writebarno{\tenrm\the\barno\barnoadd}% \def\raisebarno{2\internote}% \def\shiftbarno{2.5\Interligne}% \end{verbatim} \item[(c)] \begin{verbatim} \def\writebarno{\llap{\tenbf\the\barno\barnoadd}}% \def\raisebarno{2\internote}% \def\shiftbarno{1.3\Interligne}% \end{verbatim} \end{itemize} If the previous line does not stop with a bar rule to the next system bar number is added the \keyindex{writezbarno} whose default setting is the lower character {\tt'a'}. If you want a {\tt'+}' instead, you can say \verb|\def|\keyindex{writezbarno}\verb|{+}| Besides, you can change the font and anything in the format of current bar numbers by changing the original definition of the macro \keyindex{writethebarno} or the font in \keyindex{fontbarno}, where the defaults are: \verb|\def\writethebarno{\fontbarno\the\barno\kernm\qn@width}| \verb|\def\fontbarno{\it}| \noindent For example: \medskip \begin{music}\barnumbers \parindent0pt\startpiece \Notes\Dqbu gh\Dqbl jh\en \notes\Dqbbu fg\Dqbbl hk\en\bar \Notes\Tqbu ghi\Tqbl mmj\en \def\fontbarno{\bf}% \notes\Tqbbu fgj\Tqbbl njh\en\bar \Notes\Qqbu ghjh\Qqbl jifh\en\bar \notes\Qqbbu fgge\Qqbbl jhgi\en\endpiece \end{music} \noindent which was simply coded as: \begin{quote}\begin{verbatim}\barnumbers \Notes\Dqbu gh\Dqbl jh\en \notes\Dqbbu fg\Dqbbl hk\en\bar \Notes\Tqbu ghi\Tqbl mmj\en \def\fontbarno{\bf}% \notes\Tqbbu fgj\Tqbbl njh\en\bar \Notes\Qqbu ghjh\Qqbl jifh\en\bar \notes\Qqbbu fgge\Qqbbl jhgi\en \end{verbatim}\end{quote} %\check %\check \noindent Besides, you can suppress the messages of bar numbers on \verb|stdout| (normally screen) with \keyindex{nobarmessage}. In the same way, you can suppress the messages abour new lines (new systems) with \keyindex{nolinemessages}. %\check \subsection{Full and instrument divided bars} Normally, bars (as well as double bars, final bars and repeat bars) are drawn as a continuous line, starting for the bottom of the lower staff of the lower instrument, and ending at the top of the upper staff of the upper instrument. However, one may want to have discontinuous bars, that is, one continuous bar for all the staffs of a unique instrument. This is done by issuing the command \keyindex{sepbarrules}. An example of this is given in the {\tt ANGESCAO} (or {\tt ANGESCAM}) example; it has also been used in the example of section \ref{avemaria}. The initial situation can be forced or restored by \keyindex{stdbarrules}. In the extension library are some more types of bar rules, mainly for very old music, see \ref{otherbars}. \subsection{Instruments with no coherent bar division} In some special scores with several instruments, it may happen that distinc instruments, not only have different meters (e.g. 2/4 and 6/8 to avoid printing triolet codes for some instrument), but also have bar lines not synchronized. Obviously, this can be implemented \ital{{\bfseries only if}} \keyindex{sepbarrules} has been stated. Then, five specific commands can be issued~: \begin{itemize} \item\keyindex{hidebarrule} $n$ hides the bar rule for instrument $n$, until this is changed by \verb|\showbarrule|~$n$. \item\keyindex{showbarrule} $n$ stops hiding the bar rule for instrument $n$, until this is changed by \verb|\hidebarrule|~$n$. \item\keyindex{Hidebarrule} $n$ hides the bar rule for instrument $n$, only for the next bar. \item\keyindex{Showbarrule} $n$ exceptionally shows the bar rule for instrument $n$, and then resets intrument $n$ to \verb|Hidebarrule|. \item\keyindex{showallbarrules} resets all defined instruments to \verb|showbarrule|~$n$. This command is automatically inserted with double bars, final bars and repeats. \end{itemize} Thus, the following example~: \begin{music} \instrumentnumber3 \setmeter3{{\meterfrac{3}{4}}} \setmeter2{{\meterfrac{2}{4}}} \setmeter1{{\meterfrac{3}{8}}} \nobarnumbers \sepbarrules \startextract \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\hidebarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \showbarrule2\bar \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\showbarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \showbarrule2\hidebarrule3\bar \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \setdoublebar \bar\hidebarrule3 \NOtes\pt f\qa f&\qa f&\qa f\en \Hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \bar \NOtes\pt f\qa f&\qa f&\qa f\en \message{Showbarrule3 coming}% \Hidebarrule2\Showbarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \bar \NOtes\pt f\qa f&\qa f&\qa f\en \Hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \setrightrepeat \endextract \end{music} \noindent was obtained with the following coding \begin{quote}\begin{verbatim} \instrumentnumber3 \setmeter3{{\meterfrac{3}{4}}} \setmeter2{{\meterfrac{2}{4}}} \setmeter1{{\meterfrac{3}{8}}} \nobarnumbers \sepbarrules \startextract \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\hidebarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \showbarrule2\bar \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\showbarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \showbarrule2\hidebarrule3\bar \NOtes\pt f\qa f&\qa f&\qa f\en \hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \setdoublebar \bar\hidebarrule3 \NOtes\pt f\qa f&\qa f&\qa f\en \Hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \bar \NOtes\pt f\qa f&\qa f&\qa f\en \message{Showbarrule3 coming}% \Hidebarrule2\Showbarrule3\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \bar \NOtes\pt f\qa f&\qa f&\qa f\en \Hidebarrule2\bar \NOtes\multnoteskip{.333}\Tqbu fff&\qa f&\qa f\en \setrightrepeat \endextract \end{verbatim}\end{quote} \section{Managing the layout of your score} \subsection{Line and page breaking}\label{linebreak} Those who usually worked with \musictex\ before must be aware that this has been deeply changed in \musixtex. All line-breaking decisions\footnote{With exception of the \musictex\ command {\Bslash autolines}, which is provided in the file {\tt musixcpt.tex}, see page \pageref{compatibility}.} are done by the external program \verb|musixflx|. Then you get the most even results when you insert the fewest \ital{manual} line breaks possible. But sometimes there is really need for them, e.g. page break should preferably occur when the musician has one hand free to turn the sheet. You can force a line break with \keyindex{alaligne} instead of \keyindex{bar}. In the same way, you can code \keyindex{alapage} to force an \keyindex{eject} with proper reinitialization of staffs, clefs and signatures. %\check On the other hand, you may want to forbid line-breaking at a bar, then you should replace \verb|\bar| with \keyindex{xbar}. Conversely, you may want to break a line \ital{not at a bar}\footnote{For example, you may prefer to turn the page at a place where the pianist has one hand free, in the middle of a bar.}. This is allowed by \keyindex{zbar} (optional line break) or forced by \keyindex{zalaligne} or \keyindex{zalapage}. The heavy final double bar of a piece is provided by \keyindex{Endpiece} or \keyindex{Stoppiece}. If you just want to terminate the text with a simple bar, you say \keyindex{stoppiece} or \keyindex{endpiece}. If you want to terminate it without a bar, you code \keyindex{zstoppiece}. Once you have stopped the score by any of these means, you can restart it using \keyindex{contpiece}. If you want to restart indenting the next line (system) by the dimension \keyindex{parindent}, then you should rather use \keyindex{Contpiece}, which is recommended when changing the the number of instruments within a single piece. However, neither \verb|\contpiece| nor \verb|\Contpiece| can be used if you change the signature (i.e. using \keyindex{generalsignature}) between \verb|stoppiece| and \verb|\contpiece|), since the space used by signatures is not constant and it has to be taken in account, e.g. by some \keyindex{changecontext}. In that case, you have to restart your score using \keyindex{startpiece}, which in turn requires you to save \verb|\barno| to its furtner starting value \verb|\startbarno| if you do not want it reset at 1, and to manage the instrument names and/or the \verb|\parindent| if necessary. If you want the next vertical bar to be a double bar, you have to declare \keyindex{doublebar} or \keyindex{setdoublebar} before the \keyindex{bar} (or the \keyindex{stoppiece} or \keyindex{alaligne} or \keyindex{alapage}) to be marked with a double thin bar. In the same way you can declare \keyindex{setdoubleBAR} if you want to have a heavy double bar (the same as \verb|\Stoppiece|) and even \keyindex{setemptybar} to make the next \verb|\bar| invisible\footnote{These latter features are given for your information, but they should be used only in case of emergency.}. %\check \subsection{How to manage individual page layout} \begin{enumerate} \item You write your own output routine, which centers the contents in the middle of the page. Most important are then the values of \keyindex{stafftopmarg} and \keyindex{staffbotmarg}, because they decide of the amount of margin between successive systems. \item If you say \keyindex{raggedbottom}, the vertical glue is removed and the score is rather compacted at the top of page. \item You change the value of \keyindex{parskip} and say \keyindex{normalbottom} (which behaves like \LaTeX's \keyindex{flushbottom} and which is done by default working with \verb|plain.tex|). Then the vertical space between the staffs is changed to get the first staff on page on top and the last staff on page to bottom (depends on \keyindex{vsize}). It might be clever to insert a \keyindex{eject} before the \keyindex{bye}. \keyindex{musicparskip} set between two systems no extra distance, but the possibility to increase the distance up to \verb|5\Interligne|. \end{enumerate} \noindent Besides, following values of e.g.~paper size are changed (only if you \ital{do not} work with \LaTeX) to: \begin{quote}\begin{verbatim} \parindent= 0pt \hoffset= -15.4mm \voffset= -10mm \hsize= 190mm \vsize= 260mm \end{verbatim}\end{quote} \zkeyindex{parindent}\zkeyindex{hoffset}\zkeyindex{voffset} \zkeyindex{hsize}\zkeyindex{vsize} %\check \subsection{How to adjust the global line and page layout}\index{page and line layout (global)} Once you have made your whole score, you will probably find out that all systems (all ``lines'') have a correct layout with nice beams, nice slurs, and others. But it is likely that: \begin{itemize} \item The result takes too many or too few pages and you estimate a more or less compact score would be suitable. \item The results takes a convenient number of pages, but the last page exhibits a widow line or an ugly blank space at the end. \end{itemize} To solve this, you may revert to two strategies: \begin{enumerate} \item Explicitely force line and page breaking at the very places you like; this can be done using \verb|\alaligne|, \verb|\alapage|, \verb|\zalaligne| or \verb|\zalapage| commands. This can also be done using the \verb|\autolines| command imported from \musictex\ and provided in the {\tt musixcpt.tex} additional file. But this way of doing may result in unfortunately uneven distribution of the notes in the score, which is therefore not very smart. \item Adapt both the \keyindex{mulooseness} and the global value of \keyindex{elemskip}: increasing \verb|\mulooseness| (whose default is 0) increases the total number of systems, and if you are clever you may be able to fill an integer number of pages. Besides, increasing the stated \verb|\elemskip| (use \verb|\showthe\elemskip| to find its default value) also makes note spacing wider, and its advantage is that you can tune it by half a percent if needed. \begin{remark} \verb|\elemskip| can be retrieved in both the first and the third pass (second \TeX-ing pass), but any assignment of a value (a dimension value) to \verb|\elemskip| will be of no effect at third pass, since it is taken from the {\tt *.mx2} file yielded by {\tt musixflx}. On the contrary, assigning a value to \keyindex{noteskip} within \verb|\notes...\enotes| is efficient in both passes, and cause some weird errors if you mix up scalable and not scalable dimensions. \end{remark} \end{enumerate} %\check \section{Changing score attributes} As seen before, you can change the signature of the whole set of instruments by \keyindex{generalsignature}~$n$ where $n>0$ means a number of sharps, $n<0$ means a number of flats. Or, you may prefer to change the signature of only one or two instruments by the statement: \keyindex{setsign} $n$\verb|{|$s$\verb|}| %\check \noindent where $n$ is the number of the instrument considered, and $s$ its specific signature. Since you may change simultaneously (with respect to the score) but consecutively (with respect to your code) the signatures of several instruments, this change takes place only when you say \keyindex{changesignature} (within a bar) or \keyindex{changecontext} (after a single vertical rule) or \keyindex{Changecontext} (after a double vertical rule) or \keyindex{zchangecontext} (without a bar rule\footnote{Old composers uses the bar rules very rarely}). Normally, changing a signature from flats to sharps or sharps to flats or reducing the number of sharps/flats will produce the convenient set of naturals to emphasise what is suppressed. This standard feature can be temporarily inhibited by the command \keyindex{ignorenats} to be issued before the next {\Bslash changecontext} or {\Bslash changesignature}. In the same way, you may want to change the active clefs. This is done by \keyindex{setclef}\verb|{|$n$\verb|}{|$s_1s_2s_3s_4$\verb|}%| %\check \noindent where $r$ is the number of the instrument, $s_1$ specifies the clef of the lower staff, $s_2$ the clef of the second staff, etc. $s_1=6$ means the \ital{bass} clef (\ixem{clef de fa} in French), $s_1=0$ means the \ital{violin} clef (\ixem{clef de sol} in French), $s_1=1$ through $s_1=4$ mean the \ital{alto} clef (\ixem{clef d'ut} in French) set on first (lower) through fourth (next to upper line of the staff), $s_1=5$ or $s_1=6$ mean the bass clef on the third or fourth line respectively.\index{violin clef}\index{bass clef}\index{alto clef} As seen above in the case of signatures, several clefs may be changed at the same time; thus all the clef changes become operational only when the macro \keyindex{changeclefs} is coded. Normal usage consists in issuing this command before the bar, not after (this helps the music player when the change happens across a line break). %\check The \verb|\changeclefs| command normally takes some horizontal space to put one of more clef symbols, but it may happen that you have no notes immediately before on the staff whose clef is changed. In that case, you can use \keyindex{zchangeclefs} which performs the same posting, overwritten left on the last part of the score in that staff. Of course it is your responsibility to ensure that no notes will collide with the clef change symbols. %\check The \musictex\ problem if a clef change is coded while one or several beams are pending has been removed in \musixtex. As an enhanced example, we provide an excerpt of {\sc Brahms}'s Intermezzo op.~117,1 initially coded by Miguel {\sc Filgueiras}:\index{Brahms, J.@{\sc Brahms, J.}}\medskip \begin{music} \setstaffs1{2} \interstaff{11} \setclef1\bass % F- and G-clefs \generalsignature{-3}% 3 flats \parindent-4mm \advance\hsize8mm \startpiece \qspace\nspace \Notes\arpeggio E5\ibslurd0o\zq{EI}\qu N% \nextstaff\ibl0e{-2}\zq{eg}\qb0l\zq d\qb0k\enotes \setclef1\treble\zchangeclefs \nspace \Notes\tbu0\zq{ce}\qb0j\nextstaff\zq{sn}\cl l\enotes \notes\curve{-4}22\invertslur0\tslur0t\zq{be}\qu i\nextstaff\zq{sn}\ql l\enotes \setclef1\bass\changeclefs \notes\islurd0k\zq E\cu I\nextstaff \ibbu1h{-3}\zq{ae}\qb1h\tbu1\zq N\qb1g\enotes \bar \Notes\ibu0L{-2}\zq{EI}\qb0M\zqb0L% \nextstaff{\stemlength4\zql N}\ibu1f{-2}\qb1f\tbu1\zqb1e\hsk\enotes \setclef1\treble\changeclefs \nspace \Notes\tbu0\zq{Me}\qb0g\nextstaff\zq{ln}\cl s\en \notes\curve{-4}22\invertslur0\tslur0q\zq{be}\qu i\nextstaff\zq{ln}\ql s\en \setclef1\bass\changeclefs \notes\islurd0m\zq G\cu L\nextstaff \ibbu1j3\zq c\qb1j\tbu1\zq d\qb1k\enotes \bar \Notes\zq G\qu L% \nextstaff\ibl0e{-2}\zq{ei}\qb0l\zq d\zqb0k\enotes \setclef1\treble\changeclefs \nspace \Notes\tbu0\zq{ce}\qb0j\nextstaff\zq{sn}\cl l\enotes \notes\curve{-5}22\invertslur0\tslur0o\zq{be}\qu i\nextstaff\zq{sn}\ql l\enotes \setclef1\bass \changeclefs \notes\zq B\cu I\nextstaff\ibsluru0j% \ibbu1h{-3}\zq{ae}\qb1h\tbu1\zq N\qb1g\enotes \bar \Notes\zq{IL}\ql N\nextstaff\zql b\ibu0i{-2}\qb0i\enotes \scale{.5}% \Notes\nextstaff\qb0e\enotes \Notes\nextstaff\tinynotesize\isluru1f\grcu g\enotes \scale\normalvalue \Notes\zq B\cu I\nextstaff\zcl a\tslur1f\tbu0\zq d\qb0f\enotes \Notesp\zq E\qu I\nextstaff\tslur0e\zq N\zql e\ibu0g6\qbp0e\enotes \notes\sk\icresc\cu E\sk\zmidstaff\tcresc\nextstaff \ibsluru0i\nbbu0\qb0g\zq i\zcl g\qb0i\tbu0\qb0n\tubslur0k\enotes \endpiece \end{music} \noindent The first bar of this excerpt was coded as: \begin{verbatim} \begin{music} \instrumentnumber{1} \setstaffs1{2} \interstaff{11} \setclef1\bass % F- and G-clefs \generalsignature{-3}% 3 flats \parindent0pt \startpiece \qspace\nspace \Notes\arpeggio E5\ibslurd0o\zq{EI}\qu N% \nextstaff\ibl0e{-2}\zq{eg}\qb0l\zq d\qb0k\enotes \setclef1\treble\zchangeclefs \nspace \Notes\tbu0\zq{ce}\qb0j\nextstaff\zq{sn}\cl l\enotes \notes\invertslur0\tslur0t\zq{be}\qu i\nextstaff\zq{sn}\ql l\enotes \setclef1\bass \changeclefs \notes\islurd0k\zq E\cu I\nextstaff \ibbu1h{-3}\zq{ae}\qb1h\tbu1\zq N\qb1g\enotes \end{music}\end{verbatim}% \ital{Meter} changes are implemented in following way: \keyindex{setmeter} $n$% \verb|{{|$m1$\verb|}{|$m2$\verb|}{|$m3$\verb|}{|$m4$\verb|}}%| \noindent where $n$ is the number of the instrument, $m1$ specifies the meter of the lower staff, $m2$ the meter of the second staff, etc. (if necessary!). Since meter changes are meaningful only across bars, they are actually taken in account with \keyindex{changecontext} or \keyindex{Changecontext} or \keyindex{zchangecontext} or \keyindex{alaligne} or \keyindex{alapage}. \section{Repeats} To insert a \ital{repeat bar} you can use following sets of procedures, namely \keyindex{leftrepeat}, \keyindex{rightrepeat} and \keyindex{leftrightrepeat}, which are substitute the \keyindex{bar}. For example: \begin{music} \startextract \NOTes\ha g\enotes \leftrepeat \NOTes\ha h\enotes \leftrightrepeat \NOTes\ha i\enotes \rightrepeat \NOTEs\wh j\enotes \endextract \end{music} \noindent has been coded as: \begin{quote}\begin{verbatim} \NOTes\ha g\enotes \leftrepeat \NOTes\ha h\enotes \leftrightrepeat \NOTes\ha i\enotes \rightrepeat \NOTEs\wh j\enotes \end{verbatim}\end{quote} Special cases are forced line breaks: if you want to force a new line at a repeat, you should code respectively: \begin{quote} \noindent\keyindex{setrightrepeat}\keyindex{alaligne}\\ \keyindex{setrightrepeat}\keyindex{endpiece}\\ \keyindex{alaligne}\keyindex{leftrepeat}\\ \keyindex{contpiece}\keyindex{leftrepeat}\\ \keyindex{startpiece}\keyindex{leftrepeat} \end{quote} \noindent or the combination of two of these in the case of a left/right repeat. A second way of coding consists in saying \keyindex{setleftrepeat}, \keyindex{setrightrepeat} or \keyindex{setleftrightrepeat} before a bar (\keyindex{bar}), \keyindex{stoppiece} or \keyindex{changecontext}). In this case, the next single vertical bar will be replaced with the selected repeat bar. This meets the traditional music typesetting conventions in the only case of the \ital{right repeat} but, unfortunately, left and left/right repeats use to behave in a different manner when in the middle of a line and at a line break. \subsection{Specific first and second pass scoring} \RuleOn A frequent situation consists in a long part of score repeated two or several times, but its last few bars are different at first pass and at second pass. This can be specified by saying \keyindex{setvolta}\verb|{|\ital{text}\verb|}| before the \keyindex{bar} beginning the part specific to that first or second part\footnote{The word ``volta'' comes from Italian, it means ``time'' in the sense of ``first time'', ``second time'' or ``pass'' in that case.}. Then, only one bar has a horizontal rule above. No termination command is needed since termination is implied by the following \verb|\bar| or repeat symbol. For example: \medskip \begin{music} \parindent0pt \startpiece \addspace\afterruleskip \NOTEs\wh a\en\bar \NOTEs\wh b\en\setvolta{1.-3}\bar \NOTEs\wh c\en\setvolta4\rightrepeat \NOTEs\wh d\en\bar \NOTEs\wh e\en\Endpiece \end{music} which was coded as: \begin{quote}\begin{verbatim} \parindent0pt \startpiece \addspace\afterruleskip \NOTEs\wh a\en\bar \NOTEs\wh b\en\setvolta{1.-3}\bar \NOTEs\wh c\en\setvolta4\rightrepeat \NOTEs\wh d\en\bar \NOTEs\wh e\en\Endpiece \end{verbatim}\end{quote} If the music typesetter wants to include more than one bar in the first pass[es] section and he wants all these to have a continuous line above, then he can code \keyindex{Setvolta}\verb|{|\ital{text}\verb|}| before the bar he wants the ``volta'' to begin, and put \keyindex{setendvolta} or \keyindex{setendvoltabox} before the bar they should end. \keyindex{setendvoltabox} makes the upper line to be terminated with a descending hook, symmetrical to the opening small vertical bar. \medskip \begin{music} \parindent0pt \startpiece \addspace\afterruleskip \NOTEs\wh a\en\bar \NOTEs\wh b\en\setvoltabox{1.-3}\bar \NOTEs\wh c\en\setvolta4\setendvolta\rightrepeat \NOTEs\wh d\en\doublebar \NOTEs\wh e\en\bar \NOTEs\wh f\en\leftrepeat \NOTEs\wh g\en\bar \NOTEs\wh h\en\Setvolta1\bar \NOTEs\wh i\en\bar \NOTEs\wh j\en\Setvolta2\setendvoltabox\rightrepeat \NOTEs\wh i\en\bar \NOTEs\wh h\en\setendvoltabox \Endpiece \end{music} \noindent has been coded as: \begin{quote}\begin{verbatim} \startpiece \addspace\afterruleskip \NOTEs\wh a\en\bar \NOTEs\wh b\en\setvoltabox{1.-3}\bar \NOTEs\wh c\en\setvolta4\setendvolta\rightrepeat \NOTEs\wh d\en\doublebar \NOTEs\wh e\en\bar \NOTEs\wh f\en\leftrepeat \NOTEs\wh g\en\bar \NOTEs\wh h\en\Setvolta1\bar \NOTEs\wh i\en\bar \NOTEs\wh j\en\Setvolta2\setendvoltabox\rightrepeat \NOTEs\wh i\en\bar \NOTEs\wh h\en\setendvoltabox \Endpiece \end{verbatim}\end{quote} \zkeyindex{leftrepeat}\zkeyindex{rightrepeat} The ``volta'' symbols are normally set at \verb|4\internote| above the upper line of the staff and one bar(length?) wide. The final down hook is stated, either by \keyindex{setendvoltabox} at the end, or \keyindex{setvoltabox} at the beginning. \begin{important} You are no more allowed to open \verb|\Setvolta| or \verb|\setvoltabox| whan another of these multi-bar volta is pending. To re-open a \verb|\Setvolta| at the ens of another one, you must explicitly order the first one to be closed at the end of the bar where the second one is opened. Given examples had to be corrected in order to meet this new safety requirement. \end{important} For the sake of portability, \keyindex{endvolta} is identical ti \verb|\setendvolta|, and \keyindex{endvoltabox} is identical to \verb|\setendvoltabox|. Theses changes in the names ar intended to recall that these commant take effect only at the next bar, repeat or line break. \RuleOff The altitude of the ``volta'' above the upper staff can be changed, redefining \keyindex{raisevolta}, e.g.: \verb|\def\raisevolta{7\internote}| \noindent or define it to be any other valid dimension. \medskip\noindent{\sl REMARK: the dot after "volta" numbering can be removed, simply by saying:} \verb|\def|\keyindex{voltadot}\verb| {}| \noindent {\sl and reset by:} \verb|\def|\keyindex{voltadot}\verb| {.}| \subsection{Large scope repeats and orientation marks} Large scope repeats have also been provided with special symbols, namely \keyindex{coda}~$p$, \keyindex{Coda}~$p$, \keyindex{segno}~$p$, where $p$ specifies the pitch. A bigger symbol is \keyindex{Segno} with no argument. For example, the following figure \begin{music} \startextract \NOtes\segno n\enotes \bar \NOtes\coda n\enotes \NOtes\Segno\enotes \bar \NOtes\Coda n\enotes \endextract \end{music} \noindent has been coded: \begin{quote}\begin{verbatim} \NOtes\segno m\enotes\bar \NOtes\coda m\enotes \NOtes\Segno\enotes\bar \NOtes\Coda m\enotes \end{verbatim}\end{quote} Orientation marks are set more often above larger orchestral pieces for easy come together of all instruments for exercise reasons. Often used are circled or boxed uppercase characters or digits. This can be done with \keyindex{boxit}\verb|{|\ital{text}\verb|}|~~~or\\ \indent\keyindex{circleit}\verb|{|\ital{text}\verb|}| \noindent The distance between the box and the including text is influenced by \keyindex{boxitsep}\verb|=|\ital{any \TeX\ dimension} \noindent which is setup by default to \verb|3pt|. The usage is recommended with \keyindex{Uptext}, \keyindex{zcharnote}, \keyindex{zchar} or \keyindex{ccharnote}. \subsection{Repeating the last bar} This can be done using the symbol \keyindex{duevolte} (often used with \verb|\centerbar|, see example in \ref{barcentered}, p. \pageref{barcentered}), e.g.: \begin{music} \generalmeter\meterC \setclef1\bass\setstaffs1{2} \startextract \NOtes\sk\sk\pause|\qa{cegj}\en \bar\NOtes\qa{cdef}|\sk\sk\duevolte\en \endextract \end{music} whose coding is: \begin{quote}\begin{verbatim} \generalmeter\meterC \setclef1\bass\setstaffs1{2} \startextract \NOtes\sk\sk\pause|\qa{cegj}\en \bar\NOtes\qa{cdef}|\sk\sk\duevolte\en \endextract \end{verbatim}\end{quote} %\check \section{Miscellaneous} \subsection{Putting anything anywhere} \noindent Special macros are provided to help the composer to set any \TeX\ text on the staffs. The macro \keyindex{zcharnote}~$p$\verb|{|text\verb|}| \noindent sets the given text with its base line at pitch $p$ of the current staff (this means it must be coded inside \verb|\notes...\enotes|). Whatever the length of the text, no spacing occurs. If you want the possible spilling text to expand on the left rather than on the right, then you can use \keyindex{lcharnote}. If you want the possible spilling text centered to current position, then you can use \keyindex{ccharnote} which causes no space. The macro \keyindex{zcharnote} is fit for coding special notations like accents above or below the notes. Also available are \keyindex{zchar}, \keyindex{lchar} and \keyindex{cchar}, which allows only numbers for pitch, but enables the use of floats too. To place some text at the mid-position between the two staffs of a keyboard instrument, you may code: \begin{quote} \keyindex{zmidstaff}\verb|{|{\it text}\verb|}%| (to right)\\ \keyindex{lmidstaff}\verb|{|{\it text}\verb|}%| (to left)\\ \keyindex{cmidstaff}\verb|{|{\it text}\verb|}%| (centred) \end{quote} \noindent being however careful, a) to put it inside \verb|\notes...\enotes|, b) to code it in the text of the lower staff. A text to be put above the current staff is introduced by \keyindex{uptext}\verb|{...}|. This may however cause some collision with bar numbering or notes above the staff; it is then wise to use \keyindex{Uptext}\verb|{...}| which puts the text two note line distances higher (recommended to post the tempo). \subsection{Fonts} The text fonts loaded by \musixtex\ come in six different type sizes and three styles. The type sizes are 8\,pt, 10\,pt, 12\,pt, 14\,pt, 17\,pt and 25\,pt, while the three styles are roman, bold and italic. The three smaller type sizes are available in all three styles, while the larger three sizes, which are intended for titles, are available only in bold style. The size selection macros are respectively \keyindex{smalltype}, \keyindex{normtype}, \keyindex{medtype}, \keyindex{bigtype}, \keyindex{Bigtype} , \keyindex{BIgtype} and \keyindex{BIGtype}. Following the size selection, the style may be selected or changed using \keyindex{rm} (roman), \keyindex{bf} (bold) or \keyindex{it} (italic). If no style selection is made, roman style will result for the sizes smaller than \verb|\medtype|. For the larger sizes, style selection is not required since only bold style is provided. Thus, selection of eight point italic is done using \verb|\smalltype\it|, while twelve point roman is selected using \verb|\medtype\rm| or simply \verb|\medtype|. To change between styles while maintaining the same size, code \verb|\rm|, \verb|\it| or \verb|\bf| as in Plain \TeX. This information is summarized in the following table. \begin{center} \begin{tabular}{clc} \hline Size, pt & Size selection & Style selection \\ \hline 8 & \verb|\smalltype| & \verb|\rm, \bf, \it| \\ 10 & \verb|\normtype| & \verb|\rm, \bf, \it| \\ 12 & \verb|\medtype| & \verb|\rm, \bf, \it| \\ 14 & \verb|\bigtype| & \verb| (\bf) | \\ 17 & \verb|\Bigtype| & \verb| (\bf) | \\ 20 & \verb|\BIgtype| & \verb| (\bf) | \\ 25 & \verb|\BIGtype| & \verb| (\bf) | \\ \hline \end{tabular} \end{center} Two other text fonts are provided for dynamic markings. These are \keyindex{ppffsixteen}, \keyindex{ppfftwenty} and \keyindex{ppfftwentyfour}, suitable for dynamic markings with staff sizes of 16\,pt, 20\,pt and 24\,pt respectively. The appropriate font for the current staff size may be selected by coding \keyindex{ppff}. Naturally other fonts may be loaded by the user if required. When \musixtex\ is started, the default text font is ten point roman, equivalent to \verb|\normtype\rm|. \subsubsection{Examples} \begin{center} \begin{tabular}{ll} \hline Size and style & Example \\ \hline \verb|\smalltype| & {\smalltype small roman} \\ \verb|\smalltype\bf| & {\smalltype\bf small bold} \\ \verb|\smalltype\it| & {\smalltype\it small italic} \\ \verb|\normtype| & {\normtype normal roman} \\ \verb|\normtype\bf| & {\normtype\bf normal bold} \\ \verb|\normtype\it| & {\normtype\it normal italic}\\ \verb|\medtype| & {\medtype medium roman} \\ \verb|\medtype\bf| & {\medtype\bf medium bold} \\ \verb|\medtype\it| & {\medtype\it medium italic}\\ \verb|\bigtype| & {\bigtype big bold} \\ \verb|\Bigtype| & {\Bigtype Big bold} \\ \verb|\BIgtype| & {\BIgtype BIg bold} \\ \verb|\BIGtype| & {\BIGtype BIG bold} \\ \verb|\ppffsixteen| & {\ppffsixteen pp ff diminuendo}\\ \verb|\ppfftwenty| & {\ppfftwenty pp ff crescendo}\\ \verb|\ppfftwentyfour| & {\ppfftwentyfour pp ff crescendo}\\ \hline \end{tabular} \end{center} \subsection{Metronomic indications} Metronomic indication deserves a special macro. The mention: \medskip \centerline{\def\nbinstruments{0}\metron{\hup}{60}}\smallskip\noindent is coded by \keyindex{metron}\verb|{\hup}{60}| (normally embedded in \keyindex{Uptext} which is in turn embedded within \verb|\notes...\enotes|). \subsection{Accents} \begin{itemize} \item \keyindex{upz}~$p$ (upper \ital{pizzicato}) to put a dot above a note head at pitch $p$, \item \keyindex{lpz}~$p$ (lower \ital{pizzicato}) to put a dot below a note head at pitch $p$, \item \keyindex{usf}~$p$ (upper \itxem{sforzando}) to put a $>$ accent above a note head at pitch $p$, \item \keyindex{lsf}~$p$ (lower \itxem{sforzando}) to put a $>$ accent below a note head at pitch $p$, \item \keyindex{ust}~$p$ (upper \itxem{staccato} or \itxem{portato}) to put a hyphen above a note head at pitch $p$, \item \keyindex{lst}~$p$ (lower \ital{staccato} or \ital{portato}) to put a hyphen below a note head at pitch $p$, \item \keyindex{uppz}~$p$ (upper strong \ital{pizzicato}) to put an apostrophe above a note head at pitch $p$, \item \keyindex{lppz}~$p$ (lower strong \ital{pizzicato}) to put a reversed apostrophe below a note head at pitch $p$. \item \keyindex{usfz}~$p$ (upper \ital{sforzato}) to put a `roof' above a note head at pitch $p$, \item \keyindex{lsfz}~$p$ (lower \ital{sforzato}) to put a reversed `roof' below a note head at pitch $p$. \item \keyindex{upzst}~$p$ (upper \ital{portato/staccato}) to put a combined portato/staccato sign above a note head at pitch $p$, \item \keyindex{lpzst}~$p$ (lower \ital{portato/staccato}) to put a combined portato/staccato sign below a note head at pitch $p$. \item \keyindex{flageolett}~$p$ to put a thin circle above a note head at pitch $p$. \item \keyindex{upbow} to indicate a bowing for strings in upper direction. \item \keyindex{downbow} opposite to {\Bslash upbow}. \end{itemize} Because whole notes (breve, arbitrary, ...) have a different note head width the accents appear not centered above them. Therefore you can use \keyindex{wholeshift}\verb|{|\ital{text}\verb|}| which centers accents and others which are centered above a quarter note head to appear centered above a whole note. This is used for e.g.~\verb|\Fermataup|. Also available are the variants\footnote{Thanks to Klaus {\sc Bechert}'s corrections.} of the most used accents which will be automatically positioned above or below a beam. Therefore the known accents are preceeded with the letter `b' and, instead of the pitch, the beam reference number is appended as an argument. Thus \medskip \begin{music} \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 \endextract \end{music} \noindent was coded as: \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 \endextract \end{verbatim} \zkeyindex{busfz} \zkeyindex{bupz} \zkeyindex{bust} \zkeyindex{buppz} \zkeyindex{busf} \zkeyindex{butext} \zkeyindex{blsfz} \zkeyindex{blpz} \zkeyindex{blst} \zkeyindex{blppz} \zkeyindex{blsf} \zkeyindex{bltext} \subsection{*Indication of \ital{x}-tuplets} Triplets and other $x$-tuplets --- in practice the italic numbers \ital{3}, \ital{4}, \ital{5}, etc. can be set at the right horizontal/vertical position invoking the \keyindex{triolet} or \keyindex{xtuplet} macros at the leftmost position of the group, i.e. before the first note is coded. {\Bslash triolet} has only one argument, the pitch of the bottom of the figure 3, {\Bslash xtuplet} has two arguments: the figure and its pitch. If the figure has to be put above an upper beam or below a lower beam, using the macros \keyindex{butext} (above) and \keyindex{bltext} (below) is advisable to post the figure above or below the given beam. {\Bslash butext} and {\Bslash bltext} have one argument, namely the beam number (namely the same as the first argument of commands such as {\Bslash ibu} or {\Bslash Ibu}). If the group of notes is not a triolet, the actual figure has to be changed, redefining the macro \keyindex{txt} which is set up by default to: \verb|\def\txt{\eightit 3}%| \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 \Notesp\uptrio p16\ql m\en\notesp\cl o\en \endpiece \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\uptrio p16\ql m\en\notesp\cl o\en \end{verbatim}\end{quote} \end{music} \zkeyindex{xtuplet}\zkeyindex{triolet} %\xtuplet{text}{pitch} % centers text(3 on second note, 4 between second and thirdnote, % 5 on third note) on notes (-> \triolet{pitch}) \subsection{*Usual ornaments} \subsubsection{Arpeggios} \ital{Arpeggios} (i.e.~~~\arpeggio{-2}3) can be coded with the macro \keyindex{arpeggio} $pm$ \noindent where $p$ is the pitch of the base of the arpeggio symbol and $m$ is its multiplicity (one period is equal to one space between staff lines, i.e. 5 points). This macro causes no spacing. If should be issued before the concerned chords. Its variant \keyindex{larpeggio} sets the arpeggio symbol nearly one note head width on the left, in order to avoid collision with accidentals in front of the chords. \subsubsection{Trills} Trills\index{trills} can be coded in several ways. \keyindex{trille}~$pl$ (where $p$ is the pitch and $l$ is a number of current \ital{noteskip}) yields \hbox to 1cm{\noteskip1cm\trille11\hss} while \keyindex{Trille}~$pl$ yields \hbox to 2cm{\noteskip1cm\Trille12\hss}. For longer trills expanding over bars and line breaks, a better way consists in specifying the beginning with \keyindex{Itrille}~$np$ where $n$ is the trill reference number ($0\le n<6=$\keyindex{maxtrills}) and terminate it with the command \keyindex{Ttrille}~$n$. If one wants the {\it tr} mention at the beginning, then one should use \keyindex{ITrille}~$np$. The ancient commands \keyindex{itrille}, \keyindex{ttrille}~$p$ and \keyindex{tTrille}~$p$ still work but beware that their syntax is different, that the opening and the closing must be in the same bar and that the use the same registers as \verb|\Itrille 0|. \medskip \begin{remark} \verb|trille| and \verb|Trille| also exist in \musictex. Unfortunately, the same macro names do not have the same syntax and the same semantic in both packages and {\ttxem{musixcpt.tex}} forces the behaviour and the syntax of \musictex. A solution to this problem consists in using \keyindex{trilleC} and \keyindex{TrilleC} to have the \musictex{} behaviour, and \keyindex{trilleX} and \keyindex{TrilleX} to have the \musixtex{} behaviour, even when {\tt musixcpt} is invoked. \end{remark} For example: \medskip \begin{music} \instrumentnumber{1} \setstaffs12 \setclef1{6000} % \startextract \notes\qu{CDEFGH}|\hu k\sk\ITrille 1p\itenu1l\wh l\enotes \bar \notes\Itrille 2A\itenu2E\whp E|\tten1\hlp l\sk\Ttrille 1\qu {mno}\enotes \bar \Notes\tten2\itenu2E\whp E|\ql{nmlkji}\enotes \bar \Notes\tten2\whp E\sk\sk\sk\sk\Ttrille2|\qu{hgfedc}\enotes \endextract \end{music} whose coding is \begin{quote}\begin{verbatim} \begin{music} \instrumentnumber{1} \setstaffs12 \setclef1{6000} % \startextract \notes\qu{CDEFGH}|\hu k\sk\ITrille 1p\itenu1l\wh l\enotes \bar \notes\Itrille 2A\itenu1e\whp E|\tten1\hlp l\sk\Ttrille 1\qu {mno}\enotes \bar \Notes\tten1\itenu1E\whp E|\ql{nmlkji}\Toctfin1\enotes \bar \Notes\tten1\whp E\sk\sk\sk\sk\Ttrille2|\qu{hgfedc}\enotes \endextract \end{verbatim}\end{quote} \subsubsection{Piano pedal commands} \keyindex{PED} inserts the piano pedal command below the staff; pedal release is specified by \keyindex{DEP}; also available are shorter variants of the pedal signs which are invoked with \keyindex{sPED} and \keyindex{sDEP}; thus the following example \begin{music} \setclef1\bass \setstaffs1{2} \startextract \NOtes\PED\wh J|\qu h\enotes \NOtes|\qu g\enotes \NOtes|\hu k\enotes \Notes\DEP\enotes \bar \NOtes\sPED\wh J|\qu h\enotes \NOtes|\qu g\enotes \NOtes|\hu k\enotes \Notes\sDEP\enotes \endextract \end{music} \noindent was coded as: \begin{quote}\begin{verbatim} \NOtes\PED\wh J|\qu h\enotes \NOtes|\qu g\enotes \NOtes|\hu k\enotes \Notes\DEP\enotes \bar \NOtes\sPED\wh J|\qu h\enotes \NOtes|\qu g\enotes \NOtes|\hu k\enotes \Notes\sDEP\enotes \end{verbatim}\end{quote} The vertical position of \keyindex{PED}, \keyindex{sPED}, \keyindex{DEP} and \keyindex{sDEP} can be globally changed by redefining its elevation, which is setup by default to \verb|\def|\keyindex{raiseped}\verb|{-5}%| If you only want to change a few of them, you can use the more fundamental macros \keyindex{Ped}, \keyindex{sPed}, \keyindex{Dep} and \keyindex{sDep} in combination with \keyindex{zchar} or \keyindex{zcharnote}. Since the \hbox to 1cm{ \Ped\hss} symbol is rather wide, it might collide with bass notes in an ugly way. Then a solution consists in shifting if to the left, by coding \verb|\loff{\PED}|. \subsubsection{Other ornaments}\index{ornaments} \begin{itemize} \item \keyindex{mordent}~$p$ for \hbox to .75em{\mordent 0\hss}, \item \keyindex{Mordent}~$p$ for \hbox to 1.5em{\kern 0.6em\Mordent 0\hss}, \item \keyindex{shake}~$p$ for \hbox to .75em{\shake 0\hss}, \item \keyindex{Shake}~$p$ for \hbox to 1.5em{\kern 0.6em\Shake 0\hss}, \item \keyindex{Shakel}~$p$ for \hbox to 1.5em{\kern 0.6em\Shakel 0\hss}, \item \keyindex{Shakesw}~$p$ for \hbox to 1.5em{\kern 0.6em\Shakesw 0\hss}, \item \keyindex{Shakene}~$p$ for \hbox to 1.5em{\kern 0.6em\Shakene 0\hss}, \item \keyindex{Shakenw}~$p$ for \hbox to 1.5em{\kern 0.6em\Shakenw 0\hss}, \item \keyindex{turn}~$p$ for \hbox to 1.5em{\kern 0.6em\turn 0\hss}, \item \keyindex{backturn}~$p$ for \hbox to 1.5em{\kern 0.6em\backturn 0\hss}, \item \keyindex{fermataup}~$p$ puts a \itxem{fermata} at pitch $p$. No spacing occurs. \item \keyindex{fermatadown}~$p$ puts a reverse \ital{fermata} at the same place. \item \keyindex{Fermataup}~$p$ puts a \itxem{fermata} at pitch $p$ centered above a whole note. No spacing occurs. \item \keyindex{Fermatadown}~$p$ puts a reverse \ital{fermata} at the same place. \item A big \itxem{breathing} comma can be put above the staff --- to indicate where the singer is welcome to breath, or to indicate a short rest --- using \keyindex{zbreath} (no spacing) or \keyindex{cbreath} (centred in a \verb|\noteskip| space). The \musictex\ \keyindex{breath} is no more available since it involved a ``hard'' spacing of the width of that character, which resulted in troubles with \musixtex. \item The \keyindex{caesura} command can also be used to insert a small slash, such as \begin{music} \startextract \NOTes\zhu j\hl{^e}\caesura\en \Notes\zcu j\cl e\en \endextract \end{music} \end{itemize} \subsection{Dynamic signs} Various dynamic signs can be posted with \keyindex{crescendo}\verb|{|$l$\verb|}| or \keyindex{decrescendo}\verb|{|$l$\verb|}|, to be used as arguments to \verb|\zcharnote|, \verb|\zchar|, \verb|\uptext|, \verb|\zmidstaff|, etc. Note: The biggest sign is $\simeq$ 68 mm long. Alternately they can be produced using the pair of \keyindex{icresc} and \keyindex{tcresc} or \keyindex{tdecresc}. Saying one time \verb|\icresc| you can force several \verb|\tcresc| or \verb|\tdecresc| with the same starting abscissa. Tha altitude of the [de]crescendo symbol is specified, not by the \verb|\icresc| macro which only defines the stating abscissa, but by the \verb|\tcresc| or \verb|\tdecresc| which is normally lifted up or down by means of a \verb|\zmidstaff| or a \verb|\zcharnote| command whose first argument has to be adjusted according to your visual needs. \begin{music} \parindent0pt \generalmeter{\meterfrac{12}8} \setstaffs1{2} \startextract \Notes\cmidstaff\ppp|\ca c\en \Notes\icresc|\ca{defgh'abcde}\en \Notes\zmidstaff{\loff\tcresc}\cmidstaff\fff|\ca{'f}\en \endextract \end{music} \noindent which was coded as: \begin{verbatim} \Notes\cmidstaff\ppp|\ca c\en \Notes\icresc|\ca{defgh'abcde}\en \Notes\zmidstaff{\loff\tcresc}\cmidstaff\fff|\ca{'f}\en \end{verbatim} \begin{music} \parindent0pt \generalmeter{\meterfrac{12}8} \setstaffs1{2} \startextract \Notes\cmidstaff\ppp|\ca c\en \Notes\icresc|\ca{defgh'abcde}\en \Notes\zcharnote N{\tcresc}\cmidstaff\fff|\zcharnote q{\tcresc}\ca{'f}\en \endextract \end{music} \noindent which was coded as: \begin{verbatim} \Notes\cmidstaff\ppp|\ca c\en \Notes\icresc|\ca{defgh'abcde}\en \Notes\zcharnote N{\tcresc}\cmidstaff\fff|\zcharnote q{\tcresc}\ca{'f}\en \end{verbatim} Intensity conventional signs are: \keyindex{ppp}, \keyindex{pppp}, \keyindex{ppp}, \keyindex{pp}, \keyindex{p}, \keyindex{mp}, \keyindex{mf}, \keyindex{f}, \keyindex{fp}, \keyindex{sF}, \keyindex{ff}, \keyindex{fff}, \keyindex{ffff}, resulting in \pppp, \ppp, \pp, \p, \mezzopiano, \mf, \f, \fp, \sF, \ff, \fff\ and \ffff. \subsection{Length of note stems} %\begin{changebar} Normally, the length of note stems is the distance of one octave, i.e. \verb|7\internote|. This is equivalent to 4.66 \keyindex{interbeam}. The length of the stems may be changed using the macro \keyindex{stemlength}, e.g.: \verb|\stemlength{5.2}| \noindent which will set the stemlength to 5.2 \verb|\interbeam|. The default is \keyindex{stemlength}\verb|{4.66}|. Choral music with four voices is often typeset into two staffs. Thus, each staff holds two voices, one being typeset with stems up, the other with stems down. If the command \keyindex{stemcut} has been previously issued, stems that are outside the staff are cut depending on the pitch of the notes. If this is not wanted, this feature may be suppressed with the command \keyindex{nostemcut}. The default behaviour is \keyindex{stemcut} in plain \musixtex, and \keyindex{nostemcut} when {\ttxem{musixcpt.tex}} is invoked. Normally, down stems never end above the middle line of the staff and up stems never below that line. This extension of the stems may be inhibited for the next generated stem using the command \keyindex{stdstemfalse}. There is no \keyindex{stdstemtrue} since \keyindex{stdstemfalse} is reset after generating each new stem. %\end{changebar} \subsection{*Brackets and parentheses} Several brackets and parentheses have been provided for musical typesetting needs. These are: \begin{itemize} \item \keyindex{lpar}\verb|{|$p$\verb|}| and \keyindex{rpar}\verb|{|$p$\verb|}| which yield small parenthesis to enclose notes. These are used for \ital{cautionary} accidentals but more comprehensive macros fulfill that specific purpose (see \ref{cautionary}) \item \keyindex{bracket}\verb|{|$p$\verb|}{|$n$\verb|}| to post square brackets of width $n$-internotes at left of a chord. Usually these brackets are used on keyboard instruments to specify, either two neighbouring notes played with a single finger, or some chord notes to be played with the alternate hand. \item \keyindex{doublethumb}\verb|{|$p$\verb|}|, to indicate a bracket of height 2\verb|\internote|. \item \keyindex{ovbkt}\verb|{|$p$\verb|}{|$n$\verb|}{|$s$\verb|}| and \keyindex{unbkt}\verb|{|$p$\verb|}{|$n$\verb|}{|$s$\verb|}| draw a bracket over the music starting at the current position at pitch $p$, width $n\times$\verb|noteskip| and slope $s$ (1 $\sim$ 1.125[degree]). causing no space. \item \keyindex{uptrio}\verb|{|$p$\verb|}{|$n$\verb|}{|$s$\verb|}| and \keyindex{downtrio}\verb|{|$p$\verb|}{|$n$\verb|}{|$s$\verb|}|, which are like \verb|\ovbkt| but with free definable \keyindex{txt} centers in the middle. \item \keyindex{varline} $h$ $\ell$ $s$ builds an oblique line of height $h$ (a dimension), of length $\ell$ and of slope $s$. Used to build oblique brackets. This feature is particularly useful for people who want to typeset \itxem{baroque} music using the ancient \itxem{ornament codings} rather than the modern equivalents. As a compromise, some macros kindly provided by Ian {\sc Collier} in Great Britain have slightly been updated and provided. \end{itemize} For example: \begin{music} \setstaffs1{2} \setclef1\bass \startextract \NOtes\bracket C8\zq C\qu J\en \NOtes|\doublethumb g\rq h\qu g\en \NOtes\lpar c\rpar c\qu c\en \NOtes\unbkt C15\qu {FH}|\ovbkt n14\ql{kl}\en \NOtes\downtrio C16\qu {FH}|\uptrio o14\ql{lm}\en \endextract \end{music} \noindent \begin{quote}\begin{verbatim} \begin{music} \setstaffs1{2} \setclef1{\bass} \startextract \NOtes\bracket C8\zq C\qu J\en \NOtes|\doublethumb g\rq h\qu g\en \NOtes\lpar c\rpar c\qu c\en \NOtes\unbkt C15\qu {FH}|\ovbkt n14\ql{kl}\en \NOtes\downtrio C16\qu {FH}|\uptrio o14\ql{lm}\en \endextract \end{music} \end{verbatim}\end{quote} \begin{remark} if you used \verb|\input musicext| before, pay attention to the commands \keyindex{ovbkt} and \keyindex{unbkt}, their parameter meaning has changed from \musictex{} to \musixtex. \end{remark} \subsection{New line synchronization of coding} The procedure named \keyindex{everystaff} is executed each time a new system is typed. It is normally void, but it can be defined (simply by \verb|\def|% \keyindex{everystaff}\verb|{...}|) to tell \musixtex\ to post anything reasonable at the beginning of each system. It was used in the example {NWIDOR} to post octaviation dashed lines at the end of the piece. Caution should be exercised to call \verb|\everystaff| before \verb|\startpiece| if its effect is needed for the first system of the score. The procedure named \keyindex{atnextline}, normally void, is executed at the next computed or forced line break (using \keyindex{alaligne} or \keyindex{alapage}). More precisely, it is executed after the break and before the next system is typed. Thus it is fit for posting new definitions of layout parameters, when no system is pending\footnote{Its logic is similar to plain \TeX's \keyindex{vadjust} command.}. \index{tenor violin clef}In some scores, tenor parts are not coded using the \ital{bass} clef, but using rather the \ital{violin clef} subscripted by a {\tt8}. This is not directly supported by the \keyindex{setclef} command, but it can be handled using \keyindex{everystaff} and \keyindex{zcharnote}. As an example the following score \begin{music} \instrumentnumber{4} \setclef1\bass \def\everystaff{% \znotes&\zchar{-6}{\eightrm\kern-2\Interligne8}% &\zchar{-6}{\eightrm\kern-2\Interligne8}\en}% \startextract \NOTes\ha{HIJK}&\ha{efgh}&\ha{hijk}&\ha{hmlk}\en \endextract \end{music} \noindent was coded as: \begin{quote}\begin{verbatim} \instrumentnumber{4} \setclef1\bass \def\everystaff{% \znotes&\zchar{-6}{\eightrm \kern -2\Interligne 8}% &\zchar{-6}{\eightrm \kern -2\Interligne 8}\en}% \startextract \NOTes\ha{HIJK}&\ha{efgh}&\ha{hijk}&\ha{hmlk}\en \endextract \end{verbatim}\end{quote} \noindent{\sl{\bfseries Caution:} the \verb|\everystaff| must be called before \verb|startpiece| in order to have that subscript at the first staff.} \section{Small and tiny notes} Before entering details, let us point out that we are presently concerned with typing notes of smaller size than the normal one, without attempting to change the interval between the five lines building a single staff. Changing staff line interval will be treated in a further section. \subsection{Cadenzas and explicit ornaments} Ornaments and \itxem{cadenzas} usually need to be written using smaller notes\footnote{This is independent of the staff size.}. This can be done everywhere by stating \keyindex{smallnotesize} or \keyindex{tinynotesize}. Normal note size is restored by \keyindex{normalnotesize}.\index{ornaments} These macros only have a local scope. Thus, if these macros are invoked outside the \verb|\notes...\enotes| pair, the change is valid for the rest of the piece unless explicitely modified but, if they are invoked inside, their effect is local to the current staff of the current \verb|\notes...\enotes| pair. As an example, the following excerpt (beginning of the Aria of the ``Creation'' by Joseph {\sc Haydn})\index{Haydn, J.@{\sc Haydn, J.}} \begin{music} \instrumentnumber{2} \generalmeter{\meterfrac44} \def\qbl#1#2#3{\ibl{#1}{#2}{#3}\qb{#1}{#2}} \setstaffs2{2} \setclef1\bass \setclef2\bass \startbarno0 \startextract \NOtes\qp&\zmidstaff{\bf II}\qp|\qu g\en % mesure 1 \bar \Notes\itieu2J\wh J&\zw N\ibl0c0\qb0e|\qu j\en \notes&\qbl0c0|\multnoteskip\tinyvalue\tinynotesize \Ibbu1ki2\qb1{kj}\tqh1i\hqsk\en \Notes&\qb0e\tbl0\qb0c|\qu j\en \Notes&\ibl0c0\qb0{ece}\tbl0\qb0c|\ql l\sk\ql j\en % mesure 2 \bar \Notes\ttie2\wh J&\ql J\sk\ql L|\zqupp g\qbl1e0% \zq c\qb1e\zq c\qb1e\zq c\tbl1\zqb1e\en \notes&|\sk\ccu h\en \Notes&\ql N\sk\ibl0L{-4}\qbp0L|\ibl1e0\zq c\zqb1e\cu g% \zq c\zqb1e\raise\Interligne\ds\zqu g\qb1g\en \notes&\sk\tbbl0\tbl0\qb0J|\tbl1\zq c\qb1e\en \endextract \end{music} \noindent can be coded as: \begin{quote}\begin{verbatim} \instrumentnumber{2} \generalmeter{\meterfrac44} \setstaffs2{2} \setclef2{\bass} \setclef1{\bass} \startbarno=0 \startextract \NOtes\qp&\zmidstaff{\bf II}\qp|\qu g\en % mesure 1 \bar \Notes\itieu2J\wh J&\zw N\ibl0c0\qb0e|\qu j\en \notes&\ibl0c0\qb0c|\multnoteskip\tinyvalue\tinynotesize \Ibbu1ki2\qb1{kj}\tqh1i\en \Notes&\qb0e\tbl0\qb0c|\qu j\en \Notes&\ibl0c0\qb0{ece}\tbl0\qb0c|\ql l\sk\ql j\en % mesure 2 \bar\Notes\ttie2\wh J&\ql J\sk\ql L|\zqupp g\qbl1e0% \zq c\qb1e\zq c\qb1e\zq c\tbl1\zqb1e\en \notes&|\sk\ccu h\en \Notes&\ql N\sk\ibl0L{-4}\qbp0L|\ibl1e0\zq c\zqb1e\cu g% \zq c\zqb1e\raise\Interligne\ds\zqu g\qb1g\en \notes&\sk\tbbl0\tbl0\qb0J|\tbl1\zq c\qb1e\en \endextract \end{verbatim}\end{quote} \subsection{Grace notes} Grace notes are a special case of small and tiny notes: the difference is that they are always coded as eighth notes with an oblique bar over the flag. To perform this, special variants of \keyindex{cu} and \keyindex{cl} have been provided, namely \keyindex{grcu} and \keyindex{grcl}, with the only difference that the flag has been slashed. Using this together with the note reduction macro, grace notes (optionally chord grace notes) can be easily coded: \begin{music} \startextract \NOTes\hu h\enotes \notes\multnoteskip\smallvalue\smallnotesize\grcu j\enotes \NOTes\hu i\enotes \bar \notes\multnoteskip\tinyvalue\tinynotesize\zq h\grcl j\enotes \NOTEs\wh i\enotes \endextract \end{music} The previous example was coded as: \begin{quote}\begin{verbatim} \startextract \NOTes\hu h\enotes \notes\multnoteskip\smallvalue\smallnotesize\grcu j\enotes \NOTes\hu i\enotes \bar \notes\multnoteskip\tinyvalue\tinynotesize\zq h\grcl j\enotes \NOTEs\wh i\enotes \endextract \end{verbatim}\end{quote} \subsection{Other note shapes}\label{othernotes} The classical note heads given above --- namely \raise.5ex\hbox{\musixchar7}~~, \raise.5ex \hbox{\musixchar8}~~ and \raise.5ex\hbox{\musixchar9}~~~ --- can be replaced with less classical note heads, for example to code special \itxem{violin harmonic notes} or \itxem{percussion music}. See an example in \ref{abnormalscores}. At present time, alternate available note heads can be found in the extension library, see \ref{diam}, \ref{perc}, \ref{gregnotes} and \ref{litu}. \section{Staff size} \index{staff size} \subsection{Moving from 20pt to 16pt, 24pt or 29pt staff sizes and conversely} You also want to write some parts of your score in 20pt staff size and others in 16pt or 24pt or 28.8pt staff size, namely for distinct parts of pieces. Changing the \ixem{general staff size} is done by saying: \keyindex{smallmusicsize}, or \keyindex{normalmusicsize}, or \keyindex{largemusicsize}, or \keyindex{Largemusicsize}. \noindent respectively. \subsection{Changing staff size for certain instruments}\label{staffspacing} Regardless of the general choice of \verb|\smallmusicsize| or \verb|\normalmusicsize|, it is now possible to assign certain instruments -- not separate staffs belonging to a same instrument -- to have narrower or larger \itxem{staff size}, i.e. narrower or larger \itxem{staff spacing}. This is done using \keyindex{setsize} $n$\verb|{|\ital{size}\verb|}| \noindent where $n$ is the number of the instrument considered. Five different \ital{sizes} are available as standards: \keyindex{normalvalue}, which is the default, \keyindex{smallvalue} (0.80 times narrower), \keyindex{tinyvalue} (0.64 times narrower), \keyindex{largevalue} (1.2 times larger) and \keyindex{Largevalue} (1.44 times larger). But, if you know perfectly what you are doing, you can also say: \verb|\setsize 3{2.0}| \noindent which will provide the third instrument with staffs of spacing twice the standard value. In that case, \musixtex\ will use the nearest symbol size available, but this is likely to be rather ugly. An alternate and equivalent coding --- a remnant from \musictex\ --- could be: \verb|\def\staffspacingiii{2.0}|\zkeyindex{staffspacing} \verb|\setsize| must be invoked before the starting command \verb|\startpiece|, since this statement does not only change the vertical spacing between staff lines, but it also changes the size of the key, accidental and note symbols to fit the modified staff line spacing. However, it must be emphasized that non-standard staff spacings use the nearest available font size. This make no serious problem for notes and accidentals which may be slightly too small or too big, but clefs and rests may appear to be shifted upwards or downwards. This trouble is progressively removed, but it requires changing the {\tt musix*} fonts, with some possible characters forgotten... or the fact that user uses a font older than T.60 version. As an example, we give two bars of the \ital{Ave Maria} by Charles {\sc Gounod}\index{Gounod, C.@{\sc Gounod, C.}}, based on the first prelude of Johann-Sebastian Bach's \ital{Well Tempered Clavier} (transcription for organ, violin and voice, thanks to Markus {\sc Veittes}):\label{avemaria} \begin{music} \def\oct{\advance\transpose by 7} \def\liftqs#1{\raise#1\Interligne\qs} \parindent0pt \sepbarrules \instrumentnumber{3} \generalmeter{\meterC} \setinterinstrument2{3\Interligne} \setsize3\tinyvalue \setsize2\tinyvalue \setclef1\bass \setstaffs1{2} \startpiece\addspace\afterruleskip %Takt 9 \notes\zhl c\liftqs6\qupp e|\ds&\oct \itieu5h\hl h&\tx ~~~gra---*\itied4h\hu h\enotes \notes|\ibbl0j3\qb0h\tqb0l\enotes \notes|\ibbl1k0\qb1{ohl}\tqb1o\enotes \notes\zhl c\liftqs6\qupp e|\ds&\oct \ttie5\ibl4c0\qb4h&\ttie4\ibu5g{-3}\qb5h\enotes \notes|\ibbl0j3\qb0h\tqb0l&\oct\qb4a&\tx ---*\tqh5a\enotes \notes|\ibbl1k0\qb1o\qb1h&\oct\qb4b&\tx ~~ti~-*\cu b\enotes \notes|\qb1l\tqb1o&\oct\tqb4c&\tx a*\cu c\enotes \bar %Takt 10 \notes\zhl c\liftqs6\qupp d|\ds&\oct \qlp d&\tx ~~~ple---*\ibsluru4e\qup d\enotes \notes|\ibbu1g3\bigaccid\qb1{^f}\tqh1h\enotes \notes|\ibbu2i0\qb2k\qb2f\enotes \notes|\qb2h\tqh2k&\oct\cl e&\tubslur4f\cu e\enotes \notes\zhl c\liftqs6\qupp d|\ds&\oct\ql d&\tx na,*\qu d\enotes \notes|\ibbu1g3\qb1f\tqh1h\enotes \notes|\ibbu2i0\qb2{kfh}\tqh2k&\qp&\qp\enotes \endpiece \end{music} This example was coded as: \begin{quote}\begin{verbatim} \def\oct{\advance\transpose by 7} \def\liftqs#1{\raise#1\Interligne\qs} \parindent0pt \sepbarrules \instrumentnumber{3} \generalmeter{\meterC} \setinterinstrument2{3\Interligne} \setsize3\tinyvalue \setsize2\tinyvalue \setclef1\bass \setstaffs1{2} \startpiece\addspace\afterruleskip %Takt 9 \notes\zhl c\liftqs6\qupp e|\ds&\oct \itieu5h\hl h&\tx ~~~gra---*\itied4h\hu h\enotes \notes|\ibbl0j3\qb0h\tqb0l\enotes \notes|\ibbl1k0\qb1{ohl}\tqb1o\enotes \notes\zhl c\liftqs6\qupp e|\ds&\oct \ttie5\ibl4c0\qb4h&\ttie4\ibu5g{-3}\qb5h\enotes \notes|\ibbl0j3\qb0h\tqb0l&\oct\qb4a&\tx ---*\tqh5a\enotes \notes|\ibbl1k0\qb1o\qb1h&\oct\qb4b&\tx ~~ti~-*\cu b\enotes \notes|\qb1l\tqb1o&\oct\tqb4c&\tx a*\cu c\enotes \bar %Takt 10 \notes\zhl c\liftqs6\qupp d|\ds&\oct \qlp d&\tx ~~~ple---*\ibsluru4e\qup d\enotes \notes|\ibbu1g3\bigaccid\qb1{^f}\tqh1h\enotes \notes|\ibbu2i0\qb2k\qb2f\enotes \notes|\qb2h\tqh2k&\oct\cl e&\curve222\tubslur4f\cu e\enotes \notes\zhl c\liftqs6\qupp d|\ds&\oct\ql d&\tx na,*\qu d\enotes \notes|\ibbu1g3\qb1f\tqh1h\enotes \notes|\ibbu2i0\qb2{kfh}\tqh2k&\qp&\qp\enotes \endpiece \end{verbatim}\end{quote} \section{Layout parameters} Most layout parameters are set by \musixtex\ to reasonable default values. However, sophisticated scores\footnote{To our knowledge, the most complicated scores are those written for the piano, during the romantic and post-romantic periods.} may need more place below the lowest staff, between staves, etc. \def\nochange{(\ital{NOT to be changed})} We give below a short list of the most significant parameters. \subsection{List of layout parameters} \begin{remark} the mention ``\nochange'' does not mean that this parameter cannot be changed, but that it should not be modified directly, e.g.\ by saying something like \verb|\Interligne=14pt|. In other words, changing these parameters must be performed using more comprehensive macros which not only update them but also perform some other compulsory related changes. \end{remark} \begin{description} \item[\keyindex{Interligne} :]vertical distance between the base of staff lines of the current instrument, taking no account of a possible specification of \keyindex{setsize$n$} \nochange. \item[\keyindex{internote} :]the vertical spacing of contiguous notes of the current instrument, taking account of a possible specification of \keyindex{setsize$n$} \nochange. \item[\keyindex{Internote} :]the vertical spacing of contiguous notes of the instrument(s) whose \keyindex{setsize$n$} has the \ital{default value} of one (\keyindex{normalvalue}), i.e.\ the half of \verb|\Interligne| \nochange \item[\keyindex{staffbotmarg} :]margin below the first staff of the lowest instrument. Changes are recognized at the next system and default is \verb|3\Interligne|. \item[\keyindex{stafftopmarg} :]margin above the upper staff of the upper instrument. Changes are recognized at the next system and default is \verb|3\Interligne|. \item[\keyindex{interbeam} :]vertical distance between beams. \nochange. \item[\keyindex{interportee} :]the distance between the bottom of one staff and the bottom of the next one. It is set to \verb|2|\keyindex{interstaff}\verb|\internote| at the next system. Therefore, trying to change \verb|\interportee| will have no effect. %\check \item[\keyindex{interinstrument} :]the additional vertical distance between two different instruments. This means that the distance between the upper staff of the previous instrument and the lowest line of the current instrument is equal to \keyindex{interportee+\Bslash interinstrument}. This value is normally zero, but it helps putting additional space between distinct instruments for the sake of clarity. This is a general dimension register which holds for each of the vertical spaces between instruments, except above the upper one, in which case this interval is irrelevant. As usual in \TeX, it can be set using a command such as \verb|\interinstrument=10pt| \noindent or \verb|\interinstrument=6\internote| However, this general parameter can be overridden for the space above a specific instrument. For example (see the example {\tt angescao.tex}) one can state: \keyindex{setinterinstrument} $n$\verb|{1\Interligne}| \noindent to force an additional spacing of one \verb|\Interligne| above instrument $n$, whatever the value of \keyindex{interinstrument}. This feature can usefully be used to have more space before instruments representing \itxem{voices}, in order to have enough place to put \itxem{lyrics} without assigning these lyrics a zero staff specific instrument (useful to avoid having too many declared instruments in a choir score). The \verb|\setinterinstrument| is identical to the ancient --- and still working --- \musictex\ command: \verb|\def|\keyindex{interinstrumentiii}\verb|{5\interligne}| \noindent to add 5\verb|\interligne| above the 3rd instrument. %\check \item[\keyindex{systemheight} :]the distance from the bottom of the lowest staff to the top of the highest staff of the upper instrument. This is the height of the vertical bars (single, double, repeats, etc.) \nochange. \end{description} In addition, when handling notes of a given staff of a given instrument, the following dimensions are available (note these are not true registers, but \ital{equivalenced symbols} through a \verb|\def|): \begin{itemize} \item\keyindex{altplancher} : the altitude of the lowest line of the lowest instrument \nochange. \item\keyindex{altitude} : the altitude of the lowest line of the lowest staff of the current instrument \nochange. \item\keyindex{altportee} : the altitude of the lowest line of the current staff \nochange. %??? Next perhaps will change to steps of \verb|\internote|. \item\keyindex{stemfactor} : a parameter defining the size of half, quarter and hooked eighth notes stems. Normally a stem has the length of one octave, i.e. 3.5\keyindex{Interligne}. However, this is not valid for small size notes and, therefore, the stem size is related to the \keyindex{interbeam} dimensions which, in turn, is \ital{normally} equal to 0.75 \keyindex{Interligne}. Thus the normal value of \keyindex{stemfactor} is 4.66, but it can be shortened for any purpose by saying, for example: \keyindex{stemlength}\verb|{3.5}| \end{itemize} \subsection{Changing layout parameters} Most of these values can be changed, but only between the end of the previous system and the beginning of the next one. This can be inserted between a \keyindex{stoppiece} (or a \keyindex{endpiece}) and a \keyindex{contpiece} (or a \keyindex{startpiece}), but it is wiser to say, for example: \verb|\def\atnextline{\stafftopmarg=5\Interligne}| The user may prefer to change \keyindex{staffbotmarg} or to feed \keyindex{interstaff} with a given integer number, but this can be done only between a \keyindex{stoppiece} (or a \keyindex{endpiece}) and a \keyindex{contpiece} (or a \keyindex{startpiece}), but it is wiser to use \keyindex{atnextline} as previously. It is also wise to use \keyindex{atnextline} to change the number of instruments, the staff spacings, the number of staffs at the next line... provided that the coding of the notes \ital{resists} an unexpected line change executing the \keyindex{atnextline}. \subsection{Changing the staff distance within systems} The vertical distance of instruments with more than one staff can be changed, either outside \verb|\startpiece|...\verb|\endpiece| or using \keyindex{atnextline}, by saying: \keyindex{interstaff}\verb|{|$n$\verb|}| Then the spacing between the staffs of the instruments will be $n$\verb|\internote|. Note that \verb|\interstaff| applies to all the instruments, but each distinct instrument may have a different \verb|\internote| (see \ref{staffspacing}). Note that this command is equivalent to an existing remnant of \musictex, namely: \verb|\def|\keyindex{interfacteur}\verb|{|$n$\verb|}| \medskip The distance between two different instruments can be increased by saying \keyindex{interinstrument}\verb|=|\ital{any \TeX-dimension} \noindent for all additional inter-instrument distances, or \keyindex{setinterinstrument} $n$\verb|{|\ital{any \TeX-dimension}\verb|}| \noindent for single distances. \subsection{Changing the number of lines in staffs}\index{staff line number} \label{stafflinenumber} Unless explicitely specified, staffs consist of five lines, in accordance to the normal way of coding music scores. However, exceptions might be preferred when using \musixtex~: \begin{itemize} \item \itxem{gregorian music} is often written using staff of four lines instead of five\footnote{German: \ital{Quadratnotation}.}, \item \itxem{percussion music} (e.g.~drums, triangle) needs one, two, three or five lines, since the pitch cannot change but the number of percussion instruments. \item \itxem{guitar tablature} needs six lines. Although \ital{real} guitar players hate guitar tablature, for beginners they are a big help. Not ready yet. The lines are, but not the additional macros. \item Early baroque music sometimes uses staffs with 6, 7, or 8 lines. \end{itemize} Therefore \musixtex\ allows for choosing the number of lines of the staffs of an instrument. This is done by \keyindex{setlines}~$n$\verb|{|$N$\verb|}| --- where $n$ is the number of the wanted instrument as usual --- and $N$ the number of lines of the specific staff. Allowed numbers are up to 9 lines. For example:\label{gregorian} \keyindex{setlines}\verb|2{4}| \noindent will make the instrument number 2 to have staffs of four lines, that is, fit for gregorian music. \subsection{Resetting normal layout parameters} Except the general size which has to be explicitely changed if needed using \keyindex{smallmusicsize}, \keyindex{normalmusicsize}, \keyindex{largemusicsize}, or \keyindex{Largemusicsize}, all layout registers are reset to \ixem{default values} by \keyindex{resetlayout}, which are explicitly: \begin{itemize} \item \keyindex{staffbotmarg} and \keyindex{stafftopmarg} are set to \verb|3\Interligne|. \item \keyindex{interstaff} is set to \verb|9|. \item The number of lines of all instruments are reset to 5. \item All clef symbols are standard clef symbols. \end{itemize} \noindent Besides, saying \keyindex{begin\LBR music\RBR} invokes \verb|\resetlayout|. \subsection{Typesetting one-line excerpts rather than large scores} Very often, what is wanted is not to typeset a large comprehensive score of several lines and pages, but an excerpt of one or two bars, preferably centered such as the various examples of this manual. This can be done simply by replacing \keyindex{startpiece} with \keyindex{startextract} and \verb|\endpiece| or \verb|\stoppiece| with \keyindex{endextract}. It is sometimes useful to get more than one excerpt in one line, this can be done with redefining of \keyindex{extractline}. With saying: \keyindex{let\Bslash extractline\Bslash hbox} \noindent you can put more than one example in one line. Helpful for getting \itxem{musical footnotes}, which explain the playing of special trills or give alternative ways of playing, is the redefining to: \keyindex{let\Bslash extractline\Bslash leftline} Besides, all changes inbetween \keyindex{begin\LBR music\RBR}...\keyindex{end\LBR music\RBR} are local, means not global. If you want to terminate it without a bar, you code \keyindex{zendextract} which acts like \verb|\zstoppiece|. \subsection{*Lyrics}\index{lyrics}\label{lyrics} While they pose nearly no problem with \musictex\ which works using the glue facility of \TeX, lyrics raise several serious difficulties with \musixtex. The reason for that is that lyrics usually consist of \ital{text} which in turn consists of characters whose width is definitely not stretchable nor shrinkable proportionally to \verb|\noteskip| or \verb|\elemskip|. Thus the width of a sequence of notes like \begin{music} \startextract \NOTEs\zcharnote{-5}{Words }\qu h\en \endextract \end{music} \noindent may be either the width of ``{\tt Words }'' with the current font, or it may be \verb|1\elemskip|, whatever the largest. In the first case, the width is fixed (see \keyindex{hardspace}), in the second its width is not the same at \musixtex's first and second passes. But the unfortunate situation is that \musixtex\ \ital{must} know whether this feature has a \ital{hard} (not scalable) or a \ital{scalable} width \ital{at the first pass}, while the inequality is solved only at the second. This means that, in addition to the three pass system, the user must run trial and errors to find out whether some lyrics are wider than the final note spacing, or smaller. In that case a wrong decision might lead to questionable ``\verb|Underfull hbox|''-es filled with ugly glue, or it may result in awful ``\verb|Overfull hbox|'' with its heavy bar punishment and possible over writings. However, before discussing this problem, we first describe the various ways of inserting lyrics under --- or above --- a staff. \subsubsection{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}. \subsubsection{Posting lyrics} Lyrics can be introduced in several ways. \begin{enumerate} \item One archaic solution could be to define a special instrument for the lyrics text, without effective staff, namely using the command \keyindex{setstaffs}~$n$\verb|{|$p$\verb|}| described in \ref{whatspecify}. The inconvenience of this solution is that it increases the number of instruments, which is limited to 6 in standard \musixtex, although it can be increased to 9 using {\tt musixadd.tex} and 12 with {\tt musixmad.tex}. \medskip Therefore, better solutions consist is posting the lyrics in the same instrument as the tune, provided that inter-instrument spacing has been adapted. \item Another simple obvious solution consists in using the command \keyindex{zcharnote} to post the text at any position (computed in \verb|\internote|s) with respect to the lower line of the current staff. The pitch should be usually negative to have the text below the staff. It could also be specified like a note pitch, for example ``{\tt a}'' if the song is in G-clef. The drawback is that the pitch has to be repeated for each text of each note, which is tideous unless a special macro has been defined. \item Rather than \verb|\zcharnote| and other \verb|\?charnote| commands, one should rather use \keyindex{zchar}, \keyindex{cchar} (centered) or \keyindex{lchar} (expanded to left) which only allow absolute numbers (internally multiplied by {\Bslash internote}). These command have the same drawback as above, namely the vertical position has to be repeated each time. \item Of easier use are the commands \keyindex{zsong} (right of the note), \keyindex{lsong} (left) and \keyindex{csong} (centered) which post the lyrics at the lower staff line \ital{minus} the previous \keyindex{interinstrument}~$n$ or the \keyindex{staffbotmarg} quantity. These commands only have one argument, namely the lyrics text: \begin{center} \keyindex{zsong}\verb|{|\ital{text}\verb|}|\quad \keyindex{lsong}\verb|{|\ital{text}\verb|}|\quad \keyindex{csong}\verb|{|\ital{text}\verb|}| \end{center} Depending on the values of the inter-instrument spacings and margins, the resulting vertical position might be inappropriate. Then it can be changed for any specific $n$-th instrument until further change using \begin{quote} \keyindex{setsongraise}~$n$\verb|{|\ital{any \TeX-dimension}\verb|}| \end{quote} \medskip As an example, the following French song \begin{music} \generalsignature{1} \startextract \geometricskipscale \NOtes\zsong{Au }\qu g\en \NOtes\zsong{clair }\qu g\en \NOtes\zsong{de }\qu g\en \NOtes\zsong{la }\qu h\en \bar \NOTes\zsong{lu- }\hu i\en \NOTes\zsong{ne, }\hu h\en \bar \NOtes\zsong{mon }\qu g\en \NOtes\zsong{a- }\qu i\en \NOtes\zsong{mi }\qu h\en \NOtes\zsong{Pier- }\qu h\en \bar \NOTes\zsong{rot, }\wh g\sk\en \endextract \end{music} \noindent was coded as: \begin{quote}\begin{verbatim} \generalsignature{1} \startextract \geometricskipscale \NOtes\zsong{Au }\qu g\en \NOtes\zsong{clair }\qu g\en \NOtes\zsong{de }\qu g\en \NOtes\zsong{la }\qu h\en \bar \NOTes\zsong{lu- }\hu i\en \NOTes\zsong{ne, }\hu h\en \bar \NOtes\zsong{mon }\qu g\en \NOtes\zsong{a- }\qu i\en \NOtes\zsong{mi }\qu h\en \NOtes\zsong{Pier- }\qu h\en \bar \NOTes\zsong{rot, }\wh g\sk\en \endextract \end{verbatim}\end{quote} You can also use the macros from \verb|musixcho.tex|, which result in the same vertical positionning as \keyindex{zsong} and other \verb|\?song| do, but the text of the lyrics are better justified around the related note. \end{enumerate} \subsubsection{Handling lyrics width versus scalable note spacings} If one uses either \verb|\zsong| or \verb|\csong| or \verb|\lsong| without caution, one will probably get awful things such as: \begin{music} \generalsignature{1} \startextract \geometricskipscale \Notes\zsong{Au }\qu g\en \Notes\zsong{clair }\qu g\en \Notes\zsong{de }\qu g\en \Notes\zsong{la }\qu h\en \bar \NOtes\zsong{lu- }\hu i\en \NOtes\zsong{ne, }\hu h\en \bar \Notes\zsong{mon }\qu g\en \Notes\zsong{a- }\qu i\en \Notes\zsong{mi }\qu h\en \Notes\zsong{Pier- }\qu h\en \bar \NOTes\zsong{rot, }\wh g\sk\en \endextract \end{music} \noindent which is the same example as above, with all spacings divided by 1.41. Although locating ``overfull'' lyrics seems easy, it might be wiser to force their visibility, which is done replacing \verb|\zsong| with \keyindex{hsong} which encloses the hazardous text in a \verb|\hbox| of width \verb|\noteskip|, whose overfilling is diagnosed as usual by Plain \TeX\ or (especially in \LaTeX) by means of the \verb|\overfullrule=...| command: \begin{music} \generalsignature{1} \startextract \overfullrule 3pt% \geometricskipscale \Notes\hsong{Au }\qu g\en \Notes\hsong{clair }\qu g\en \Notes\hsong{de }\qu g\en \Notes\hsong{la }\qu h\en \bar \NOtes\hsong{lu- }\hu i\en \NOtes\hsong{ne, }\hu h\en \bar \Notes\hsong{mon }\qu g\en \Notes\hsong{a- }\qu i\en \Notes\hsong{mi }\qu h\en \Notes\hsong{Pier- }\qu h\en \bar \NOTes\hsong{rot, }\wh g\sk\en \endextract \end{music} Alternate versions of \verb|\hsong| are \keyindex{dhsong} which has a fixed length of \verb|2\noteskip| and \keyindex{thsong} whose fixed length is \verb|3\noteskip|. These are useful when the text is set below (or above) a collective coding of two or three notes. Once one has diagnosed --- in the tentative final layout --- which lyrics lead to overfull texts, several corrections may be tried: \begin{enumerate} \item Increase the \keyindex{mulooseness} to have wider note spacing. This may work, but the inconvenience is that all notes would be stretched, and not only the faulty notes. \item Increase specific note spacings, replacing for example \verb|\Notes| with \verb|\NOtes| or \verb|\Notesp|. This is the easiest solution which may require several trials and errors since an increase of a few notes in a system may lead to a small shrinking of the others, to keep the total length constant. \item Decide that some notes --- only ``some'' notes, not all notes of the score, neither all the notes of a given system --- would have a \itxem{hard spacing} and not a scalable spacing. This is done using the command \begin{quote} \keyindex{hardnotes}\ital{ any hard \TeX\ dimension }\verb|\notes|\ital{ normal note specif. }\verb|\en| \end{quote} \noindent which ends the \verb|\notes...\en| with a \itxem{hard spacing} (see \verb|\hardspace| in \ref{hardspace}, p. \pageref{hardspace}) rather than a scalable spacing. A more practical variant has been provided especially for lyrics, namely \begin{quote} \keyindex{hardlyrics}\ital{ any text }\verb|\notes|\ital{ normal note specif. }\verb|\en| \end{quote} \noindent which computes the width of ``any text'' by putting it in a \verb|\hbox| and reverting to \verb|\hardnotes| to perform the remainder of the task. In order to save repetitions, the text of the lyrics which has been used to compute the hard note spacing can be retrieved under the command name \keyindex{thelyrics}. \verb|\hardlyrics| must be followed by \verb|\notes| (with the lyrics text inbetween), not by \verb|\Notes| nor \verb|\NOtes|, etc. Besides, since moving the lyrics text between \verb|\hardlyrics| and \verb|\notes|\footnote{{\Bslash notes}, neither {\Bslash Notes} nor {\Bslash NOtes} nor {\Bslash NOTes} etc.} together with replacing it with \keyindex{thelyrics} at the initial location is a rather tedious operation with text editors, another command has been provided, namely \keyindex{softlyrics}: \verb|\softlyrics{|\ital{ any text }\verb|}| \noindent defines \verb|\thelyrics| to be ``\ital{ any text }'', so that going from \verb|\hardlyrics| to the default scalable behaviour of \verb|\noteskip| and inversely can easily be done by changing \verb|\hard| into \verb|\soft| in the source text, with optional change of the number of uppercase letters in \verb|\notes|. \medskip\begin{important} since \/\verb|\hardlyrics| computes \/\verb|\noteskip|, its argument (before \/\verb|\notes|) may not refer to \/\verb|\noteskip|... which is not already computed. \end{important} \end{enumerate} \subsubsection{A more comprehensive example of lyrics} Here is an example taken from the French catholic liturgy (a French translation of the traditional \ital{Gloria in excelsis Deo}). We give first the adapted source of a part of the score: \begin{quote}\begin{verbatim} \overfullrule 3pt \instrumentnumber{1} \setstaffs11 % \generalsignature{-1}\relax % one flat \generalmeter{\meterfrac{2}{2}} % \staffbotmarg=5\Interligne\stafftopmarg=1.5\Interligne \startpiece \setsongraise1{2\Interligne}% \znotes\uptext{\kern -9mm\raise 9pt\hbox{\bigtype Majestueux, sans tra\^\i ner \rm(\metron{\hu}{50})}}\enotes \hardlyrics {\kern-5pt Gloire }\notes\hsong{\thelyrics }\cu c\enotes \notes\hsong{\`a }\cu c\enotes \barre \NOTes\hsong{Dieu~}\hu f\enotes \notes\hsong{au}\cu f\enotes \hardlyrics{plus~}\notes\hsong{\thelyrics }\cu f\enotes \hardlyrics{haut~}\notes\hsong{\thelyrics }\cu g\enotes \notes\hsong{des}\cu g\enotes \barre \NOtes\hsong{cieux~}\qup h\enotes \notes\hsong{et~}\cu h\enotes \hardlyrics{paix~}\notes\hsong{\thelyrics }\qu i\enotes \hardlyrics{sur~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{la~}\cu g\enotes \barre \Notes\hsong{ter-}\qu f\enotes \notes\hsong{re~}\cu f\enotes \hardlyrics{aux~}\notes\hsong{\thelyrics}\cu f\enotes \hardlyrics{hom- }\notes\hsong{\thelyrics}\qu g\enotes \hardlyrics{mes~}\notes\hsong{\thelyrics }\cu h\enotes \hardlyrics{qu'il~}\notes\hsong{\thelyrics }\cu i\enotes \barre \NOtes\hsong{ai-}\hu g\enotes \Notes\hsong{me.}\hu f\enotes \Notes\uptext{\bf II }\enotes \barre \hardlyrics{Nous~}\notes\hsong{\thelyrics}\qu h\enotes \notes\hsong{Te~}\cu g\enotes \notes\hsong{lou-}\cu g\enotes \NOtes\hsong{ons,}\hu h\enotes \barre \hardlyrics{nous~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{b\'e-}\cu j\enotes \notes\hsong{nis-}\cu j\enotes \NOtes\hsong{sons,}\hu h\enotes \barre \Notes\hsong{nous~}\qu h\enotes \NOtes\hsong{t'a-}\hu g\enotes \Notes\hsong{do-}\qu f\enotes \barre \NOtes\hsong{rons,~}\hu f\enotes \notes\uptext{\bf I}\enotes \hardlyrics{nous~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{glo-}\cu g\enotes \notes\hsong{ri-}\cu g\enotes \barre \NOTEs\hsong{fions,~}\hu h\enotes \hardlyrics{\kern -4pt nous~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{ren-}\cu h\enotes \notes\zsong{dons~}\cu i\enotes \barre \NOtes\hsong{gr\^a~-}\qu g\enotes \notes\hsong{ces~}\cu g\enotes \hardlyrics{pour~}\notes\hsong\thelyrics\cu g\enotes \hardlyrics{Ton~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{im-}\cu i\enotes \hardlyrics{men-}\notes\hsong\thelyrics\cu j\enotes \notes\zsong{se~}\cu k\enotes \barre \Notes\hsong{gloi-}\ql j\enotes \Notes\hsong{-}\ql i\enotes \Notes\hsong{re~!}\qu h\enotes \notes\uptext{\bf II}\enotes \notes\hardlyrics{Sei-}\hsong\thelyrics\cu h\enotes \notes\zsong{gneur~}\cu i\enotes \barre \hardlyrics{Dieu,~}\notes\hsong\thelyrics\qu j\enotes \hardlyrics{Roi~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{du~}\cu g\enotes \Notes\hsong{Ciel,~}\qu h\enotes \hardlyrics{Dieu~}\notes\hsong\thelyrics\cu h\enotes \notes\zsong{le~}\cu g\enotes \barre \hardlyrics{P\`e-~}\notes\thelyrics\hsong\cu h\enotes \notes\hsong{re~}\cu i\enotes \hardlyrics{tout-}\notes\hsong\thelyrics\cu g\enotes \hardlyrics{puis-}\notes\hsong\thelyrics\cu h\enotes \hardlyrics{sant~!}\notes\hsong\thelyrics\qup h\enotes \notes\uptext{\bf I}\enotes \notes\zsong{Sei-}\cu h\enotes \mulooseness 2% \stoppiece \end{verbatim}\end{quote} The result clearly shows the inequality between note spacings, some of them forced by lyrics length, some others related to the value of \verb|\elemskip| choosen by {\tt musixflx} according to the given value of \keyindex{mulooseness}. Note that \verb|\zsong| still has been used for lyrics followed by a bar, since their extension across the bar is usually harmless. \begin{music} \small \overfullrule 3pt \instrumentnumber{1} \setstaffs11 % \generalsignature{-1}\relax % one flat \generalmeter{\meterfrac{2}{2}} % \staffbotmarg=5\Interligne\stafftopmarg=1.5\Interligne \startpiece \setsongraise1{2\Interligne}% \znotes\uptext{\kern -9mm\raise 9pt\hbox{\bigtype Majestueux, sans tra\^\i ner \rm(\metron{\hu}{50})}}\enotes \hardlyrics {\kern-5pt Gloire }\notes\hsong{\thelyrics }\cu c\enotes \notes\hsong{\`a }\cu c\enotes \barre \NOTes\hsong{Dieu~}\hu f\enotes \notes\hsong{au}\cu f\enotes \hardlyrics{plus~}\notes\hsong{\thelyrics }\cu f\enotes \hardlyrics{haut~}\notes\hsong{\thelyrics }\cu g\enotes \notes\hsong{des}\cu g\enotes \barre \NOtes\hsong{cieux~}\qup h\enotes \notes\hsong{et~}\cu h\enotes \hardlyrics{paix~}\notes\hsong{\thelyrics }\qu i\enotes \hardlyrics{sur~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{la~}\cu g\enotes \barre \Notes\hsong{ter-}\qu f\enotes \notes\hsong{re~}\cu f\enotes \hardlyrics{aux~}\notes\hsong{\thelyrics}\cu f\enotes \hardlyrics{hom- }\notes\hsong{\thelyrics}\qu g\enotes \hardlyrics{mes~}\notes\hsong{\thelyrics }\cu h\enotes \hardlyrics{qu'il~}\notes\hsong{\thelyrics }\cu i\enotes \barre \NOtes\hsong{ai-}\hu g\enotes \Notes\hsong{me.}\hu f\enotes \Notes\uptext{\bf II }\enotes \barre \hardlyrics{Nous~}\notes\hsong{\thelyrics}\qu h\enotes \notes\hsong{Te~}\cu g\enotes \notes\hsong{lou-}\cu g\enotes \NOtes\hsong{ons,}\hu h\enotes \barre \hardlyrics{nous~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{b\'e-}\cu j\enotes \notes\hsong{nis-}\cu j\enotes \NOtes\hsong{sons,}\hu h\enotes \barre \Notes\hsong{nous~}\qu h\enotes \NOtes\hsong{t'a-}\hu g\enotes \Notes\hsong{do-}\qu f\enotes \barre \NOtes\hsong{rons,~}\hu f\enotes \notes\uptext{\bf I}\enotes \hardlyrics{nous~}\notes\hsong{\thelyrics }\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{glo-}\cu g\enotes \notes\hsong{ri-}\cu g\enotes \barre \NOTEs\hsong{fions,~}\hu h\enotes \hardlyrics{\kern -4pt nous~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{Te~}\cu h\enotes \notes\hsong{ren-}\cu h\enotes \notes\zsong{dons~}\cu i\enotes \barre \NOtes\hsong{gr\^a~-}\qu g\enotes \notes\hsong{ces~}\cu g\enotes \hardlyrics{pour~}\notes\hsong\thelyrics\cu g\enotes \hardlyrics{Ton~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{im-}\cu i\enotes \hardlyrics{men-}\notes\hsong\thelyrics\cu j\enotes \notes\zsong{se~}\cu k\enotes \barre \Notes\hsong{gloi-}\ql j\enotes \Notes\hsong{-}\ql i\enotes \Notes\hsong{re~!}\qu h\enotes \notes\uptext{\bf II}\enotes \hardlyrics{Sei-}\notes\hsong\thelyrics\cu h\enotes \notes\zsong{gneur~}\cu i\enotes \barre \hardlyrics{Dieu,~}\notes\hsong\thelyrics\qu j\enotes \hardlyrics{Roi~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{du~}\cu g\enotes \hardlyrics{Ciel,~}\notes\hsong\thelyrics\qu h\enotes \hardlyrics{Dieu~}\notes\hsong\thelyrics\cu h\enotes \notes\zsong{le~}\cu g\enotes \barre \hardlyrics{P\`e-~}\notes\hsong\thelyrics\cu h\enotes \notes\hsong{re~}\cu i\enotes \hardlyrics{tout-}\notes\hsong\thelyrics\cu g\enotes \hardlyrics{puis-}\notes\hsong\thelyrics\cu h\enotes \hardlyrics{sant~!}\notes\hsong\thelyrics\qup h\enotes \notes\uptext{\bf I}\enotes \notes\zsong{Sei-}\cu h\enotes \mulooseness 2% \stoppiece \end{music} The complete score of this carol --- with slightly different layout due to different page size --- is given in example {\tt glorias.tex} and in {\tt gloriab.tex}, the latter exhibiting not only the song tune but also the organ accompaniment (both require {\tt musixsty.tex}). \section{Abnormal music coding} \subsection{Gregorian chant: staffs and clefs} \index{gregorian music}Gregorian chant is often coded using four line staffs (see sections \ref{gregorian} and \ref{stafflinenumber}) and using special notes (called \itxem{neumes}) which are described in section \ref{gregnotes}. But the gregorian chant also needs special clefs which are in fact the ancestors of the modern ones. The \itxem{gregorian clefs} can be invoked instead of the modern ones by: \keyindex{setaltoclefsymbol}\verb|3\gregorianCclef| \keyindex{setbassclefsymbol}\verb|3\gregorianFclef| \noindent will cause the instrument number 3 to exhibit the chosen gregorian clefs. The standard clefs can be restored for every instrument with \keyindex{resetclefsymbols}. It is to be emphasized that, since version T.40 of \musixtex, one should specify whether one wants to change the bass clef symbol or the alto clef symbol (also the treble clef symbol, but there is no treble clef in gregorian chant). The reason is that \musixtex\ (as well as \musictex) selects and raises differently the F, G and C clefs 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 have been set at the position of an alto clef, thus seriously misleading the musician. However, for compatibility with what was previously choosen\footnote{By A. {\sc Egler}...}, the \keyindex{setclefsymbol} still exists, but it substitutes the given second argument \ital{to all clef symbols} of that instrument, regardless of the actual musical meaning of this symbol. \verb|\setclefsymbol| is therefore discouraged, unless one changes the design of the clef symbol 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} \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 \endextract \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 \endextract \end{verbatim} \subsection{Music score without clefs or with special clefs} \subsubsection{Empty clefs} \index{clefs (empty)} Regardless of the number of lines of the staffs, an instrument may have no clefs, e.g.~for \itxem{percussion music} but also for any weird purpose. This is done by declaring the following item: \keyindex{setclefsymbol}~$n$\verb|\empty| \noindent Normal symbols for these clefs can be restored by: \keyindex{resetclefsymbols} \subsubsection{Octave clefs}\index{octave clefs} Octave treble clefs and octave bass clefs are provided. They can replace the usual treble and bass clefs by saying: \keyindex{setclefsymbol}~$n$\keyindex{bassoct} \keyindex{setclefsymbol}~$n$\keyindex{trebleoct} \noindent for upper octaviation, and \keyindex{setclefsymbol}~$n$\keyindex{basslowoct} \keyindex{setclefsymbol}~$n$\keyindex{treblelowoct} \noindent for lower octaviation. \begin{music} \parindent 19mm \instrumentnumber{4} \generalmeter{\empty} \setclef1\bass \setclef2\bass \setclef3\treble \setclef4\treble \setbassclefsymbol1\basslowoct \setbassclefsymbol2\bassoct \settrebleclefsymbol3\treblelowoct \settrebleclefsymbol4\trebleoct \startextract \Notes\qu{`abcdefghi}&\qu{`abcdefghi}&\qu{abcdefghi}&\qu{abcdefghi}&\enotes \endextract \end{music} {\noindent\sl REMARKS: \begin{itemize} \item The \keyindex{setclefsymbol}, \keyindex{settrebleclefsymbol}, \keyindex{setaltoclefsymbol} and \keyindex{setbassclefsymbol} commands only change the symbol posted, not the altitude of the note head. Thus, if you say \verb|\setclef1\bass| and then |\setbassclefsymbol1\trebleclef|, your score will be definitely wrong. In the same way, \keyindex{trebleoct} and similar octave clefs will only change the symbol, but a note coded {\tt a} wiull have the same vertical position, regardless of the clef symbol chosen. \item Changing clef symbols also affect clef changes within the score, but this clef changes will be posted by large symbols, not smaller clefs as usual. Anyway, it can be remarked that clef changes only concern scores with standard treble, alto and bass clefs... \end{itemize} } \subsubsection{Drum clef} A special \itxem{drum clef} (two heavy vertical bars) can replace for the $n$-th intrument any of the standard clefs by saying: \keyindex{setclefsymbol}~$n$\keyindex{drumclef}\label{sectiondrum} \noindent However, since the vertical position of the clef depends on the previously stated clef, it is not wise to replace any clef symbol with the drum clef, but to have the instrument previously configured with the default violin clef, i.e. \verb|{0000}|. It is to be emphasised that these features are specific to one instrument --- not one staff of a several staff instrument --- so that some weird score for \ital{monks}, \ital{drum} and \ital{electronic keyboard} such as \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 could be coded as follows, regardless this is relevant (see remark in \ref{gregoriancappella}, p. \pageref{gregoriancappella}): \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 \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 f\enotes\bar \notes\hu G|\zh b\hu d&\dnq4&\zsqu d\rsqu g\squ{hgh}\enotes \end{verbatim} In the same way, a possible violin score with \itxem{harmonic notes} (see \ref{othernotes}) could be:\label{abnormalscores} \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} It 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} \subsection{Usual percussion music} Besides single percussion scores usually written using one-line staffs, percussion music involving several instruments is often writen on five-line staffs with a \ital{drum clef}, where the instruments are distinguished by the type of the note heads and the apparent pitch of the note on the staff. We give an example --- kindly provided by Agusti {\sc Mart\'in Domingo}: \medskip \begin{music} \generalmeter{\meterfrac44} \setclefsymbol1\drumclef \parindent0pt\startpiece \leftrepeat \Notes\zql f\rlap\soupir\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \bar \Notes\zql f\rlap\soupir\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \bar \Notes\zql f\rlap\soupir\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \setrightrepeat\endpiece \end{music} Its coding was: \begin{quote}\begin{verbatim} \begin{music} \instrumentnumber{1} \generalmeter{\meterfrac44} \setclefsymbol1\drumclef \parindent0pt\startpiece \leftrepeat \Notes\zql f\rlap\soupir\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\xqb0{nn}\enotes \Notes\kzq d\zql f\zq j\xqb0n\tbu0\xqb0n\enotes \bar \Notes\zql f\rlap\soupir\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\kqb0{nn}\enotes \Notes\xzq d\zql f\zq j\kqb0n\tbu0\kqb0n\enotes \bar \Notes\zql f\rlap\soupir\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \Notes\zql f\rlap\soupir\ibu0m0\oxqb0{nn}\enotes \Notes\oxzq d\zql f\zq j\kqb0n\tbu0\oxqb0n\enotes \setrightrepeat\endpiece \end{music} \end{verbatim}\end{quote} To use these different note heads, one must \begin{itemize} \item either include a specific percussion file namely\index{percussion music} \ttxem{musixper.tex} after the usual \verb|\input musixtex|; \item use special macro names to replace the usual elliptic black note head with other available note heads. Today only the most used note types are supported. \end{itemize} \section{Writing your own macros: the {\Bslash catcode} problems} As seen before, the \keyindex{catcodes} of the \| and \verb|&| symbols are modified by \musixtex, in the range of the actual scores but not in the whole of the \TeX\ source. Thus, if you define your own macros to make your writing easier, you are likely to invoke the \| or \verb|&| symbols in a part of text where their \keyindex{catcode}s are not correctly set. \index{"|@{\tt\char'174}} This may result typically in a diagnostic like: \verb|! Misplaced alignment tab character &.| \noindent when you attempt, not to define, but to use your macro using the \verb|&| symbol to change the instrument. Smart \TeX ers know that the \keyindex{catcode}s are attached to the characters \ital{when they are input} and not when they are used; thus you must be sure that \| and \verb|&| have the correct \musixtex\ \keyindex{catcode} when the macro is defined, which may well occur outside the actual score. It is also worth pointing out that the same problem may occur with other punctuation marks like ``\verb|<|'', ``\verb|>|'', ``\verb|^|, etc., if their \keyindex{catcode} has been changed by some other set of macros, like \ttxem{french.sty}. \section{\LaTeX~and \musixtex} \subsection{The {\tt musixtex.sty} style}\label{musixltx} As said before, the amount of memory and registers used by \musixtex\ makes it hardly compatible with \LaTeX. However, Nicolas {\sc Brouard}\index{Brouard, N.@{\sc Brouard, N.}} succeeded in building a \ttxem{musixltx.tex} which is now included in the distribution. This is not recommended to make separate music scores. Its purpose is rather to provide a means of inserting short musical excerpts in books or articles written with \LaTeX. Then, the \keyindex{documentstyle} command should include {\tt musixtex} in the options. The \LaTeX\ \index{LaTeX@\LaTeX}style file \ttxem{musixtex.sty} simply \verb|\input|s the following files (in that very order): \begin{itemize} \item \verb|musixtex.tex| \item \verb|musixltx.tex| \end{itemize} In case of \verb|TeX capacity exceeded...|, use a ``Bigla\TeX'' (after checking there is no visible error in the source code).\index{BigLaTeX@Big\LaTeX} \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{The {\Bslash catcode} problems} The \verb|musixltx.tex| file merely overrides the \keyindex{catcode}s of the \| and \verb|&| symbols which are modified by \musixtex. To have access to these symbols when coding music, you should enclose the scores or excerpts within \verb|\begin{music}| and \verb|\end{music}|. But there is also another possibility, i.e.\ to say \keyindex{nextinstrument} instead of \verb|&|\index{\&} and \keyindex{nextstaff} instead of \|. \index{"|@{\tt\char'174}} Another problem comes from the {\tt\ixem{french.sty}} written by Bernard {\sc Gaulle}\index{Gaulle, B.@{\sc Gaulle, B.}} which is the standard of the \ixem{GUTenberg} French association. This style changes many \keyindex{catcode}s which lead \musixtex\ to fail in many cases. Therefore the \keyindex{catcode}s of all are forced to the adequate value at \keyindex{startpiece}, \keyindex{startextract} and restored at their original value at \keyindex{endpiece}, \keyindex{stoppiece} and \keyindex{endextract}. This means that some facilities like the \itxem{guillemets} or the \itxem{tabulation} character are inhibited within music scores (possible problem with sophisticated \itxem{lyrics}) but perfectly available within the normal text. Anyway, in case of emergency, one can invoke \keyindex{catcodesmusic} to establish the \keyindex{catcode}s at their value fit for music, and \keyindex{endcatcodesmusic} to reset them at their external value, for example those chosen by \verb|french.sty|. \section{Implementation and restrictions} The macroinstruction file \musixtex\ contains approximately 4200 lines of code, that is 98~000 bytes approximately. This requires your score to be compiled by the most extended versions of \TeX\ (65~000 words of working memory). It is therefore wise to say \verb|\tracingsstats=2| in order to have an information about the memory used in each page. In desperate situations, we recommend using the ``Big\TeX'' processors which, unfortunately, performed a great deal of disk input/outputs (on PCs with i286 processors) which made them awfully slow. Of course, using i386 or i486 or Pentium processors, this problem disappears with the specific version of {\tt emTeX}, namely {\tt tex386}.\index{BigTeX@Big\TeX}\index{emTeX@em\TeX} In particular, the number of registers it uses and the amount of memory used by \LaTeX\ macros makes it doubtfully compatible with \LaTeX, unless using Big\LaTeX.\index{BigLaTeX@Big\LaTeX} Other precautions are necessary: beware of end-of-line spaces; they corrupt layout and cause {\tt underfull/overfull hbox} warnings during third pass. To avoid that, it is recommended to use \verb|%| at the end of source lines. %\subsection{ABC2MTeX} % Generally: yes %\subsection{MIDI2TeX} % s.a.a. (I already use a modified one, Thanx to C) %\subsection{SceX} % next time \section{From \musictex~to \musixtex: {\tt musixcpt}} \label{compatibility} This file is intended to run `{\bf old}' input files with as less changes (read \verb|musicdoc| {\bf and} \musixtex's laws~!) as possible. It slows down the speed and makes it impossible to use some\footnote{This was the will of one of the authors (A.E.) but we (we=D.T.) are now tending to remove any incompatibilities of {\tt musixcpt} with plain \musixtex.} of \musixtex\ commands. To run \musictex\ examples --- not withstanding restrictions related to glue and ``hard'' spacings forbidden with \musixtex\ --- just replace all previous \verb|\input music*| by: \verb|\input musixtex| \verb|\input musixcpt| \noindent and, optionally \verb|\input musixsty| \subsection{Compatibility restrictions} The \ttxem{musixcpt.tex} file holds up compatibility to \musictex's sources, but there are some restrictions, which are caused either by missing glue in \musixtex\ --- sometimes ugly, but generally harmless --- or by some hard spacings such as \verb|\hbox|es containing lyrics exceeding the \keyindex{noteskip} dimension, and resulting in ``overfull hbox[es]'' that is, notes and symbols outside the score limits, with the heavy vertical bar as a standard \TeX\ punishment. The easiest way to avoid this consists in ending systematically \ital{all}\footnote{ALL lines, not ``most of them''.} input lines between \keyindex{startpiece}...\keyindex{stoppiece}\footnote{or \keyindex{Stoppiece} or \keyindex{endpiece} or \keyindex{Endpiece}.} with a comment sign\footnote{For \TeX perts: every line which does not end with a command}, namely a ``\verb|%|''. \medskip Besides, one might want to have a unique source file to be compiled with both the \musictex\ format and the \musixtex\ format, and\footnote{This might be considered as an excessive requirement, but we (D.T.) think it is a good way of including \musixtex's new facilities...} taking advantage of some specific possibilities of \musixtex. The leads to a need of testing whether the source file is compiled with one format or the other. In fact this test is easy:\zkeyindex{mxversion} \verb|\ifx\mxversion\undefined| \ \ \ the specific \musictex\ code \verb|\else| \ \ \ the specific \musixtex\ code, taking advantage of new features \verb|\fi| \medskip Several examples are now included in \musictex's examples, for example {\tt pacifiqn.tex}. Of course this would fail if the user inadvertently decided to define the command {\Bslash mxversion} in his source text. %\check \subsection{Additional commands in {\tt musixcpt.tex}} The tentative user looking in given examples might find commands not described in the \musixtex\ manual (this one). Most frequent are (in case of missing description, revert to \musictex's manual, namely {\tt musicdoc.tex}, {\tt musicdoc.dvi}, {\tt musicdoc.ps}, {musicdoc.lj}, etc.): \begin{itemize} \item\keyindex{qh} : same as \verb|\qb|, but was different with \musictex, since it distinguished notes hanging above (\verb|\qb|) and below (\verb|\qh|) the beam(s). \item\keyindex{debutmorceau} : nearly but not exactly the same as \verb|\startpiece|. \item\keyindex{suspmorceau} : suspends the score at the end of the line, in order to permit inserting ordinary \TeX\ commands. Similar to \keyindex{stoppiece} but performs line counting necessary then using \musictex's \verb|\autolines| feature. \item \keyindex{reprmorceau} is synonym of \verb|\contpiece|. \item \keyindex{lreprmorceau} is synonym of \verb|\contpiece|. \item \keyindex{preprmorceau} ejects a newpage and performs \verb|\contpiece|. \item \keyindex{finmorceau} is synonym of \verb|\Stoppiece|, i.e. with heavy ending double bar.. \item\keyindex{barre} : same as \verb|\bar|. \item\keyindex{dsoupir} : same as \verb|\ds|. \item\keyindex{qsoupir} : same as \verb|\qs|. \item\keyindex{demisoupir} : same as \verb|\ds|. \item\keyindex{temps} : was glue in \musictex, now equivalent to \verb|\empty|. \item\keyindex{autolines} is fit for scores with bars of regular length: after \keyindex{startpiece}, you code the following macro: \medskip\Bslash autolines $tml$ \medskip\noindent\rm where $t$ is the number of \ital{elementary spacings} (the length of {\Bslash notes...\Bslash enotes}) in an average bar, $m$ is the number of bars you wish in a line and $l$ is the number of lines you wish in a page. This sets some parameters, namely \keyindex{maxbarsinline} and \keyindex{maxlinesinpage} which are simply used to count the bars (counter is \keyindex{barsinline}), optionally perform \keyindex{alaligne} or \keyindex{alapage} (counter is \keyindex{linesinpage}) instead of the normal \verb|barre| or \verb|bar|. You may freely alter the values of these parameters, once they have been established by \keyindex{autolines}. Moreover, you can still force line-breaking of page ejection using {\Bslash alaligne} or \keyindex{alapage} without problem since these macros actually reset the bar counters appropriately. \end{itemize} %\check % \subsection{Often reported problems} %\check \section{Extension Library} All following files are invoked with saying \keyindex{input} \ital{filename} \subsection{musixadd} Increases the number of instruments, slurs and beams up to nine. \subsection{musixbm} Provides 128th notes, either with hooks or with beams, namely the \keyindex{ibbbbbu}, \keyindex{ibbbbbl}, \keyindex{nbbbbbu}, \keyindex{nbbbbbl}, \keyindex{tbbbbbu}, \keyindex{tbbbbbl}, \keyindex{Ibbbbbu}, \keyindex{Ibbbbbl}, \keyindex{cccccu}, \keyindex{ccccca}, \keyindex{zcccccu}, \keyindex{cccccl} and \keyindex{zcccccl} commands. \subsection{musixbbm} Provides 256th notes, only with beams, namely the \keyindex{ibbbbbbu}, \keyindex{ibbbbbbl}, \keyindex{nbbbbbbu}, \keyindex{nbbbbbbl}, \keyindex{tbbbbbbu}, \keyindex{tbbbbbbl}, \keyindex{Ibbbbbbu} and \keyindex{Ibbbbbbl} commands. \subsection{*musixcho}\label{song} These are some macros fit for chorus music. Provides following commands: \keyindex{biglbrace}, \keyindex{bigrbrace}, \keyindex{braceheight}, \keyindex{Dtx} and \keyindex{Drtx} for double text, \keyindex{Ttx} and \keyindex{Trtx} for triple text, \keyindex{Qtx} and \keyindex{Qrtx} for quadruple text. \keyindex{tx}\verb|{|$text$\verb|}|, \keyindex{rtx}\verb|{|$text$\verb|}| for text of songs, with text extending to right instead centered. \keyindex{hf}\verb|{|$m$\verb|}| sets text continuation rule of width $m$ \verb|\noteskip|. \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} See {\tt musixdoc.tex} source to get the coding of this long example. Note that, since vertion T.89, multiple line texts are vertically justified with a \keyindex{ChroirStrut} macro defined as \verb|\vphantom{\^Wgjpqy}| to eliminate zigzagging lyrics lines. %\check \subsection{musixdat} Here is the command \keyindex{today} defined for several languages. The default is \keyindex{dateUSenglish}, but this can freely be changed at end of \ttxem{musixdat.tex}. Also available are \keyindex{dategerman}, \keyindex{dateaustrian}, \keyindex{dateenglish} and \keyindex{datefrench}, which yields: \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{*musixdia}\label{diam} These file is automatically loaded, if you use {\tt musixper.tex}. Here is the list of notes it provides: \begin{itemize} \item The \raise.5ex\hbox to 1em{\musixchar37} symbol is obtained using the \verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded with a ``\verb|y|'' (think of ``dyamond''). Available are \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}. The symbol without a stem can be obtained by saying \keyindex{ynq} and the non-spacing variant with \keyindex{zynq}. \item The \raise.5ex\hbox to 1em{\musixchar38} symbol is obtained using the \verb|\qu|, \verb|\qb|, \verb|\cu|, etc. macros preceeded with a ``\verb|d|'' (think of \ital{diamond}). Available are \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}. The symbol without a stem can be obtained by saying \keyindex{dnq} and the non-spacing variant with \keyindex{dznq}. \end{itemize} %\check \subsection{*musixeng} This package is made for music typesetters who are allergic to rest names taken from French, German or Italian\footnote{By the way, note that a \ital{whole rest} is called \ital{pause} in French, \ital{ganze Pause} in German, and \ital{pausa} in Italian.}. It does not provide new features, only new command names. \begin{quote}\begin{tabular}{ll}\hline \ital{original}&\ital{alternative}\\\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} \keyindex{slide}\verb|{|pitch\verb|}{|elements\verb|}{|slope[-8 to 8]\verb|}|~: glissando. \keyindex{raggedstoppiece} : provides a ragged last line. %\check \subsection{musixf{}l{}l} \input musixfll \ttxem{musixfll.tex} may be used to modify the automatic generation of \ixem{ledger lines}. Ledger lines --- German Hilfslinien --- are generated for notes placed above or below normal staff lines. Ledger lines normally exceed the note head by a quarter of the width of the note head. If notes are set very narrowly, the ledger lines of consecutive notes may meet. In this case a player may misread the ledger lines as normal lines. Therefore \musixtex{} shortens the ledger lines if notes are set so narrowly that the ledger lines may meet. Because \musixtex{} does not know whether consecutive notes need ledger lines, this automatic shortening may be superfluous. So this automatism may be switched off and on. After including \ttxem{musixfll.tex} the automatic shortening of ledger lines is switched off. Afterwards 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}, while single notes requiring ledger lines look better with \keyindex{longledgerlines}. \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} Provided that four line staffs (see \ref{stafflinenumber}) are used, \itxem{gregorian music} is frequently quoted using specific \itxem{neumes}, established in the thirteenth century, and this way of coding has been commonly used for the coding of liturgical chant in the Catholic Church until the middle of the twentieth century. Nevertheless, gregorian chant coding is not really an antique feature, since it has been codified in 1905 with recent quasi-official updates in the eightties. {\noindent\sl REMARK:\label{gregoriancappella} strictly writing, including gregorian chant coding in \musixtex{} is a pure nonsense. Of course, many people find it interesting to have the possibility of coding gregorian neumes together with modern music, but having a score with both a gregorian chant and a choir or instruments is definitely \ital{heretic}. The reason is that grogorian chant must be sung \ital{a cappella}, without instrument and without underlying polyphony. As a matter of fact, serious music schools ceased to teach how to accompany gregorian chant approximately 20 years ago. However, there are still some pseudo-gregorian chants in the Catholic repertoire which deserve organ or orchestra accompaniment: these are latine speaking gregorian imitations composed in the eighteenth century, such as the famous \ital{Angel's mass} of the \ital{Messe royale de Du Mont} which were printed using gregorian neumes by official catholic publishers instead of using the music denotations fit for renaissance and baroque pieces...} Symbols available in \musixtex\ are mainly those of the 1905 standard, as provided by Beda {\sc Szukics}\index{Szukics, B.@{\sc Szukics, B.}}: \subsubsection{The clefs} \begin{itemize} \item The gregorian C clef: \raise 2.5pt\hbox to 1cm{\gregorianCclef\hfil}~= \keyindex{gregorianCclef}, normally activated for instrument $n$ with the command: \begin{quote} \keyindex{setaltoclefsymbol} $n$ \keyindex{gregorianCclef} \end{quote} \item The gregorian F clef: \raise 2.5pt\hbox to 1cm{\gregorianFclef\hfil}~= \keyindex{gregorianFclef}, normally activated with the \verb|\setbassclefsymbol| command. \end{itemize} \subsubsection{The basic elementary symbols} \begin{itemize} \item Diamond shaped \itxem{punctum} (of different shape compared to the percussion diamond): \raise 2.5pt\hbox{\xgregchar1}~ = \keyindex{diapunc}~$p$~. \item Square \itxem{punctum}: \raise 2.5pt\hbox{\xgregchar5}~ = \keyindex{squ}~$p$ or \keyindex{punctum}~$p$~. \item Left stemmed \itxem{virga} (not in the 1905 gregorian standard): \raise 2.5pt\hbox{\xgregchar6}~ = \keyindex{lsqu}~$p$~. \item Right stemmed \itxem{virga}: \raise 2.5pt\hbox{\xgregchar7}~ = \keyindex{rsqu}~$p$ or \keyindex{virga}~$p$~. \item \ital{Apostropha}\index{apostropha}: \raise 2.5pt\hbox{\xgregchar3}~ = \keyindex{apostropha}~$p$~. \item \ital{Oriscus}\index{oriscus}: \raise 2.5pt\hbox{\xgregchar10}~ = \keyindex{oriscus}~$p$~. \item \ital{Quilisma}\index{quilisma}: \raise 2.5pt\hbox{\xgregchar125}~ = \keyindex{quilisma}~$p$~. \item \ital{Punctum auctum} (up)\index{punctum auctum}: \raise 2.5pt\hbox{\xgregchar9}~ = \keyindex{punctumauctup}~$p$~. \item \ital{Punctum auctum} (down)\index{punctum auctum}: \raise 2.5pt\hbox{\xgregchar8}~ = \keyindex{punctumauctdown}~$p$~. \item Diamond shaped \ital{punctum auctum} (down)\index{punctum auctum}: \raise 2.5pt\hbox{\xgregchar2}~ = \keyindex{diapunctumauctdown}~$p$~. \item \ital{Punctum deminutum}\index{punctum deminutum}: \raise 2.5pt\hbox{\xgregchar4}~ = \keyindex{punctumdeminutum}~$p$~. \item \ital{Apostropha aucta}\index{apostropha aucta}: \raise 2.5pt\hbox{\xgregchar11}~ = \keyindex{apostropha aucta}~$p$~. \end{itemize} All non-\ital{liquescens} symbols have a non-spacing variant, which are \keyindex{zdiapunc}, \keyindex{zsqu}, \keyindex{zlsqu}, \keyindex{zrsqu}, \keyindex{zapostropha} and \keyindex{zoriscus}. \subsubsection{The 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; to implement also triple symbol neumes, another shifting macro is provided, namely \keyindex{dgroff} which performs an offset twice the offset of \verb|\groff|.. Since most of these symbols depend on relative pitches of their components, one could not provide all compact combinations as single symbols. Following compound symbols are: \begin{description} \item[\keyindex{bivirga} $n$ $p$], for example: \begin{music} \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 \endextract \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 \endextract \end{verbatim}\end{quote} \item[\keyindex{trivirga} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{bistropha} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{tristropha} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{clivis} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{lclivis} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{podatus} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{podatusinitiodebilis} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{lpodatus} $n$ $p$], for example: \begin{music} \elemskip 10pt \instrumentnumber 1 \setstaffs 1 1 \setlines 1 4 \setclef 1{3000} \setaltoclefsymbol 1 \gregorianCclef \startextract \notes \lpodatus ab\enotes \notes \lpodatus ce\enotes \endextract \end{music} \item[\keyindex{pesquassus} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{quilismapes} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{torculus} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{torculusinitiodebilis} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{Porrectus} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \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 $$ n-4 \leq p \leq n-1 $$ otherwise a diagnostic occurs. Note also that \keyindex{bporrectus} provides the first curved part of the \verb|porrectus| command, if you need it... It has two arguments, the starting pitch, the lower pitch. \item[\keyindex{Porrectusflexus} $n$ $p$ $q$ $r$], for example: \begin{music} \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 \endextract \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} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{climacusresupinus} $n$ $p$ $q$ $r$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{lclimacus} $n$ $p$ $q$], for example: \begin{music} \elemskip 10pt \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 \endextract \end{music} \item[\keyindex{scandicus} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{salicus} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{salicusflexus} $n$ $p$ $q$ $r$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{trigonus} $n$ $p$ $q$], for example\footnote{The second example is in principle irrelevant, but it shows the possibilities, in case of.}: \begin{music} \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 \endextract \end{music} \end{description} \subsubsection{The liquescens complex neumes}\index{liquescens neumes} \begin{description} \item[\keyindex{clivisauctup} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{clivisauctdown} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{podatusauctup} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{podatusauctdown} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{pesquassusauctdown} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{quilismapesauctdown} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{torculusauctdown} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{Porrectusauctdown} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{climacusauctdown} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{scandicusauctdown} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{salicusauctdown} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{clivisdeminut} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{podatusdeminut} $n$ $p$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{torculusdeminut} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{torculusdebilis} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{Porrectusdeminut} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{climacusdeminut} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \item[\keyindex{scandicusdeminut} $n$ $p$ $q$], for example: \begin{music} \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 \endextract \end{music} \end{description} %\check \subsection{musixgui} \ttxem{musixgui.tex} provides some macros for typesetting \itxem{guitar tablatures}. Most times they are used above modern music. To give an 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 \keyindex{guitar} sets the grid, the chord name, the relative barre and play indicators. As example the first chord in upper example was coded as: \verb|\guitar G{}o-----\gbarre3\gdot25\gdot35\gdot44| where the first argument is put above the grid to indicate the chord name, the second is empty (relative barre) and the other six indicates if the string is played 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 barre. The whole chord may be vertically shifted with \keyindex{raiseguitar}\verb|{|$n$\verb|}|, where $n$ is a number in units of \keyindex{internote}. It might be useful to reserve additional space above the chord by advancing \keyindex{stafftopmarg} to something like \verb|stafftopmarg=10\Interligne|. If you need the chords more often, it might be useful to define your own macros, e.g.~saying: \verb|\def\Dmajor{\guitar D{}x-----\gdot42\gdot53\gdot62}%| \subsection{*musixlit}\label{litu}\label{otherbars} Provides a way of coding intermediate between gregorian and baroque/romantic, still used\footnote{Was written by A. {\sc Egler}. To my knowledge (D. T.), liturgical works are either written with modern music quotation, or using the gregorian \itxem{neumes} which have been normalized in 1905.} for liturgical works! \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} \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{musixmad} \ttxem{musixmad.tex} increases the number of instruments, slurs and beams up to twelve. \subsection{musixper}\label{perc} Provides specific percussion symbols, especially \keyindex{drumclef} (used in section \ref{sectiondrum}). These definitions cause problems since drum and percussion notation is not standardized. So it might be clever to specifiy the names of instruments for each used symbol. %\check \begin{itemize} \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 \ital{DiagonalCross} for e.g. closed \itxem{hihat}). 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 \ital{DiagonalcrossHalfcircle} for e.g. half open \itxem{hihat}). 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 \ital{DiagonalCross and O for circle} for open \itxem{hihat}). 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 with a ``\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 with a ``\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 with a ``\verb|ro|'' (think of \ital{RhOmbus} for e.g.~shaker). 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 with a ``\verb|tg|'' (think of \ital{TrianGle} for e.g.~rattle). 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 with a ``\verb|k|'' (for bongos). Available are \keyindex{kqu}, \keyindex{kql}, \keyindex{kqb}, \keyindex{kzq}, \keyindex{kcu}, \keyindex{kccu}, \keyindex{kcl} and \keyindex{kccl}. \end{itemize} \subsection{musixpoi} Adds pointed compact definitions of 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{musixstr}\label{musixstr}\index{musixstr@{\tt musixstr.tex}} This file provides a set of indications for \itxem{string instruments} (e.g. \ixem{violin}) execution, provided by Werner {\sc Icking}\index{Icking, W.@{\sc Icking, W.}}. {\input musixstr The symbols described below should be posted at the wanted place using \verb|\zcharnote|$p$\verb|{|$$\verb|}|. \begin{quote}\begin{description} \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}} This file is made for non \TeX perts and/or lazy score typesetters. Although related to \musixtex, it has little to see with music, but it helps writing all surrounding texts, like \itxem{titles}, \itxem{author names}, historical comments, etc. It provides \begin{itemize} \item a set of font definitions of common use, such as \verb|\tenrm|, \verb|\eightrm|, etc., \item a reasonable setting of \keyindex{hsize}, \keyindex{vsize}, \keyindex{hoffset}, \keyindex{voffset} dimensions in order to have a good layout fit for European A4 paper\footnote{People addicted to \itxem{legal} or other paper sizes should correct it for their own purpose.} \item a set of text size commands: \begin{description} \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 a set of commands to make easy piece titles: \begin{itemize} \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|\\| makes the author's name displayed on two or several lines. \item \keyindex{shortauthor} to be put at the bottom of each page, \item \keyindex{fulltitle} which is the big 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, in front of the author's name (it may contain several \verb|\\| to display it on several lines, \item \keyindex{maketitle} which displays all the previous stuff. \end{itemize} \item Some additional commands to make \itxem{footnotes}. These commands are \begin{itemize} \item The normal Plain-\TeX\ \keyindex{footnote} command which has two arguments --- not only one as in \LaTeX\index{LaTeX@\protect\LaTeX} --- namely the label of the footnote, i.e. any sequence of characters and not only figures, and the text of the footnote. \begin{important} the \verb|\footnote| command does not work inside boxes\footnote{This is not a \TeX-bug, this is a feature!}, therefore this command must not be issued within music. But another alternate feature is provided (see below). \end{important} \item The \keyindex{Footnote} command, which counts the footnotes and uses a number as the label of the foot note (equivalent to \LaTeX's \verb|\footnote| command). The same restriction applies concerning footnotes within the music coding. \item The \keyindex{vfootnote} command, taken from the Plain-\TeX, which makes the footnote itself at the bottom of the current page, but does not put the footnote label at the place it is referred in the main text. Thus, if a footnote is needed whose reference lies inside the music itself, the music typesetter must perform it in two steps: \begin{enumerate} \item quote the reference inside the music, using \verb|zcharnote| for example, \item post the footnote itself, using \verb|\vfootnote| outside the music, either before \keyindex{startpiece} (or \verb|\debutmorceau| with {\tt musixcpt.tex}) or between \keyindex{stoppiece} and \keyindex{piececont} or equivalent commands. \end{enumerate} \end{itemize} \end{itemize} Note that \verb|musixsty| should not be used with \LaTeX. \subsection{musixtri}\index{musixtri@{\tt musixtri.tex}} Provides triple pointed 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}. \section{Often reported problems and discussion faxilities} \subsection{Newsgroups}\index{newsgroups} No specific newsgroup exist concerning \mutex, \musictex{} or \musixtex; nevertheless W. Icking saw articles on this topic in {\tt comp.text.tex} as well as in {\tt de.comp.text.tex}. \subsection{Mailing list} A mailing-list does exist which was formerly dedicated to \mutex, and now to \musictex{} and mostly to \musixtex. You can subscribe to it by sending an e-mail to {\tt mutex-request@gmd.de} with the message line\index{mailing list} {\tt subscribe} \subsection{FAQs}\index{FAQ} {\tt gmd.de}, too, has a FAQ which is presently out-of-date and quite unusable since it displays many questions and comments without giving the answer. However, it will be probably enhanced in a near future. This FAQ can be accessed using {\tt ftp}: {\tt ftp://ftp.gmd.de/music/mutex/faq} \noindent and the archive of the mailing list may be accessed also by {\tt ftp}: {\tt ftp://ftp.gmd.de/music/mutex/archive} \noindent or: {\tt http://www.gmd.de/Mail/} {\tt ftp.gmd.de} also contains a lot of stuff concerning music and typesetting music, which can be accessed by WWW at: {\tt http://www.gmd.de/Misc/Music/} \chapter{Installation}\label{installation} \section{*Getting the stuff} As seen before, all the files are available at \itxem{anonymous ftp} \verb|hprib.lps.u-psud.fr| (193.55.39.152) in the directory {\tt /pub/musixtex} The {\tt *.mf} source files are in {\tt /pub/musixtex/mf} \noindent and the {\tt *.tfm} files are in {\tt /pub/musixtex/tfm} \noindent Besides, this manual is in {\tt /pub/musixtex/musixdoc.ps} Another directory, namely {\tt /pub/music\_zips} normally contains {\tt musixtex.zip} which contains all the distribution for PC (\ixem{MS-DOS}) computers. This is only for {\tt ftp}-ing convenience since all source files are directly available in the general directory and subdirectories. In addition a set of examples (i.e. the files whose name does not begin with ``\verb|musix|'') is packed into \ttxem{musixexa.zip} and this manual is also in \ttxem{musixdoc\_ps.zip} (the PostScript version) and \ttxem{musixdoc\_lj.zip} (the PCL version for Laserjets). Finally the PK files of specific fonts are provided in \ttxem{musixpk.zip}, \ttxem{musixpk3.zip} (300 and 360 dpi) and \ttxem{musixpk6.zip} (600 dpi); getting these files is useless if you are able to \MF{} the files whose {\tt *.mf} are provided in the main package. {\sl\noindent CAUTION: the zipped files are provided in the PC line coding, i.e. with {\tt } at line ends, rather than single {\tt } as in the \unix{} coding. This means that \unix{} users must carefully unzip these files using the ``{\tt-a}'' (our ``{\tt-aa}'' options of {\tt unzip} to get correct coding of the source files. Other wise they would find a lot of ``{\tt\^{}M}'' in their files, which may cause further troubles.}\index{PC end of line coding}\index{\^{}M} Besides, /unix{} users can also --- when in directory {\tt /pub} --- ask for: {\tt get musixtex.tar}\quad or {\tt get musixtex.tar.Z}\quad or {\tt get musixtex.tar.gz}\quad and even {\tt get musixtex.zip} Then, the {\tt hprib.lps.u-psud.fr} server will perform required collection and/or compression ``on-the-fly''. Note that in that case the source files will be in the \unix{} coding rather than PC coding of end of lines. Usually, this is harmless for PC editors and \TeX{} motors, but who knows... \ital{Fonts}\index{fonts} are provided in {\tt musixtex.zip} as {\tt *.mf} files but also as {\tt *.tfm} and {\tt*.pk} files for 300~dpi printers or previewers. Other values of the \ixem{dpi} parameter are also provided in \verb|musixpk*.zip|. Needed fonts are {\tt musix20}, {\tt musix16}, {\tt musix13}, {\tt musix11}, {\tt musix24}, {\tt musix29}, {\tt musixspx}\footnote{Inside this file are two types of piano brackets available. The default you can see printing this doc, the other you can see printing {\tt musicdoc}. If you prefer the other, which are designed by Stanislav Kneifl, follow the instruction inside {\tt musixsps.mf}},\index{Kneifl, S.@{\sc Kneifl, S.}} {\tt xslhu20}, {\tt xslhu16}, {\tt xslhu24}, {\tt xslhu29}, {\tt xslhd20}, {\tt xslhd16}, {\tt xslhd24}, {\tt xslhd29}, {\tt xslu20}, {\tt xslu16}, {\tt xslu24}, {\tt xslu29}, {\tt xsld20}, {\tt xsld16}, {\tt xsld24}, {\tt xsld29}, {\tt xslz20} and {\tt xslhz20}. \section{Installing the fonts} \ital{All} files with the extension {\tt .tfm}\footnote{\TeX\ font metric, needed directly from binary for \TeX ing the examples or the doc.} must be copied in that directory, in which the other {\tt .tfm}'s are. If you get the error message: {\tt! Font ... not loadable: Metric (TFM) file not found.} \index{Metric (TFM) not found}\noindent this means you have not succeeded to install the {\tt .tfm}'s in the right directory. This is not a \musixtex\ error, but a local \TeX\ implementation error/misunderstanding. Then read or re-read your \TeX\ installation doc, put the {\tt tfm}'s at the very right place and start again. The {\tt .tfm} only contains the width, height and depth of every character of a font and is the only needed font-file for \TeX ing. For previewing and/or printing you need the pixel fonts. On most systems they are packed and have the extension \verb|.pk|(but perhaps you need the \verb|.gf|-files or \verb|.300|-files or other: Ask your local \TeX-wizard\footnote{I have read a mail from somebody, who has said, that he is able --- because he is a professional --- to write an \verb|install| for installation of packages like \musixtex. Really? Do it.}!) Most needed and spreaded are fonts for \verb|dvi|-driver with resolution of 300dpi. Using em\TeX{} associated drivers the \verb|.pk|-fonts have to be copied in \verb|...\pixel.lj\300dpi\| as a default, and in general in a directory specified by the environment variable {\tt DVIDRVFONTS}\footnote{Look at {\tt dvidrv.doc} for more information.}. For other resolution refer your local manual or \TeX-wizard. \section{Building a format}\label{formatbuild} Introducing these files in a \itxem{format} (with \ixem{INITEX}) is a mean of saving computer time and memory. Besides, if you include {\tt musixcpt.tex} in your format, you will have a format compatible with \musictex\ and --- provided you made the symmetrical format for \musictex\ --- you can compile exactly the same source files with both \musictex\ and \musixtex, which is a good means of finding whether some strange behaviour is specific to one implementation of the other, or whether you made some general mistake\footnote{Not all authors have the same opinion :-). But I was told, that my opinion doesn't count, so forget it -- A.E.}... However, although having a \musixtex{} format saves much time, it can also lead to time wasting weird things in case of updates~: if you update your source of {\tt musixtex.tex} but not the format {\tt musixtex.fmt}, then running the command {\tt musixtex} will invoke the old unmodified format... \subsection{Starting from nil} \begin{enumerate} \item Build up a file called \verb|musixtex.ini| with following content:\\ \begin{verbatim} \input plain % or dcplain or eplain or see later a safer way of doing \input musixtex % here can you add your most needed files from extension lib % musixcpt at very last ! \end{verbatim} \verb|\def\fmtname{musixtex}\def\fmtversion{|{\tt\mxversion}\verb|}| \verb|\dump| \item \verb|initex musixtex.ini|\footnote{depends on your implementation}. \item \verb|tex &musixtex| \ital{jobname}\footnote{depends on your implementation}. \end{enumerate} \vfill \subsection{Starting from your usual plain format} \begin{enumerate} \item First, try to find --- on your favourite system --- whether \verb|tex| is an executable routine, or a \verb|tex.bat| command in MS-DOS or a \ital{shell} procedure under \unix. \item If \verb|tex| is a command try to find the ``{\tt initex}'' local command: usually it is either \verb|initex| or \verb|tex -i|. \item Try to find the name of the ``plain \TeX'' format (usually posted when \TeX ing anything). \item Then, \ital{mutatis mutandis}, assuming the ``{\tt initex}'' command has the name \verb|initex| and the ``plain \TeX'' format is \verb|plain|, run the shell command: \medskip \verb|initex \&plain musixtex.ins| \medskip\noindent which will produce a format file {\tt musixtex.fmt} which you shall put in the same directory as the others formats (hoping you have the access rights...). Note --- in \unix{} systems --- the backslash before the \verb|&| which tells the system to consider this character as a member of the command, not a batch execution indication. Once this is done, you can \musixtex\ any score you have written using a command such as: \medskip \verb|tex \&musixtex my-score.tex| \medskip\noindent that is, specifying your new format {\tt musixtex.fmt} instead of the usual {\tt plain.fmt}. For \ixem{MS-DOS}/{\tt emTeX} users the format building command is: \verb|tex386 -i &plain musixtex.ins| \noindent (you can change \verb|plain| into \verb|dc-plain| or any other plain-like format you have) then: \verb|copy musixtex.fmt \emtex\btexfmts\*.*| \noindent and the {\tt musixtex.bat} command can be % It makes no sense to state -mt20000, perhaps this is useful for MusicTeX, % (it uses hyphenation to break a line) but not for MusiXTeX (it uses musixflx) \begin{quote}\begin{verbatim} if exist %1.tex goto tex goto end :tex if exist %1.mx1 del %1.mx1 if exist %1.mx2 del %1.mx2 tex386 -mt20000 &musixtex %1 %2 %3 %4 %5 %6 %7 %8 %9 if errorlevel 2 goto end musixflx %1 if errorlevel 1 goto end tex386 -mt20000 &musixtex %1 %2 %3 %4 %5 %6 %7 %8 %9 :end \end{verbatim}\end{quote} \end{enumerate} \begin{flushright}\it Don't expect a perfect package or miracles.\\ There will be enough unexpected miracles.\\[\smallskipamount] {\sc Eberhard Mattes} \end{flushright} \chapter{Examples} Due to compatibility problems with \LaTeX\ (used to produce this notice) large examples must be \TeX -ed separately, i.e.\ using plain \TeX{} and not \LaTeX. Therefore, the \musixtex\ future user is suggested to produce some of the following examples and to look carefully at the way some special features have been coded. When producing this examples, care should be taken about the fact that several given files are supposed to be included (by means of \keyindex{input}) in other files. Thus the only good files to be directly \TeX-ed are those which begin with \verb|\input musixtex| or \verb|% \input musixtex|. This latter command is often commented out so that the examples can be run either using a \musixtex\ format including {\tt musixcpt.tex} and {\tt musixsty.tex} --- namely the format generated by {\tt musixtex.ins} --- or using a \musictex\ format including {\tt musictrp.tex}, {\tt musicvbm.tex} and {\tt musicsty.tex} --- namely the format generated by {\tt musixtex.ins}. In addition, it must be noted that most DVI previewers and laser printers have their origin at one inch below and one inch right of the right upper corner of the paper, while the musical examples have their upper left significant corner only at one centimeter right and below the left top of the paper. Therefore, special parameters have to be given to the DVI transcription programs unless special \keyindex{hoffset} and \keyindex{voffset} \TeX\ commands are introduced within the source \TeX\ text. \section{Clean \musixtex\ examples} \begin{itemize} \item{\tt avemaria.tex} to get the ``M\'editation'' (alias ``Ave Maria'') by Charles {\sc Gounod} for organ and violin or song in clean \musixtex-input. \index{Gounod, C.@{\sc Gounod, C.}} \item{\tt traeumer.tex} to get the famous ``Tr\"aumerei'' by Robert {\sc Schumann} for piano, in genuine \musixtex-input but with some additions to perform ascending \itxem{crescendos}. \index{Schumann, R.@{\sc Schumann, R.}} \item{\tt parnasum.tex} to get the first page of ``Doctor gradus ad Parnassum'' by Claude {\sc Debussy} for piano.\index{Debussy, C.@{\sc Debussy, C.}} \item{\tt glorias.tex} to get a local melody for the French version of \ital{Gloria in excelsis Deo}, showing use of lyrics commands. {\tt gloriab.tex} is the same, with organ accompaniment. \item Other clean \musixtex\ examples seem to be no more compatible with the present version, but they should be updated in a near future. \end{itemize} These examples are packed (zipped) in the {\ttxem{musixexa.zip}} file of the \musixtex\ distribution. \section{Nearly compatible \musictex\ examples} These are examples using not only {\tt musixtex} but also {\tt musixcpt} and {\tt musixsty}, which means their coding is easily understandable for \musictex{} previous users. However, they cannot be run as is with \musictex, since a few specific commands have been included, either for spacing, or for oblique slurs. They are given in {\tt musixexa.zip}, for example: \begin{itemize} \item {\tt gymnoman}~: an imitation of Erik {\sc Satie}'s \ital{Gymnop\'edies}\index{Satie, E.@{\sc Satie, E.}}, \item {\tt canticor.tex}/{\tt canticox.tex}~: a famous tune by Georg Friedrich {\sc Haendel}\index{Haendel, G.F.@{\sc Haendel, G.F.}}, \item {\tt ilfaitda.tex}/{\tt ilfaitdx.tex}~: a famous choral by J.-S. {\sc Bach}\index{Bach, J.S.@{\sc Bach, J.S.}} adapted with French lyrics for French churches, \item {\tt widor\_20.tex}~: the famous toccata for organ by Charles-Marie {\sc Widor}\index{Widor, C.M.@{\sc Widor, C.M.}} in 10 pages (more compact than commercial editions, and easier to play if nobody can turn the pages), and {\tt widor\_16.tex} which is the same in 16~pt size, i.e. more compact. \item{\tt souveni*.tex}~: a nice French tune of the fifties, by Oreste {\sc Rossi} and Fernand {\sc Capitani} with several transpositions. \item {\tt marcello.tex}~: the adagio of Benedetto {\sc Marcello}\index{Marcello, B.@{\sc Marcello, B.}}'s oboe concerto, transcribed for organ. \item {\tt hymnepas.tex}~: a modern Eastern canticle by A. {\sc Gouzes} and {\sc Palestrina}, showing heavy use of \keyindex{hardlyrics} for choral music.\index{Gouzes, A.@{\sc Gouzes, A.}} \end{itemize} \section{Compatible \musictex\ examples} They are all the examples provided in the \musictex\ distribution. To run them the easiest way is to have both a {\tt musictex} and a {\tt musixtex} format as described in \ref{formatbuild}. Otherwise, insert \verb|\input musixtex| \verb|\input musixcpt| \verb|\input musixsty| \noindent at the beginning of each example, and \TeX\ it. \section{Looking at examples before installing \musixtex} Most of the above examples (and some others) are posted, ready to print, as PostScript files in: \begin{itemize} \item {\tt ftp://hprib.lps.u-psud.fr/pub/music\_scores.zip/*/*/*.zip} (zipped PostScript 300dpi files) \item {\tt ftp://hprib.lps.u-psud.fr/pub/music\_scores.gz/*/*/*.ps.gz} (gzipped PostScript 300dpi files) \end{itemize} Printing them on any PostScript printer (needs A4 paper) is a good means of getting an overview of \musixtex's capabilities. \printindex \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{