diff options
Diffstat (limited to 'Master/texmf-dist/doc/generic/pmx/pmxccn/pmxccn2618.tex')
-rw-r--r-- | Master/texmf-dist/doc/generic/pmx/pmxccn/pmxccn2618.tex | 7821 |
1 files changed, 0 insertions, 7821 deletions
diff --git a/Master/texmf-dist/doc/generic/pmx/pmxccn/pmxccn2618.tex b/Master/texmf-dist/doc/generic/pmx/pmxccn/pmxccn2618.tex deleted file mode 100644 index c37fc021c5e..00000000000 --- a/Master/texmf-dist/doc/generic/pmx/pmxccn/pmxccn2618.tex +++ /dev/null @@ -1,7821 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / LaTex header file starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% ------------------------------------------------------ -% - % This version dated Thu 2012 Jan 19 /23:8 /ccn -% -% ------------------------------------------------------ - -\documentclass[11pt,twoside]{report} -\listfiles -% \usepackage[ten]{vrsion} - \usepackage[cp437]{inputenc} - \usepackage[english]{babel} - \usepackage{amsmath,index} - \usepackage[dvips]{graphicx} - \usepackage[dvips,colorlinks=true,linkcolor=red]{hyperref} - - \newfont{\hv}{phvbo at 14pt} - - \textheight 600pt \textwidth 450pt - \topmargin -10mm \headsep 10mm - \oddsidemargin 4mm \evensidemargin 0mm - \marginparwidth 3em - \fboxrule 2pt % standard in LaTeX article style is 0.4pt - \fboxsep 9pt % standard in LaTeX article style is 3pt - \hfuzz 2pt - - \setcounter{secnumdepth}{3} - \setcounter{tocdepth}{3} - -\renewcommand{\thechapter}{\Alph{chapter}} -\renewcommand{\thesection}{\thechapter~\arabic{section}} - -\newcommand{\MusiXTeX}{MusiX\TeX} -\newcommand{\MiKTeX}{MiK\TeX} -\newcommand{\PMX}{\textbf{PMX}} -\newcommand{\MTX}{\textbf{M-Tx}} -\newcommand{\bs}{\ensuremath\backslash} -\newcommand{\Example}{\noindent {\large \textbf{Example :} } - } -\newcommand{\Examples}{\noindent {\large \textbf{Examples :} } - } -\newcommand{\Note}[2][370pt]{\begin{center} \fbox{\begin{minipage}{#1} - #2 \end{minipage} } \end{center} - } -\renewcommand{\seename}{$\;\rightarrow\;$} - -\newcommand{\versionline}[1]{[\, Version \quad 2.618 - \quad Mar.\ 2012] - } -% \keepversion - -\makeindex -\newindex{myindex}{idx}{ind}{Index} -\begin{document} - \shortindexingon - - \pagestyle{headings} - \pagenumbering{Roman} - -\begin{titlepage} -\vspace*{4cm} -\begin{center} - {\Huge \textbf{Typesetting music with {\PMX} } \\[3ex] } - by \\[4ex] - {\LARGE Cornelius C.\ Noack} \\[1ex] - \hspace*{1em}\raisebox{-0.75ex}{\includegraphics{addresses/noack}} - -\vspace{2cm} - {\Large --- Version 2.8 / March 2012} \\ - {\large ({\PMX} features up to version 2.618 included)} -\end{center} - -\end{titlepage} - -% \newpage -% \vspace*{\fill} -\begin{center} - {\Large Acknowledgement} \\[3ex] - - \begin{minipage}{360pt} - This tutorial owes its very existence to the work by \emph{Luigi - Cataldi}, who a few years ago produced a wonderful manual for - {\PMX} in Italian. Luigi's manual features many examples which - help greatly in understanding some of the arguably arcane {\PMX} - notation. - - \medskip -_{manual!Cataldi's Italian {\PMX} manual} _{Cataldi, Luigi} - Even though the Cataldi manual is, as Don Simons has aptly - remarked, ``written in the language of music'', it nevertheless - seemed useful to have access to it for non-Italian speakers, so - Don asked around for help on a `retranslation'. - - \medskip -_{manual!Don Simons' manual for {\PMX}, Version 2.40} _{Simons, Don} - In fact, that is what the present tutorial started out with: - essentially a retranslation of the {\PMX} part of Luigis manual - back into English, using, where that seemed feasible, Don's - original {\PMX} manual. I had been thinking for some time of - producing some examples (and an index) for the updated ({\PMX} - 2.40) version of that manual, and now, taking Luigis italian - version as a basis, it seemed an easy thing to do. - - \medskip - Of course, as such projects go: soon after the first version had - appeared in 2002, it tended to get out of hand --- Don Simons - actively produced one new beta version of {\PMX} after the - other, and I simply could not keep up with his pace. - - \smallskip - So alas: 5 long years went by before the first update of - the tutorial -- reflecting all {\PMX} changes from Version 2.40 - to Version 2.514 , in one giant step! -- had become possible. - - But, incessantly, as the development of modern {\TeX} and - {\LaTeX} has moved on in an accelerating pace, and so have - {\MusiXTeX} and {\PMX}. This tutorial was also bound to - follow suite. So now the current status of {\PMX} - (\texttt{2.618}) and this tutorial are closely synchronized. - - \bigskip - After thanking Luigi, in particular for his kind permission to - use his version of the manual and its examples liberally, it - behooves me to thank Don even more, not only for originating and - continuously maintaining and improving {\PMX}; his suggestions - and continuous assistance in my work on this tutorial throughout - the years were invaluable, as was his conscientious reading and - improving, from the first draft to the present version. Many - friends (too numerous to mention all of them) kept me busy - trying to keep up with their productive suggestions and - clarifications on the - \href{mailto:tex-music@tug.org}{\underline{{\TeX}-music users' list}} - during the past years. - - \vspace*{\fill} - \begin{flushright} - {\hv In memoriam Daniel Taupin} - \end{flushright} - - \end{minipage} -\end{center} -\vspace*{\fill} - -\newpage\tableofcontents -\listoftables -\listoffigures -\cleardoublepage - -\pagenumbering{arabic} -\setcounter{page}{1} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter A starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\chapter{Introduction} \label{sec:introduction} -\pagestyle{headings} - -\section*{How to use this tutorial} -\addcontentsline{toc}{section}{How to use this tutorial} -_{tutorial} - -The purpose and function of this tutorial is, actually, twofold: for the -novice with {\PMX}, it should be a readable guide to finding out what -{\PMX} does (and what it doesn't), how it is sensibly used, and what to -do when you run into difficulties. For the seasoned user, on the other -hand, it should serve as an extended {\PMX} manual, -\begin{enumerate} - \item giving a reasonably accurate account of \emph{all} the - available features in an order which should make it not too - tedious to find an answer to whatever question one might have, - \item indicating some of the more common uses of straight {\MusiXTeX} - commands to do things not available in {\PMX} directly. -\end{enumerate} - -\medskip -As a consequence of this twofold purpose, the two types of readers -should have two very different approaches: -\begin{description} - \item[The novice] should, after reading Section~\ref{sec:TeXetc}, - turn right to Section~\ref{sec:concepts} and \ref{sec:notes}. - After that you should get your fingers dirty as quickly as - possible: keep your first own {\PMX} file \verb#my_opus.pmx# as - simple as possible, and proudly produce your first print, - following the instructions given in Section~\ref{sec:running}. - From thereon follow your interests! - \item[The seasoned user] will usually need the tutorial mainly to find - out the exact usage of some commands he unforgiveably forgot - about, retrieve some rarely used procedure, or find some clever - gimmick that he never was aware of. Those people will first scan - the whole tutorial quickly in a matter of minutes to see what's - there and gloat about what's missing, and later on rely on the - index -- or look into authoritative source, the - \href{http://icking-music-archive.org/software/pmx/pmx260.pdf}% - {\underline{{\PMX} manual}} by Don Simons. -\end{description} - -_{Quick Reference Table} -Of course, once you have gotten acquainted well enough with {\PMX}, all -you'll ever need is Don Simons' ``Quick Reference Table''\,% -\footnote{The Quick Reference Table is found in the software section of - the \textbf{W}erner \textbf{I}cking \textbf{M}usic - \textbf{A}rchive as - \href{http://icking-music-archive.org/software/pmx/ref260.pdf}% - {\underline{\texttt{ref260.pdf}}}\,. - }. -That summarizes the {\PMX} symbols with all their options and always -reflects the latest version. Errors found in the -Quick Reference Table should be reported to Don Simons directly, whereas -all complaints (outright errors, awkward formulations, missed -subtleties) should be sent solely to the author. - -\bigskip -_{\PMX} -This tutorial refers to {\PMX} 2.618 , as of March 2012 -(formally still a `beta' version). For details on the -differences with previous versions consult the -\href{http://icking-music-archive.org/software/pmx/pmxbeta.html}{% - \underline{list of changes}} of \PMX\ in the software section of -the WIMA (``\textbf{W}erner \textbf{I}cking \textbf{M}usic -\textbf{A}rchive'')\,% -\footnote{For details on the staff-wise transposition feature refer to - \ref{sec:stafftranspos}. - }. - -\section{ {\TeX}, {\MusiXTeX}, {\PMX}, {\MTX} } \label{sec:TeXetc} -_{\TeX} _{\MusiXTeX} _{\PMX} _{\MTX} - - -{\MusiXTeX} is undoubtedly one of the best programs for typesetting -musical scores: it produces ready-to-print output in PostScript and PDF -format, it is stable, is continually updated, and is in the public -domain and thus \emph{totally free}. - -Nevertheless its use seems to be limited, with few exceptions, to -musicians coming from the world of science. {\MusiXTeX} does not `look -and feel' very intuitive, and it sometimes requires a familiarity with -terms that may seem elementary to software programmers but are tough -going for straight musicians. Furthermore, it is not WYSIWYG software -(\textbf{W}hat \textbf{Y}ou \textbf{S}ee \textbf{I}s \textbf{W}hat -\textbf{Y}ou \textbf{G}et). This means that while writing the music you -cannot immediately see the score as it will look when printed, because -you do not write the music graphically as you do by hand, but rather in -terms of a list of symbols that represent it. The system is not -interactive; rather, the process of producing a musical score consists -of several steps: \label{p:intoduction} - -\begin{enumerate} - \item One writes the symbols in a special version of the {\TeX} - language to a normal text file, using any text editor (such as - \textbf{Emacs}, \textbf{Edit} or \textbf{Notepad}), - \item this text file is compiled with {\TeX} to produce a - \texttt{.dvi} output file. This \texttt{.dvi} file is machine - readable and usually can be previewed on the screen, - \item another program, e.g.~\texttt{dvips}, produces a PostScript - file from the \texttt{.dvi} file, which again can be previewed - on the screen or sent directly to a suitable printer. -\end{enumerate} - -This symbolic and non-graphical nature of the program may discourage -many people, but it is in many ways an advantage. Being -fully aware of the symbolic character of the typesetting process while -working on your input lets you concentrate much better on the final -typographic output and keeps you from being distracted by the temptation -to play games with interactiveness. - -{\MusiXTeX} is a collection of `macro's that permits producing musical -scores with the help of {\TeX}, the prestigious electronic typesetting -program written by Donald Knuth, which is mainly used in scientific -typesetting. In providing {\TeX}, Knuth not only put it in the public -domain (to be freely distributed), but stipulated that any application -that uses {\TeX} should also be in the public domain and freely -available, without charge or royalty. -_{Knuth, Donald E.} - -_{{\TeX}} -Before {\TeX} can be used, it has to be properly installed on the -computer system at hand. Installing {\TeX} from scratch is not an easy -task; consult Chapter \ref{sec:installation} for the details. - -Even after everything is properly installed and running, coding a -musical score in the {\MusiXTeX} language still remains a tedious -process. Fortunately, there exist two preprocessors, {\PMX} and {\MTX}, -which dramatically simplify the input process; in fact they provide what -must be among the simplest possible systems of electronically encoding -musical scores. - -_{\MusiXTeX} _{\PMX} _{\MTX} -The first two bars of Mozarts \emph{piano sonata KV 545} illuminate the -difference in coding with either {\MusiXTeX}, {\PMX} or {\MTX}. The -codes given below for the three systems of software all produce the -(identical) output, shown in figure~\ref{fig:mozart}: - -\begin{figure}[!htb] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/mozart.eps} - } - \end{center} - \caption{\textbf{W.A.\ Mozart}, \emph{Sonata K545}, bars 1--2} - \label{fig:mozart} -\end{figure} - -\bigskip\bigskip\noindent -_{\MusiXTeX} -{\MusiXTeX} : - -{\small -\begin{verbatim} -\input musixtex -\parindent10mm -\setname1{Piano} -\setstaffs12 -\generalmeter{\meterfrac44} -\nobarnumbers -\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 -\end{verbatim} -} - -\bigskip\noindent -_{\PMX} -{\PMX} : - -{\small -\begin{verbatim} -2 1 4 4 4 4 0 0 -1 1 20 0.12 -Piano -tt -./ -% Bars 1-2 -c8 g+ e g c- g+ e g | d g f g c- g+ e g Rb / -c2+ e4 g | bd4- c1 d c2 / -\end{verbatim} -} - - -\bigskip\noindent -_{\MTX} -{\MTX} : - -{\small -\begin{verbatim} -Style: piano -Piano: Voices MD MS; Clefs G G; Continuo -Name: Piano -Meter: 4/4 - -%% w120m -c2+ e4 g | b4d- c1 d c2 | -c8+ g+ e g c- g+ e g | d g f g c- g+ e g | -\end{verbatim} -} - -\bigskip -Not only is the {\MusiXTeX} much longer, it undoubtedly is less -intuitive and more complicated than the other two. - -\bigskip -In the present tutorial we shall describe in detail the usage of {\PMX} -and, in a very cursory way, that of {\MTX}. - -_{\MusiXTeX} _{\PMX} _{\MTX} -In the remaining part of this introduction, we treat questions of -installation of the entire system of {\MusiXTeX}~\texttt{1.15} and -{\PMX}. The whole installation procedure may seem a formidable task to -non-experts. But don't despair: your efforts will be rewarded by the -best and simplest system of musical typesetting available. And, to -paraphrase a famous {\TeX} error message: ``If in serious trouble, ask a -wizard for help''. Such wizards are literally at your fingertips; just -sign up and post your problem to the mailing list at ^{WIMA} (the -\textbf{W}erner \textbf{I}cking \textbf{M}usic \textbf{A}rchive), -and someone is bound to be in the mood to answer. - -\section{Installation} \label{sec:installation} -_{Installation} - -Recently, there has been a number of major improvements in the basic -{\MusiXTeX}~\texttt{1.15} software (increasing, e.g., the maximum number -of instruments allowed), and subsequently {\PMX} has also undergone -major improvements. As a consequence, {\PMX} now is really tuned to -\texttt{\MusiXTeX}~\texttt{1.15}: with {\PMX}\texttt{(2.6xx)} you can -make full use of most% -\footnote{An important restriction is: in \PMX\texttt{(2.6xx)} the - maximum number of staves is 24 . - } -of the new features of {\MusiXTeX}~\texttt{1.15}. - -\medskip -The installation instructions given here refer explicitly to installing -{\MusiXTeX}~\texttt{1.15} and {\PMX} under Windows XP; they assume that -you have MiKTeX\,% -\footnote{MikTeX is a {\TeX} system for Microsoft Windows users. - } -installed (version 2.6 or higher; preferably the current -version 2.9 ; cf.\ p.~\pageref{p:tennent}). - - -For Unix, good instructions can be found in the software section of -WIMA: \\ \quad \href{http://icking-music-archive.org% - /software/musixtex/musixtex-for-unix.html}% - {\underline{\texttt{Icking-music-archive.org% - /software/musixtex/musixtex-for-unix.html}}}~. \hspace*{\fill} - - -% \pagebreak -\subsection*{Installation of \MusiXTeX\texttt{~115} - and {\PMX} \texttt{2.6xx} } - -\subsubsection*{\MusiXTeX}~\texttt{1.15} -You can download the basic distribution for {\MiKTeX}~115 from WIMA: - -% \smallskip -\href{http://icking-music-archive.org/software/musixtex/musixtex.zip}% - {\underline{\texttt{icking-music-archive.org/software/musixtex/musixtex.zip}}} . - -\medskip -A comprehensive -- and very readable -- installation instruction manual -for {\MusiXTeX}\texttt{~115} has recently been given by Andre van -Ryckeghem and Don Simons: \\ -\hspace*{\fill} -\verb#http://icking-music-archive.org/software/musixtex/mxinsuse.pdf# -\hspace*{\fill} \\ -on the WIMA software page, which you can download -\href{http://icking-music-archive.org/software/pmxtricks/mxinsuse.pdf}% - {\underline{here}}. \\ -\noindent -Even if you consider yourself an expert in installing high-level -software, it is certainly wise to first read this manual carefully -(it's only 6 pages) before starting the installation this way. - -% \medskip -% One point, pointed out explicitly in the {\MusiXTeX}~\texttt{1.15} installation -% manual, is of particular importance: -% -% \Note{As Don Simons has pointed out, it is safer to load -% {\MusiXTeX}~\texttt{1.15} (and all its subfolders, of course) -% \emph{completely outside} of where {\MiKTeX} is loaded. But -% whether you do that or load {\MusiXTeX} in a subfolder of -% {\MiKTeX} (traditionally named `\texttt{localmiktex}'), you must -% enter the full name of the {\MusiXTeX} main folder in the 'roots' -% list of the {\MiKTeX} `settings' menu; otherwise {\MiKTeX} will -% not be able to access any of the files. -% } - -\bigskip \bigskip -The installation procedure referred to above has the -advantage that it does not rely on the TDS-compliant -data structure of the CTAN (`\textbf{C}omprehensive -\textbf{T}eX \textbf{A}rchive \textbf{N}etwork) -distribution and, a fortiori, on the MikTeX data system -being up-to-date with the development of {\MusiXTeX}. -For many years, this was a serious obstacle against -making comfortable use of CTAN , and thus of MikTeX as -well. - -\medskip -\label{p:tennent} -This has changed drastically in the last few years. As -of 2012, the {\MusiXTeX} software of WIMA is formally -maintained by CTAN as well, and in consequence, -MikTeX is now pledged to be updated with the CTAN data within a -few months at most. In particular, with its current version -(MikTeX 2.9) MikTeX now fully supports {\PMX} 2.603 . - -\medskip -So if you have MikTeX 2.9 installed, all you need to -install {\MusiXTeX}~\texttt{1.15} is to download -\begin{center} - \href{http://mirrors.ctan.org/macros/musixtex/musixtex-texmf.zip}% - {musixtex/musixtex-texmf.zip} -\end{center} -and follow the (terse, but clear) -\href{http://mirrors.ctan.org/macros/musixtex/musixtex-install.pdf}% - {\underline{Installation instructions}} -by Bob Tennent. - -\bigskip -\medskip\noindent -To test the {\MusiXTeX}~\texttt{1.15} installation, download -\href{http://icking-music-archive.org/software/pmxtricks/sample.zip}% - {\underline{sample.zip}} -from WIMA to some temporary folder and unzip it, obtaining the 3 files -\verb#sample.tex#~, \verb#sample.pmx#~, and \verb#pmxrun.bat#~. Then run \\ -\hspace*{10ex} -\verb#etex sample.tex# \\ -in a command line. - -\Note{Make sure that when using basic {\TeX} you \emph{always} run - \texttt{etex.exe} (`extended {\TeX}') and \emph{not} - \texttt{tex.exe} !! Although {\MiKTeX} and {\LaTeX} now use - extended {\TeX} by default, the 2 commands \texttt{tex.exe} and - \texttt{etex.exe} still both exist and \emph{differ}; - {\PMX}~\texttt{2.6xx}, will not run properly under ordinary - \texttt{tex.exe} . - } - -\subsubsection*{\PMX} - -\noindent -Compared to {\MusiXTeX}~\texttt{1.15}, installing {\PMX} 2.6 is a cinch. -All you need to do is -\begin{enumerate} - \item decide which particular version of the \PMX\ 2.6 series you - need: 2.603 is by now almost standard; the new version 2.617 has - a very important new feature regarding - transposing instruments, and 2.618 allows - adjusting the size of the {\PMX} output - automatically to the paper size used\,% - \footnote{remember that formally {\PMX} is still `beta' . - }, - \item download - \href{http://icking-music-archive.org/software/pmx/pmx2618.zip}% - {\underline{pmx 2.618.zip}} - (or another \texttt{2.6xx}) and unzip it, - \item copy \verb#pmxab.exe# and \verb#scor2prt.exe# - to \verb#...\localmixtex\miktex\bin# , - \item copy \verb#pmx.tex# to - \verb#...\localmixtex\tex# , - \item run the {\MiKTeX} FNDB (`\texttt{F}ile - \texttt{N}ame \texttt{D}ata \texttt{B}ase') . -\end{enumerate} - -\medskip\noindent -To test the installation, run \\ - \hspace*{10ex} \texttt{runpmx sample.pmx} \\ -in a command line. - - - -\section{Authors of the Software} \label{sec:authors} -_{authors} - - -\begin{description} - \item[{\MusiXTeX}:] \emph{Daniel Taupin} - _{Taupin, Daniel} - - \href{http://icking-music-archive.org/software/indexmt6.html}% - {\underline{\MusiXTeX}} evolved from Music{\TeX} by - \emph{Daniel Taupin}, a physicist in the Laboratoire de Phisique - des Solides in Orsay, \emph{Ross Mitchell} (CSIRO Division of - Atmospheric Research, Private Bag No.1, Mordialloc, Victoria - 3195, Australia) and \emph{Andreas Egler} (Ruhr--Uni--Bochum, - Ursulastr. 32, D-44793 Bochum). - - {\MusiXTeX} had been maintained actively and conscientiously by - Daniel Taupin until his untimely death in 2001 --- he died - accidentally while climbing in the Alps. He is remembered with a - \href{http://icking-music-archive.org/Memorial/Taupin% - /Statements.html}{\underline{Memorial}} - on the web page of the Werner Icking Music Archive. - - After Taupins death, {\MusiXTeX} seemed quite stable and could - thus, for all practical purposes, be considered `frozen' for a - long time. - - However, nothing as lively as {\MusiXTeX} can really remain - literally frozen forever. A number of improvements have - been continuously added by a group of {\MusiXTeX}perts, and, - finally, Hiroaki Morimoto has kindly provided a new version - of {\MusiXTeX} which corrects known bugs. Then a new and - \emph{strongly enhanced version} of the {\MusiXTeX} manual was - prepared by a group led by Don Simons, which has now been - officially released: {\MusiXTeX}~\texttt{1.15} . It is located - at the - \href{http://icking-music-archive.org/software/indexmt6.html#musixtex}% - {software section} of the Werner Icking Music Archive - (dubbed `WIMA'). - - \bigskip - Finally, here is a list of the authors of essential parts of - {\PMX} and related software: - - \item[{\PMX}:] - \emph{Don Simons} -_{Simons, Don} _{\PMX!author} - - E-mail: \raisebox{-1.0ex}{% - \includegraphics[scale=0.7]{addresses/dsimons} - } - - \item[{\MTX}:] - \emph{Dirk Laurie} -_{Laurie, Dirk} - - E-mail: \raisebox{-1.0ex}{% - \includegraphics[scale=0.75]{addresses/dlaurie} - } - - \item[Musixlyr and Musixser:] - \emph{Rainer Dunker} -_{Dunker, Rainer} - - E-mail: \raisebox{-1.0ex}{% - \includegraphics[scale=0.72]{addresses/rdunker} - } - - \item[PostScript slur package K:] - \emph{Stanislav Kneifl} -_{Kneifl, Stanislav} - - E-mail: \raisebox{-1.0ex}{% - \includegraphics[scale=0.7]{addresses/skneifl} - } - - \item[PostScript slur package M:] - \emph{Hiroaki Morimoto} -_{Morimoto, Hiroaki} - - E-mail: \raisebox{-1.0ex}{% - \includegraphics[scale=0.7]{addresses/hmorimoto} - } -\end{description} - -\section{The Werner Icking Music Archive} \label{sec:Icking} -_{WIMA} _{Werner Icking Music Archive|see{WIMA}} _{Icking, Werner} - -\textbf{Werner Icking} (June 25, 1943 -- February 8, 2001) was the -founder of the \emph{GMD Music Archive}, which contained downloadable -scores, various {\MusiXTeX} programs, a discussion list, and various -other musical resources in the public domain. His contributions to the -development and promulgation of this software were peerless. His -editions of music (in particular the edition of the complete `Urtext' of -J.S.\ Bach's pieces for violin and violoncello solo) are examples of -sophisticated technique, artistic sensibilty and philological -meticulousness. Everybody, whether expert programmer or complete novice, -would always find valid and unselfish advice from him, which invariably -ended with the motto ``\emph{hope this hilft}''. In time a small, but -regular group of faithfuls gathered around this site, from all over the -world, who never had met Werner in person, but nevertheless came to see -a friend in him, mainly through frequent email exchanges. - -Werner died suddenly on February 8, 2001, while bicycling home from -work, as was his regular habit. That very day he had performed -maintenance work for the site and replied to messages on its discussion -list, of which he had been the main administrator. The community of -users of the archive decided not to disband, but to continue Werner's -work. Starting with the contents of the GMD Archive, a new site was -created, and dedicated to Werner's memory. It's official name is the -\emph{Werner Icking Music Archive}. - -After some difficult times, it is now hosted by \quad - \href{http://www.pait.dk}{\texttt{PALDAM IT}} ; -its URL is \\ -\hspace*{\fill} \href{http://icking-music-archive.org}% - {\texttt{http://icking-music-archive.org}}\,. \hspace*{\fill} \\ -Its chief administrator is Christian Mondrup, -_{Mondrup, Christian} -who more than any other provided reasoned guidance and continuity during -the difficult transition. - -\bigskip -The archive houses four main categories of information: - - \label{p:Icking} -\begin{description} - \item[Archive of sheet music]: Contains hundreds of royalty-free - scores in PDF, many with their source code in {\MusiXTeX}, - {\PMX}, or {\MTX}. It is maintained by \emph{Christian Mondrup}, - who is also the main administrator of the Werner Icking Music - Archive \\ - E-mail: - \raisebox{-1.0ex}{% - \includegraphics[scale=0.72]{addresses/cmondrup} - } . -_{Mondrup, Christian} - \item[{\MusiXTeX} and related software]: Contains {\MusiXTeX} and - related software, as well as user manuals and various add-ons. It - is maintained by \emph{Don Simons} \\ - E-mail: - \raisebox{-1.0ex}{% - \includegraphics[scale=0.72]{addresses/dsimons} - } . -_{Simons, Don} - \item[{\TeX}-music list]: -_{{\TeX}-music users' list} - This discussion list is invaluable to novices, advanced users and - developers. Themes focus on technical problems of typesetting - using {\MusiXTeX} and related software, but often drift into - other musical subjects of historic or esthetic interest. It is - not moderated, but you need to subscribe in order to participate. - For information on how to subscribe, visit~ - \href{http://icking-music-archive.org/mailman/listinfo/tex-music}% - {\texttt{http://icking-music-archive.org/mailman/listinfo/tex-music\/}}~. - Its administrator is \emph{Maurizio Codogno} (E-mail - \raisebox{-1.2ex}{% - \includegraphics[scale=0.80]{addresses/mcodogno} - }$\!\!$). -_{Codogno, Maurizio} - \item [Links to other sources of information regarding music:] - There are links to search facilities about - composers/works/editions, a multi-lingual - glossary of musical terms, and some lists of - composers' works. This is maintained by - \emph{Jean-Pierre Coulon}: - - \hspace*{10em} - E-mail: \raisebox{-1.0ex}{\includegraphics[scale=0.72]% - {addresses/jpcoulon} - } -_{Coulon,Jean-Pierre} - - \bigskip\bigskip - As of 2012, ({\MusiXTeX} / \PMX) is coordinated - with \textbf{CTAN}, thus ensuring that - \textbf{CTAN} is up to date with ({\MusiXTeX}. - - \medskip\noindent - This coordination with \textbf{CTAN} is - maintained by \emph{Bob Tennent}. - - \hspace*{10em} - E-mail: \raisebox{-1.0ex}{\includegraphics[scale=0.72]% - {addresses/btennent} - } -_{Tennent,Bob} - -\end{description} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter B starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\chapter{A {\PMX} Tutorial} \label{sec:GuidePMX} \section*{Conventions -for this tutorial} \label{sec:conventions} -\addcontentsline{toc}{section}{Conventions for this tutorial} -_{tutorial!conventions of this tutorial} - -\renewcommand{\thefootnote}{\fnsymbol{footnote}} -\hspace*{\fill}\begin{minipage}[b]{200pt} - ``Hey, this is boring stuff, but if you take a - minute to understand the typographic conventions - and a little jargon, it may avoid some confusion - down the road.''\,% - \footnotemark[2] - \end{minipage} -\footnotetext[2]{Quoted literally from the original introduction to - {\PMX} by its author, Don Simons. } -\renewcommand{\thefootnote}{\arabic{footnote}} - -\paragraph{Typographical conventions:} -\begin{itemize} - \item The \texttt{typewriter} typeface always indicates verbatim text - \emph{exactly as you would input it to the computer}. This - includes file names, {\MusiXTeX} tokens, and {\PMX} commands, - e.g., \verb#barsant.pmx, \internote, c44# . - \item \textbf{bold} typeface is used for two purposes: first, for - program names (e.g.~\textbf{pmxab}), and second, when applied - to a single letter within a normal word, to emphasize the - mnemonics of a {\PMX} command (e.g.~\texttt{lr} signifies a - ``\textbf{l}eft-\textbf{r}ight repeat''). - \item When used in commands, \emph{italics} represent input - variables for which the user would substitute the appropriate - actual value. To make this notation quite clear -- and distinct - from the general use of italics for emphasis -- , the variable - will be surrounded by square brackets in such cases (e.g.\ - \texttt{L[}$n$\texttt{]P[}$m$\texttt{]M} ), but \emph{the - brackets are not to be included with the verbatim text}. -\end{itemize} - -\paragraph{Musical terms:} \text{} \\ -The language of music is Italian, and so the radical solution of -terminological problems would be to use the Italian names throughout. -This would, however, defeat the whole purpose of this tutorial, so some -compromises need to be made, and some terms, which may be used -differently by different people, need to be clearly defined. So in this -tutorial -\begin{itemize} - \item -_{staves} - a \emph{staff} (plural \emph{staves}) means the set of 5 - horizontal lines in which music is usually notated, aptly - called a \emph{pentagramma} in Italian\,% - \footnote{Note that one-line staves, used for percussion - instruments (drums, triangles etc.), are presently - not implemented in {\PMX}. - }. - \item a \emph{system} means a coherent set of staves to be played - simultaneously. - \item -_{voice} - a \emph{voice} means a line of music that is a musical entity - of its own, such as a melody. In polyphonic music, there is - often more than one voice to a staff, e.g.~a 4-voice Bach - choral is often written with the 2 top voices (soprano, alto) - in one staff, the bottom ones (tenor, basso) in the other\,% - \footnote{ {\PMX} allows 1 or 2 voices in one staff. }. -\end{itemize} - -\paragraph{technical terms:} \text{} \\ -\begin{itemize} - \item a \emph{system} means a coherent set of staves to be played - simultaneously. - \item a \emph{block} is the series of PMX commands WITHIN ONE SYSTEM, - formally >ended be a / (slash), which then must be the LAST - CHARACTER on this input line\,% - \footnote{This often precludes even \TeX\ comments (started - with a \%) on the same line, after the slash! - - \PMX\ does not check for compliance with this rule, - but nevertheless it is good practice to adhere to it. - Otherwise you a liable to encounter weird errors - which may be difficult to trace. - }. -\end{itemize} - - -\section{Running {\PMX}} \label{sec:running} -_{\PMX!running {\PMX}} - -As stated in the introduction (cf.~Section~\ref{sec:introduction}), -{\PMX} is a \emph{preprocessor} to {\MusiXTeX}. That means that with -{\PMX} the sequence of steps from the input to the printed paper is one -step longer: -\begin{enumerate} \setcounter{enumi}{-1} - \item The user writes \emph{the symbols of the {\PMX} language} to a - normal text file, using any text editor. The name of this file, - ( say, \verb#my_opus.pmx#) \emph{must have the suffix} - \texttt{pmx}, - \item the file \verb#my_opus.pmx# is run through the {\PMX} processor, - \textbf{pmxab}. -_{\textbf{pmxab}} - This produces the output file \verb#my_opus.tex#, \\[2ex] - \fbox{\begin{minipage}{390pt} - Note that in {\PMX} (like in Unix, but unlike Windows) - spaces within a file name are \emph{not allowed}! If in - the above example, the input file name were \texttt{my - opus.pmx} instead of \texttt{my\underline{\;}opus.pmx}, an - unpredictable error, with confusing error messages, would - occur. - \end{minipage} - } - - \item the file \verb#my_opus.tex# is then processed with {\TeX} to - produce a \texttt{.dvi} output file\,% - \footnote{This step is a bit more complicated than it sounds - because it actually is a 3 pass system: it consists of - (i) running {\TeX}, (ii) running ^{\textbf{musixflx}}, - and (iii) running {\TeX} again (details on the - rationale behind this are described in the {\MusiXTeX} -_{Taupin, Daniel} - manual by Daniel Taupin). - }. - This \texttt{.dvi} file is machine readable and (usually) can be - previewed on the screen, - \item another program, e.g.~\texttt{dvips}, produces a PostScript file - from the \texttt{.dvi} file, which again can be previewed on the - screen, or sent directly to a suitable printer. -\end{enumerate} -Usually this whole process is automated to some degree by the use of a -so-called `script' or `batch' file, or with the help of some more -elaborate system of interconnecting software (most of these tuned to the -needs of the general {\TeX} community). -_{\PMX!running {\PMX}} - -\medskip -There are too many variants of this kind of supporting software -- public -domain or commercial -- to discuss here, and personal preferences or -dispositions are too varied. If you are at a loss on what to use, send a -message to the {\TeX}-music list (cf.~p.\pageref{p:Icking}), and you -can trust that you get all the individual help you need. -_{{\TeX}-music users' list} - -\begin{table}[!htbp] -\begin{center} -\begin{minipage}{380pt} - \small -\begin{verbatim} -:::::::::::::::::::::::: runpmx.bat :::::::::::::::::::::::: -Call C:\Programme\MikTeX_2.9\localmiktex\miktex\bin\pmxab %1.pmx -if errorlevel 1 goto pmxerr -if exist %1.pml del %1.pml -if exist %1.mx2 del %1.mx2 -if exist %1.mx1 del %1.mx1 -if exist pmxaerr.dat del pmxaerr.dat -:: -Call C:\Programme\MikTeX_2.9\miktex\bin\etex.exe %1.tex -if errorlevel 1 goto texerr -:: -Call C:\Programme\MikTeX_2.9\localmiktex\miktex\bin\musixflx.exe %1.mx1 -:: -Call C:\Programme\MikTeX_2.9\miktex\bin\etex.exe %1.tex -if errorlevel 1 goto texerr -if exist %1.log del %1.log -:: -Call C:\Programme\MikTeX_2.9\miktex\bin\dvips.exe %1.dvi -if errorlevel 1 goto dvierr -if exist %1.log del %1.log -:: -Call C:\Programme\GhostScript\Ghostgum\gsview\gsview32.exe %1.ps -:: -goto :end -::::::::::::::::::: -:: error exits : -:: -:pmxerr -echo. -echo PMX has found errors when processing %1.pmx ! -echo. -pause -goto :end -:: -:texerr -echo. -echo TeX has found errors when processing %1.tex ! -echo check %1.log for details. -echo. -pause -goto :end -:: -:dvierr -echo. -echo *** dvips had errors ! *** -echo. -pause - -:: -:end -:::::::::::::::::::: end of runpmx.bat :::::::::::::::::::: -\end{verbatim} -\end{minipage} -\end{center} - \caption{An example of a batch file for running {\PMX}} - \label{tab:runpmx} -\end{table} - -\bigskip -To illustrate the above process, however, an example for a typical -`batch' file, for a standard \textbf{Windows} system, is given in -table (\ref{tab:runpmx}). This assumes that you have installed -\begin{enumerate} - \item a ^{\MiKTeX} system, - \item a {\MusiXTeX} system, - \item a \texttt{dvips} system, -\end{enumerate} -all installed in the standard way, and that you have produced the {\PMX} -input file \verb#my_opus.pmx#, using your favorite ASCII text editor. - -You would then run -\begin{center} - \verb#runpmx my_opus# -\end{center} -on a command line, and would see a Ghostview window opening, from which -you could print your opus (or do with it whatever you like). - -\bigskip -You perhaps will want to write your own batch program\,% -\footnote{The \texttt{runpmx.bat} given in Table \ref{tab:runpmx} is - identical with the \texttt{runpmx.bat} used in the installation - guide (Section \ref{sec:installation}). - - When adapting this to your needs or writing your own batch - file altogether, you should make sure that you use - \texttt{etex.exe} in the 3 calls of {\TeX}. - {\MusiXTeX}-\texttt{T115} and {\PMX} texttt{2.6xx} both - require e{\TeX} (extended {\TeX})! - }, to suit your personal requirements. Some further remarks on -how \textbf{pmxab} -_{\textbf{pmxab}} operates may prove helpful for that. - -\medskip -First, whenever \textbf{pmxab} -_{\textbf{pmxab}} -terminates due to a syntax error, the exit code is set 1 (0 when there -are no errors). There are various ways of detecting this with batch -commands, and then acting accordingly. - -\medskip -Second, \textbf{pmxab} -_{\textbf{pmxab}} -always writes a file \texttt{pmxaerr.dat} -_{\texttt{pmxaerr.dat}} -containing a single number: 0 if it exited normally, otherwise the line -number in the \texttt{.pmx} file where the syntax error was. With -advanced batch programming techniques, this file can be opened and read, -and if there was an input error, a text editor can be opened and the -input point placed on the line with the error. - -\bigskip -There have been several requests to allow {\PMX} to keep running even -after it detects an input error. This has not been done because in most -cases, any error messages after the first one would be meaningless, or -worse, uncorrected errors could cause crashes. In any event, all the -output from \textbf{pmxab} -_{\textbf{pmxab}} -will be stored in the log file [\emph{filename}]\texttt{.pml}. - -\newpage -\subsection{Concatenating several files} \label{sec:concatfiles} -_{\PMX!concatenating several files} - -Sometimes one wants to split the work on a score into several smaller -parts, not only when otherwise you would exceed some {\PMX} numerical -limit (cf.~Section~\ref{sec:limits}), but simply for practical reasons. -Logically, one should distinguish two separate cases: -\begin{enumerate} - \item Within \emph{one and the same {\PMX} program}, there might be - parts that recur identically in several regions of the full code, - and one would not want to retype these over and over again (both - for efficiency and for clarity reasons). In such cases, you - would want to have a command similar to the \verb#\input# of - {\TeX}, {\LaTeX} and many other programming languages. - - In {\PMX}, such an `\verb#\input#' command has the form - \verb#AR[#\emph{file name}\verb#]#, where \emph{file name} is - the name of the (ASCII) file you want to include, and - \verb#AR[#\emph{file name}\verb#]# will insert this file - at exactly that point in your {\PMX} program where the - \verb#AR[#\emph{file name}\verb#]# is.\,% - - \begin{quote} - A possible use for this procedure, i.e.\ using the \texttt{AR} - command, could be to save typing when you want to include your - favorite option defaults that in fact you use in almost every - piece of music you write with {\PMX}. - - But a simple ``cut \& paste'' is arguably a quite practical - and more straightforward way of achieving this goal; moreover, - if you want to be fancy about it, {\PMX} has a much more - sophisticated tool to offer for that purpose\,% - \footnote{In fact, there is yet another fancy tool, - i.e.\ including a `global' file with the specific - name \texttt{pmx.mod} , useful for special purposes. - For details on this, refer to the {\PMX} manual. - }, - viz.\ a macro (cf.\ Sec.~\ref{sec:macros}). - \end{quote} - - \item Sometimes may have reason to make several - completely independent {\PMX} files, producing their output - separately. In the end, you would want to concatenate these - pieces again. This can be easily done: - - \medskip - Suppose you have coded the three movements of a piano sonata in - three separate {\PMX} files: \verb#son1.pmx#, \verb#son2.pmx# - and \verb#son3.pmx#. To create one single file from these, - proceed as follows: - \begin{enumerate} - \item Process the three files \verb#.pmx# separately, - obtaining the three files \verb#son1.tex#, - \verb#son2.tex# and \verb#son3.tex# , - \item Create a {\TeX} file \texttt{son.tex} consisting of the - following lines: - \begin{verbatim} - \input musixtex - \startmuflex - \let\startmuflex\empty - \let\endmuflexsav\endmuflex - \let\endmuflex\endinput - \input son1 - \input son2 - \input son3 - \endmuflexsav - \bye - \end{verbatim} - \item Process the file \verb#son.tex# , in the usual three - passes ({\TeX}~$\Longrightarrow$ \texttt{musixflx} - $\Longrightarrow$ {\TeX}). The resulting file - \verb#son.dvi# then contains the full score of the - entire sonata. - \end{enumerate} -\end{enumerate} - -\medskip -Alternatively, you can concatenate the files using {\LaTeX}, or more -specifically, the \textbf{mtxlatex} package. For details on this -see Section~\ref{sec:LaTeX}. -_{\LaTeX} _{\textbf{mtxlatex}|see{\LaTeX}} _{\LaTeX!interface with \PMX} - -\vfill\begin{figure}[!htbp] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/Haydn.eps} - } - \end{center} - \caption{\textbf{F.J.\ Haydn}, - \emph{quartet Op.76, no.2}, bars 1--4 - } - \label{fig:Haydn} -\end{figure} -\label{p:Haydn} - -\begin{table}[!htb] -\begin{minipage}{380pt} -\small -\begin{verbatim} -F.J.\ Haydn, Quartet op.76, no.2, bars 1--4 -PREAMBLE: -nstaves ninstr mtrnuml mtrdenl mtrnump mtrdenp - 4 4 4 4 0 6 -npickup nkeys - 0 -1 -npages nsystems musicsize fracindent - 1 1 16 .08 -Violoncello -Viola -Violin II -Violin I -batt -./ -% BODY: -% HEADER: -Tc -F.J. Haydn -Tt -String Quartet op. 76, No.2 -h -Allegro -Abep -w170m -% begin of music input - -% bar 1 -d82 Df o. d+ o. d o. d o. r d o. d o. d o. / -f83 Df o. f o. f o. f o. r f o. f o. f o. / -r8 a83 Df o. a o. a o. r a o. a o. a o. / -a24 Df d- / - -% bar 2 -r8 d o. d o. d o. r e o. e o. e o. / -r8 g o. g o. g o. r g o. g o. g o. / -r8 b o. b o. b o. r cs o. c o. c o. / -e2 a- / - -% bars 3-4 -f8 s e f cs s d4 a | b2 s a4 s o. r Rb / -a2 t a4 t .cs- | d8 s e f d s e4 o. r / -d8 s cs d e s e s d c s a1+ s g s | f s g f e s d8 o. d o. cs4 r / -d8 s cs d e s g s f e s a | d4- zd+ cn1 s b a gs s a4 o. r / -% end of PMX source file -\end{verbatim} -\end{minipage} - \caption{{\PMX} source for excerpt of F.J.\ Haydn quartet} - \label{tab:Haydn} -\end{table} - -\section{Preliminary Concepts} \label{sec:concepts} - -_{comments} -The {\PMX} code of a musical score consists of two parts, the -\emph{preamble} and the \emph{body}. Lines with a \% in column 1 are -comment lines (as in {\TeX}); they are disregarded by the program\,% -\footnote{Note, however, the additional conventions of - the \textbf{scor2prt} program (see Chapter \ref{sec:scor2prt}, - pp.\ \pageref{sec:scor2prt}). - }. - -\medskip -The \emph{preamble} contains the general specifications for a score, -some musical (e.g., number of instruments, meter, key signature), and -some typographical (e.g., number of pages, number of staves per page). - -\medskip -The coding for the music itself is given in the \emph{body}, which in -turn usually has a \emph{header}. As an example, consider the first few -bars of Haydns \emph{quartet Op.76, no.2} . The music shown in -Fig.~\ref{fig:Haydn} is obtained from the {\PMX} source code given in -Table~\pageref{tab:Haydn}. - -\section{Preamble} \label{sec:preamble} -_{preamble} - -The \emph{preamble} consists of one or several lines of numbers, -followed by lines with typographical data relevant for the whole score. -The preamble ends with a line giving the name of the directory to which -_{\textbf{pmxab}} -\textbf{pmxab} is to write its output \texttt{.tex} file. - -\subsection{Numerical input} \label{sec:numinput} - -The first line(s) of the preamble must contain 12 numerical -parameters, separated by one or more spaces (`white space'). In {\PMX}, -as in {\TeX}, a line feed is equivalent to a white space, so the -following 3 forms of the beginning numerical input are all equivalent: - -{\small -\begin{verbatim} -4 4 4 4 0 6 0 -1 -1 1 16 .08 -\end{verbatim} -} - -\vspace*{-1.5ex} -\qquad --- or --- - -\vspace*{-1.5ex} -{\small -\begin{verbatim} -4 4 4 4 0 6 0 -1 1 1 16 .08 -\end{verbatim} -} - -\vspace*{-1.5ex} -\qquad --- or --- - -\vspace*{-1.5ex} -{\small -\begin{verbatim} -4 -4 -4 -4 -0 -6 -0 --1 -1 -1 -16 -.08 -\end{verbatim} -} - -\medskip\noindent -For the purpose of this tutorial, the 12 s are named\,% -\footnote{Their names are written in typewriter typeface here because in - a way they \emph{are} input and, as some of the examples show, - used as such, albeit only in comment lines. But these names - themselves never occur in {\PMX} commands. (See, however, - the footnote on p.\pageref{p:errormsg}). - }. -\begin{center} - \parbox{6cm}{\texttt{nstaves}, \texttt{ninstr}, \\[1ex] - \texttt{mtrnuml}, \texttt{mtrdenl}, \\ - \texttt{mtrnump}, \texttt{mtrdenp}, \\[1ex] - \texttt{npickup}, \\ - \texttt{nkeys}, \\[1ex] - \texttt{npages}, \texttt{nsystems}, \\ - \texttt{musicsize}, \texttt{fracindent} - } -\end{center} - -Their significance is as follows: - -\begin{itemize} -\item -_{voice!several voices in one staff} _{\texttt{nstaves}} - \texttt{nstaves}, an integer $\leq 24$, is the total number of - staves per system. Each staff may contain either one or two voices - (lines of music). The number of voices in a staff may change as - the piece progresses, but the total number of voices at any one - time cannot exceed 24. So if, e.g., there are 24 staves, there can - only be one voice per staff. - -_{\texttt{ninstr}} - \texttt{ninstr}, an integer $\leq$ - \texttt{nstaves}, is the number of \emph{instruments}. Each - instrument has a unique name (cf.\ p.~\pageref{p:names}), and any - instrument with more than one staff will have its staves joined - with a curly bracket. Often there is only one staff per - instrument, and \texttt{ninstr $=$ nstaves} in that case. There - are two ways to assign more than one staff to one or more - instruments: - - \begin{itemize} - \item if only the first, i.e.\ the \emph{lowest}, instrument has - more than one staff, such as in a score for piano and a - one-staff solo instrument, simply make \texttt{ninstr $<$ - nstaves}, and any difference will show up in instrument 1, - the bottom one in each system, - \item When you need a more general assignment of staves to - instruments, put a minus sign in front of \texttt{ninstr}, - and follow \texttt{ninstr} with the number of staves in each - instrument in succession, in sequence from the bottom one up - (the same order as the instrument names, - cf.~p.\pageref{p:names}), separated by spaces. These numbers - \emph{must} add up to \texttt{nstaves}: in a way, they are - simply a partition of the numerical parameter - \texttt{ninstr} . - \end{itemize} - - \Example - The preamble of the first example (Fig.~\ref{fig:diabolica}) - simply has \texttt{nstaves} $=3$ and \texttt{noinst} - $=2$ : \begin{figure}[!htb] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/diabolica.eps} - } - \end{center} - \caption{\textbf{C.C.\ Noack}, \emph{sonata diabolica, first - movement}, bars 12--17 - } \label{fig:diabolica} - \end{figure} - while the Stravinsky excerpt of Fig.~\ref{fig:agon} was obtained\,% - \footnote{In the \PMX\ text with which Fig.~\ref{fig:agon} was - produced, an additional \MusiXTeX\ command was used to - gather the strings in a group in the usual way. This - ``inline use'' of \TeX\ commands will be explained in - detail in Section~\ref{sec:inlineTeX} . - } - with \texttt{nstaves} $=9$ and \texttt{noinst} replaced by - \[ -7 \; 1 \; 1 \; 1 \; 1 \; 2 \; 2 \; 1 \;\;\; . \] - This tells \PMX\ that there are 7 instruments in all, with 1 staff - each for the four strings, 2 each for the piano and the harp, and - 1 for the trombone. Note that these numbers -- 8 in all in this - case -- count as \emph{one parameter}, i.e.\ the 12 numerical - parameters of the preamble are made up of 19 numbers in this case: - \begin{center} - \begin{tabular}{l@{\quad:\quad}l} -9 & (\texttt{nstaves}) \\ --7 1 1 1 1 2 2 1 & (\texttt{ninst}) \\ -4 \quad 8 & (\texttt{mtrnuml, mtrdenl} \\ -4 \quad 8 & (\texttt{mtrnump, mtrdenp}) \\ -2 \quad 0 & (\texttt{npickup}, \texttt{nkeys}) \\ -0 \quad 2 \qquad 16 \qquad 0.14 -& (\texttt{npages, nsystems, musicsize, fracindent}) - \end{tabular} - \end{center} -\end{itemize} - -\begin{itemize} -\item _{meter} - The following 4 numbers serve to define the meter of the piece. - The first pair, -_{\texttt{mtrnuml}} - \texttt{mtrnuml} and -_{\texttt{mtrdenl}} - \texttt{mtrdenl}, are the \emph{logical} values which {\PMX} uses - to calculate the length of a bar: \texttt{mtrnuml} is the logical - numerator of the meter, i.e.\ the number of beats per measure, - \texttt{mtrdenl} the denominator. \label{p:meterdefs} - -_{meter!printed} - The second pair, -_{\texttt{mtrnump}} - \texttt{mtrnump} and -_{\texttt{mtrdenp}} - \texttt{mtrdenp}, determines the appearance of - the meter in the printed output, but has no effect on the internal - timing analysis of {\PMX}: - \begin{itemize} - \item if \texttt{mtrnump} $>0$, then it and - \texttt{mtrdenp} are printed literally as the - numerator and denominator of the time signature. For - example, \texttt{4 4 4 4} prints a standard - 4 quarters meter, - \item if \texttt{mtrnump} $<0$, then the numerator actually - used by \PMX\ will still be the positive value of - \texttt{mtrnump}, but the entire time signature will be - printed with a vertical slash through it, - \item if \texttt{mtrnump}=0, then \texttt{mtrdenp} - determines the printed meter as given in - Table~\ref{tab:meter} and shown in Fig.~\ref{fig:meter}. - \end{itemize} - -\medskip -There are special rules for n/16 and n/1 time signatures (where the -latter "1" normally means a semibreve or whole note). To get n/1 time, -\label{p:meterdefs0} -use \texttt{mtrdenl} $=0$ (zero) and \texttt{mtrdenp} $=1$\,% -\footnote{To remember this rule, recall that the printed denominator - is taken literally, while the logical denominator represents - the same time value that is denoted when entering ordinary - notes (see section~\ref{sec:notes} below): there \texttt{0} - stands for a whole note. - The special rule for n/16 time is due to programming - convenience. - }. -For n/16 time, it is \texttt{mtrdenl} $=1$ and \texttt{mtrdenp} -$=16$. So the choice [\texttt{3 0 3 1}] for the 4 meter -parameters, for example, will give a 3/1 time, both in the {\PMX} -internal computations and in the printed output, while a 5/16 time is -indicated by [\texttt{5 1 5 16}]. -\end{itemize} - -\medskip -\begin{figure}[!htbp] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/agon.eps} - } - \end{center} - - \vspace*{-4ex} - \caption{\textbf{I.\ Stravinsky}, \emph{agon, first movement}, - bars 1--2 } \label{fig:agon} -\end{figure} - -\begin{table}[!htb] -\noindent -------------------------------------------------- - \begin{center} -_{\PMX!options!meter options} -_{meter!blind} - \begin{tabular}{|l|l|} - \hline - \texttt{0} & no meter is printed (`blind' meter) \\ - \texttt{1, 2, 3 or 4} & a single digit, between - the 2nd and 4th lines of each staff\\ - \texttt{5} & cut time (alla breve) \\ - \texttt{6} & common time \\ - \texttt{7} & numeral 3 with a vertical slash - \\ \hline - \end{tabular} - \caption{Meter options for \texttt{mtrdenp} $=0$ } - \label{tab:meter} - \end{center} -\end{table} - -\begin{figure}[!htb] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/meter.eps} - } - - \vspace*{-4ex} - \end{center} - \caption{Result of meter options for \texttt{mtrdenp} $=0$ - } \label{fig:meter} -\end{figure} - -\begin{itemize} -\item -_{pickup bar} -The $7^{\text{th}}$ parameter, -_{\texttt{npickup}} -\texttt{npickup}, is the number of beats in a pickup bar if one is -present. If there is no pickup bar, set \texttt{npickup} $=0$. -\texttt{npickup} need not be an integer. Cf.~Fig.~\ref{fig:pickups} for -examples of pickup bars. -_{pickup bar} - -A pickup bar is the \emph{only} bar that can have a different number of -beats than the current value of \texttt{mtrnuml}. It must be followed -with the first regular bar \emph{in the same block}, i.e.\ the pickup -note(s) \emph{must not be followed} by a \texttt{|}, \texttt{/} or -\texttt{//}. -_{pickup bar} - -We shall later describe a {\PMX} command to change the meter, and -explain how to use it for pickups to later sections or movements -(cf.~section~\ref{sec:meterchg}). -\end{itemize} - -\begin{figure}[!htb] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/pickups.eps} - } - \end{center} - \caption[Examples of pickups in 4/4]% - {Examples of pickups in 4/4 (the values of \texttt{npickup} - are given under the staff). - } \label{fig:pickups} - -\end{figure} - -\begin{itemize} -\item -_{key signature} _{signature|see{key signature}} _{\texttt{nkeys}} - \texttt{nkeys} is the key signature, positive integer for sharps, - negative for flats. -\end{itemize} - -\medskip -The last four numerical parameters concern the layout: -\begin{itemize} -\item If -_{\texttt{npages}} - \texttt{npages} $>0$, it is the number of - pages, and -_{\texttt{nsystems}} - \texttt{nsystems} is then the - total number of systems in the entire piece. {\PMX} will spread - the entire piece horizontally over this number of systems, and - vertically over \texttt{npages} pages. For proper vertical spacing - there should be from about 9 to 16 staves per page. If you specify - too many staves for a given number of pages, one or more staves - may spill over onto an extra page, but you will not see this until - you preview the \texttt{.dvi} file. Possible remedies are to - increase \texttt{npages}, decrease \texttt{nsystems}, or use the - \texttt{Ae} command, to be described later (cf.~section - \ref{sec:A}). - - \label{p:preamble} -\item If \texttt{npages} $=0$, \texttt{nsystems} is interpreted as the - average number of bars per system. This is useful while building - up a file a little at a time. {\PMX} will decide how many pages to - use. -\item -_{staves!size} _{\texttt{musicsize}} - \texttt{musicsize} is the height of a staff, - in points. The only values allowed are: 16, 20, 24 or 29 . -\item -_{indenting first system} - Finally, -_{\texttt{fracindent}} - \texttt{fracindent} is the - indentation of the first system from the left margin, expressed as - a decimal fraction of the total line width. - - \smallskip - Note that although logically \texttt{fracindent} could have any - value between $0$ and $1$ , you should never use a value - seriously over $.5$. It is not only esthetically rather - unpleasing, but may cause some unexpected havoc for {\MusiXTeX}. -\end{itemize} - -\begin{table}[!htb] - \begin{center} -_{preamble!numerical parameters} -\begin{tabular}{|l@{ : \quad}r@{\qquad\qquad}l|} -\hline -\texttt{nstaves} & 4 & (4 staves) \\ -\texttt{ninstr} & 4 & (4 instruments) \\ -\texttt{mtrnuml} & 4 & (4 beats \dots \\ -\texttt{mtrdenl} & 4 & \quad \dots of quarters) \\ -\texttt{mtrnump} & 0 & (option for \dots \\ -\texttt{nmtrdenp} & 6 & \quad \dots common time) \\ -\texttt{npickup} & 0 & (no pickup bar) \\ -\texttt{nkeys} & -1 & (key: d minor) \\ -\texttt{npages} & 1 & (1 page) \\ -\texttt{nsystems} & 1 & (1 system) \\ -\texttt{musicsize} & 16 & (16 pt staff) \\ -\texttt{fracindent} & .085 & (indentation of 1st system) \\ \hline -\end{tabular} -\caption{Example of preamble parameters for the F.J.\ Haydn - quartet in Fig.~\ref{fig:Haydn}, p.~\pageref{p:Haydn} - } \label{tab:Haydnparams} -\end{center} -\end{table} - -\medskip \label{p:names} -_{instruments} _{instruments!names} -In the next part of the preamble the names of the \emph{ninstr} -intruments are given, as you want them to appear within the indentation -in the first system, one per line, \emph{starting with the bottom} -instrument. If you don't want instrument names to appear, you must still -leave \texttt{ninstr} blank lines here. - -\label{p:clefs} -_{clefs} _{clefs!exotic} -Next, on a new line, comes a single string of \emph{nstaves} letters or -numbers for the clefs, again starting with the bottom staff. The choices -are\,% -\footnote{There are several more exotic clefs, available only in - straight {\MusiXTeX} (cf.~Section \ref{sec:inlineTeX} on - ``Inline {\TeX}'', and the {\MusiXTeX}~\texttt{1.15} manual, - Section~2.21). - }: -\verb|b, r, n, a, m, s, t, f| , which stand for -\textbf{b}ass, ba\textbf{r}itone, te\textbf{n}or, \textbf{a}lto, -\textbf{m}ezzosoprano, \textbf{s}oprano, \textbf{t}reble, or -\textbf{f}rench violin clef, respectively. Instead of these mnemonic -abbreviations, you can use the digits 0--7, according to the notation -\texttt{0} (treble), \texttt{1} (soprano), \texttt{2} (mezzosoprano), -\texttt{3} (alto), \texttt{4} (tenor), \texttt{5} (bariton), \texttt{6} -(bass) and \texttt{7} (french violin)\,% -\footnote{This rather unmnemonic notation has been retained in {\PMX} - for compatibility with {\MusiXTeX}. - }. -These two clef codes are summarized in Fig.~\ref{fig:clefnot}. -\begin{figure}[!htb] \begin{center} -_{clefs!symbols} _{clef codes|see{clefs, symbols}} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/clefnot.eps} - } - \end{center} - \caption{Notation of the clefs} - \label{fig:clefnot} -\end{figure} - -\bigskip -_{preamble!end of} _{working directory|see{directory}} -_{current directory|see{directory}} _{path name|see{directory}} -The preamble ends with a line that contains the path name of the -^{directory} to which you want the files (the \verb#.tex# file, in -particular) to be written when -_{\textbf{pmxab}} -\textbf{pmxab} processes your source text. Usually you will want that to -be the current directory: in UNIX this is denoted by \verb#./#~, in DOS -(most versions, including Windows) it is \verb#.\#\qquad. In any case, -the path -- and thus the whole preamble -- must terminate with \verb#/# -or \verb#\#~~. - -\addcontentsline{toc}{section}{Body of the Input File} -_{body of Input File} - -\bigskip -The rest of the {\PMX} input file is called the \emph{body}. It usually -begins with a number of global options, each on a line by itself, -called the \emph{header} (which can be empty). -\label{p:header} -_{header} _{\PMX!options!general} - -\medskip -_{input block} _{block|see{input block}} -Following the header, the input of the actual music begins. The basic -unit is called a \emph{block}, each one consisting of from 1 to 15 -complete bars. The input data for all bars in a block are entered for -each staff in turn, starting with the first (i.e.\ the \emph{lowest}) -staff. The sequence of staves (and thus of the instruments) corresponds -to that in the preamble: the first is the bottom one of the system as it -appears in the final score, and the last is the top one. The input for -each staff ends with a \verb#/# (slash). The data for one staff need not -be contained on a single input line, but may spread over as many as -needed, with any number of blank lines and comment lines between them\,% -\footnote{Remember that in {\PMX}, as in {\TeX}, a line feed is - equivalent to a space, and a sequence of many spaces is - equivalent to one space. - }, -but after the end of one staff (i.e.\ after the slash), you \emph{must} -start the coding for the next staff on a new input line. A \emph{block} -ends with the slash of the last staff of the last instrument (the top -staff in the score). -_{input block!ending} - -\medskip -Though you can put up to 15 bars in one block, many users of {\PMX} have -the habit of systematically writing one bar per block only. Sometimes, -however, for reasons of context, {\PMX} \emph{requires} a set of bars to -be in one and the same block (cf.~Section~\ref{sec:dynamics}). If you -do put more that one bar in a block, it is advisable (although not -required) to separate the bars with a \verb#|# (`vertical stroke'). The -main function of this is to provide visual separation in the input file, -and to help isolate input errors: if you put a \verb#|# anywhere except -at a bar end, the {\PMX} processor will stop and show you where it -detected the timing error. Otherwise (with a few minor -exceptions% -\footnote{For such an exception cf.\ the note on p.\pageref{p:repeats}. - }) -\verb#|# has no effect. -_{bar lines!in source} - -It is also good practice to separate the blocks with comment lines that -state which bars are represented, as has been done in the input source -for Fig.~\ref{fig:Haydn} (p.\pageref{p:Haydn}). - -_{pickup bar} -If there is a pickup bar (\verb#npickup# $>0$), it must be in a block -with the first full bar\,% -\footnote{If, for some reason, you do need to put the pickup in a - separate block, set the initial logical meter to fit the - pickup bar, then after the pickup bar do a blind meter change, - as described in section~\ref{sec:meterchg}. - }. - -_{voice!several voices in one staff} -When there are 2 voices in a staff (e.g.~for an organ or other -polyphonic instrument, or in a choir or symphonic score), these are -entered consecutively in the coding for that staff, again starting with -the lower voice, and this voice is ended with a \verb#//# (`double -slash'). Here again, after the double slash, you \emph{must} start the -second voice on a separate input line. The coding for this staff is then -again concluded by a single slash. - -\medskip -The two bars from \emph{Pellas et Melisande} by Debussy in -Fig.~\ref{fig:debussy} are an example. The bottom staff, that for the -trumpet, has only one voice, while the top staff (for the flutes) has 2, -thus giving a total of 3 voices. - -\begin{figure}[!htbp] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/debussy.eps} - } \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -%----------------% -% C. Debussy, Pell‚as et Melisande, p.149 -%----------------% -% -2 2 -12 8 12 8 -0 6 -1 1 16 .07 -% -Trumpet -Flutes -tt -./ -It60itrfl -h-4 -Lento -Abepl -\\nobarnumbers\ -% -% %%%%%%%%%%%%%%%%%%%%%%%%% Bar 1 %%%%%%%%%%%%%%%%%%%%%%%%% -cd4 D"con sord."+17 sf dd fd dd sf / -r8+0 fr sfu+0+1 e sf+0 t ed4 t r8+0 -br+ sfu+0+1 a sf+0 r+0 gr sfu+0+1 f sf+0 // -rb8 g4+ t gd t rb8 c4 rb8 a4 / - -% %%%%%%%%%%%%%%%%%%%%%%%%% Bar 2 %%%%%%%%%%%%%%%%%%%%%%%%% -cd4 sf dd fd ad sf Rb / -r8+0 fr sfu+0+1 e sf+0 t ed4 t r8+0 br+ sfu+0+1 a sf+0 t ad4 t // -rb8 g4 t gd t rb8 c4 t cd t / - -% %%%%%%%%%%%%%%%%%%%%%%%%% end of file %%%%%%%%%%%%%%%%%%% -\end{verbatim} -\end{minipage} - \end{center} - - - \caption{\textbf{C.\ Debussy}, \emph{Pellas et Melisande} (excerpt) } - \label{fig:debussy} -\end{figure} - -\medskip -_{voice!several voices in one staff} -The number of voices in a staff (1 or 2) is determined solely by whether -the first sequence of symbols for that staff ends with \verb#/# or -\verb#//#. Therefore the number of voices in any given staff can vary -from block to block, but not within a block. In other words, if you need -to change the number of voices in a staff, you must start a new block. - -\medskip -_{\PMX!symbols} -Finally, a general characteristic of {\PMX} coding should be noted: all -data comprises sequences of \emph{symbols}, each one containing one or -more adjacent characters. These symbols -- including the -voice-terminating symbols \verb#/# and \verb#//# -- are \emph{always} -separated from each other by at least one space or line feed. Whenever -there are several characters strung together without spaces, they are -considered \emph{one single} {\PMX} symbol. This concept has already -been illustrated in prior examples. The construction of the symbols will -be explained in much more detail in the remainder of this chapter. - -\section{Commands for the Individual Staves} - \label{sec:stave transposition} - -_{\PMX!commands for individual staves} - -\subsection{Notes} \label{sec:notes} -_{notes} - -The most important input item is of course a single note. Its two -main features are its \emph{pitch} and its \emph{duration}. - -\emph{The pitch} is primarily -- i.e.\ up to octaviation --indicated by -_{notes!pitch} -the note \emph{name} in \emph{lower case} letters: \texttt{c, d, e, f, -g, a, b} (do, re, mi, fa, sol, la, si). If the note is to have an -accidental, the note name is followed \emph{without a space} by -\texttt{s, f} or \texttt{n} for a \textbf{s}harp, \textbf{f}lat or -\textbf{n}atural; \texttt{ss}/\texttt{ff} for a double sharp/double -flat. - -_{accidentals} _{notes!duration} - -The \emph{basic duration}, i.e.\ the duration exclusive of a possible -dot, is indicated by the first unsigned digit following the note name, -again with no space: \texttt{9, 0, 2, 4, 8, 1, 3, 6} respectively for -double-whole (^{breve}), whole (^{semibreve}), half, quarter, eighth -(quaver), sixteenth (semiquaver), thirty-second, and sixty-fourth notes. -For a consecutive sequence of notes of equal duration, this needs to be -given explicitly only for the first note of the sequence. Subsequent, -consecutive notes with no explicit duration will `\emph{inherit}' their -basic durations from the most recent note with an explicit duration. -_{eighths} _{sixteenths} - -A \emph{dotted/doubly dotted note} is indicated by the letter -\texttt{d}/\texttt{dd} just about anywhere\,% -\footnote{The only restriction on the position of \texttt{d} within the - note symbol occurs if the dot is to be shifted - (cf.~p.\pageref{p:dotshift}). - } -in the note symbol, after the note name, of course. - -It is important to note that, in contrast to the basic duration, a -dot is never inherited by a subsequent note. -_{notes!duration!not inherited for dotted note} _{dotted notes|see{notes}} - -\medskip -The \emph{pitch} of a note is, of course, not determined by the note -name alone; the actual octave needs to be specified as well. For this, -there are three possibilities: -\begin{description} - \item[explicit octaves:] \text{} \\ -_{notes!pitch!explicit octave} - A second unsigned digit\,% - \footnote{In contrast to the letters for accidentals and dots - and other letters to be explained in - Section~\ref{sec:otherparams}, the 2 digits for - duration and pitch, if present, must always be given - in this order. Specifically, if by omitting the - duration digit you use the inherited duration, you - can no longer specify the octave explicitly by an - unsigned digit. - } - indicates the octave to which the note belongs. For reference, - octave 4 runs from middle C to the B above. The lowest note on - an 88-key piano is the A in octave~0, while its highest note is - the C in octave~8 (cf.~also Fig.~\ref{fig:pitch}). - - \begin{figure}[!htb] \begin{center} - \includegraphics[scale=.82]{eps/pitch.eps} - \end{center} - \caption{{\PMX} notation for pitch - (second digit of note symbol)} - \label{fig:pitch} - \end{figure} - - \item[inherited pitch:] \text{} \\ -_{notes!pitch!inherited} - For a note without any explicit octave or relative pitch - indication, the octave is assigned by {\PMX} such that the note - is placed in the octave that makes it nearest to the most - recent note \emph{in the same voice}, i.e. the pitch is - `inherited'. Thus for jumps of less than a fourth up or down, - you only need to enter the note name to fully specify the - pitch. This feature often lets you go for long stretches in a - voice before needing to enter the octave. For jumps of a fifth - or more, you need to specify the octave either explicitly as - described above, or relatively as described below. - - \item[relative pitch:] -_{notes!pitch!relative} - \text{} \label{p:relativepitch} \\ - A \texttt{+} or \texttt{-} (if not part of one of the signed - numerical suboptions to be discussed later) indicates that a - note is to be an octave higher or lower than it would otherwise - be. Two consecutive \texttt{+}'s will raise the pitch two - octaves, and so forth\,% - \footnote{Two consecutive \texttt{+}'s can be abbreviated by - one \texttt{++} . - }. - - As an example of all this, compare Fig.~\ref{fig:reloctav} with the - {\PMX} notations given under the staff\,% - \footnote{The same result would be obtained with the full, absolute - notation \texttt{c84 d84 e84 c85 b84 a84 g84 g83 | c26 g23 - | c04}; but this is obviously much more verbose. - -_{notes!pitch!explicit octave} - Explicit octave numbers can be combined with one or more - \texttt{+} or \texttt{-}, although this is not - recommended. - }. - - \begin{figure}[!htb] - \begin{center} \includegraphics[scale=.82]{eps/reloctav.eps} - \end{center} \caption{Relative Octave Notations} - \label{fig:reloctav} - \end{figure} -\end{description} - -_{notes!pitch!explicit octave} -The first note of each line of music in a block must contain at a -minimum the note name and a basic duration value. It is good -practice and can simplify editing if in addition an explicit octave is -set there. However if it is not, {\PMX} will make some assumptions: at -the start of the first input block the pitch will be set as if there -were a prior note of middle C. In later blocks {\PMX} will use the -obvious inheritance rules from the end of the prior block\,% -\footnote{However, if the number of voices in a staff has changed from - the prior block, it is safest to reset the octave at the start - of a new block. Duration is never inherited across block ends, - and thus must be reset at the start of each input block. -_{notes!duration!not inherited across blocks} _{voice!several voices in one staff} - }. - -\subsection{Dotted Notes} \label{sec:dotnotes} -_{notes!dotted note} - -Inheritance of dotted notes is a little tricky. As was noted above, the -dot itself is never inherited; you always have to use a \texttt{d} in -the note symbol, even if the actual duration and octave are the same as -the prior note. But the \emph{basic} digit of duration need not be -reentered if it hasn't changed\,% -\footnote{There is an exception to this: if you decide to indicate the - octave with an explicit digit (`absolute octave'), you must - then enter the duration explicitly as well. - }. -So for example, consecutive dotted half notes, each within a fourth of -the previous one, could be most cleanly entered as \texttt{cd24 ed gd -ed}, whereas \texttt{cd24 e} would represent a dotted half note followed -by a plain half note, since the basic digit of duration was for a half -note all along. - -\subsection{Stems} \label{sec:stems} -_{stems} _{stems!direction forced} _{stems!length} - -{\PMX} usually determines the correct stem length and direction -(\emph{up} or \emph{down}) of a note automatically. This can, however, -be changed by the user, as needed: -\begin{itemize} -_{stems!options} - \item the stem direction is forced to go \emph{up} with the letter - \texttt{u} (`\textbf{u}p') anywhere after the note name, or - \emph{down} with \texttt{l} (`\textbf{l}ower'), - \item the stem length of non-beamed notes can be shortened by adding - the option \texttt{S}, followed by a decimal number between .5 - and 4.0 , representing the shortening in units of - \texttt{\bs{}internote}\,% - \footnote{1 unit of \texttt{\bs{}internote} is roughly half the - distance between staff lines. - }. - The shortening can be made ``sticky'', i.e.\ applied to all - following notes by adding a colon (\texttt{:}) after the - number. Stickiness is terminated by \texttt{S:} . - -\end{itemize} - -\subsection{Other Note Parameters} \label{sec:otherparams} -_{\PMX!options} _{\PMX!options!notes} -Here are some more options that can be appended to a note symbol (as usual -without spaces): - -\begin{description} - \item[Inhibited beaming (\textbf{a})] \text{} \\ -_{beaming!inhibited} - Joining the note stems with beams is usually done automatically by - {\PMX}\,% - \footnote{For details of this cf.\ Section~\ref{sec:beams}. - }. - Sometimes, however, you may want to inhibit this explicitly for a - single note; this is achieved by the letter \texttt{a} (for - \texttt{a}lone). - \item[Horizontal shift (\textbf{e,r})] \text{} \\ -_{notes!horizontal shift} - Sometimes you want to shift the horizontal position of a note, for - example to avoid overlap with a note in another voice of the same - staff. The letters \texttt{e} and \texttt{r} do that: \texttt{e} - shifts the note to the l\texttt{e}ft by its own width (a `notehead - width'), while \texttt{r} shifts it to the \texttt{r}ight. An - example of this can be seen in Fig.~\ref{fig:debussy}. - \item[Shift of accidentals (\texttt{<} / \texttt{>})] - \text{} \label{p:accidentals} \\ -_{accidentals!position shift} - Accidentals can be shifted too. One way is to enter \texttt{+} or - \texttt{-} immediately after the accidental character, then an - \emph{integer} for the vertical shift in units of - \texttt{\bs{}internote}, then another \texttt{+} or \texttt{-} , - followed by the horizontal shift, given as a decimal fraction of a - notehead width. If you use this method, you \emph{must enter both - numbers}. Alternatively -- if you need only an horizontal shift --, - you can simply use \texttt{<} or \texttt{>}, followed by the shift, - in notehead widths. When shifting a sharp to avoid another sharp, a - left shift of $0.85$ is usually best. When shifting a flat to avoid - a flat above it, a left shift of $0.3$ is suggested. - \label{shifts} - \item[Shift of the dot in dotted notes] \text{} \label{p:dotshift} \\ - The dot in dotted notes can be shifted analogously to the first - method for accidentals, using signed numbers, except that the first - (vertical) shift may be a decimal fraction. - \item[Shorthand for dotted notes] -_{dotted notes!shorthand} _{shorthand!for dotted notes} - \text{} \\ There are two special shorthand notations for dotted - rhythms. For normal dotted rhythms ($3:1$ ratio), if you include a - period (\texttt{.}) in the note symbol, {\PMX} will - \begin{itemize} - \item assign a dot to the note just entered, - \item terminate that note, - \item prepare to receive the next note name \emph{without any - space}, and - \item automatically assign a time value to the second note equal - to one-third of the first one. - \end{itemize} - No time value may be entered for the second note, but octave and - accidental parameters may. Ornaments and slurs - (cf.~Sections~\ref{sec:ornaments} and \ref{sec:psslurs}) following - this symbol will apply to the second member. If you need to follow - the main note with some modifying command, you can still use the - shorthand (\texttt{.}) after that command and a space. The main - advantage of this shorthand comes if you want to follow one dotted - pair with another of the same rhythm; then you needn't enter any - explicit duration value for \emph{either} member of the second - pair. This is because after using the shorthand, the basic - inherited duration value is set to that of the \emph{first} note in - the pair; remember that the basic duration does not include the - dot! - - For paired notes with 2:1 rhythmic ratios, the symbol \texttt{,} - (comma) behaves similarly to the \texttt{.} (period) for 3:1 - rhythms as just described. - - \Note{If you use this shorthand for dotted pairs, either embedded - in a single symbol or to start a separate symbol for the - second member, then you \emph{cannot shift the dot position}. - If you do need to shift the dot, you should not use the - shorthand notation. -_{dotted notes!shorthand} - } -\end{description} -\bigskip -For reference, all the letter-type note parameters are listed in -Table~\ref{tab:noteparameters}. Examples demonstrating the -use of most of them are given in Fig.~\ref{fig:notepars} . - -\begin{table}[!htb] - \begin{center} -_{\PMX!options!notes} _{accidentals} _{accidentals!cautionary} -_{notes!parameters} _{accidentals!MIDI} - \begin{tabular}{|l@{\hbox{\quad}}c@{\quad --- }l|} - \hline - \multicolumn{3}{|l|}{\textbf{Accidentals:}} \\ - & s & \textbf{s}harp \\ - & f & \textbf{f}lat \\ - & n & \textbf{n}atural \\ - & ss & double \textbf{s}harp \\ - & ff & double \textbf{f}lat \\ - & sc, ssc, fc, ffc, nc - & cautionary accidental (accidental in parenthesis) \\ - & si, fi, ni & \parbox[t]{300pt}{M\textbf{i}DI accidental {\\} - [\,does do not appear in the printed score - --- - cf.~Section~\ref{sec:MIDIaccidentals}\,] - } \\[1ex] - \multicolumn{3}{|l|}{\textbf{Dotted Notes:}} \\ - & d & single \textbf{d}ot \\ - & dd & \textbf{d}ouble \textbf{d}ot \\ - & . & shorthand for $3:1$ rythm \\ - & , & shorthand for $2:1$ rythm \\ - \multicolumn{3}{|l|}{\textbf{Stems:}} \\ - & u & force the stem \textbf{u}p \\ - & l & force the stem down (\textbf{l}ower) \\ - \multicolumn{3}{|l|}{\textbf{Shifts of Position:}} \\ - & e & shift the notehead l\textbf{e}ft - by the notehead width \\ - & r & shift the notehead \textbf{r}ight - by the notehead width \\ - & \texttt{<} & left shift of accidental \\ - & \texttt{>} & right shift of accidental \\ - & +, - & general shift of accidental \\ - \multicolumn{3}{|l|}{\textbf{Beam Inhibit:}} \\ - & a & \textbf{a}lone (cf.~Section~\ref{sec:beams}) \\ - \multicolumn{3}{|l|}{\textbf{Xtuplets:}} \\ - & x & (\textbf{x}tuplet) (cf.Section~\ref{sec:xtuplets}) \\ - \hline - \end{tabular} - \end{center} - \caption{Use of Note Parameters as shown in Fig.~\ref{fig:notepars} .} - \label{tab:noteparameters} -\end{table} - -\begin{figure}[!htb] - \begin{center} - - \includegraphics[scale=.82]{eps/notepara.eps} \\[2ex] - \includegraphics[scale=.82]{eps/noteparb.eps} \\ - \small{ (Notations for Dotted Notes) } \\[2ex] - \includegraphics[scale=.82]{eps/noteparc.eps} \\ - \small{ (Position Shifts of Accidentals) } \\[2ex] - \end{center} - \caption{Use of Note Parameters} \label{fig:notepars} -\end{figure} - -\pagebreak -\subsection{Rests} \label{sec:rests} -_{rest} _{pause|see{rest}} - -Rests are denoted by the letter \texttt{r} in place of a note name. -Rests have duration digits just like notes, but obviously no second -digit for giving an octave. As inheritance goes, an \texttt{r} behaves -just like a note: it can inherit its duration from the prior note or -rest, and notes as well as rests can inherit their duration from prior -rests. - -\medskip -Any rest or sequence of rests that occupies a full bar will by default -be horizontally centered in the bar. - -\medskip -There are a few special notations for rests: -\begin{itemize} - \item \texttt{rp} (`\textbf{r}est \textbf{p}ause') denotes a full-bar - rest (whole rest), regardless of what the meter signature for - the bar may be, - \item \texttt{rpo} (`\textbf{r}est \textbf{p}ause - \textbf{o}ff-center'). The option \textbf{o} suppresses the - centering of a pause, - \item -_{rest!blank rest} - \texttt{b} (`\textbf{b}lank') denotes a blank rest, i.e. one - that \emph{does not appear in print}. Logically, it has a - duration that is determined, as usual, either by an explicit - duration specifier or by inheritance. Blank rests are most - commonly used when there are two voices in a staff, - and one drops out for some part of the current input bar\,% - \footnote{Another interesting application is when you have two - homophonic voices in one staff and, for simplicity's - sake you want to write only one rest for both voices - (cf.~the last 2 bars in Fig.~\ref{fig:rests}) . - }, - \item -_{rest!multibar rest} _{\textbf{scor2prt}!multibar rest} - \texttt{rm} (`rest \texttt{m}ulti-bar') followed -- without - space! -- by an integer $n$ generates the multi-bar rest symbol - with the number $n$ above it, signifying a rest for $n$ full - bars\,% - \footnote{This is used in particular when the parts for - individual instruments are generated from a full - score, as is done automatically by \textbf{scor2prt}; - cf.\ Section~\ref{sec:scor2prt}). - }. -\end{itemize} -\noindent -\hspace*{2em}\fbox{\begin{minipage}{390pt} - Note that that there can be \emph{only one instance} of a multibar - rest in a given input block! - \end{minipage} - } - -\medskip\noindent -The default vertical position of a rest depends on whether there are one -or two voices in the staff. For one voice it is just the {\MusiXTeX} -default: approximately centered on the middle line. On the other hand, -in the lower voice in a two-voice staff, the rest is lowered -by \verb#4\internote#, while in the upper line it is raised -by \verb#2\internote#. The default can be manually overridden by appending -\verb#+# or \verb#-# and an integer for the offset (in -\verb#\internotes#) from the \emph{middle} line of the staff. Note that -this means that, if in the case of 2 voices in a staff you want to have -the rest centered on the middle line, you need to code it as \verb#r+0# ---- see the last bar in Fig.~\ref{fig:rests}~. - -\medskip -Some samples of rests are given in Fig.~\ref{fig:rests}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/rests.eps} - \end{center} -\caption{Rests} -\label{fig:rests} -\end{figure} - -\pagebreak -\subsection{Xtuplets} \label{sec:xtuplets} -_{xtuplet} - -{\PMX} insists very strictly on checking that the sum of durations of -all notes or rests in a bar add up to the total required by the bar's -meter. Thus, it cannot deal easily with modern extensively\,% -^{polyrhythmic scores}, percussion in particular \label{p:polyrhythms} -\footnote{But such problems occur occasionally even in classical music. - Thus, a real challenge to any {\PMX} expert is to code the - (in)famous third movement of Mozart's Oboe Quartet KV 370, - where suddenly the oboe changes to an alla breve (4/4), while - the strings continue on in a 6/8 meter! - }. -The only polyrhythmic feature built into {\PMX} are the traditional -xtuplets: doublets, triplets etc.\ , together with their usual notation. - -\medskip -Xtuplets (duplets, triplets, etc.) can have from 2 to 24 notes or -rests\,% -\footnote{The default maximum of $24$ can be changed. - Cf.~\ref{sec:limits} . - }. -By default all notes in an xtuplet have the same duration; but some can -be dotted or have twice the basic duration -(cf.\ p.~\pageref{p:xtupletdoubling}). The notation is as follows: -\begin{enumerate} - \item The symbol for the first note of an xtuplet begins exactly like - a note symbol, with the name of the first note in the xtuplet, - or an \texttt{r} if the xtuplet starts with a \textbf{r}est --, - followed, as the case may be, by an accidental, a \texttt{d} or - \texttt{dd}, a \texttt{+},\texttt{-} or explicit octave, and an - optional duration digit. However, this duration, whether given - explicitly or inherited from a previous note or augmented by a - dot, is not the duration of the first note, but represents the - \emph{total} duration of the \emph{whole xtuplet}. - - \item If the xtuplet is to be \emph{unbeamed}, add an - `\texttt{a}' (`alone') right after the first note. - \item Next -- with no space, as usual -- comes \texttt{x} (for - `\textbf{x}tuplet'), followed by a one- or two-digit integer, - for the number of notes in the xtuplet . If the first note is to - be dotted, add the usual \texttt{d}, if it is to have twice the - basic duration, add a \texttt{D} or \texttt{F} (cf.\ - page~\pageref{p:xtupletdoubling} for more detail on this). The - only options allowed after this begin with the letter \texttt{n} - and control the printed appearance of the xtuplet: - \begin{itemize} - \item If \texttt{n} is omitted, the xtuplet is printed in the - standard way, i.e.\ with the xtuplet $3$ printed over (or - under, as the stemming may dictate) for, say, a triplet. - Note also that by default {\PMX} prints a bracket only - if the xtuplet notes are unbeamed; otherwise just the - xtuplet number is printed. - \item If \texttt{n} is followed by an \emph{unsigned} integer, - this integer is taken as the number to be printed - instead of the natural (default) one. - \item If \texttt{n} is followed by the letter \texttt{f} - (\textbf{f}lip), the xtuplet number is \textbf{f}lippped - vertically from its default position. \item The position - of the xtuplet number can be adjusted in the usual way - with one or two \emph{signed decimal numbers} following - \texttt{n}: the first is a vertical shift in units of - \texttt{\bs{}internote}, the (optional) second a - horizontal shift, in notehead widths. - \item If \texttt{n} is given, but followed by a space, thus - ending the first-note symbol, \emph{no number} at all - will be printed. - \item -_{xtuplet!tweaking the bracket slope} - For a \emph{non-beamed xtuplet only} a suboption - \texttt{s} can be added to the \texttt{n} option by - which the slope of the bracket can be adjusted ; i.e.\ - you can use \texttt{ns}[\emph{n}], where \emph{n} is - an \emph{signed} integer (except zero): a positive - integer will lift the end of the bracket upwards, while - a negative one will move it downwards. - - Note that this suboption will operate in a more - elegant way for Sicherman-type xtuplets\,% -_{Sicherman-type xtuplets!see xtuplets} -_{xtuplets!ajusting slope with Sicherman xtuplets} - \footnote{For Sichermann xtuplets cf.\ the next page. - } - only: when the Sichermann option \textbf{AT} is - \emph{not in effect}, the bracket number (the 3 in a - triplet, e.g.) will \emph{not} follow the slope - adjustment and might have to be tweaked separately. - \end{itemize} - \item The second through last notes of the xtuplet are then each - given by a separate note symbol, containing the meaningful - subset of the parameters permitted for notes or rests: - \begin{enumerate} - \item the note name as the first character. This is the only - required character. It can be an \texttt{r} (for a -_{xtuplet!rest in xtuplet} _{rest!in xtuplet} - rest), except that the \emph{last note of an xtuplet - cannot be a rest}\,% - \footnote{Cf.\ however, Sec.\ - \ref{sec:Xtuplets ending with a rest} - }, - \item an accidental, - \item an octave change (\texttt{+} or \texttt{-}). The octave - may also given explicitly; this is the only digit - allowed, - \item a \texttt{d} (\textbf{d}ot). The next note after the - dotted one is automatically shortened to half the - normal value, - \item -_{xtuplet!doubled note} - \label{p:xtupletdoubling} - the character \texttt{D} in the note symbol for any - note in an xtuplet doubles the duration of this note. - As this accounts for two notes of the xtuplet, it will - decrease the expected number of notes in the xtuplet by - one. If used for the first note of an xtuplet, - \texttt{D} goes \emph{before} an optional \texttt{n} - parameter, \item -_{xtuplet!doubled note in Bach notation} - the character \texttt{F} is the same as \texttt{D}, - except that in the printed output the doubled note will - appear dotted (a notation Bach sometimes used). As with - \texttt{D}, an \texttt{F} for the first note goes - \emph{before} an optional \texttt{n} . - \item grace notes are allowed in xtuplets. -_{grace notes!in xtuplet} - \end{enumerate} - No explicit duration is allowed in symbols for the - second through last members of the xtuplet, the - duration having been determined by the first note. -\end{enumerate} - -\medskip -_{xtuplet!inhibited beaming} _{beaming!in xtuplet} -Beaming of xtuplets is done automatically. If it is to be inhibited, add -the \textbf{a}lone option to the first-note symbol -(cf.~Section~\ref{sec:otherparams}). - -\medskip -Fig.~\ref{fig:xtuplets} displays some examples of xtuplets, with the {\PMX} -coding given below the staff: - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]% - {eps/xtuplets.eps} \\[2ex] - \end{center} - \caption{Xtuplets} - \label{fig:xtuplets} -\end{figure} - -\bigskip -As was remarked at the end of Section~\ref{sec:preamble}, the -individual symbols of {\PMX} generally consist of one or several -characters strung together without spaces. In that sense, each note of -an xtuplet is considered to be \emph{a separate} {\PMX} symbol; so these -are separated by spaces as usual. - -\bigskip\bigskip -_{xtuplet!non-standard bracket} -\label{p:sicherman} -A special, non-standard bracket can be printed for \emph{non-beamed xtuplets -only} with an addition to {\PMX} designed by Col.\ G.L.\ Sicherman. This -prints the xtuplet number not above or below the bracket, but in line -with it, as shown in Fig.~\ref{fig:xtupletsSich}. To invoke this, simply -add the option \texttt{AT} as a separate {\PMX} symbol anywhere in the -body of the source file: this will switch from standard to Sicherman -brackets \emph{for all xtuplets in the score}. -_{Sicherman, Col.\ G.L.} - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/xtupletsSich.eps} \\[2ex] - \end{center} - \caption{Xtuplets with Sicherman brackets} - \label{fig:xtupletsSich} -\end{figure} - -\medskip -If you want to use this for specific xtuplets only or otherwise -customize your use of the option, you will have to use inline {\TeX} -commands, following instructions given in \verb#tuplet.tex# as comments. - -\Note{To use the Sichermann option, the file - \href{http://icking-music-archive.org/software/musixtex/% - add-ons/tuplet.tex}{\texttt{tuplet.tex} } - (available from the software section of the WIMA) must be - installed in your {\TeX} system! - } - -\subsection{Chords} -\label{sec:chords} - -_{notes!chordal} _{chords} -\emph{Chordal notes} are notes that share a common stem and have the -same duration. They are coded in {\PMX} as follows: -\begin{itemize} - \item -_{chords!main note} - One of the notes in the chord is chosen to be the `first note'. - The first note is written as usual and as described in - Section~\ref{sec:notes} ; all other chordal notes are denoted by - separate symbols starting with \texttt{z} , followed by a note - name. The note name can optionally be followed by an accidental - and an octave indicator (\texttt{+} or \texttt{-}), but no - absolute octave is allowed. And no duration value is allowed - either, as this is logically determined by the first note. - - Legally the first note can be any one of the chord notes; but wise - use of this freedom of choice is definitely called for, since - \begin{itemize} - \item the first note sets the default stem direction, - \item in a beam it can affect the height and slope of the - beam, - \item if the chord is beamed with other notes, the default - height and slope of the beam will be determined by the - `first note' of the chord. - \end{itemize} - - If a beam joining chords looks bad, you can often fix it by - changing which note acts as the main one [\,of course there are - other ways to fine-tune beam parameters, as will be described in - detail in Section~\ref{sec:beams}\,]. For further details, consult - Section~\ref{sec:arpeggio} . - - If the main note is dotted, the dot is obviously `inherited' for - all other notes as well, so writing another \texttt{d} would be - redundant. But if you want to shift the dot of a chordal note, you - \emph{must add} a \texttt{d}, followed by the shift parameters, as - described on p.\pageref{shifts}. - - \item Normally {\PMX} will automatically set notes in a chord so that - collisions are avoided (in a second, e.g.). If you don't like - the result, you can shift the note by one notehead width to the - \textbf{r}ight with \texttt{r}, or to the l\textbf{e}ft - with \texttt{e} . - \item The position of accidentals will also be adjusted automatically - by {\PMX} so as to avoid collisions. But, as with single notes, - you can shift accidentals of chord notes manually\,% - \footnote{Note that if, in addition, you use a \texttt{+} or - \texttt{-} to denote a relative octave - (cf.~p.\pageref{p:relativepitch}), this sign must - come \emph{after} the shift parameter for the - accidental. - }, - using the parameters described on p.\pageref{p:accidentals}. - - If you manually shift \emph{any}\ accidental in a chord, then - automatic shifting will be disabled for \emph{all}\ the - accidentals in a chord, \emph{unless}\ you preface the shift - parameter with \textbf{A} (e.g.~\texttt{zcsA<.5}), in which - case the manual shift will be \textbf{a}dded to that applied - automatically by {\PMX}. - \item -_{chords!position of accidentals} - \label{p:chordsoption} - Another option that affects accidental positioning in chords is - \texttt{Ao}~, entered in the main note symbol of a chord. It will - force the accidentals in that chord to be posted in the order they - come in the source (starting with the main note), each one as - far to the right as it will go without crashing into a notehead, - stem, or another accidental. -\end{itemize} - -_{chords!stem length and direction} _{stems!direction forced} -The stem length and direction of a chord are controlled by the first -note, but may be manually overridden with \text{u} (\textbf{u}p) or -\texttt{l} (\textbf{l}ower) in the first note symbol. - -\medskip -As decribed above, every chord note has its own note symbol. This means, -as always: no space within a note symbol, but at least one space -between the note symbols of a chord. - -\Note{\begin{center} \large\textbf{A beginner's trap} \end{center} When - slurring two chords, you may get confused by a simple - programming error. Take, e.g., the sequence - - \vspace*{-3ex} \begin{center} \texttt{c45 zf d zg-} \qquad . - \end{center} - \vspace*{-2ex}\noindent - The first notes of the two chords are c and d , the chord notes - (denoted by \texttt{z} in \PMX) are f and g . However, \PMX\ - following your instruction, sets the lower notes as \emph{c and - g} , the higher ones as \emph{f and d} . - - So if you want to slur the chord say, in the higher notes (as - shown in the picture), - - \vspace*{-3ex} \begin{center} - \includegraphics{eps/chordslur.eps} , - \end{center} - \vspace*{-3ex}\noindent - you must obviously write - - \noindent - \hspace*{5em} \texttt{c45 zf s d s zg-} \; , \quad not \quad - \texttt{c45 zf s d zg- s} \; . - - \smallskip - \textbf{Moral}: if you want to slur chords, look at the - \emph{names of the notes} you want to slur, not - the \texttt{z} symbols! - } - -\subsubsection{Arpeggio} \label{sec:arpeggio} -_{chords!arpeggio} _{arpeggio|see{chords}} - -An \textbf{arpeggio} is, of course, simply a special form of a chord, -denoted by a vertical wavy line in front of the chord proper. To write -that in {\PMX}, place the symbol \texttt{?} after the symbols, with a -space as usual, for both the first and last note of the chord. - -When doing that, you should remain aware of the fact that the wavy line -is generally understood as being played from the bottom up: lowest note -first, highest last. - -\medskip -So far, so easy. There are, however, a few special cases to note: -\begin{enumerate} - \item In an arpeggio, the wavy line often turns out to be crowded to - the chord itself; this happens in particular when some of the - chord notes have accidentals. In such cases one would want to - move the arpeggio line away from the chord itself a bit, i.e.\ - to the left. -_{arpeggio!moving arpeggio line to the left} - - This is easily achieved by adding a \texttt{-} and an (unsigned) - decimal number, without spaces, to one of the \texttt{?} - designating the arpeggio --- it doesn't matter which one. - \item Sometimes the composer may want to have the arpeggio played in a - more virtuose way (on string instruments, in particular): the - first 2 -- or even 3! -- of the chord notes simultaneously, as a - double (or triple) stop, then the other chord notes as a true - arpeggio. - - \medskip - This can be done easily in {\PMX}: simply place the first - \texttt{?} not after the starting chord note, but later, after - one of the \verb#z...# notes. - - In this case is is even more important to remember the standard meaning - of the wavy line in musical language that was just - pointed out! So in general, it is best to stick with the order of - the chord notes ``bottom to top'' unless you really know what - you are doing. - \item In piano music, it is quite common that an arpeggio is meant to - go across the chords of both hands. This also is easily -_{arpeggio!across staves} - implemented in {\PMX}\,% - \footnote{To my knowledge, this feature of {\PMX} (available - from Version 2.503 on) has not been explicitly - documented in the official {\PMX} documentation. - I am very grateful to Andr‚ van Ryckeghem for drawing - our attention to this feature in one of his - contibutions to the WIMA ``Tips \& Tricks'' WEB page. - }: - simply place the first \texttt{?} at the start of the left-hand - chord and the second one \emph{at the end of the - right-hand chord} --- as common sense would suggest! -\end{enumerate} - -\bigskip\noindent -To see all this in examples, look at how the chords in -Fig.~\ref{fig:chords} were coded. When comparing this figure with its -code it should become obvious that care is called for when -producing chords with accidentals, and arpeggios in particular: some of -the chords in bars 1 and 2 look ugly, to say the least, and the arpeggio -line in bar 3 as well as the first one in bar 4 seem to be downright -violations of the standards of good typesetting practice. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/chords.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -% bars 1-3: -e22f zgn zb zef | -dn2- zbn+ zen | -dn4- zbn<1.5+ zen dn- zbnA<1.5+ zen X4 / -b24 zdf zef zgn | -bn2- ? zen zgs | -bn4- zen<1.5 zgs ? bn- zen<1.5 zgs X4 / - -% bar 4: -f8- ? za zc zf gd4f- zb zdf zgfd+0.5+2 / -cd4- zef zf za ? d8f- zgf zb zdf / - -% bar 5: -c4sAo ? zgs zes zbn ? X2 bn4 zes ? zgs zcs ?-2.9 Rb / -es2-u zgs zcs / -\end{verbatim} -\end{minipage} - \end{center} - \caption{Chords} - \label{fig:chords} -\end{figure} - -\subsection{Grace notes} \label{sec:graces} -_{grace notes} _{notes!grace notes} - -A grace note symbol starts with a \texttt{G}. It is entered in its -natural order, i.e.\ before the main note symbol for a normal grace, -behind the main note symbol for an after-grace . After -\texttt{G} comes any combination of the following options: - -\begin{itemize} - \item A single digit representing the number of notes\,% - \footnote{The \emph{maximum} number of notes in a grace is not - fixed, but depends on circumstances - (cf.~Section~\ref{sec:limits}); but up to 16 is - usually safe. - } - in the grace. The default is 1 . - \item \texttt{m} (for \texttt{m}ultiplicity) and a digit, - representing the number of flags or beams. The default is 1; 0 is - allowed. - \item -_{slurs!in grace notes} _{grace notes!slurs|see{slurs, in grace notes}} - \texttt{s} (for \texttt{s}lur): this joins all notes of the - grace to the main note. No \texttt{s} is needed in the main - note symbol. - \item \texttt{x} for a slash (only for single graces), - \item \texttt{l} or \texttt{u} to force the direction of the stem(s) - as desired. -\end{itemize} -Next comes the only required character, the first grace-note name. No -time value must be entered, but, if needed, an octave (relative or -explicit) or an accidental can be given as in a normal note. Second and -later notes must follow immediately in sequence, set apart by spaces, -likewise without any time value, and without any intervening symbols. - -\medskip -_{grace notes!`after'-grace} -`After'-graces (graces coming \emph{after} a main note) are entered -similarily to normal graces, with the same parameters as above; but in -addtion to the other parameters either an \texttt{A} (for -\textbf{A}fter) or \texttt{W} (for \textbf{W}ay-after) is entered, -before the grace note(s). - -After-grace symbols associate the grace note(s) with the \emph{prior} -main note and are therefore entered \emph{after} the main note symbol. - -\medskip -By default, {\PMX} will place graces or after-graces \emph{immediately} -before or after the main note, way-afters as far to the right as -possible before the next note or bar line. If either type of -after-grace is slurred, the slur will start on the main note and end on -the last one in the grace. - -_{grace notes!added space} -For a grace (\emph{not for an `after'-grace}), you can, if necessary, -add some space between the grace and the main note by inserting an -\texttt{X} followed by a unsigned decimal in the grace symbol\,% -\footnote{It doesn't matter where you insert this shift symbol, as long - as it makes syntactical sense; to state this more simply: the - \texttt{X}[\emph{n}] may \emph{not be inserted before a - number} and \emph{not after the leading note} of the grace. - - \noindent - This added space for a grace is indeed essentially a hard - space, so that -_{spacing!hard space in grace} - its name, - \texttt{X} , is quite appropriate. And, as with almost all - such cases, it is wise to keep in mind that `hard spaces' are - what their name implies: a hard -- or brutal, if you will -- - last resort if nothing else seems to help. Used unwisely, - adding a hard space to a grace is liable to produce rather - ugly results, as is exemplified in Fig.~\ref{fig:grace}. - }. - -\medskip -Examples for grace notes are displayed in Fig.~\ref{fig:grace}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/grace.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -w150m -Abepl -\\nobarnumbers\ -% -% Bar 1 -G3sm2g++ a b c4 f- G2slAe d c GsX1xb+ c / -% Bar 2 -Ga- g4 Gfs- g c G13sm3X3d e f g a b c d e f g a b c / -% Bar 3 -c2- G3slWb a b c2 of Rb / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{Grace Notes} \label{fig:grace} -\noindent ------------------------------------------------------------------------------------- -\end{figure} - -\subsection{Ornaments} \label{sec:ornaments} -_{ornaments} - -Symbols for ornaments are entered \emph{after} their associated note -symbol, separated, as usual, by a space\,% -\footnote{The ornament, although associated with a specific note, is - considered a separate \PMX\ symbol. - }. - -The ornaments available in \PMX\ are listed in Table~\ref{tab:Ornamenti} -and are illustrated in Fig.~\ref{fig:ornament}. - -\begin{table}[htbp] -_{breath} _{caesura} _{fermata} _{mordent} _{ornaments} _{pizzicato} -_{segno} _{shake} _{staccato} _{trill} _{accidentals!editorial} -_{accidentals!dubious} _{notes!dubious} -\begin{center} -\begin{tabular}{|p{5.0cm}|p{4.0cm\tt}|} - \hline - staccato & o. \\ \hline - tenuto & o\_ \\ \hline - accent & o> \\ \hline - sforzando & o\^\ \\ \hline - pizzicato & ou \\ \hline - spiccato & op \\ \hline - $\times$ & ox \\ \hline - $+$ & o+ \\ \hline - caesura${\,}^\dag$ & oc \\ \hline - breath${\,}^\dag$ & ob \\ \hline - upper fermata & of \\ \hline - lower fermata & ofd \\ \hline - shake & ot \\ \hline - mordent & om \\ \hline - mordent [right parenthesis before notehead] - & o) \\ \hline - appogiatura [left parenthesis before notehead] - & o( \\ \hline - trill${\,}^\dag$ & oT\emph{x} \\ \hline - implicit trill${\,}^\dag$ & oTt\emph{x} \\ \hline - segno${\,}^\dag$ & og\emph{x} \\ \hline -\end{tabular} - - \smallskip - \begin{tabular}{|p{5.0cm}|p{4.0cm\tt}|} - \multicolumn{2}{c}{editorial marks:} \\ \hline - editorial accidentals & oes oef oen \\ \hline - dubious accidental & oes? oef? oen? \\ \hline - dubious note & oe? \\ \hline - \end{tabular} - - \smallskip - \begin{tabular}{p{5.0cm}p{4.0cm\tt}} - ornament repetition${\,}^\dag$ - & : \\ - \end{tabular} - \end{center} - ${}^\dag$ See explanation in main text - \caption{Ornaments} \label{tab:Ornamenti} - \end{table} - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/ornament.eps} - \end{center} - \caption{Ornaments} - \label{fig:ornament} -\end{figure} - -All except the staccato, tenuto, down fermata and parentheses will -appear above the staff; staccato\,% -\footnote{In fact, the only difference between staccato and pizzicato is - the vertical positioning of the dot. - } -and tenuto appear just above or below the note head, depending on the -stem direction, the parentheses at the level of the note head, of -course. - -\medskip -The trill and segno symbol are special in that they may have additional -optional characters. Either trill symbol may include a decimal number to -specify the length of the wavy line indicating the duration of trilling, -in \verb#\noteskip#s . The default is 1 . Thus \texttt{oT0} will be a -\emph{tr} without any wavy line, and \texttt{oTt2} is a wavy line -of 2 \verb#\noteskip#s without any \emph{tr} symbol starting the wavy -line. - -\medskip -A segno may only be entered in the first (lowest) voice. It may be -immediately followed by a positive or negative integer, which indicates -a number of points that it will be offset horizontally; and it will -appear above every staff of the system. - -\bigskip -_{ornaments!repeated} -Once the ornament type has been specified, most ornaments can be raised -or lowered from their default position by appending a signed integer to -the symbol, giving the vertical offset in \verb#\internote#s. Caesura -and breath may in addition have a signed number, giving the horizontal -shift from default in notehead widths. These two ornaments also differ -from the others in their default horizontal position, which is $0.5$ -\verb#noteskip# past the note. - -\medskip -An ornament can be automatically repeated on a series of consecutive -notes, provided the notes are all in the same input block. To activate -this feature, terminate the first ornament symbol with \texttt{:} . Then -every note in that voice will have the same ornament until a -note is followed by the repeat terminator \texttt{o:} . - - -\subsection{Beams} \label{sec:beams} -_{beaming} - -_{beaming!forced} _{beaming!inhibited} -For the most part, \PMX\ automatically takes care of the details -of defining beams: selecting which notes are beamed together, -and setting the angle, direction, height, and -\emph{multiplicity} (the number of bars along the top or -bottom). However, one may define a \emph{forced} beam -- which -overrides {\PMX}'s selection of which notes are beamed together --- by surrounding the notes to be beamed with \texttt{[} and -\texttt{]} (with spaces, as usual). Conversely, if {\PMX}'s -selection is to beam notes, and you want to inhibit this for a -single note, add the option \texttt{a} to the note symbol -(cf.~Section~\ref{sec:otherparams}). - -\bigskip -One may also wish to edit certain features of a beam even when {\PMX}'s -grouping decision would otherwise be acceptable; this is done by adding -some parameters to \texttt{[} and \texttt{]} : - -_{beaming!parameters} -\medskip -The \texttt{[} can be followed, without space, by one or several of the -following options: - -\begin{itemize} - \item \texttt{u}, \texttt{l} or \texttt{f} will override {\PMX}'s - selection of the direction of the beam: - \begin{itemize} - \item \texttt{u} makes the beam go \emph{above} the noteheads - (\textbf{u}pper beam), - \item \texttt{l} makes the beam go \emph{below} the noteheads - (\textbf{l}ower beam), while - \item \texttt{f} will \textbf{f}lip the beam from whatever - \PMX\ would do automatically; - \end{itemize} - \item \texttt{h} forces the beam to be \textbf{h}orizontal; - \item \texttt{m} followed by a single digit (1, 2, 3 or 4) forces the - \textbf{m}ultiplicity of the beam; - \item\texttt{j} \textbf{j}oins a beam grouping to a prior one started - in another staff (cf.\ p.~\pageref{p:jumpbeam}). -\end{itemize} - -The beam symbol constructed so far can be followed, without space, by -one, two or three consecutive integers, each preceded with \texttt{+} or -\texttt{-} : - -\vspace*{-2ex} - \begin{enumerate} - \item first is an adjustment of the starting height; it is - given in \verb#\internote#s and may range from -30 to - 30, - \item the second is a slope adjustment (again in the range - from -30 to 30), - \item The third is an additional adjustment to the starting - height, given in units of the beam thickness. It may - range from 1 to 3 only. It always acts to - \emph{increases} the stem length. This would only be - used in rare cases, e.g.~to align consecutive - horizontal beams which have internal multiplicity - changes. An example is shown in Fig.~\ref{fig:beams}, bar - \emph{f}. - \end{enumerate} -Note that for technical reasons all three integers must always be given -\emph{with a sign} (even the last one, although it always is positive). -Note also that, since the meaning of these numbers is interpreted by -\PMX\ in their sequence, if you need only the second or only the third -number you \emph{must not omit} the preceding number(s), but rather give -explicit \texttt{0}'s for them. -\vspace*{-2ex} -\begin{figure}[!h] - \begin{center} - \includegraphics[scale=.82]{eps/beams.eps} \\[2ex] - ------------------------------------------ -\vspace*{-2ex} -\begin{minipage}{380pt} -\small -\begin{verbatim} -% Bar a: -f1s c f a c fs a c- b g+ b g [l+12-8 b-- g1++ b g ] Rd / -% Bar b: -[l f1s- c f a ] [u c fs a c- ] [f b g+ b g ] [ b-- g1++ b g ] Rd / -% Bar c: -[m4 f1s- c f a ] [m1 c fs a c- ] b g+ b g [h b-- g1++ b g ] Rd / -% Bar d: -[ f1s- c f a ][ c fs a c- ] [ b g+ b g ]-[ b-- g1++ b g ] Rd / -% Bar e: -[ fs-4x3nf c a+ c1 fs a c- ] b g+ b g b-- g1++ b g Rd / -% Bar f: -m3434 -cd84 c3 c6 c [+0+0+3 cd8 c3 c6 c ] [-1+0+3 cd8 c3 c6 c ] Rd / -\end{verbatim} -\end{minipage} - \end{center} - \caption{Beams} - \label{fig:beams} - \vspace*{-4ex} -\end{figure} -\pagebreak - -Here are some further possibilities regarding beaming: -\begin{itemize} - \item -_{xtuplet!beamed with other notes} _{beaming!in xtuplet} - \vspace*{-1ex} - By default, xtuplets (cf.~Section~\ref{sec:xtuplets}) are set - apart with their own beam. To beam an xtuplet together with - other non-xtuplets, just include it with the other notes in a - forced beam. - \item -_{beaming!rest within beamed notes} _{rest!in beam} - \vspace*{-1ex} - Rests may also be included within forced beams, provided they - are shorter than quarter rests, and of course that they come - \emph{between} the first and last notes under the beam. - \item -_{beaming!beamed groupings} - \vspace*{-1ex} - Sometimes one may wish to define beamed groupings with subgroups - joined by a single beam. The symbol \texttt{][} , standing alone - between two note symbols inside a forced beam, causes the - multiplicity to decrease to unity and immediately increase to - its natural value for the next note. An example of this, as well - as the beaming together with an xtuplet, can be seen in bar 2 of - the trombone voice of Fig.~\ref{fig:agon}~: the two - doubly-beamed groups connected by a single beam are generated by - \texttt{[ c15 c c ][ c c cx3 c c ]} . - \item -_{beaming!single-slope beam} - \vspace*{-1ex} - Related to this is a - \emph{single-slope beam group}, which is the same as described - in the previous item except that there is no connecting beam - between the beamed subgroups. For this option, the beamed - subgroups are separated by \texttt{]-[} standing alone between - two notes inside the forced beam. - \item -_{beaming!large jumps} _{beaming!up/down beams} - \vspace*{-1ex} - If there are large jumps in pitch between - notes in a beam within a single staff, as a matter of taste you - may wish to start the beam for example as an upper one and end - it as a lower. {\PMX} will never do this automatically, but you - can accomplish it by forcing the beam with appropriately - modified up/down-ness, starting level, and slope. If you use - this technique, there are two details to note: - \begin{enumerate} - \item if there are any intermediate multiplicity changes, - they will only be handled properly if the initially - specified up/down-ness is consistent with the vertical - position of the intermediate notes involved\,% - \footnote{This is due to a fundamental technical - limitation of \MusiXTeX. - }, - \item for proper appearance in crowded scores you may - wish to insert hardspace or shifts as described - in Section~\ref{sec:spacing}. - \end{enumerate} - - \item Beams cannot normally jump staves. But if that is -_{beaming!staff-jumping} \label{p:jumpbeam} - desired, start the beam normally in one voice, and - terminate the part of the beam in that voice with - \texttt{]j} . Then resume the beam in the other voice on - a neighboring staff with \texttt{[j}, ending that part - with the normal \texttt{]} . For staff-jumping beams, - it's OK to have just a single note inside one or both of - the partial beams. Each voice must, however, still have - the right number of beats, so you will probably need to - fill in the durations with blank rests after the first - members of the beam and before the second. - - \smallskip - With staff-jumping beams, some adjustment of the beam height and - slope will usually be required. Also, sometimes the up/down-ness - of the ending section must be overridden; you will know that - this is necessary if on your first try the ending is shifted - horizontally from the desired position. These editing commands - may sometimes produce unexpected results, and some iteration may - be required to get exactly what you want. - - \smallskip - An example of a staff-jumping beam is seen - in Fig.~\ref{fig:jumpbeam} . - -\begin{figure}[!bth] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.82]{eps/jumpbeam.eps} - } - \end{center} - \caption{\textbf{A staff-jumping beam}} - \label{fig:jumpbeam} -\end{figure} - \item - If the option : (colon) is appended to the starting - symbol \texttt{[} for a forced beam -_{automatic beaming!} \label{p:autoforcedbeam} - (`automatic forced beaming'), then henceforth beams of - the same length will be force-beamed similarly in that - line of music \emph{until the end of the input block}. - Within an input block, the automatic forced beaming can - also be stopped explicitly by starting a new regular - forced beam. - - But remember that {\PMX} is actually quite good at - beaming notes in the manner a human musician would - normally expect; so it will be necessary to use this - facility only in the special cases when you want (or - need) beaming different from what {\PMX} provides on its - own. In such cases, consider this beaming automatism as - a kind of shorthand; as such, it will be really worth - your while only when you want to repeat the same - `non-orthodox' beaming an appreciable number of times. - - Regarding automatic forced beaming, you should also be - aware of the following: - - \smallskip - As with regular beams, you can have notes of different - durations beamed together in an automatic forced beam. - The rule in that case is: in the beams following the - initial one, the next sequence(s) of notes with the - \emph{same total duration time} as that of the notes - beamed together initially will then be beamed together - automatically. As usual, notes given without duration - will `inherit' their durations from the most recent note - with an explicit duration. - - All this is best seen in the following example: - - \vspace*{-2ex} - \begin{center} - \includegraphics[scale=.82]{eps/autobeam} \qquad , - \end{center} - - \vspace*{-3ex} - which is coded as follows: - - \vspace*{-4ex} - \qquad \begin{verbatim} - d85 e b a1 b c1 b a8 -[ d85 e ] b a1 b c b a8 -[: d85 e ] b a1 b c b a8 - d85 e b a1 b c1 b a8 / - d85 e b a1 b c1 b a8 Rd - \end{verbatim} - \vspace*{-3ex} - \nopagebreak - Note how the automatic beaming ends at the \emph{end of - the first input block}. -\end{itemize} - - \pagebreak -A last remark: - -\smallskip \noindent -{\PMX} was never intentionally designed to produce beams across -bar lines. -_{beams across bar lines} -\label{sec:beamjump} -However, in an (undocumented) exception, {\PMX} \emph{in some -cases} does accept beams that cross bar lines: as it turns out, -the machinery designed for staff-jumping beams may also be used -to force a beam across a bar line, whether the beam jumps to a -different staff or stays within the same staff. - -The syntax for that feature is applied in the obvious way, as -described on p.\ \pageref{p:jumpbeam}, and then applied -similarily in the single-staff example of Fig. -\ref{fig:Donjump}. - -\begin{figure}[!ht] \begin{center} -\includegraphics[scale=.82]{eps/Donjump.eps} \\[2ex] ------------------------------------------------------------------- -\begin{minipage}{360pt} \small - \begin{verbatim} - cd24 c8 [+0+1 c ]j | [jf c d e f ] - g4 g8 [+0-1 g8 ]j / [j f84 e d c ] c2 / - \end{verbatim} -\end{minipage} \end{center} - -\hspace*{-2ex} -\caption{An example of bar-crossing beams within a single staff} - \label{fig:Donjump} -\end{figure} - -% \addcontentsline{toc}{chapter}{Index} - - -\subsection{Slurs and Ties} \label{sec:psslurs} -_{slurs} - -\subsubsection*{Pick a package} \label{sec:postscriptpackages} -\addcontentsline{toc}{subsubsection}{Pick a package} -_{dynamic marks!hairpin!length limit} _{hairpins|see{dynamic marks}} - -By default \PMX\ will use {\MusiXTeX}'s built-in, font-based slurs and -_{ties|see{psslurs}} -hairpins (crescendi and diminuendi, see Section~\ref{sec:dynamics}, -p.~\pageref{p:dynamics} ff). To use these, you don't have to install any -more software. But they do have drawbacks: the fonts used by {\MusiXTeX} -for font-based slurs come in fixed sizes and shapes and are therefore -often not flexible enough in complicated situations. In contrast, slurs -and hairpins produced with the help of the PostScript language overcome -many of the shortcomings of their font-based counterparts. - -_{slurs!PostScript} _{PostScript!slurs, ties and hairpins} -There are two independent ``third-party'' packages that provide -{\MusiXTeX}~\texttt{1.15} and {\PMX} users with PostScript-based slurs, -ties, and hairpins: -\begin{description} - \item[\emph{Type K} --] \label{sec:pss-K} -_{Kneifl, Stanislav} - This package was written by \textbf{Stanislav Kneifl}. It is - directly supported by \PMX\ and will be the focus of any future - \PMX\ enhancements. Detailed instructions for its use are given - in the corresponding paragraph below. - \item[\emph{Type M} --] -_{Morimoto, Hiroaki} - This package, by \textbf{Hiroaki Morimoto}, is somewhat more - flexible when used directly in {\MusiXTeX}~\texttt{1.15}, but - it requires the \textbf{Metapost} package to be installed in - the {\TeX} installation. These are not directly supported by - {\PMX}, but are advertised to be fully compatible with default - font-based slurs of {\MusiXTeX}~\texttt{1.15} . From {\PMX}'s - standpoint they are not different from font-based slurs, and - the same options and features that apply to font-based slurs - should apply as well to these. -\end{description} - -Both PostScript slur packages provide excellent slurs, ties and -crescendi. \label{p:usepsslurs} In fact, for simple slurs, you can -hardly discern the differences between the three possibilities, as can -be seen in Fig.~\ref{fig:psslurs1} --- although type M slurs are generally -somewhat flatter, indeed. On the other hand, for steep and long slurs, -the difference is appreciable, as can be seen in the example of -Fig.~\ref{fig:psslurs2}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/cslurs1n.eps} - - \includegraphics[scale=.82]{eps/cslurs1k.eps} - - \includegraphics[scale=.82]{eps/cslurs1m.eps} - \end{center} - \caption{Three realizations of simple slurs} - \label{fig:psslurs1} -\end{figure} - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/cslurs2n.eps} - - \includegraphics[scale=.82]{eps/cslurs2k.eps} - - \includegraphics[scale=.82]{eps/cslurs2m.eps} - \end{center} - \caption{Three realizations of exotic slurs} - \label{fig:psslurs2} -\end{figure} - -\bigskip -Here are some additional factors to consider when deciding which type of -slurs and hairpins to use with {\PMX}: -\begin{itemize} - \item True ties, which are shaped differently from slurs, are only - available with Type K\,% - \footnote{In {\MusiXTeX}~\texttt{1.15}, font-based - true ties are actually available; but they were never - incorporated in {\PMX}, now being superceded by type K - slurs. - }. In all cases, the starting and ending - positions are different for ties and slurs\,% - \footnote{The ends of an ordinary slur are centered horizontally - above or below the notehead, while tie ends are - shifted inboard and closer to the midheight of the - notehead. - }. - \item Font-based hairpins cannot wrap over a line break, but the - PostScript ones can. - \item Font-based hairpins cannot be longer than 68 mm. - \item With either postscript package, the resulting markings do not - show up on the screen if you view the score with one of the - commonly used DVI viewers such as \textbf{XDVI} or \textbf{YAP}. - To see them, you have to first produce a PostScript file from - the \texttt{dvi} file (using, for example, \textbf{dvips}), which - you can then view on the screen and print on your printer using - \textbf{Ghostview} or some other such program. But if you use - Type 1 PostScript fonts, as was recommended in - Section~\ref{sec:psslurs}, you will have all this software at - hand anyway! -_{PostScript!fonts} -\end{itemize} - -Detailed instructions for installing the Type K or Type M packages are -given in Section~\ref{sec:pss-K} . - -\subsubsection{General slur usage} -_{slurs!general usage} - -This subsection explains commands that apply to all types of slurs, -followed by separate subsections describing operational features -specific to either font-based or Type K slurs, and finally a subsection -on the use of Type M slurs. - -\medskip -Here are the {\PMX} symbols that normally define slurs or ties, except -for slurs to or from graces\,% -\footnote{Recall that the slurring of grace notes is defined - entirely within the the grace symbol, as described in - Section~\ref{sec:graces}. - }: -\begin{itemize} - \item An opening parenthesis, `\texttt{(}', begins a slur, and a - closing parenthesis, `\texttt{)}', ends it; similarly, an - opening brace, `\verb#{#', begins a tie, and a closing brace, - `\verb#}#', ends it. The opening parenthesis/brace is placed - \emph{before} the first note, and the closing parenthesis/brace - \emph{after} the last note of the slur or tie. As always, these - symbols (including options, see below) are separated from notes - and other symbols by spaces. - \footnote{Braces -- and similarly the tie toggles described - subsequently -- , although legal with all types of - slur, are really useful only with Type-K slurs, since - only with these they will produce a true tie. - } - \item Alternatively to parentheses, you can use the letter - \texttt{s} (for \textbf{s}lur) both to begin \emph{and} - end a slur; but these come \emph{after} both the - beginning \emph{and} ending note. This is thus a - \emph{toggle}, turning a slur off if it's on, and - starting a new one otherwise. - - For ties (instead of slurs), use the letter - \texttt{t} (for \textbf{t}ie), also a toggle. - \label{p:tslur} -\end{itemize} - -Note that slurs or ties may end on a rest\,% -\footnote{If you happen to think that this would be musically - meaningless, you are wrong. Just watch a really good pianist - (or conductor, for that matter) ending a piece, say in pp. It - ain't over until the fat lady has really finished singing: - until she is really \emph{completely} \emph{done} with taking - her hands off the keyboard! In other words: she visibly (and - audibly!!) plays the slur over the final rest. - }, -but they may \emph{not start} on one. -_{slur!ending on rest} _{tie!ending on rest} -The default ending height of the -tie (or slur) in that case will be that of the note on which it started -(in other words, it will be horizontal); but you can vary that -explicitly in the usual way. - -\bigskip -Often you need to open a slur or tie while another one is already open -\emph{in the same voice}, e.g., with tied chords, or if a second slur -connects a subgroup of notes within a longer slur. In such cases, {\PMX} -needs to be told which slur is which. For this purpose, the slur opening -character [ \texttt{s}, \texttt{t}, \texttt{(} ] can -optionally be followed by a single-character ID code [ \texttt{0-9}, -\texttt{A-Z} ] to identify that particular slur. To close that slur, -insert the ID code right after the corresponding \emph{closing} -character [ \texttt{s}, \texttt{t}, \texttt{)} ]. If an ID code is -used, it \emph{must} be the second character in the symbol. You cannot -use any ID that is already in use on a slur or tie for a new slur or -tie. See Fig.~\ref{fig:bloch} for an example\,% -\footnote{The example uses Type K slurs. - }. - -\begin{figure}[!htb] -\begin{center} - \includegraphics[scale=.82]{eps/bloch.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -Ap -% Bar 25: -(A e4x3n g bff cf4x3n b g )A (B e4x3n bf e / -f8+ (C zf+ e- ze+ c4nc- zcnc+ (Dtl b- D< (Et zb+ / -% Bar 26: -g4x3n an g e4x3n b e g4x3n a g )Bh Rb / -b4- )Dt D< zb+ )Et )C dd4- D< (F+1 zd+ o_ e8- D< ze+ )F / -% -\end{verbatim} -\end{minipage} -\end{center} - - \vspace*{-3ex} -\caption{\textbf{E.\ Bloch}, \emph{Waves} (\emph{Poems of the Sea} I), - bars 25,26 - } \label{fig:bloch} -\end{figure} - -\bigskip -Normally, you can leave further details of slur appearance to {\PMX}; -the result will usually satisfy. If not, you can change some features -manually by additional options which go right after the initial character -and any ID code, as usual \emph{without} a space,: - -\begin{itemize} -_{slurs!additional options} - \item The default vertical position above or below the note heads - can be overridden with - \begin{itemize} - \item \texttt{u} (\textbf{u}pper), - \item \texttt{l} (\textbf{l}ower) or, equivalently, - \texttt{d} (\textbf{d}own). - \end{itemize} - \item The starting or ending point can be shifted from its - default by entering one or two explicitly signed numbers: the - first, which must be an integer, gives the vertical shift, in - \verb#\internote#s; the second, which may be decimal, the - horizontal offset, in notehead widths. - \item A dotted slur is obtained by adding the option \texttt{b} (for - \textbf{b}roken) in the symbol that starts the slur - (cf.~Fig.~\ref{fig:dottedslur}). -\end{itemize} -\begin{figure}[!htb] -\begin{center} - \includegraphics[scale=.82]{eps/dottedslur.eps} \\[2ex] -\begin{minipage}{380pt} - \small - \begin{verbatim} - ( g44 c ) (b [ e8 d c b ] ) | (u a4 f ) g2 Rb / - \end{verbatim} -\end{minipage} -\end{center} - - \vspace*{-3ex} - \caption{A dotted slur} \label{fig:dottedslur} -\end{figure} - -\paragraph{Slurs for staff-jumping beams} \text{} \\[-2ex] -_{slurs!with staff-jumping beam} - -Often -- in piano music in particular -- when you have a staff-jumping beam -(cf.~p.\pageref{p:jumpbeam}), you may want to join the two parts by a -slur as well. {\PMX} will, however, get very confused if you try to put -the beginning slur symbol in one staff and the corresponding ending -symbol in a different staff; both slur symbols \emph{must always be in -the same staff}. The solution is to put the ending slur symbol after -the invisible rest; but do so carefully: even though the invisible rests are -indeed invisible, {\PMX} accounts for the horizontal space it would need -for visible rests, and that determines the length of the slur. So if you -want to avoid awkwardly adjusting the length of the slur by hand, you -should subdivide the invisible rest appropriately so that one part of it -will be at the note of the other staff where you want the slur to end. -The vertical position of the slur end will have to be done manually. -Fig.~\ref{fig:jumpslur} shows an example. - -\begin{figure}[!htb] -\begin{center} - \includegraphics[scale=.82]{eps/jumpslur.eps} \\[2ex] -\begin{minipage}{380pt} - \small - \begin{verbatim} -r4b [j b1 a g f ] r4b [j c14 b a g ] | Rb / -( [ f1 e d D"what you want"-22 c ]j r1b r1b r1b r1b )-15 -( [ g14 f e D"what you don't want"-22 d ]j r4b )-15 | / - \end{verbatim} -\end{minipage} -\end{center} - \caption{Placing the slur ending with a staff-jumping beam} - \label{fig:jumpslur} -\end{figure} - -\subsubsection{Invoking and using Type K slurs} \label{sec:pss-typeK} -_{slurs!Type K usage} _{PostScript!slurs, ties and hairpins} - -To activate the Type K package, all you need to do is to add a line in -the header of the {\PMX} source after the preamble, containing the -symbol \texttt{Ap}\,% -\footnote{For further details on the use of \texttt{A} see - Section~\ref{sec:A} . - }. - -\bigskip -For type K slurs, some optional parameters can be used in the slur -symbol to change the shape of the slur: -\begin{itemize} -_{slurs!additional options} - \item an \texttt{f} (for \textbf{f}latter) will flatten the slur a - bit, while - \item \texttt{h, H} or \texttt{HH} (for \textbf{h}igher) will - increase the slur's curvature by increasing degrees, thereby - raising (or lowering) its middle. -\end{itemize} -These parameters can be used in either the starting or the ending slur -symbol. They \emph{do not work with ties}, i.e.\ with symbol \texttt{t}, -and {\PMX} will complain if you try that. Examples are given in -Fig.~\ref{fig:kslurs}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/kslurs1.eps} - - \includegraphics[scale=.82]{eps/kslurs2.eps} - \end{center} - \caption{Shape variations in type K slurs} - \label{fig:kslurs} -\end{figure} - -\medskip -The Type K package contains {\TeX} macros that activate or deactivate an -automatic vertical adjustment of slurs or ties to avoid tangencies with -staff lines. In {\PMX} these adjustments are switched off by default, -because they may alter the endpoint positions from what you would -normally expect. However, if you wish to use them, they may be switched -on or off globally at the start of any input block, and locally with -options to individual slur or tie commands. - -To activate these adjustments globally (or deactivate, if previously -activated), at the beginning of any input block enter \texttt{Ap+s} (or -\texttt{Ap-s}) for slurs, and \texttt{Ap+t} or (\texttt{Ap-t}) for ties. -To activate them for one-time use only, simply include \texttt{p+t} or -\texttt{p+s} as an option in the symbol for the affected slur or tie. No -deactivation is then needed. - -You can also sequentially increase (\texttt{Ap+c}) or decrease -(\texttt{Ap-c}) the default curvature of slurs or ties (again at the -beginning of any input block), so that the result is cumulative. But -after the cumulative change has reached ``HH'' or ``ff'', it will remain -there, and nothing more will happen. - -An example is given in Fig.~\ref{fig:kslurtweaks}. The distinctions are -fairly subtle; but some would see the adjusted markings as more pleasing -since on close inspection they clearly avoid tangencies with staff -lines. - -\begin{figure}[!htb] -\begin{center} - \includegraphics[scale=1.0]{eps/kslurtweaks.eps} \\[2ex] -\begin{minipage}{380pt} - \small - \begin{verbatim} - Ap - a44 s bu s | b s c s / - Ap+s - a4 s bu s | b s c s / - % - a4 t a t | b t b t / - Ap+t - a4 t a t | b t b t / - \end{verbatim} -\end{minipage} -\end{center} - \caption{Vertical tweaks of slurs and ties} \label{fig:kslurtweaks} -\end{figure} - -\paragraph{Line-break tie options} \text{} \\ -_{line break!tie options} _{slurs!across line break} -There are two options that only affect ties that span line breaks: -\begin{enumerate} - \item by default a full tie is drawn at the beginning of the second - line in such cases. There is a global option, \texttt{Ap+h}, - which tells {\PMX} to use \emph{half ties} -- which are - flattened at their left-hand ends -- on the second line, but - \emph{only} in cases where the second tie segment is shorter - than 15 pt. This option may be cancelled with \texttt{Ap-h} , - \item the second option -- which should not be used together with the - first one! -- affects \emph{both} the first and second segments - of linebreak slurs and ties. It is the global option - ~\texttt{Apl}. It alters two defaults to give what some might - consider an improved appearance: first, it causes the first - segment to be drawn as a normal tie, whereas by default it has - a different shape than a normal tie; second, it moves the - starting point of the second segment a bit to the left. - - \medskip - The \texttt{Apl} option has been enhanced since {\PMX} - version 2.411; the main new feature is that it now - works for slurs as well as for ties. Other - enhancements are more subtle; read the description of - these in the announcement text for version 2.411, given - here: - \begin{quotation} - ``\texttt{Apl} in the preamble now activates - special treatment of line-break slurs and ties - (before, \texttt{Apl} only affected ties.). - - ``Specifically, it enables tweaking the ending - position of the first segment (seg 1), the - starting position of the second (seg 2), and the - curvature of either, or both. [You must have - musixps.tex available to {\TeX}!] With - \texttt{Apl} every slur/tie at a line break is - automagically broken into two separate ones (no - additional PMX slur start or ending commands are - required). Vertical/horizontal tweaks to the - start of the seg 1 and the end of seg 2 are - handled as before. Vertical/horizontal tweaks - for the end of the seg 1 and start of seg 2 are - entered as options in the otherwise normal - command that starts the slur/tie. The option for - the end of seg 1 starts with "s" (for sever or - split), then the usual one or two signed - numbers, then a second "s" and one or two more - signed numbers for the start of seg 2. - - ``The usual curvature options \texttt{h}, - \texttt{H}, \texttt{HH}, \texttt{f}, if included - in the starting command for a linebreak slur, - will apply to seg~1, and if in the closing - command, to seg~2. Of course, if the slur/tie - does not come at a linebreak, the special - position tweaks (those after the "s" option) - will all be ignored, and the curvature tweaks on - the closing note take precedence (as before).'' - \end{quotation} -\end{enumerate} -\Note{Without either of these options, the second segment sometimes - becomes too short to be clearly visible. - } - -\bigskip -The global options mentioned (and in fact any of the other global -options to be described later) can be combined into a single symbol, -e.g., \texttt{Ap+sl}. - -\subsubsection{Use of Type M Slurs and Ties} \label{p:useMslurs} -_{slurs!Type M usage} _{PostScript!slurs, ties and hairpins} - -In contrast to the type K slurs, type M slurs are not explicitly -supported by {\PMX}; as a consequence, you have to do some things -manually. But it's not difficult: -\begin{itemize} - \item -_{\textbf{musixpss}} - The first step is to insert into the header of your {\PMX} - source file the following line \\ - \text{\hspace*{10em}} \verb#\\input musixpss\relax\# \qquad . - \item -To process a {\PMX} file with type M slurs, three extra steps are -needed to produce a printed musical score. Here is the full sequence of -processing steps, for a file named \verb#my_opus#: - -\begin{center} -\begin{tabular}{r@{\qquad}ll@{\qquad\qquad}l} - & command & & resulting new file(s) \\ \hline - & & & \\ - 0. & text editor & & \verb#my_opus.pmx# \\ - 1. & \verb#pmx# & \verb#my_opus# & \verb#my_opus.tex# \\ - 2a. & \verb#tex# & \verb#my_opus# - & \verb#my_opus.mx1, my_opus.slu# \\ - 2b. & \verb#musixflx# & \verb#my_opus# & \verb#my_opus.mx2# \\ - 2c. & \verb#tex# & \verb#my_opus# & \verb#my_opus.dvi# \\ - $\to$ 3a. - & \verb#musixpss# & \verb#my_opus# & \\ - $\to$ 3b. - & \verb#mpost# & \verb#my_opus# - & \verb#my_opus.mp, my_opus.1, #\dots \\ - $\to$ 3c. - & \verb#tex# & \verb#my_opus# & \verb#my_opus.dvi# \\ - 4a. & \verb#dvips# & \verb#my_opus# & \verb#my_opus.ps# \\ - 4b. & \verb#gsview# & \verb#my_opus# - & \emph{screen view and printed output} \qquad . \\ -\end{tabular} \end{center} -\end{itemize} - -\subsubsection{Special considerations for font-based slurs} -_{slurs!font-based} - -You should study this section if you choose not to use Type K PostScript -slurs. - -\medskip -The slur command \texttt{t} (cf.~p.\pageref{p:tslur}) has been retained -for backward compatibility with earlier {\PMX} versions. As already -mentioned, with font-based slurs it does \emph{not} provide a true tie -at all, and it doesn't alter the positions of the endpoints either; in -fact, it differs from \texttt{s} or \texttt{(} only in the following -ways: -\begin{itemize} - \item ID codes cannot be used with font-based \texttt{t}-slurs. - \item If a \texttt{t}-slur starts or ends on the same note as an - \texttt{s}-slur, the former will be moved away from the - notehead to avoid a collision. This only works if neither - slur has an ID code. -\end{itemize} -The shape of font-based slurs can be changed with options to the -\texttt{s} or \texttt{)} command as follows: -\begin{itemize} - \item at the slur termination only, you must first enter two signed - numbers that define a position shift as described earlier. Enter - a zero for either or both if you don't want the shift, - \item next, enter a signed, nonzero integer which specifies a vertical - adjustment to the mid-height of the slur in \verb#\internote#s, - \item if you want to alter the starting or ending slope, enter a - \texttt{:} (colon), then - \begin{enumerate} - \item a signed integer for the alteration to the starting - slope, then - \item a signed integer for the alteration to the ending - slope. - \end{enumerate} -\end{itemize} -These numbers are passed directly as arguments of the {\MusiXTeX} macros -\verb#\midslur# (if only one is given) or \verb#\curve# (if there are -three). - -\bigskip -If you want to \emph{simulate a tie} with font-based slurs -- {PMX} does -not proved true ties with font-based slurs! -- include the option -\texttt{t} in both the starting and ending command for the slur\,% -\footnote{For reasons of backward compatibility, it is legal - to specify a tie with the symbol \texttt{st} or \texttt{(t} - even when PostScript ties are activated. In that case, these - symbols are fully equivalent to simply using \texttt{t} . - }. -This will draw a slur with altered endpoint positions. - -\subsection{Dynamic Marks} \label{sec:dynamics} -_{dynamic marks} _{D symbol@\texttt{D} symbol} - -{\PMX} has a very simple tool for inserting virtually any dynamic mark -in a score. Its \texttt{D}ynamics symbol is a \texttt{D}, followed one -of 3 types of parameters, optionally followed by position shifts: -\begin{enumerate} - \item \textbf{A standard dynamic mark :} this can be any one of the - following: - \texttt{pppp, ppp, pp, p, mp, mf, f, ff, fff, ffff, sfz, fp}. -\pagebreak - \item -_{dynamic marks!hairpin} _{crescendo|see{dynamic marks}} -_{decrescendo|see{dynamic marks}} - \textbf{A crescendo/diminuendo :} \texttt{<} or \texttt{>}. - These crescendo/decrescendo marks -- aptly named ``hairpins''-- - are \emph{toggles}, i.e.\ the first \texttt{D<} starts the - crescendo, and the next \texttt{D<} ends it; similarily for - \texttt{D>}. - \Note{As of version 2.616 {\PMX} allows hairpin - dynamics to span input blocks! - } - \item _{dynamic marks!textual} \textbf{Arbitrary text :} - \texttt{"\dots\"}, where \, \dots \, stands for any - text string, e.g.~\texttt{D"}molto - espressivo\texttt{"}. The text will be set in italics - unless another \TeX-style font specification is - included\, - \footnote{A practical example is \texttt{D" - $\backslash$ppff fz"} - (cf.\ \href{http://icking-music-archive.org/% - software/pmxtricks/dynamic.pdf}% - {Tips and Tricks}). - }. - \end{enumerate} - -All dynamics symbols go \emph{after} the note to which they refer (so -e.g.~\texttt{g Dpp} will write a pianissimo g). Hairpin marks -must be contained \emph{completely within the same input block}?,% - \footnote{If need be (e.g.\ for crescendi/decrescendi across bar - lines), you can adjust the position and length of a - crescendo/decrescendo by adding position shifts as - described. - } - -\medskip -The default position of any dynamic mark or text entered with the -\texttt{D} symbol is just below the notehead, stem end, or bottom staff -line, whichever of these is lowest. There are numerous context-sensitive -automagic adjustments to the positions of all the dynamics symbols. If -you don't like the result you can add position shifts to the dynamics -symbol: a signed integer for a vertical shift (in \verb#\internote#s), -then -- optionally -- another signed number for a horizontal shift (in -notehead widths). - -\medskip - -There can be a combination of dynamic marks at a single note\,% -\footnote{It doesn't make sense, of course, to have 2 different standard - dynamic marks on the same note, and {\PMX} will complain if - you try that. - }. -Since these are distinct {\PMX} symbols, they must be separated by -spaces and must come in the right order, e.g.\ -\begin{center} -[\emph{some notes}] \texttt{D<} [\emph{more notes}] \texttt{D< Dffff D>} -[\emph{more notes}] \texttt{D>} -\end{center} - -\bigskip -If you aren't using PostScript slurs, there are some restrictions on -hairpins which are due to {\MusiXTeX}'s use of font-based hairpins: they -cannot be longer than 68mm, they cannot wrap over a system break, and -they must be horizontal. Finally, only certain specific lengths are -available, so some horizontal position tweaking may be needed, -especially when standard dynamic marks and hairpins are combined. -These restrictions don't apply when using one of the PostScript slur -packages; PostScript hairpins will then be used without any further - \label{p:dynamics} -intervention\,% -\footnote{For details on invoking PostScript slurs, ties and hairpins - cf.\ Section~\ref{sec:psslurs} ff. - }. -Fig.~\ref{fig:dynamics} (a fragment from the \emph{Pathetique} by -Tschaikowsky) shows some examples\,% -\footnote{Fig.~\ref{fig:dynamics} was obtained using the PostScript slur - package type K. -_{PostScript} - }. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/pathetique.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -% Bar 1 -r2 D"Adagio"+16 r4 e8-- Dpp-1 D< s f D< D>-1 s / -% Bar 2 -g4 D>-1 s f2 s D<-1 f8 s D<-1 Dp-1 g s D>-2 / -% Bar 3 -a4 s D>-2 D<-2 g2 s D<-2 g8 s Dmp-1 D<-1 a s / -% Bars 3-4 -b4 D<-1 D>-1 asd2 D>-1 D<-1 / -% Bars 5-6 -b0 st D<-1 Dsfz-1 D>-1 | b8 st D>-1 Dp-1 r r4 r2 Rb / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{Dynamic marks} \label{fig:dynamics} -\end{figure} - -\subsection{Clef Changes} \label{sec:clefs} -_{clefs!change} _{C symbol@\texttt{C} symbol} - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/clefchg.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -2 1 4 4 0 6 0 3 -1 1 20 0 - -bt -./ -Ap -w180m -% -a12 sh c e a e a c e sh -Ct f s g a f g a b g s Rd / -a25 sh f4 d sh / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{A clef change} \label{fig:clefchange} -\end{figure} - -As was noted in Section~\ref{sec:preamble}, the clef for each instrument -is given in the preamble (cf.~p.~\pageref{p:clefs}). A clef change in -mid-stream, however -- frequently occurring in piano music --, is -signaled by a \texttt{C} followed by a single lower-case letter, as -illustrated in Fig.~\ref{fig:clefchange}. - -\bigskip -_{clefs!change with two voices in a staff} -When there are two voices in a staff, the clef change command must be -given in the \emph{first (lower) voice}; if it is entered in the second -voice, {PMX} will \emph{silently disregard} the clef change completely. -The clef change holds for all voices in a staff, of course. - -\medskip -A logical effect is worth mentioning: when, before the clef -change, there is a note the duration of which extends beyond -the point of the clef change, its clef does not change. -Fig.~\ref{fig:clefchgtwo} shows an example of such a situation. -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/clefchg2.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -c43u Ct a44u cu au // -f02 / -Cb rb4 Ct e4u au eu // -c23l r2-6 / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{A clef change in a staff with 2 voices} - \label{fig:clefchgtwo} -\end{figure} - - -\subsection{Octaviation} \label{sec:octaviation} -_{octaviation} - -When in a voice the pitch of a number of notes extends far beyond the -staff, resulting in an excessive number of ledger lines, readability is -usually improved by using an `octaviation' notation: an -horizontal line above the staff, starting with an ``\emph{8}'' or -``\emph{8va}'', indicates that the notes under this line are to be -played an octave higher than printed, and similarily ``\emph{8 bassa}'' -or ``\emph{8va bassa}'' indicate an octave lower. - -\medskip -In the present version, {\PMX} does not provide a notation for this, so -you will have to take recourse to inline {\TeX} coding. For an example -see Section~\ref{sec:tricks}. - - -\subsection{Figured bass (basso continuo)} \label{sec:bassocontinuo} -_{figured bass} _{basso continuo|see{figured bass}} - -{\PMX} lets you introduce the basso continuo notation (`figured bass') -very simply, as illustrated in the example of Fig.~\ref{fig:poppea}, which -is the basso continuo of an excerpt of the famous aria ``\emph{Pur ti -miro}'' that concludes the Monteverdi opera \emph{L'Incoronazione di -Poppea}. Here are the rules: - -\begin{itemize} - \item Figure symbols are entered -- as plain numbers\,% - \footnote{As of {\PMX} version 2.520, the numbers usually - needed in figured notation, namely 2, 4, 5, 6 and 9, - are available in a different graphic design with - perhaps a more baroque-like look. - - If you want to use these, add an `\texttt{s}' after - the {\PMX} string of every figure which you want to - appear in that form. - - Note that for this to work properly, you must have - the special fonts for these numbers installed. You - will find \texttt{figbas.zip}, which provides these - fonts, in the - \href{http://icking-music-archive.org/software/% - musixtex/add-ons/figbas.zip}{WIMA} software page. - \texttt{figbas.zip} contains 2 files that can be of - help with the installation: \texttt{README} and - \texttt{test.tex} . - } -- - \emph{after} their associated note symbols, with - a space, as usual. As of {\PMX} version 2.517, they are allowed - in two staves, the first (lowest) staff and any other one. - Enter the characters as they would appear from \emph{top to - bottom}, e.g.\ \verb%64% [\,6 over 4\,], or \verb%642% [\,6 - over 4 over 2\,]. - \item Accidentals that modify a number \emph{must} be entered - \emph{before} the number. Note that the characters that - signify accidentals are different here than for notes: flats - are written as `\verb#-#' (minus), sharps as \verb&#& , and - naturals as \verb%n% . For example, \emph{sharp third} is - \verb& (or simply \verb&#&, in the standard shorthand), - \emph{six} (over) \emph{flat five} is \verb%6-5%, and - \emph{sharp six} (over) \emph{4} is \verb@& . - \item For each staff with figures, {\PMX} positions all the figures - within each system below the staff with their tops at the same - level. If you want to change this vertical position default, - you have two possibilities: - \begin{description} - \item[to lower a figure symbol:] prefix the figure symbol - -- \emph{no space!} -- with one or several `\verb#_#' - (underscore). Each underscore will lower the figure symbol - by 4 lengths of \verb#\internote# , - \item[to raise a figure symbol :] \emph{append} the figure - symbol -- \emph{again no space} -- with a `\verb#+#' (plus) - followed by an integral number for the number of - \verb#\internote# lengths by which to raise the figure. - \end{description} - The two options can be combined to provide full control over - the vertical position of the figure symbol. - \item If you want a figure symbol to align horizontally in - the second tier, insert a `\verb&_&' (underscore) as placeholder - for the top tier, before the one you want to go on the second - tier (cf\ the sharp in bar 16 of Fig.~\ref{fig:poppea}). - \item Sometimes you may need to enter a figure when there's no bass - note sounding. To do this, \emph{precede} the figure symbol - with three additional characters, \verb%x%[\emph{n}][\emph{m}]. - Here \emph{n} is a single-digit repeat count, and \emph{m} is a - single-digit duration time value, i.e., \verb#0,2,4,8,1# or - \verb#3# . This will offset the figure from the associated note - by the specified duration value. For example, if the lowest - voice contained \verb%c03 x3465%, there would be a whole-note - c, and 3 quarter notes later a figure 65 below the staff - (cf.~Fig.~\ref{fig:poppea}, bars 2, 4, 6, 8, 10 and 14). - \item -_{figured bass!continuation} - There is also a \emph{continuation} symbol, viz.\ a \verb&0& - (zero) followed immediately by an unsigned number. This - produces a horizontal line under the bass note, starting just - to the left and extending to the right by the given number of - \verb&\noteskip&'s (cf.~Fig.~\ref{fig:poppea}, bars - 9, 11, 16 and 17). The height and length of the line are set by - the current note's level and \bs\texttt{noteskip} - respectively\,% - \footnote{If \bs\texttt{noteskip} changes, or if an unfigured - note drops below the starting level before the line - ends, it is possible to trick {\PMX} by entering - separate \texttt{0}[\emph{n}] symbols under each - consecutive note: {\PMX} will automagically join them - together at the lower height (thanks to Werner Icking - for this idea). - - For an explanation of the special {\PMX} coding in - Bar 16 of Fig.~\ref{fig:poppea} see - Section~\ref{sec:tricks} . - }. - These can be mixed in with other figures to produce vertical - stacks. If another figure follows in the same symbol, use - {\tt:} as a separator. For example, a continuation line over a - 3 would be coded as \texttt{01:3} . -\end{itemize} -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/poppea.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -% bars 1-4 -gd2 fd 6 | ed 5 x126 dd 4 x123 | gd fd 6 | ed 6 dd 4 x123 | / - -% bars 5-8 -gd2 fd 6 | ed 64 x123 dd | gd fd 6 | ed 64 x123 dd | / - -% bars 9-12 -gd2 02 fd | ed 6 dd 7 | gd fd 6 | gd ad 4 x12# | / - -% bars 13-15 -dd- gd | gd 03 fd | ed dd 4 x12# | / - -% batt. 16-17 -cd- dd 64 x145 x12_00.2 x12_# | gd fd 01 Rd / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{Figured bass in \textbf{C.\ Monteverdi}, - \emph{L'Incoronazione di Poppea}, - aria ``\emph{Pur ti miro}'' - } \label{fig:poppea} -\end{figure} - - -_{F symbol@\texttt{F} symbol} _{\textbf{scor2prt}} -If there are figured bass commands in a {\PMX} file, but you want them -all to be ignored, then enter the symbol \texttt{F} in the header. This -feature is most useful in the form \texttt{\%1F} -(cf.~Sec.~\ref{sec:scor2prt}, which makes a separate bass part with -no figures, e.g.~for a violoncello part. - -\bigskip -Figured bass symbols will not be altered in any way under transposition -by {\PMX} (cf.~Sect. \ref{sec:transpositions}). There is no universal -set of interpretations of figured bass symbols, so no automatic -transposition is possible. -_{transposition!not with figured bass} - -\medskip -_{figured bass!2-digit figures} -{\PMX} does not admit 2-digit basso continuo figures. This is the -notation of some old editions; if you want to use it, you will have to -resort to inline {\TeX} coding (cf.~Section~\ref{sec:inlineTeX}). -There is an example for this in the Caccini aria in the Appendix -(Sec.~\ref{sec:Caccini}). - -\section{Commands That Affect All Voices} \label{sec:pmxcmds} -_{\PMX!commands for all voices} - -Unless indicated otherwise, the commands dealt with in this section -affect all staves in a score. They must be entered only \emph{in the -first (lowest) voice in the first (lowest) staff}. - -\medskip -_{\textbf{scor2prt}} -Such commands will automatically be transferred from score to parts when -separate parts are generated by \textbf{scor2prt} -(cf.~Section~\ref{sec:scor2prt}). - -\subsection{Single bars, Double bars, Repeats etc.} \label{sec:bars} -_{bar lines} _{bar lines!single, double, repeat} _{repeats|see{bars}} -_{R symbol@\texttt{R} symbol} - -In keeping with general typesetting practice, {\PMX} will by default -produce -\begin{itemize} - \item a single bar line at the beginning of each system after the - first, unless there is only one staff per system, - \item a single bar line at the end of each bar except the last one in - a movement or the entire score, - \item the common ending bar line (thin-thick double bar line) as the - last bar line of a movement or the entire score. -\end{itemize} - -_{\textbf{scor2prt}} _{\textbf{scor2prt}!placement of bar symbols} -The user can, however, override these defaults -- except the first one --- by a bar symbol, viz.\ an \texttt{R} followed by one of the -parameters given in Table~\ref{tab:bars}. If you are going to make parts -from your score (cf.~Section~\ref{sec:scor2prt}), you \emph{must} place -bar symbols either before the first note in an input block or after the -last one; otherwise \textbf{scor2prt} may behave erratically. Using two -bar symbols in succession doesn't make sense and will produce -unpredictable results. -\footnote{If you are using \texttt{|} marks at the end of bars, a repeat - must always go \emph{before} the \texttt{|}, or the next line - must follow in the same input block. In other words: while - \texttt{Rr | /} will not result in an error, it will produce a - thin bar line only. \label{p:repeats} - - \smallskip - There is a simple consequence: avoid using \texttt{|} - altogether, at least in connection with \texttt{R} symbols. - } - - -\begin{table} -\begin{center} -\begin{tabular}{|c|@{\quad}p{250pt}|} - \hline -\texttt{b} & thin (single \texttt{b}ar) line \\ -\texttt{d} & thin-thin \textbf{d}ouble bar line \\ -\texttt{D} & thin-thick \textbf{D}ouble bar line \\ -\texttt{z} & invisible bar \\ \hline -\texttt{l} & \textbf{l}eft repeat \\ -\texttt{r} & \textbf{r}ight repeat \\ -\texttt{lr} & \textbf{l}eft-\textbf{r}ight repeat \\ -\texttt{dl} & thin-thin \textbf{d}ouble bar - followed by \textbf{l}eft repeat \\ \hline -\end{tabular} -\end{center} -\caption{Parameters of the bar symbol \texttt{R}} \label{tab:bars} -\end{table} - -\medskip -Here are further comments on some particular bar symbols: -\begin{itemize} - \item \texttt{Rb} forces a single bar before a movement break, where - the default would be a double bar. This can be useful, for - example if you change the number of instruments, which {\PMX} - will allow only at a movement break, but you don't want it to - \emph{look} like a movement break. - \item \texttt{Rz} will cause an invisible bar line at the end of the - current system. It can be used together with blind meter - changes (cf.~Section~\ref{sec:meterchg}) when you want to split a - bar across a system break. - \item if a left-right repeat (\texttt{Rlr}) comes at a system break, - {\PMX} will automatically split it in two. - \item \texttt{Rdl} is the same as a left repeat - (\texttt{Rl}) except at a system break: there the first system - is ended with two thin lines, and the left repeat sign goes to - the beginning of the next system. - - \medskip - \item Finally, a general remark is in order regarding the \texttt{R} -_{R symbol!placement at begin of block} - symbols that designate repeats, double bars etc.\ - (\texttt{Rl,Rr,Rlr,Rd, RD,Rdl,Rb,Rz}). To avoid conflicts with - \textbf{scor2part}, you should \emph{always} - place any \texttt{R} command before the first note in an - input block. This is always possible except at the very end of - the whole piece. Otherwise, there is always a following input - block where the command can (and should) be placed. -\end{itemize} - -\medskip\noindent -Fig.~\ref{fig:bars} gives some examples. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/bars.eps} - \end{center} - \caption{Single bars, double bars, repeats} - \label{fig:bars} -\end{figure} - -\Note{On some special occasions, you may want dashed or dotted barlines - instead of the regular ones. For this and similar purposes, there - is a very good and easy-to-use package by Rainer Dunker: - \texttt{musixdbr.tex}, included in the {\MusiXTeX}~\texttt{1.15} - distribution. -_{Dunker, Rainer} _{bar lines!dotted, dashed} - } - -\subsection{Volta} \label{sec:volta} -_{volte} _{dacapo|see{volte}} _{repeats|see{volte}} _{V -symbol@\texttt{V} symbol} - -The two versions of the ending of a repeated section of music, called -`volte' in musical parlance\,% -\footnote{The term `volta' is, of course, Italian, and `volte' is the - Italian plural of `volta'. - }, -are denoted by a symbol starting with a \texttt{V} (for \textbf{V}olta) -in {\PMX}. {\PMX} needs to know where each volta starts and ends, how -the ends are shaped, and what text is to be included under each volta. A -string parameter to the \texttt{V} is used to convey this information: -\begin{itemize} - \item to signal the \emph{start} of the first volta, add a text - string (usually just a \texttt{1}) that doesn't start with - one of the characters \texttt{b}~, \texttt{x}~, or any literal - spaces\,% - \footnote{Actually you can include a space by using the {\TeX} - space symbol \~\ instead of a blank. - _{\TeX!space symbol} - }. - {\PMX} will print append a period to the text string, - \item to signal the \emph{end} of a volta and the start of the - second volta, use a \texttt{V} with a text string that - \emph{does} start with either the character \texttt{b}~ or - \texttt{x}~. If \texttt{b}~ is present, a volta symbol ending - with a vertical stroke will be printed (\textbf{b}ox), while - \texttt{x}~ will print the ending \emph{without} a vertical - stroke (no bo\textbf{x})\,% - \footnote{Note that the characters \texttt{b}~ or \texttt{x}~ - can appear anywhere in the text string and will - \emph{not appear in print}. - }. - - Often composers will write out only the first ending of a - repeated section of music, and simply continue play, dropping - the first ending after the repeat. With {\PMX}, the notation is - analogous: simply end the first volta, with either \texttt{Vb} - or \texttt{Vx}, without adding a second volta. - - On the other hand, if one volta starts where another one ends, - the symbols ending the first and starting the second volta can - be combined into one, e.g.~\texttt{Vb2}~. -\end{itemize} - -\medskip -Other rules governing volte are: -\begin{itemize} - \item Volte should be placed at the beginnimg of an input block, in - the first (lowest) voice of the first (lowest) staff, before - the first note if it's the start of a volta, or after the last - note if it's the end of a volta. - \item -_{volte!with \textbf{scor2prt}} - If you will be making parts from the score using - \textbf{scor2prt}, then to ensure that the volte are properly - transferred to the parts, you must only include one volta - symbol \texttt{V} in each input block, and it must come at the - beginning of the block. - \item If a score ends while a volta is still open, {\PMX} will close - it with a box. -\end{itemize} - -\bigskip -Examples of volta usage can be seen in Fig.~\ref{fig:volta}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/volta.eps} - \end{center} - \caption{Volte} - \label{fig:volta} -\end{figure} - -\subsection{Meter Changes} \label{sec:meterchg} -_{meter!change} _{polyrhythmic scores} - -The meter of a piece can only be changed at the beginning of an input -block, and thus naturally only at the beginning of a new bar, just -before the beginning of the first (lowest) voice of the first (lowest) -staff. As with the initial meter specified in the preamble, any new -meter applies to all instruments and voices\,% -\footnote{As was pointed out before (cf.~p.\pageref{p:polyrhythms}), - this limits the use of {\PMX} for modern polyrhythmic music. - But you can always try to play with tricks \dots - }. - -A \texttt{m}eter change symbol starts with the letter \texttt{m}. There -are two different ways to complete the symbol: -\begin{itemize} - \item enter the 4 meter-defining numbers \texttt{mtrnuml}, - \texttt{mtrdenl}, \texttt{mtrnump}, \texttt{mtrdenp} for the - new meter\,% - \footnote{For the meaning of these numbers - cf.~p.\pageref{p:meterdefs} . - }, - \emph{separated by slashes} \texttt{/} . - \item same as above, but enter the 4 numbers consecutively - \emph{without spaces}. In this case, it is necessary to - distinguish between one single 2-digit number and two - consecutive 1-digit numbers. For this -- and for this case only - -- the following convention is adopted: - - \vspace{-1.5ex}\noindent - \begin{itemize} - \item the number 1 is represented by the letter \texttt{o}, - \item consecutive digits \texttt{10},\dots \texttt{19} stand - for exactly that: the 2-digit numbers 10 through 19. - \end{itemize} - - \vspace{-1.5ex}\noindent - Thus, 19 is the largest number that can be entered with this - method. -\end{itemize} -_{meter!blind change} -Note that \texttt{mtrdenl=0} still represents a whole note -(semibreve), as explained on p.\pageref{p:meterdefs0}, and a `blind' -meter is given by \texttt{mtrnump=mtrdenp=0}, as explained in -Table~\ref{tab:meter}. - -\medskip _{pickup bar} -The most common application of a `blind' meter change occurs when a -piece --- often one starting with a pickup --- has an incomplete final -bar. In such cases place the last bar in an input block by itself, -headed by a `blind' meter change. For example, if the meter had been 4/4 -and there was a quarter note pickup, leaving 3 beats in the last bar, -the last bar might be coded \verb#m3400 cd24 of /#. - -Another useful application is for the pickup bar in the second or later -movements, following a {\PMX} movement break symbol. Since there is -no special provision for pickups in this case like there is at the -beginning of a piece, _{movement breaks} -\begin{enumerate} - \item the pickup bar should be in a block by itself, starting with a - meter change symbol with a logical meter representing the - pickup bar and a printed meter as appropriate, and - \item the next bar should start a new block and begin with a blind - meter change symbol with a logical meter representing the true - meter. -\end{enumerate} - - -\subsection{Key Changes} \label{sec:keychg} -_{key change} _{K symbol@\texttt{K} symbol} - -A key change can be signalled at any time\,%. -\footnote{Only one key change is allowed in each input block. - }. -It must be entered in the first voice, but will affect all voices. Use -the command \texttt{K+0}, followed by the new key signature: positive -integer for sharps, negative for flats (cf.~Section~\ref{sec:numinput}) -. - -\medskip -Some examples are given in Fig.~\ref{fig:keychg}. - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/keychg.eps} - \end{center} - \caption{Some key changes} - \label{fig:keychg} -\end{figure} - -\subsection{Transpositions} \label{sec:transpositions} - -_{transposition} _{K symbol@\texttt{K} symbol} - -\subsubsection{Transposition of an entire score} - -To transpose an entire score to a different key from the one in which -the data have been entered, use the symbol \texttt{K} (for -\textbf{K}ey), followed by two explicitly signed digits: (1) the -distance to transpose by, in units of \verb#\internote# (i.e.\ the -vertical offset on the staff), and (2) the new key signature. This -symbol must be entered at the beginning of the piece, in the header -(cf.~p.\pageref{p:header}). - -There is one case that requires special handling, viz., when transposing -by a half step, but the vertical position doesn't change, e.g.\ from D -flat to D. In this case the shift parameter (the first parameter of -\texttt{K}) is \emph{always} \texttt{-0} \emph{regardless} of whether -the transposition is up or down a half step\,% -\footnote{This artifact is needed to differentiate a half-note - transposition from a mere key change without - transposition (cf.~Section~\ref{sec:keychg}) . - }; -the direction of the transposition will be determined by the new key -signature, the second parameter. An example of transposition is given in -Figs.~\ref{fig:transpose}. - -\begin{figure}[!htb] - \begin{center} - no transposition: \\ - \begin{small} - \verb#d8 e1 f g a bs cs d8 cn1 bn a g f e | d0 Rb /# - \end{small} \\ - \includegraphics[scale=.82]{eps/transpose.eps} \\ - transposition by one tone up: \\ - \begin{small} - \verb#K+1+1 d8 e1 f g a bs cs d8 cn1 bn a g f e | d0 Rb /# - \end{small} \\ - \includegraphics[scale=.82]{eps/transpose1.eps} \\ - transposition by a half tone up: \\ - \begin{small} - \verb#K-0+6 d8 e1 f g a bs cs d8 cn1 bn a g f e | d0 Rb /# - \end{small} \\ - \includegraphics[scale=.82]{eps/transpose2.eps} \\ - transposition by a half tone down: \\ - \begin{small} - \verb#K-1+4 d8 e1 f g a bs cs d8 cn1 bn a g f e | d0 Rb /# - \end{small} \\ - \includegraphics[scale=.82]{eps/transpose3.eps} \\ - \end{center} - \caption{Some transpositions of a d minor scale} - \label{fig:transpose} -\end{figure} - - -\begin{figure} - \begin{center} - \includegraphics[scale=.82]{eps/tristn.eps} \\ - Standard notation in the original score \\[3ex] - \includegraphics[scale=.82]{eps/trists.eps} \\ - Actual sound (transposed with \texttt{K-4-4}) - \end{center} - \caption{\textbf{R.\ Wagner}, \emph{Tristan und Isolde}, - beginning of third act} - \label{fig:tristan} -\end{figure} - - -\medskip -_{accidentals!relative} -When transposing, one should always use relative accidentals, activated -by the symbol \texttt{Ar} in the header (cf.~Section~\ref{sec:A} for a -detailed explanation of this notation). - -\medskip -When transposing an entire score of same-type instruments, it is of -course easy to obtain both the original score and its actual sound, as -shown in Fig.~\ref{fig:tristan}. - -\subsubsection{Transposition of Individual staves} - \label{sec:stafftranspos} - -In orchestral scores, you usually have individual `transposing -instruments', i.e.\ instruments that are denoted (and, in fact, -\emph{played}) in a pitch different from what they sound: clarinets in E or B -flat, Oboes in A (oboe d'amore) or F (oboe da caccia), and similar. For -that purpose \PMX\ now provides the option to transpose individual -staves. - -The instructions given by Don Simons himself on introduction of \PMX\ -\texttt{2.613} are so clear that it is best to quote them literally -here: - -\begin{quotation} -``The syntax is an extension of the existing full-score transpose/key - change command "K". Just follow "K" with "i", then instrument number, - then the same parameters as before for transposition amount and new - key signature: - - \verbõKi[instrument #][+/-][trans amt.][+/-][new key]õ - - For more than one instrument, you may immediately repeat everything - after "K". The command must either be at the start of the score (right - after setup), or if later, must be preceded by a normal (full score) - key change command K+0[+/-][new key]. (Remember that later full-score - transpositions are not allowed). '' -\end{quotation} - -An important function is worth repeating/emphasizing: -\begin{itemize} - \item It is usually easiest to put the new \texttt{K} command where - the old one was: right before the start of the actual score, - i.e.\ in the `header' . But it is now also possible to enter it - later, albeit with the (somewhat cumbersome) addition of a `dummy' - full-score key change command (as explained above). - - This can indeed occur in practice, e.g.\ when the oboe player - switches to English Horn in midstream! -\end{itemize} - -\subsection{Titles, and text above and below a system} - \label{sec:titles} _{titles} -_{text!above/below system} _{T symbol@\texttt{T} symbol} - -A \emph{title block} with up to three elements can be defined in the -header (cf.~p.\pageref{p:header}): -\begin{itemize} -\item \texttt{Ti}: an \textbf{i}nstrument name. It is set \emph{above} - the title, and left-justified, -\item \texttt{Tc}: the \textbf{c}omposer's name. It is set \emph{below} - the title and right-justified, -\item \texttt{Tt}: a \textbf{t}itle for the whole piece. It is centered - on the page. -\end{itemize} - -Each of these commands is to be followed by a text string, \emph{on a -separate line}. This text must be fully contained in one line of {\PMX} -coding; but the text for the \textbf{t}itle can be spread out over -several lines in print by using the standard {\TeX} line break symbol -\verb#\\# . _{\TeX!line break symbol} - -\medskip -Extra vertical space can be added between the whole title block and the -top system by appending to \texttt{Tt} (without space) a one- or -two-digit number representing this space, in units of -\verb#\internote#\,% -\footnote{{\PMX} does this together with the adjustment of other - vertical spaces when fixing the general page layout. In some - rare cases, the result may not be quite what you expect, in - particular when you haven't used the \texttt{Ae} option to - equalize inter-system spacing - (cf.~section~\ref{sec:options}). In such cases you might want - to use inline {\TeX} --- take a look at the example in - Section~\ref{sec:shiftname} for how this can be done. - }. -This works only if \texttt{Tt} is the \emph{final} title block element -entered. Thus, although the 3 parts of a title block can be given in any -order, it is good practice to use the sequence \texttt{Ti} --- -\texttt{Tc} --- \texttt{Tt}. - -_{titles!with \textbf{scor2prt}} _{\textbf{scor2prt}!use of Ti} -\Note{When you want to generate parts from a score with - \textbf{scor2prt} (cf.~Section~\ref{sec:scor2prt}), you should - \emph{omit} \texttt{Ti} with an associated \textbf{i}nstrument - name, because each separate instrument usually has a different - name. Rather, \textbf{scor2prt} will automatically supply the - appropriate instrument names, printing the name of each instrument - at the upper left of the first page of each part; the names used - here are the ones specified in the preamble of the {\PMX} file for - the score\,% - {\footnotemark}. - - If you do have \texttt{Ti} together with an \textbf{i}nstrument - name in the main score, \textbf{scor2prt} will print that name - identically to all the parts --- which is usually not what you - want! - } -\footnotetext{\textbf{scor2prt} does this by inserting into the part - \texttt{.pmx} file a \texttt{Ti} and the appropriate - instrument name as taken from the preamble of the main - score. Knowing this may be useful if you want to - manipulate this process, e.g.~to change the vertical - shifting of a particular instrument name - (cf.~Section~\ref{sec:shiftname} for details). - _{\textbf{scor2prt}!adjusting instrument name} - } - -\bigskip _{h symbol@\texttt{h} symbol} _{l symbol@\texttt{l} symbol} -The symbols \texttt{h} (for \textbf{h}eader)\,% -\footnote{This usage of the \textbf{h} symbol is not to be confused with - that for the page size (see Section~\ref{sec:pagesize})! - Although both can occur together in the header, they are in - fact, different {\PMX} symbols, distinguished by their - differing syntax. - } -and \texttt{l} (for \textbf{l}ower) can be used to introduce text -either above or below a system. These symbols must be placed in the -first column of an input line (not necessarily the beginning of a -block), and followed by a blank or -- for \texttt{h} only -- a signed -integer. In the latter case, this integer is a vertical shift, in units -of \verb#\internote#. - -The text string, which again must lie on a line of its own immediately -following the symbol, will be printed above or below the \emph{top} -staff in the \emph{first} bar of the block where it is entered. -Figs.~\ref{fig:vivaldi1} and \ref{fig:Haydn} show examples. - -\subsection{Page numbering and page headers} \label{sec:pagenumbers} - -\subsubsection{Page numbering} -_{page!numbering} _{P symbol@\texttt{P} symbol} - -By default, {\PMX} does \emph{not} number the pages of a score, even -when it has more than one page. You can, however, switch on page -numbering by using the symbol \texttt{P} (for \textbf{P}age). Placed at -the beginning of an input block anywhere within the {\PMX} body of -input, and followed optionally by a page number and/or by \texttt{l} -(for \textbf{l}eft) or \texttt{r} (for \textbf{r}ight), this will -\begin{enumerate} - \item start page numbering at the current page\,% - \footnote{The `current page' is the page where {\PMX} puts - the music currently processed at the point where it - encounters the symbol \texttt{P}. - } - with the number given as optional argument. Further page - numbers are then incremented automatically starting with this - number. If \texttt{P} has no number argument, the default is - page 1 . Thus, \texttt{P} and \texttt{P1} are equivalent), - \item put the page numbers to the top \textbf{l}eft or \texttt{r}ight - of the first of the pages to be numbered, after which the - number positions will alternate. If no \textbf{l} or \textbf{r} - is given, {\PMX} puts the page numbers on the right on - odd-numbered pages, on the left of even pages. -\end{enumerate} -You can have as many \texttt{P} symbols in a score as you like; but -there is no command to switch off page numbering again once it has been -switched on. - -\subsubsection{page headers} -_{page!headers} - -There is one more option, \texttt{c} (for \textbf{c}entered header), -available with the \texttt{P} symbol. This option defines a text string -to be printed at the top of every page \emph{after the first}. The -notation is as follows: -\begin{itemize} - \item The normal usage is \texttt{Pc"}$[$\emph{text - string}$]$\verb#"#. The text string enclosed in the quotation - marks must be a single line of text. It may contain blanks, but - \emph{no} \verb#\\#). If the string consists of blanks only, - that is what will be printed: a blank page header. - \item If the text string does not contain any blanks, you may omit - the quotation marks, but you must then start the text - immediately after the \texttt{c} \emph{with no space}. - \item If there is a blank after \texttt{Pc}, \emph{no quotation marks, - and no further text}, the text printed as the header will be - the instrument name entered with the symbol \texttt{Ti}, as - described on p.\ref{sec:titles}. -\end{itemize} -\texttt{c} must be the \emph{last} option in the \texttt{P} symbol. - -_{P symbol@\texttt{P} symbol} _{\textbf{scor2prt}} -\Note{The \texttt{P} symbol and all its options will be ignored when - making parts from a score using \textbf{scor2prt}, since page - numbering will usually be different in the score from that in the - parts. Page numbering -- and centered headers -- for parts can, - however, be initiated independently with another mechanism. For - the details on this, refer to Section~\ref{sec:scor2prt}. - } - -\clearpage -\begin{figure}[!htb] - \begin{center} - - \vspace*{20ex} - \includegraphics[scale=.82]{eps/vivaldi1.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} - 1 1 3 4 0 3 0 -1 - 1 1 16 0.0 - -t -./ -% begin header: -Ti11 -Oboe I -Tc -Antonio Vivaldi (1678-1741) -Tt -Concerto in d minor \\ RV535 -w150m -% end header. -% Bar 1-4 -h-2 -~~~Largo - -d45 a44 r4 | g44 f44 r4 | g45 a45 b45 | cs45 d45 r4 / -% Bar 5-7 -fs45 g45 a45 | b45 r4 r4 | cs45 d45 e45 / -% Bar 8 -l -(continued) -f45 r4 r4 Rb / -% -\end{verbatim} -\end{minipage} - \end{center} - \caption{Titles, and text above and below a system} - \label{fig:vivaldi1} -\end{figure} - -\clearpage -\subsection{Layout: line, page, and movement breaks} - \label{sec:breaks} -_{layout} _{layout!manual line/page breaks} -_{\texttt{npages}} _{\texttt{nsystems}} - -The parameters \verb#npages# and \verb#nsystems# of the preamble -(cf.~Section~\ref{sec:preamble}) determine the layout of the score, -either by fixing the total number of pages and systems, or by setting -the average number of bars per system. With no further instructions, -{\PMX} will attempt to distribute all the music evenly over the total -number of systems, and then spread the systems evenly over the specified -number of pages, either specified or determined by default (with -\verb#npages=0#). - -You can change the average `crowdedness' by changing the preamble -parameters. Once this is satisfactory, you can exercise finer, more -local control by forcing, i.e.\ manually inserting, line or page breaks -at exactly the places you want them to be. You may also want movement -breaks, and {\PMX} has a convenient way of doing that, in the process -dealing easily with such `housecleaning' chores as indenting the first -system of the new movement, reprinting the time signature, resetting the -bar number counter, and other details to be discussed below. -_{bar numbering} _{indenting first system} - -\medskip -It is worthwhile, however, to quote Leslie Lamport at this point: -_{Lamport, Leslie} -\begin{quote} - ``Don't worry about line and page breaks until you prepare the - absolutely final version'' \\ - From: Leslie Lamport, {\LaTeX}, \emph{user's Guide and Reference - Manual} . -\end{quote} - -This is especially true for a {\PMX}-generated score. Until the final -edit, you should always use \texttt{npages=0}. Once you specify any -forced line break, you can no longer use \texttt{npages=0}, and you will -have to specify values for \texttt{npages} \emph{and} -\texttt{nsystems}~. And because --- as we'll soon explain --- a movement -break is a sub-option of the linebreak command, you cannot set movement -breaks either until the final edit. - -But unless your score is just a few pages long, you probably will want -to set some line, page, or movement breaks in the end. When you are -ready, always first pick some reasonable values for \texttt{npages} and -\texttt{nsystems}---perhaps the numbers that finally came out when you -used \texttt{npages=0} during the main input process. Then one way to -proceed is to start at the beginning, forcing breaks where desired. The -most common places would be at movement breaks, and at places associated -with volte or repeats. Recompile and view the result after each new -line break is inserted. You may need to adjust the total number of -systems or even pages depending on how crowded is the remainder of the -score, after the last forced line break. - -The other way to proceed is to begin by inserting any obvious page -breaks, especially if you are laying out a booklet with facing pages and -want page turns to come in musically convenient places. - -\bigskip\noindent -Here are the rules for inserting forced line, page, and movement breaks: -\begin{itemize} -\item _{line break} - Line breaks can only come at the start of an input block. To force - a line break at the start of the $n^\text{th}$ system, enter - \texttt{L}$[n]$~. $n$ must obviously be greater than 1 and less - than or equal to the value of \texttt{nsystems} as specified in - the preamble. -\item _{page!breaks} - Page breaks can only come where there is already a line break. To - force a page break at the start of the $m^\text{th}$ page and the - $n^\text{th}$ system, enter \texttt{L[}$n$\texttt{]P}$m$~. $m$ - must obviously be greater than 1 and less than or equal to the - total number of pages. - -\item _{movement breaks} - Movement breaks can only come where there is already a line break. - To force a movement break at the start of the $n^\text{th}$ - system, enter \texttt{L[}\emph{n}\texttt{]M}~. If in addition you - want a page break at that point, use - \texttt{L[}$n$\texttt{]P[}$m$\texttt{]M}~. - - \medskip - The movement break symbol \texttt{M} has several optional - parameters. They can be used in any combination and should follow - with no spaces. - - \begin{itemize} - \item \texttt{M+[}$k$\texttt{]} adds $k$ \verb#\internote# - units of vertical space between movements. \item - \texttt{Mi[}$.x$\texttt{]} resets the first-line - indentation of the new movement to - \texttt{fracindent=}\,$.x$~, where $.x$ is some - decimal number (cf.~Sec. \ref{sec:preamble}). - - \Note{You must write the fracindent number exactly in - the form $.x$ , i.e.\ \emph{without} the leading - $0$~. If, e.g.\ , you write $0.2$ instead of - $.2$~, {\PMX} will complain with an error message, - asking for a decimal number! - } - - \item Beginning a new movement break, the bar number is reset - to zero by default, whereas \\ - \texttt{Mc} \textbf{c}ontinues bar numbering. - \item \texttt{M[}$n$\texttt{]} changes the \textbf{n}umber of - instruments to $n$~. $n$ must not exceed \texttt{ninstr} - as set in the preamble. If $n$ exceeds 9, it must be - \emph{preceded} with \texttt{:} (colon). This should be - followed (without blanks) by a sequence of $n$ instrument - numbers in bottom-up order, again preceded with - \texttt{:} if bigger than 9, then a sequence of clef - symbols, one for each staff of each instrument starting - from the bottom. An instrument's numeral is simply its - position in the original sequence (in the preamble); - these numerals can be permuted as desired, but the - sequence of clef symbols should, of course, match the new - sequence of instruments. - \item \texttt{Mr+}/\texttt{Mr-} \textbf{r}eprints/suppresses - reprinting the instrument names at the beginning of the - new movement. The default is to print them only if the - number of instruments changes. - \end{itemize} -\end{itemize} - -_{instruments!numbers increased/decreased} -It should be emphasized here that the number of instruments in a new -movement can never exceed the original number of instruments, although -it is permissible to increase it after it has been decreased, as long as -it doesn't exceed the original number; in other words, and to give an -example: a sequence {quartet --- solo --- duet, e.g., is possible, -while the reverse sequence is not. There are two ways to circumvent this -restriction: -\begin{enumerate} -\item start the score with a dummy page --- to be discarded - later --- containing the maximum number of instruments. On the - second page, start a new movement with the desired number and - sequence of instruments for the first movement, -\item _{\PMX!concatenating several files} - make separate {\PMX} files and concatenate them afterwards - (cf.~Section~\ref{sec:concatfiles} or \ref{sec:LaTeX} on how to - do this). -\end{enumerate} - -\medskip -Immediately after a movement break, any desired meter changes, key -changes, or text can be entered as already described in -Sections \ref{sec:meterchg}, \ref{sec:keychg} and \ref{sec:titles} -(p.\pageref{sec:meterchg} ff.). - -\bigskip -The effect of movement breaks is illustrated in the -example~\ref{sec:Dufay} in the appendix. - -\subsection{Bar Numbering} \label{sec:barnumbers} -_{bar numbering} _{inline \TeX!bar numbering} - -By default {\PMX} places a bar number above the first bar of the top -staff in every system, and there is no provision in {\PMX} to change -this default. But it is easy to change this by using a straight -{\MusiXTeX} command: -\begin{itemize} - \item if you want no printed bar numbers at all, add a line in the - header containing \\ \verb#\\nobarnumbers\# - \item if you want bar numbers printed over every bar, add a line - containing \\ \verb#\\barnumbers\# -\end{itemize} -in the header or at the beginning of an input block. - -This is an example of a \textbf{type 2} inline {\TeX} command, -cf.~Section~\ref{sec:inlineTeX}. As is explained there in detail, {\PMX} -will place a \textbf{type 2} inline {\TeX} command at the beginning of -the \verb#.tex# file produced, regardless of where in the \verb#.pmx# -file the command appears. This means that you cannot change this type of -bar numbering in mid-stream. - -If you do want to change the bar numbering somewhere in the middle of a -score, use a \textbf{type 3} inline {\TeX} command: if, from the -current point in the score, you want -\begin{itemize} - \item no printed bar numbers, add a line with \\ - \verb#\\\nobarnumbers\# - \item bar numbers printed over every bar, add \\ - \verb#\\\barnumbers\# - \item bar numbers above the first bar of every system (the {\PMX} - default), add \\ \verb#\\\systemnumbers\# -\end{itemize} -at the beginning of the current input block. - -\medskip -_{Bar number count adjustment} -Furthermore, you might want to change the number itself. This occurs most -frequently when you have a pickup bar at the beginning of a repeat; some --- including some commercial publishers -- do not include this pickup -bar in the number count, wheras {\PMX} does so by default. To adjust -this, use the \textbf{type 3} inline {\TeX} command -\verb#\\\advance\barno-1\relax\# . - -\bigskip -{\MusiXTeX} provides still more elaborate bar numbering schemes, such as -a number over every $n^{\text{th}}$ bar. For details refer to the -{\MusiXTeX}~\texttt{1.15} manual. - -\section{Some general options and technical adjustments} - \label{sec:options} _{\PMX!options!general} - _{layout!general options} - -\subsection{Global options} \label{sec:A} -_{\PMX!options!global}_{A symbol@\texttt{A} symbol} - -{\PMX} has many layout parameters with default settings. Some of these -can be changed by the user; for that purpose there are several symbols, -all beginning with \texttt{A}. Many of these are usually included in the -^{header}, but some may be entered at the beginning of any input block. -Table~\ref{tab:A} lists these options alphabetically; the following -subsections, grouped by types of settings, describe them in detail. When -using several of these commands, it is not necessary to enter them all -on separate lines; rather, you can concatenate them, in any order, with -just a single \texttt{A}, e.g.~\texttt{AdI2.3p+hlbr} . - -\begin{table}[!ht] -\begin{center} -_{\PMX!options!global} _{A symbol} _{global options |see{@\texttt{A} symbol}} -\begin{tabular}{|l|l|} -\hline -\texttt{Aa}$[x]$ & sets space before first note in a bar \\ -\texttt{Ab} & makes accidentals \textbf{b}ig \\ -\texttt{Ac}$[x]$ & sets page sizes and offsets according - to paper type \\ -\texttt{Ad} & puts \textbf{d}ots in lower voices - \emph{below} the line \\ -\texttt{Ae} & \textbf{e}qualizes inter-system spacing \\ -\texttt{AI}$[x]$ & changes default \textbf{I}nterstaff spacing - \emph{for the whole score} \\ -\texttt{Ai}$[x]$ & changes default \textbf{i}nterstaff spacing - \emph{for the current page only} \\ -\texttt{AK} & adjusts rest heights in 2-voice staves - depending on context \\ -\texttt{AN}$[i]$``\emph{name}'' - & sets filenames generated by \textbf{scor2prt} - (cf.~Section~\ref{sec:scor2prt}) \\ -\texttt{Ap}[\emph{further suboptions}] - & enables PostScript type K slurs \\ - (cf.~Section~\ref{sec:chords}) \\ -\texttt{Ar} & switches accidentals to - \textbf{r}\emph{elative} \\ -\verb#AR[#\emph{file}\verb#]# - & inserts a text file in the {\PMX} source file - (cf.\ Secion \ref{sec:concatfiles}) \\ -\texttt{AS}[\emph{ns}] - & enables {\PMX} \textbf{S}pacing algorithms - to small-font staves \\ -\texttt{As} & makes accidentals \textbf{s}mall \\ -\texttt{AT} & activates special xtuplet brackets - (cf.~Section~\ref{sec:xtuplets}) \\ -\texttt{Av} & spreads systems \textbf{v}ertically over all - of an unfilled page when `on' \\ -\hline -\end{tabular} -\end{center} - \caption{Symbols beginning with an \texttt{A} (global options)} - \label{tab:A} -\end{table} - -\subsubsection{Accidentals} -By default, big accidentals are used unless regular spacing doesn't -provide enough room. Thus the default behavior may cause a mixture -of big and small accidentals, and in fact is not recommended. Rather, -the user is advised to make his choice: -\begin{itemize} - \item _{accidentals!big} - \texttt{Ab} makes all accidentals \textbf{b}ig; this is - usually preferred, - \item _{accidentals!small} - \texttt{As} makes all accidentals \textbf{s}mall. -\end{itemize} - -\medskip _{accidentals!absolute} -As was mentioned earlier (cf.~Section~\ref{sec:transpositions}), {\PMX} -by default uses the so-called `absolute' notation for inputting -accidentals, i.e.\ the notation explained in -Table~\ref{tab:noteparameters}. -In this notation, there is an obvious one-to-one correspondence between -accented characters in the {\PMX} source file (\texttt{s, f, n, ss, ff}) -and the printed characters. This has a disadvantage, but it only -surfaces if you write the {\PMX} file in one key and later transpose it -using the \texttt{K} option described in -Section~\ref{sec:transpositions}. For example, suppose the original key -is F, with 1 $\flat$ in the signature, and you enter \texttt{bn}. Now if -you transpose to the key of C with \texttt{K-3+0}~, that note will be -printed explicitly as F natural, while it should be F sharp. - -\medskip _{accidentals!relative} _{key signature} -The remedy for such problems is to use another notation, aptly named -`relative' accidental notation, used by some musicians and some -publishers in some countries. In this notation, a sharp, flat, or -natural sign denotes an alteration by a half-tone up, down, or none -\emph{relative to the note which would otherwise be indicated based -on the signature of the piece}. For example, in D~major, with 2 -$\sharp$s in the signature, an F natural would be denoted not as -\texttt{fn} but rather as \texttt{ff}, while in d~minor, with one -$\flat$ in the signature, a B natural would be input not as -\texttt{bn} but rather as \texttt{bs}. Similarly, $\natural$s -accidentals refer to the notes prescribed by the signature; e.g., in -G~Major (1 $\sharp$ in the key) a \texttt{gn} sounds as a \emph{g}, -while \texttt{fn} sounds as an F sharp. - -\medskip _{transposition} -For automatic transpositions to function properly, it is necessary -that the {\PMX} source for the score to be transposed use the -\emph{relative accidental notation}. This is effected by \texttt{Ar} -: -\begin{itemize} - \item \texttt{Ar} directs {\PMX} to interpret accidentals - in \textbf{r}\emph{elative} notation\,% - \footnote{Note that this makes logical sense only if used in - the header, and accordingly there is no way to - `undo' this decision further down in a score. - }. -\end{itemize} - -\subsubsection{General layout} _{genlayout} The -esthetic appearance of a score of music depends on the -white space around it, and thus depends on the physical -size of the paper. - -\medskip -In {\PMX}, default values for this can be set with a -global option \texttt{Acl} or \texttt{Ac4}, with no -further adjustments required in \textbf{dvips} . These -commands set horizontal and vertical sizes and offsets -that center the page: -\begin{itemize} - \item \texttt{Acl} for letter paper - \item \texttt{Ac4} for DIN A4 paper . -\end{itemize} - -\Note[180pt]{These 2 global options are available as of {\PMX} - version 2.618 , not before !!} - -\subsubsection{Layout details} _{layout} -When the note head of a dotted note is \emph{on} the line (e.g.\ -for a \emph{g} in a violin clef), it is customary to place the -dot slightly \emph{above} the line. In staves with two voices, -there is an alternate custom, viz., to place the dot \emph{above} -the line in the \emph{upper} voice and \emph{below} the line in -the \emph{lower} voice. {\PMX}'s default is the first possiblity; -dots for both voices \emph{above} the line, but it can be -overridden: - - -\noindent -By default {\PMX} inserts a horizontal gap of \verb#1\elemskip# -between a bar line and the first note in the bar. This can be -changed globally: -\begin{itemize} - \item \texttt{Aa}$[x]$ sets the space before the first note in - every bar to to $x$ units of \verb#\elemskip# . -\end{itemize} - -\noindent -In {\PMX} it's not yet possible to specify a smaller font for selected -staves. But it can be done using an inline {\TeX} command (For details, -cf.~Section~\ref{sec:inlineTeX} and Section~\ref{sec:varstaves}). If you -do this, then you ought to use the \texttt{AS} option: - -\begin{itemize} _{staves!varying size} _{\texttt{musicsize}} - \item \texttt{AS}[\emph{ns}] . The additional sequence of - \emph{ns} is mandatory here. It consists of exactly as - many characters \texttt{-} (minus) or \texttt{0} (zero) - as there are staves in the score (\texttt{nstaves}, - cf.~Section~\ref{sec:preamble}): \texttt{0} if the font - size of this staff is normal, \texttt{-} if it is - small\,% - \footnote{The sequence of staves is from bottom to top, as - described in the preamble. Cf.~p.\pageref{p:header}. - }. - This tells {\PMX} to modify some horizontal spacing decisions - to account for the smaller font size. -\end{itemize} - -\subsubsection{Vertical spacing} _{spacing} _{spacing!vertical} -\begin{enumerate} - \item[a)] Spacing of staves within a system: \text{} \\ - If there is more than one staff in a system, {\PMX} computes the - vertical spacing between the staves automatically. However, the - algorithm isn't fully robust, and the result may not be pleasing. - To change the spacing between the staves within a system, you can - apply a scale factor $x$ to the default, either for the entire - score, or for the current page only: - \begin{itemize} - \item \texttt{AI}$[x]$ multiplies the default - \textbf{I}nterstaff spacing, \verb#\interstaff#, by the - decimal number $x$ \emph{for the entire score}. This - option should be placed in the header. - \item \texttt{Ai}$[x]$ multiplies the default - \textbf{i}nterstaff spacing by the - decimal number $x$ \emph{for the current page only}. - This option can be placed at the beginning of any input - block (including the first), and overrides - \texttt{AI}$[x]$ . - \end{itemize} - Note that if there is more than one system on a page, decreasing - the interstaff spacing will increase the space between systems, - and vice-versa. - - \item[b)] Spacing of systems on a page: \text{} \\ - {\MusiXTeX} normally draws a virtual box around each system and - inserts equal vertical space between these boxes. When objects - protrude above the top staff in a system -- such as the note - \texttt{c46} in the violin clef -- or below the bottom one, this - can lead to unequal spacing between the bottom staff line of one - system and the top staff line of the next. You may prefer that - this vertical spacing be constant for the whole page: - \begin{itemize} - \item \texttt{Ae} ensures that the spacing between the bottom - staff line of one system and the top staff line of the - next is constant for any one page\,% - \footnote{It is generally advised to use the \texttt{Ae} - option by default, unless one has a specific - reason not to. When using this option, you may - Nevertheless, in certain cases you may want to - force more vertical space between certain systems. - There is a {\TeX} macro, called - _{\bs\texttt{spread}$[x]$} - \bs\texttt{spread}$[x]$, that can be inserted - anywhere in the system before the desired wider - gap. Its argument $x$ is the desired extra space, - in units of \bs\texttt{internote} - (cf.~Section~\ref{sec:inlineTeX}). - _{layout!\bs\texttt{spread}$[x]$} - _{\MusiXTeX!\bs\texttt{spread}$[x]$} - }. - \end{itemize} - - \item[c)] Sparsely filled pages: \text{} \\ - Sometimes it may happen that a page contains just a few staves - altogether, and then the white space between staves on such a - page becomes excessive. In such cases -- specifically, if - \verb#\interstaff# $>$ \verb#20\internote# -- {\PMX} will, instead - of the equal spacing described above, group all systems near the - top of the page. This can, however, be changed by the user: - \begin{itemize} - \item \texttt{Av} will suppress the grouping near the top, - and ensure that systems will always be spread vertically - regardless of how much white space is left between systems. - \end{itemize} - Note that \texttt{Av} acts as a toggle; the second time it is - issued, the behavior will revert to the default. - \item[d)] Vertical position of rests in 2-voice staves: - \begin{itemize} - \item \texttt{AK} activates special rules for vertical positioning - of rests in two-voice staves. - - This general option is rather subtle; its explanation by Don - Simons follows: - \begin{quote} - ``Without this option, rests in two-voice staves have - default positions based on a simple rule that is not - context-sensitive: those in the lower voice (the one - before //\,) are 4 \verb#\internote# heights below their - single-voice default positions, and those in the upper - voice are 2 \verb#\internote# heights above the - single-voice default. - - ``The \texttt{AK} option invokes a set of context-sensitive - _{rest!alignment in 2-voice staves} - rules to set the default position. The baseline rule is - to align the rest in a horizontal line with the next - following note in the same bar. If there is no following - note in the bar, then the rest is aligned with the last - note before the rest. - - \medskip - ``If there are simultaneous rests in both voices, the old - rule is applied. - - \medskip - ``The \texttt{AK} option is a toggle: it may be used at the - start of any input block to turn these special rules on - (if previously off) or off (if previously on). - - \medskip - ``When the \texttt{AK} option is on, it only affects - places where there are two voices in a staff. - - \medskip - ``Any user-defined tweaks on the height of a rest will - supersede the option for that particular rest, i.e.\ the - tweak will be applied relative to the single-voice - default position.'' - \end{quote} - - Sometimes you may want the rest to be aligned with the - \emph{previous} note (the one \emph{to the left} of the - rest), rather than the following note (the one to the right - of the rest). - - This can be achieved simply by appending an \texttt{L} (for - `\textbf{L}eft') to the rest symbol, i.e.\ by writing - `\texttt{rL}' . - \end{itemize} -\end{enumerate} - -\subsubsection{PostScript type K slurs, ties and hairpins} - \label{sec:usepsslurs} -_{PostScript!slurs, ties and hairpins} - -The use of PostScript slurs, ties and hairpins circumvents most of the -shortcomings of the font-based counterparts. Of the two available -packages, only the type K slurs are explicitly supported by {\PMX}. -There is an option, \texttt{Ap}, to enable the use of this package. - -\begin{itemize} - \item \texttt{Ap} activate Type K PostScript slurs, ties and hairpins. - - \texttt{Ap} may also be entered at the beginning of any input block - to activate certain suboptions controlling shapes and positions of - the slurs and ties that are to be used. The first few of these - options affect vertical positioning. When Type K PostScript slurs - are activated with \texttt{Ap}~, slurs and ties will by default - \emph{not} have their verticAl positions tweaked to avoid - tangencies with staff lines. - - To control this type of adjustment, use one of the following - suboptions to \texttt{Ap}~: -\begin{enumerate} - \item - \begin{itemize} - \item \texttt{+s} activates automatic slur height adjustment, - \item \texttt{+t} activates automatic tie height adjustment, - \item \texttt{-s}/\texttt{-t} deactivate the corresponding - height adjustment. - \end{itemize} - - \item - A second suboption, \texttt{+c}/\texttt{-c}, will increase or - decrease the default curvature of the Type K slurs. The result of - such commands is cumulative, and more than one suboption - \texttt{+c} or \texttt{-c} may be used in a single command. If - the cumulative change goes above \texttt{HH} or below - \texttt{f}, a warning will be issued, the default will be set to - \texttt{HH} or \texttt{f}, and processing will continue. - - Local curvature options in individual slur commands (cf.\ - Sec.~\ref{sec:usepsslurs}) will take precedence over the global - default, but will \emph{not change the default}. - \begin{quote} - A special local option, \texttt{n} (`\textbf{n}ormal'), is of the - `undo' type: it will cause that par\-ti\-cu\-lar slur, no matter - what the global default happens to be, to have the normal - curvature, i.e.\ between \texttt{f} and \texttt{h}. - \end{quote} - \item - A third suboption, \texttt{l}, changes the appearance of slurs - and ties that extend across line breaks: - \begin{itemize} _{slurs!across line break} - \item Every slur/tie at a line break is automagically broken into - two separate ones; no additional {\PMX} slur start or ending - commands are required. Vertical and horizontal tweaks for - the end of the first segment and Start of the second segment - are entered as options in the normal command that starts the - slur/tie: - \begin{enumerate} - \item the option for the end of segment 1 starts with - \texttt{s} (for \textbf{s}ever or \textbf{s}plit), - then the usual one or two signed numbers, then a - second \texttt{s} and one or two more signed numbers - for the start of segment 2, - \item the usual curvature options \texttt{h, H, HH , f}, - if included in the starting command for a line-break - slur, will apply to segment 1, and to segment 2 if - in the closing command. If the slur/tie does not - come at a line break, the special position tweaks - (those after the \texttt{s} option) will all be - ignored, and the curvature tweaks on the closing - note take precedence. - \end{enumerate} -\end{itemize} -\end{enumerate} - - _{global options|see{\PMX!options!global}} - _{general options|see{\PMX!options!general}} - The \texttt{l} option can also be invoked globally - (i.e.\ for the entire score) by specifying \texttt{Apl}, - instead of only \texttt{Ap}, in the header - (recommended). -\end{itemize} - -The third suboption concerns only line-break ties (it does not -affect slurs): -\begin{itemize} - \item \texttt{+h}/\texttt{-h} activates/deactivates the use - of special \textbf{h}alf-ties for the second segment of - line-break ties after the line break. These are - horizontal at their left end, and are only used if the - required segment is shorter than 15 pt. -\end{itemize} -Note that this option is somewhat incompatible with the -\texttt{l} option, and they should not be used simultaneously. - - - -\subsection{Page Size} \label{sec:pagesize} \label{p:pagesize} - _{page!size} _{h symbol@\texttt{h} symbol} - _{W symbol@\texttt{W} symbol} -The default page size\,% -\footnote{This means the \emph{extent of the print} on the page. The - -- empty -- top, bottom, left and right margins depend on the - paper/printer used; they can not be altered within {\PMX}. - } -is 740\,pt $\times$ 524\,pt (10.3\," $\times$ 7.3\,", or 261\,mm -$\times$ 185\,mm). To change the height or width, use the special -symbols \texttt{h}[\emph{n}][\emph{u}] or \texttt{w}[\emph{n}][\emph{u}] -in the header. Here \emph{n} is a decimal number for the new size, and -\emph{u} defines the units: \texttt{i} for inches. \texttt{m} for -millimeters, and \texttt{p} for points. if no unit name \emph{u} is -given, \PMX} uses points as the default. - -This command can be used together with \texttt{\%\%} or \texttt{\%!} -(see Section~\ref{sec:scor2prt}) to give the parts made by -\textbf{scor2prt} different page sizes than the parent score. - -\medskip -\Note{This usage of the \textbf{h} symbol is not to be confused with - that for a line of text above a system (see - Section~\ref{sec:titles})! Although both can occur together in the - header, they are in fact, different {\PMX} symbols, distinguished - by their differing syntax. - } - -\subsection{Stem direction of bass notes} \label{sec:stemdirs} - _{stems!direction of bass notes} _{B symbol@\texttt{B} symbol} -By default {\PMX} makes stems go \emph{up} for middle-line D's in bass -clef, but \emph{down} for notes on the middle line of all other clefs. -If you want middle-line bass-clef notes also to have downward stems by -default, enter the symbol \texttt{B} in the header. - -\subsection{Horizontal Spacing} \label{sec:spacing} - _{spacing!horizontal} - -\subsection*{Minimum Spacing between Notes} - -_{W symbol@\texttt{W} symbol} _{spacing!minimum between notes} -{\PMX} does some special, complex analysis to adjust horizontal spacing -in crowded systems. By default, the minimum space between consecutive -noteheads is 0.3 notehead widths. If you want to change this value to -some other fraction, enter \texttt{W.}$[n]$, where $n$ is a single digit -between \texttt{1} and \texttt{9}, giving the minimum spacing, in tenths -of a notehead width. This adjustment is very rarely used. - -\subsubsection*{Extra Horizontal Shifts and hardspace} - _{spacing!hard space} _{hard space|see{spacing}} - -{\PMX} will usually provide satisfactory horizontal spacing. However, -there may be some occasions where you will want to adjust it manually. A -symbol starting with {\tt X} controls one of two available types of -horizontal adjustment: -\begin{enumerate} - \item a \emph{shift} moves one or more characters in the current voice - but does not affect any other spacing anywhere, - \item a \emph{hardspace}, by contrast, is a fixed amount of space - inserted at a particular time. The horizontal positions of - everything in all staves in the system will be adjusted to - accommodate the added space while maintaining vertical - alignment. -\end{enumerate} -Here are the syntactic possibilities: -\begin{itemize} _{X symbol} - \item \texttt{XS}$[x]$ (for \textbf{S}hift). This command shifts the - the next character; $x$ is a decimal number, giving the amount - of shift, in units of a notehead width. - \item \texttt{X:[}$x$\texttt{]} or \texttt{X[}$x$\texttt{]:} - initiates a ``group shift'', which operates like - \texttt{XS[}$x$\texttt{]}, except that everything from the - insertion point onward in the current voice is shifted until a - termination symbol (``shift end'') is encountered. - \item \texttt{X:} ends a ``group shift''. - \item \texttt{X}$[x]$ (without any \texttt{S} or \texttt{:}) is a - so-called \emph{hard space}. It inserts the specified space, - given in units of notehead widths, at the present point in - \emph{all staves} of the system. If $x$ is negative, space will - be removed. -\end{itemize} - -_{X symbol!with \textbf{scor2prt}} -Because horizontal spacing in parts will usually differ from that in the -score, \textbf{scor2prt} (cf.~Section~\ref{sec:scor2prt}) will by default -copy \emph{only} the shift commands \texttt{XS}$[x]$, \texttt{X:}$[x]$ -and \texttt{X:} into the parts, but \emph{not} the hardspace command -\texttt{X}$[x]$ . - - -\medskip -This behavior can be overridden using the methods described in -section~\ref{sec:scor2prt}. There is, however, an alternative method that -helps to keep {\PMX} score files neat and readable: add the suboption -\texttt{B} or \texttt{P} (without space, as usual) to the \texttt{X} -symbol: -\begin{itemize} - \item \texttt{B} (for \textbf{B}oth): with this option, the spacing - symbol is to be applied to \textbf{b}oth score and part, - \item \texttt{P} (for \textbf{P}art): with this option, the spacing - symbol is to be applied to the \textbf{p}arts only. -\end{itemize} - -\section{Macros} \label{sec:macros} _{\PMX!macros} _{M symbol@\texttt{M} symbol} - -A {\PMX} macro is a single symbol that stands literally for any -any string of characters that may occur in the input file\,% -\footnote{Note to seasoned programmers: {\PMX} macros are not really - macros in the usual sense, but merely string abbreviations; - they \emph{do not allow} for variables. - _{\PMX!macros!no variables} - }. -Macros may be useful to save tedious typing and disk space, and make -{\PMX} source text more readable if you need to repeat the same string -many times in a score. - -\medskip -You may define up to 20 macros in any single {\PMX} input file. There is -no practical limit to the length of the character string that a -macro represents, but of course it must respect the {\PMX} rules on the -length of input lines and what must go on separate lines. - -\medskip -Macros only exist within the {\PMX} input file where they are defined; -you can define a completely new set of macros in another {\PMX} input -file. Conversely, if you want to re-use the macros of file -\texttt{myopus1.pmx} in \texttt{myopus2.pmx}, you need to copy them -explicitly from one file to the other. - -\medskip -There are two distinct ways to define and record a new macro or -redefine an existing one: - -\begin{enumerate} - \item to \textbf{R}\emph{ecord} a \textbf{M}acro: type - \texttt{MR}$[n]$, followed by a space, as usual. $n$, the - ``name'' of the macro, is an integer between 1 and 20. - Everything you type after this will be processed normally, at - that point in the input file, as well as stored, until you end - the macro by entering the symbol \texttt{M}, - \item to \textbf{S}\emph{ave} a \textbf{M}acro: type - \texttt{MS}$[n]$. Everything you type after this will be - recorded (saved) as you enter it, \emph{without processing} - the {\PMX} code. When saving macros, it is usually best to put - them in the header, for readability's sake. -\end{enumerate} - -Whenever you would otherwise need to re-enter the same character string, -you can simply \texttt{P}lay back the macro by typing \texttt{MP}$[n]$~. - -\medskip -Macros can be redefined at will; {\PMX} will issue a warning whenever -this occurs. - -\bigskip _{\textbf{scor2prt}!macros} When you use -macros and want to make separate parts -(cf.~Section~\ref{sec:scor2prt}), some care is necessary: -\textbf{scor2prt} will transfer a \texttt{MR} macro only into the part -where it originated, but will transfer \texttt{MS} macros into all -parts. - -\medskip -So if you want to make macro 1, which you will use in several or all -parts and then use it immediately in the part in which you write it, -dont use simply \verb#MR1#, but rather -\begin {verbatim} - MS1 - MP1 -\end{verbatim} - -\bigskip -Fig.~\ref{fig:macro} contains an example of the use of macros. - -\bigskip -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/macro.eps} \\[2ex] ------------------------------------------- - -\begin{minipage}{300pt} -\small -\begin{verbatim} -% macro 2 saved: -MS2 e4 f g2 o_ | M -% Bar 1 (macro 1 recorded and processed): -Rl MR1 c45 d e c | M -% Bar 2 (macro 1 played): -MP1 -% Bar 3 (macro 2 played): -MP2 -% macro 4 saved: -MS4 c4 g c2 o_ M -% Bar 4 (macro 2 played): -MP2 -% Bar 5 (macro 3 recorded and processed): -MR3 g85 a g f e4 c | M -% Bar 6 (macro 3 played): -MP3 -% Bar 7 (macro 4 played): -MP4 | -% Bar 8 (macro 4 played): -MP4 Rr / -% -\end{verbatim} - -\vspace*{2ex} -\end{minipage} - \end{center} - \caption{``\emph{FrŠre Jacques}'' (usage of macros)} - \label{fig:macro} -\end{figure} - -\section{Inline {\TeX} commands} \label{sec:inlineTeX} - _{inline \TeX} - -It may be worthwhile to reiterate at this point the very different -intentions of the software ingredients which make up the {\PMX} tool. It -is, in fact, a hierarchy: -\begin{enumerate} - \item _{\TeX} _{Knuth, Donald E.} - At the base of it all is {\TeX}. {\TeX} (written by Donald - E.\ Knuth) is a general and extremely powerful tool for - typesetting high-quality documents on a computer that are ready - for printing\,% - \footnote{``Its emphasis is on art and technology, as in the - underlying Greek word.'' (quote from the introduction - of \emph{the {\TeX}book}, the authoritative book on - {\TeX}, by Donald E.\ Knuth. _{Knuth, Donald E.} - }. - But {\TeX} is much more than that: it is a full-grown and - powerful computer programming language with which -- if you are - a {\TeX}pert -- you can do almost anything. - - \medskip - There is, however, a price to pay for this power: while you - don't have to be a professional computer programmer to use - {\TeX}, a pretty good familiarity with the basics of - programming is unavoidable. - \item _{\MusiXTeX} _{Taupin, Daniel} - {\MusiXTeX} (written essentially by Daniel Taupin) is a - `macro' for {\TeX}\,% - \footnote{To be precise, {\MusiXTeX} consists of a very - extensive set of {\TeX} `macros' and music - typesetting fonts. - }. - That alleviates most of the {\TeX} programming tasks for the - special purpose of typesetting music. Thus, while it helps to - have a programming background, such a background is not - absolutely essentially for someone who just wants to write a - few simple music scores. - \item _{\PMX} _{Simons, Don} - {\PMX}, the `preprocessor' for {\MusiXTeX} written by Don - Simons and described in detail in this tutorial, is yet another - level of abstraction on the long way from the musical ideas - that make up a score to getting ink on the paper at certain - points. The whole purpose of {\PMX} is to make typesetting of - music with {\MusiXTeX}/{\TeX} accessible to people with - essentially \emph{no} prowess in computer programming. -\end{enumerate} -As a consequence of this hierarchy, {\PMX} is vastly simpler to use than -{\MusiXTeX}, which in turn is simpler than straight {\TeX}. But the -converse of this is also true: there are elements in {\MusiXTeX} that -are not directly accessible with the {\PMX} language, just as you cannot -unleash the full power of {\TeX} with {\MusiXTeX} alone. -So to allow the user full access to `lower-level' {\MusiXTeX} or {\TeX} -- -while maintaining its higher-level notational simplicity -- {\PMX} -supports the inclusion of {\TeX} commands either directly in the -{\PMX} input file or via an external file. - -\subsection{Including {\TeX} Commands in the \texttt{.pmx} source file} - _{inline \TeX!in \texttt{.pmx} source} -The normal way for a {\PMX} user to insert user-defined {\TeX} code is -to enter it directly in the \texttt{.pmx} input file; this is what is -referred to as ``\,inline {\TeX}\,'' in this tutorial. There are four ways -to do that; these differ mainly in where the {\TeX} code will appear in -the {\PMX} output \texttt{.tex} file. The first 3 of these have \bs\ , -\bs\bs\ or \bs\bs\bs\ (1, 2 or 3 backslashes) as a starting symbol, then -comes a sequence of {\TeX} commands, then another \bs\ (backslash) as a -terminating symbol, followed by the usual space\,% -\footnote{This means that type 1, 2, and 3 {\TeX} strings may \emph{not} - contain the \TeX\ macro `\bs\,\,\,' \,(backslash-space). If - you really need that, replace it by \bs\texttt{relax }. - }. -All three of these must be contained fully in \emph{one line of input}, -limited by default to 128 characters (cf.~Section~\ref{sec:limits}); but -this one line can contain any number of concatenated {\TeX} commands. - -\medskip -The above description needs clarification on a subtle point: the -starting symbols \bs\ , \bs\bs\ or \bs\bs\bs\ \, are \emph{not} really -{\PMX} symbols in the sense used throughout this tutorial, in that there -would be `white space' after them, but the {\TeX} command(s) follow them -\emph{without a blank}. This has to do with the fact that all {\TeX} -commands -- called `control sequences' -- start out with a \bs\ . And -thus the last of the starting backslashes (the only one for type 1, -the second one for type 2, the third one for type 3) counts as the -{\TeX} control character of the following {\TeX} command. For example, -if you wanted to define a new {\TeX} command \verb#\Myspace# as a type 1 -inline command, you would write -\begin{center} \verb#\def\Myspace\hskip{10mm}\ # \end{center} -whereas if it is to be a type 3 inline command, it would read -\begin{center} \verb#\\\def\Myspace\hskip{10mm}\ # \end{center} -in other words: the starting symbol itself also provides the first \bs\ -of the {\TeX} command (control sequence). - -This convention can also be seen clearly in the examples given below. - -\bigskip -Here are the characteristics of the first three types: -\begin{description} _{inline \TeX!Type 1/2/3/4} - \item[Type 1 ( \bs\ \dots \bs\ ) : ] - a Type 1 string usually serves to define or execute a command - that is only needed locally for the current line of music, right - after the place where it is entered in the \texttt{.pmx} file. - {\PMX} inserts it in the resulting \texttt{.tex} file right - before the {\MusiXTeX} command for the next note or rest. - Multiple type 1 strings associated with the same note or rest - are allowed, although the total length may not exceed 128 - characters. So there is generally no reason not to combine all - {\TeX} commands for a single note into a single type 1 string. - - \Note{If an inline {\TeX} string contains a new {\TeX} - definition, this definition is in general \emph{not} - local; depending on circumstances, it can remain valid - throughout the score and for \emph{all instruments} unless - redefined somewhere\,! This is true for all types of - inline {\TeX}, Type 3 in particular. So be careful! - } - \item[Type 2 ( \bs\bs\ \dots \bs\ ) : ] a Type 2 string usually serves - to define or execute a command that is needed throughout the - entire score. It will appear near the top of the \texttt{.tex} - file, right before the \bs\texttt{startmuflex}, regardless of - where it appears in the \texttt{.pmx} file. - \item[Type 3 ( \bs\bs\bs\ \dots \bs\ ) : ] Type 3 strings will appear - in the \texttt{.tex} file right before the \bs\texttt{xbar} or - \bs\texttt{alaligne} of the current input block, i.e.\ before - its first bar line. Thus a Type 3 string is typically used when - you want to redefine a previously defined {\TeX} command, to be - valid from a certain point on, but not before. - \item[Type 4 : ] \label{sec:inlinetypefour} - The fourth way of inserting inline {\TeX} in a \texttt{.pmx} - file is different from the first three in several ways: - \begin{itemize} - \item it is started by the character sequence \verb#---# - (triple dashes), on a line by itself, as the very first - line of the \texttt{.pmx} file, - \item it is terminated by the next appearance of the same - character sequence, \verb#---# (triple dashes), on a - separate line, - \item it can contain any number of lines with {\TeX} code, - although every single of these lines is again - restricted to a total of 128 characters, - \item the lines of {\TeX} code between the opening and - terminating triple dashes will be copied - \emph{literally} to the very top of the \texttt{.tex} - file. - \end{itemize} - So Type 4 can also be (ab)used to copy comment lines - literally from the \texttt{.pmx} file to the \texttt{.tex} file. - This is convenient for documentation purposes. -\end{description} - -\medskip _{inline \TeX!handled by \textbf{scor2prt}} -Another difference of practical importance is the way in which -\textbf{scor2prt} handles these type of inline {\TeX} when making -separate parts (cf.~Section~\ref{sec:scor2prt}): types 2-4 will be -copied into all parts, while type 1 only goes into the part in which it -appears in the original \texttt{.pmx} file. - -\bigskip\bigskip -To understand better the differences between these 4 types on inline -{\TeX}, it may be useful to study the basic structure of the {\TeX} file -\texttt{inlinesample.tex}, given in Table~\ref{tab:inlinesample.tex}, -produced from the {\PMX} input file \texttt{inlinesample.pmx}, given in -Fig.~\ref{fig:inlinesample.pmx}. In doing so, you may want to look at -the box on p.~\pageref{p:inlinesample.txt}. - -\begin{figure}[!ht] - \begin{center} - _{\MusiXTeX!\bs\texttt{PED}} _{\MusiXTeX!\bs\texttt{DEP}} - \includegraphics[scale=.82]{eps/inlinesample.eps} \\[2ex] - ------------------------------------------ - \begin{minipage}{380pt} - \small - \begin{verbatim} -% beginning of inlinesample.pmx ---- -% This sample demonstrates the use of all 4 types of inline TeX ---- -% PREAMBLE: -% -1 1 -1 2 0 0 -0 0 -1 2 16 .0 -% - -t -./ -% BODY: -% HEADER: -w80m -\\nobarnumbers\ -% begin of music input: -g24 | / -\\\systemnumbers\ -\zcharnote{-2}{\PED}\ a D"\DEP"+3+15 | / -\\\barnumbers\ c Rb / -% end of inlinesample.pmx - \end{verbatim} - \end{minipage} \\[2ex] - \end{center} - \caption{A sample for the use of inline {\TeX} } - \label{fig:inlinesample.pmx} -\end{figure} - -\clearpage -\begin{table}[!ht] - \begin{center} - \begin{minipage}{400pt} - \small - \begin{verbatim} - %%%%%%%%%%%%%%%%% - % - % inlinesample.tex - % - %%%%%%%%%%%%%%%% - 6 % This sample demonstrates the use of all 4 types of inline TeX - 7 \input musixtex - 8 \input pmx - 9 \input musixmad - \smallmusicsize% - \nopagenumbers - \tracingstats=2\relax - \hsize=227pt - \vsize740pt - \def\nbinstruments{1} - \setstaffs11 - \setclef10 - \setname1{ } - \generalsignature{ 0}% - \parindent 0pt - \elemskip1pt\afterruleskip1.000pt\beforeruleskip0pt\relax - \stafftopmarg0pt\staffbotmarg5\Interligne\interstaff{10}\relax -23 \nostartrule -24 \readmod{inlinesample} -25 \nobarnumbers% - \startmuflex\startpiece\addspace\afterruleskip% - % BODY: - % begin of music input: - \znotes\zcharnote{16}{\titles{2.0}{}{0}{}{0}{}{0}}\en% - % Bar count 1 -31 \pnotes{4.00}\hu g\en% -32 \systemnumbers% - % Bar count 2 -34 \alaligne -35 \pnotes{4.00}\zcharnote{-2}{\PED}\txtdyn{-2}{15.0}{\normtype\it \DEP}% - \hu{'a}\en% -37 \barnumbers% - % Bar count 3 -39 \xbar - \pnotes{4.00}\hl{'c}\en% - \endpiece - \vfill\eject\endmuflex - \bye - \end{verbatim} - \end{minipage} - \end{center} - \caption{\texttt{inlinesample.tex}, as produced from - \texttt{inlinesample.pmx} - } - \label{tab:inlinesample.tex} -\end{table} - -\clearpage -% _{inline \TeX!in external file} -\begin{table}[!ht] -\begin{center} _{inline \TeX!placement in \texttt{.tex} file} -\fbox{ -\begin{minipage}{350pt} -Here is a short survey of what happens in the file -\texttt{inlinesample.tex} (cf.~Table~\ref{tab:inlinesample.tex}), -produced from \texttt{inlinesample.pmx} -(cf.~Fig.~\ref{fig:inlinesample.pmx}): - -\begin{itemize} - \item first, after the file name comment, which is inserted - automatically by _{\textbf{pmxab}} \textbf{pmxab}, the Type 4 - string (the comment line on the top of the \texttt{.pmx} file) - is inserted [line 6], - \item then the files \texttt{musixtex.tex, pmx.tex} and - \texttt{musicmad.tex} are always read in [lines [7,8,9]. This - means that the \texttt{.tex} that {\PMX} produces has - \emph{access to all the {\TeX} macros} defined in these files, - and therefore you can use all of these in your inline {\TeX} - commands, - \item next, up to and including \bs\texttt{nostartrule} [line 23], - there are a lot of settings, the details of which need not - concern us here, - - \medskip - The following {\TeX} macro [line 24], - \bs\texttt{readmod{sample}} , tells {\TeX} to read in the file - \texttt{inlinesample.mod} (if it exists). The file - \texttt{inlinesample.mod} may contain any valid {\TeX} code of - your choosing (cf.~Section~\ref{sec:external} for details on - this), - \item next [line 25] is the Type 2 string - ``\bs\bs\texttt{nobarnumbers}\bs''. Type 2 strings are - \emph{always} inserted at this point of the \texttt{.tex} file, - \item \bs\texttt{startmuflex} [line 26] -- never mind what exactly it - does -- is the actual beginning of the musical code, - \item several lines down [line 31] there is an item - \bs\texttt{hu g} : this is the half-note $g$ of the first - bar, - \item [line 32] contains the Type 3 string - ``\bs\texttt{systemnumbers}\bs''. This changes the bar - numbering scheme to the {\PMX} default - (cf.~Section~\ref{sec:barnumbers}). {\PMX} inserted this Type - 3 string right before the next \bs\texttt{alaligne} [line 34], - \item [line 35] contains the Type 1 string - ``\bs\texttt{zcharnote{-2}}\bs\texttt{PED}\bs'', which prints - the {\MusiXTeX} pedal\,% - \footnote{The `end of pedal' symbol \bs\texttt{DEP} is coded - here in an alternative (perhaps simpler) way by using - a {\PMX} dynamics textual symbol - (cf.~Section~\ref{sec:dynamics}). - _{dynamic marks!textual} - }, - \item [line 37] contains another Type 3 string - ``\bs\texttt{barnumbers}\bs'', before the code for bar 3 , - inserted right before \bs\texttt{xbar} in line 39 (coding the - bar line). This changes the bar numbering scheme once again. -\end{itemize} -\end{minipage} - } -\end{center} \label{p:inlinesample.txt} -\end{table} - -\bigskip -\subsection{Denoting pitch in inline {\TeX} } -_{inline \TeX!pitch given as a number} -_{pitch!in inline \TeX!} - -When using inline {\TeX}, you should be aware of a subtle aspect, which -can be a hazard: - -\smallskip -In {\MusiXTeX}, you can always refer to a pitch with a number, rather -than a letter, and that number denotes exactly the position on whatever -staff you are using, counting from the bottom line as $0$ . - -When you use this for a pitch, it will not be transposable, nor will it -respect (or indeed affect!) the memory \PMX\ keeps on the pitch: remember -that {\PMX} doesn't interpret any inline {\TeX} . - -You should keep this in mind when designating a pitch within an inline -{\TeX} command. - -\bigskip\noindent -We close this section with two practical examples and a final remark: -\begin{itemize} - \item _{\textbf{musixpss}} - As was stated in Section~\ref{p:useMslurs}, when using Type - M slurs you need to insert the line - \begin{center} - \bs\bs\texttt{input~musixpss{\bs}relax}\bs\ - \end{center} - into the header of the \texttt{.pmx} file. This tells {\PMX} to - read in the file \texttt{musixpss.tex}, which contains the - macros for Type M slurs. - - \medskip - This is the case of a type 2 inline {\TeX} string, and thus - the input command is added to the \texttt{.tex} file right - before \bs\texttt{startmuflex} (which is where it belongs). - \item _{clefs!exotic} _{clefs!octave clefs} _{clefs!symbols} - _{clefs!empty} _{octaviation!of clefs} - Sometimes one needs clefs other than those defined in {\PMX} - (cf.~Section~\ref{sec:numinput}). Some special clef symbols - (among them no clef at all) are defined in {\MusiXTeX} and can - be invoked by the command \bs\texttt{setclefsymbol} (cf.~the - {\MusiXTeX}~\texttt{1.15} manual, Sec.~2.21.2). The most common - of these are octave treble and octave bass clefs, in which a - small $8$ is attached to either the top or the bottom of the - clef symbol. To get a higher octave treble key for instrument - number $2$, for example\,% - \footnote{Matters are more complicated for instruments with - more than 1 staff, such as piano or organ, because - the number in the command refers to the number of the - \emph{instrument}, not the staff. Cf.~the - {\MusiXTeX}~\texttt{1.15} manual, Sec.~2.27.10 for - details. - }, - just add the following type 2 inline {\MusiXTeX} command - \begin{center} - \bs\bs\texttt{setclefsymbol}\{\texttt{2}\} - \qquad \bs\texttt{trebleoct}\bs \qquad. - \end{center} - The other 3 octave clef symbols are \bs\texttt{treblelowoct}, - \bs\texttt{bassoct},\bs\texttt{basslowoct}, for lower octave - treble, higher octave bass and lower octave bass clefs, resp. - -\end{itemize} -More examples can be seen in Section~\ref{sec:tricks} and in some of the -scores of the appendix. - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%% Temp %%%%%%%%%%%%%%%%%%%%%%% Fri 2010 Dec 17 /15:6 /ccn -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\subsection{Putting {\TeX} Commands in an external file} - \label{sec:external} _{inline \TeX!in external file} - -_{directory} -{\PMX} provides one further option for entering an unlimited set of -{\TeX} commands, read into the {.tex} file by \verb#\readmod# just -before the \bs\texttt{startmuflex} line. command, and before any Type 2 -inline {\TeX} strings. Simply put the commands into a text file named -[\emph{filename}]\texttt{.mod} in the current directory\,% -\footnote{This feature is retained mainly for backward compatibility - with previous versions of {\PMX}; it has now been essentially - replaced by the 4 options for inline {\TeX} strings described - above. - }. - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter C starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\chapter{Special Features} \label{sec:specials} - -\section{Making Parts from a Score} - \label{sec:scor2prt} - -\begin{figure}[!ht] - \begin{center} - \raisebox{-0.75ex}{% - \includegraphics[scale=.75]{eps/JChrBach.eps} } - \end{center} - \caption{\textbf{F.Chr.\ Bach}, - \emph{quartet B-Dur (p.\ 1)} - } - \label{fig:JChBach} -\end{figure} - -Separate parts can be made from a score with the tool -\textbf{scor2prt} (included in the standard {\PMX} -distribution). - -Suppose you want to produce the parts to page 1 of a J.Chr.Bach -quartet (Fig.~\ref{fig:JChBach}), and the \texttt{.pmx} file of -that score is called \verb#JChBach.pmx#. -All you to need to do is to run - -\vspace*{-2ex} -\begin{center} - \begin{verbatim} - scor2prt JChBach - \end{verbatim} -\end{center} - -\vspace*{-4ex}\noindent -from the command line (if you omit the file name, you will be -prompted for one). The program will then create the following -\texttt{.pmx} files, one for each instrument: - -\vspace*{-2ex} -\begin{center} - \begin{verbatim} - JChBach1.pmx - JChBach2.pmx - JChBach3.pmx - JChBach4.pmx - \end{verbatim} -\end{center} - -\vspace*{-3ex} -To obtain the parts, you then need to run each of these files -through {\PMX}, in the usual way. - -As can be seen in the example, the parts files will be named -[\emph{yourscorename}][\emph{n}]\texttt{.pmx}, where [\emph{n}] is the -number of the instrument, by default; but the names of the files -created by \textbf{scor2prt} can be changed from within the {\PMX} file -for the whole score, the ``parent file''. For example, to cause the -file for instrument 3 to be named \texttt{mviolins.pmx}, include the -command \texttt{AN3"mviolins"} in the header of the parent file -(cf.~Table~\ref{tab:A}). - -\bigskip -In the remainder of this section we describe how to control the layout -of the parts separately from that of the score by using commands that -are placed in the parent file. This eliminates the need for editing the -\texttt{.pmx} files for the parts separately. You can accomplish all -the editing in the parent file, and then re-run \textbf{scor2prt} as -required. Thus both the score and the parts can be corrected together, -and the parts need not be re-edited each time they are re-generated from -the score. - -\subsection{Usage} -_{\textbf{scor2prt}!usage} _{comments!usage with \textbf{scor2prt}} - -Since comment lines are by definition disregarded by {\TeX} and by the -{\PMX} program itself (\textbf{pmxab}, to be exact), they can, with a -slight extension of their syntax, be used to transfer information -\emph{meant for the parts only}\,% -\footnote{This is quite a useful method, employed in a similar way by - other programs, such as the PostScript language. - _{PostScript} - }. -The following rules are used for this by the \verb#scor2prt# program: -\begin{itemize} - \item If a line has \texttt{\%} in columns 1 and a space in column 2, - it is considered a regular comment and transferred as such to - all parts. - \item If a line has \texttt{\%\%} in columns 1-2, both it \emph{and - the following line} will be ignored when making parts. If the - ignored line (the second line) has \texttt{h}, \texttt{l}, or - \texttt{T} in its first column, then \emph{one additional line} - will be ignored (cf.~\ref{sec:titles} for the rationale behind - this rule). - \item If a line has \texttt{\%!} in columns 1-2, these first 2 - characters will be stripped, and the rest of the line will be - put in the \texttt{.pmx} files for \emph{all} the parts. - \item If a line has \texttt{\%}[\emph{h}] in columns 1-2, where - \emph{h} is the hexadecimal digit representing the instrument - number (\texttt{1, 2,..., 9, a, b, c}), the first two - characters will be stripped and the rest of the line - transferred to the part for instrument \emph{h} \emph{only} . - - \smallskip - A good example for this usage is the page break(s) in a longer - score, where the appropriate page numbers for the parts will be - different from those in the full score. - For example, to force a line break to system 15 and a page - break to page 2 in \emph{part 11 only}, enter - \texttt{\%bL15P2}. - - _{\textbf{scor2prt}!HEX digit usage incompatible with - previous {\PMX} versions} - - \Note{The use of the hexadecimal digits \texttt{a-c} in this - rule creates a potential incompatibility with previous - versions of {\PMX}. To minimize this, the character after - ``{\tt\%}" will \emph{only} be interpreted as a part - number if it represents a number less than or equal - \texttt{noinst}, as given in the parent file; otherwise - the entire line will be treated as an ordinary comment, - and transferred to all parts. - } - - \item In addition to all entries in the header except \texttt{I} - options (cf.\ Sec.~\ref{sec:MIDI}, p.~\pageref{sec:MIDI}), the - following {\PMX} symbols \emph{with all their options} will - automatically be copied to \emph{all parts} (unless the - previous line starts with \texttt{\%\%}, of course): - - \begin{center}\begin{tabular}{l@{\qquad}l} \texttt{R} & (bar - symbol) \\ \texttt{V} & (volta) \\ \texttt{K} & (key - change or transposition) \\ \texttt{A} & (global options) - \\ \end{tabular}\end{center} This is true for - \texttt{R,V,K}, in spite of the fact that they can be - entered in the \emph{first} voice of the score only! - \end{itemize} - -\subsection{The \texttt{S} symbol} \label{sec:Ssymbol} - _{S symbol@\texttt{S} symbol} - -\begin{itemize} - \item \texttt{S}[\emph{n}]: - - By default the total number of systems in each part will be the - same as in the score. If you want to override this, you can do - that with \texttt{S}[\emph{n}], where \emph{n} is - the desired number of systems. \texttt{S}[\emph{n}], if used, - must appear in the header of the parent file. Legally, you - could use \texttt{S}[\emph{n}] to reset the number of systems - for the parent file itself, which you had just defined in the - preamble. That, of course, does not make much sense, but in - the form \\ - \text{\quad}\texttt{\%!S}[\emph{n}] \\ - or \\ - \text{\quad}\texttt{\%}[\emph{k}]\texttt{S}[\emph{n}] \\[1ex] - it does, because then it does \emph{not} affect the full - score, \emph{but all parts}, or part k only, resp. \\ - \texttt{barsant.pmx}, one of the examples given in Section - \ref{sec:donsexamples}, includes a demonstration of this. - \item \texttt{S}[\emph{n}]\texttt{P}[\emph{m}]: - - \textbf{scor2prt} will also compute how many pages it thinks - each part should have, and enter that into the preamble for - that part. If you wish to override that, then insert into the - parent file \texttt{\%3S14P2} for example, which would force - the third part to have 14 systems and 2 pages. You cannot - override the number of pages without first overriding the - number of systems. - - \item \texttt{S}[\emph{n}]\texttt{m}[\emph{k}]: - - A musicsize of 20 is the default in all parts. This may be - overridden with the option \texttt{m} in the symbol \texttt{S}: - e.g., \texttt{\%2S15m16}. Again, you must specify the number of - systems before setting the musicsize. -\end{itemize} - -\Note{Keep in mind the distinction among the various usages of - \texttt{P}: - \begin{itemize} - \item as an option with \texttt{S}, it sets the total number of - pages in a part, - \item as an option with \texttt{L}, it forces a page break, - \item as a {\PMX} command on its own, it controls page - numbering and centered headings. - \end{itemize} _{P symbol@\texttt{P} symbol} - } -\subsection{Other usage rules} - _{\textbf{scor2prt}!usage} -\begin{itemize} - - \item Inline {\TeX} strings of Type 2-4 will be copied to all parts, - while a type 1 inline {\TeX} string will only go into the part - in which it occurs in the parent file. - \item _{spacing!hard space use with \textbf{scor2prt}} - User-defined hardspaces (\texttt{X} without \texttt{:}) are by - default not copied to parts. There are two ways to change this - default: _{X symbol} - \begin{enumerate} - \item use the options of the \texttt{X} command - (cf.~Section~\ref{sec:spacing}): \texttt{B} causes - the hardspace to be used in \textbf{b}oth score and - parts; \texttt{P} puts it into the \textbf{p}arts, but - not the score, - \item to insert \emph{x} notehead widths of hardspace into - part \emph{n}, place the symbol - {\tt\%}[\emph{n}]\texttt{X}[\emph{x}], on a line of - its own, in the parent file. - \end{enumerate} - _{page!numbering!with \textbf{scor2prt}} - _{\textbf{scor2prt}! page numbering} - \item As was already noted (cf.~Section~\ref{sec:pagenumbers}), a - \texttt{P} symbol for page numbering in the parent file is - ignored when making parts. To initiate page numbering in the - parts, use, for example, \texttt{\%!P} , with appropriate - options added, anywhere within the {\PMX} code representing the - first page of the parts\,% - \footnote{From \TeX 's standpoint the command must occur - between the beginning and end of the page on which - the numbering is to begin. - }. - It will often be useful in this case to use the option - \texttt{c} , which by default causes the instrument name to be - centered in small type at the top of every page after the - first. - \item _{MIDI!with \textbf{scor2prt}} \label{p:MIDI} - MIDI commands, i.e., those starting with \texttt{I}, will never - be copied into parts, unless they are in a special comment line - as just described. - \item _{rest!multibar rest} - One function of \textbf{scor2prt} is to condense consecutive - bars of rest into a single group of special printed characters - with a number above it. Thus \textbf{scor2prt} will automatically - insert \texttt{rm} symbols (cf.\ Sec.~\ref{sec:rests}) into the - \texttt{.pmx} files for the parts where appropriate. However, - for this feature to work, the \emph{first} full-bar rest in the - sequence \emph{must} have its duration explicitly defined in - the parent file, either with a digit or with \texttt{p}. In - other words, the feature will not work if the first rest in the - sequence inherits its duration from the previous note. -\end{itemize} - -\bigskip -\Note{In standard {\TeX} the rule for comments is: a \% character - \emph{and all text that follows it on the same line} is treated as - a comment, i.e.\ it is totally ignored by the program. As a - consequence of this rule, many users of {\TeX} have a habit of - adding comments at the end of short lines of text, instead of - writing a whole comment line, starting with a \% in column 1 . - This is fine as far as {\PMX} is concerned; but - _{\textbf{scor2prt}} \textbf{scor2prt} redefines this rule a bit - and in general \emph{will misinterpret comments added in the same - line after} some legal {\PMX} code. _{comments!usage with - \textbf{scor2prt}} - - \medskip - \emph{So when you intend to make parts using} \textbf{scor2prt}, - it is good practice to restrict true comments to lines with \% - \emph{in column} 1, \emph{followed by at least one blank}. - } - -\section{Making MIDI Files} \label{sec:MIDI} -_{MIDI} - -Some users of {\PMX} and {\MusiXTeX} may never have heard of MIDI and -may therefore be a bit bewildered by this section. So here is a quick -introduction: -\begin{quotation} - MIDI stands for ``\textbf{M}usical \textbf{I}nstruments - \textbf{D}igital \textbf{I}nterface''. It is essentially a standard, - consisting of a language and its hardware implementation, designed - to produce digitally coded music with a device like a synthesizer or - a multi-media computer. If your computer is equipped with the - appropriate hardware and software (which is standard on PC's these - days), you can listen to the music encoded in a MIDI file on your - computer just as you can read the text encoded in a text file\,% - \footnote{If you are interested in details on MIDI in general, a good - place to start is the home page of the ``MIDI - Manufacturer's Association'': - \href{http://www.midi.org/about-midi/aboutmidi3.shtml}% - {\texttt{http://www.midi.org/about-midi/aboutmidi3.shtml}% - }~. - }. -\end{quotation} - -\bigskip -This section describes how to produce such MIDI files when writing a -piece of music with {\PMX}. When using this facility, you should be -aware both of the general restrictions of MIDI and the special ones that -{\PMX} imposes: - -\begin{itemize} - \item First of all, you should not expect the MIDI files that {\PMX} - produces to be anything that resembles a performance of the - piece by real, human musicians. While MIDI does make different - shades of sound for the different instruments, the lack of any - kind of expressivity (rhythmic accentuation, dynamics, vibrato, - intonation etc.) does not really do justice to the musical - character of acoustic instruments. - - \medskip - So the MIDI file can be hardly more than an acoustic check on - whether the notes produced are indeed what you had intended. - But for that purpose it can be of great help in coding a score - with {\PMX}, so it is generally advisable to produce the MIDI - files. - \item _{grace notes!not in MIDI} _{ornaments!not in MIDI} - _{repeats!not in MIDI} _{volte!not in MIDI} - _{volte!not in MIDI} _{slurs!in MIDI} - \label{p:midi} - The MIDI module of {\PMX} does not recognize graces, ornaments, - repeats, volte, or segnos. The only ties that are recognized - are those using \texttt{s}, \texttt{t} or \texttt{(} \,; alone, - with no explicit ID number. - \item the MIDI file generator does not support changing the number of - instruments in midstream. You will not see an error message, - but the results will be unpredictable. -\end{itemize} - -The MIDI file is produced by {\PMX} concurrently with the {\MusiXTeX} -output. To start this, enter the symbol \texttt{I}, together with any -options (as described below), usually in the header of the input file; -but \texttt{I} symbols can appear later in the file as well, but only at -the \emph{start of an input block}. -_{I symbol@\texttt{I} symbol} - -If the name of the {\PMX} source file is, say, \texttt{Mymusic.pmx}, the -MIDI symbol \texttt{I} will cause a file \texttt{Mymusic.mid} to be -written in the directory given in the preamble. If \texttt{I} is used -without any options, {\PMX} will use default values for several of the -parameters; these default values are indicated below. - -\medskip -Usually, however, you will want to specify some options. They follow the -MIDI symbol \texttt{I} immediately, without a space. Sometimes the order -of the options matters, so it is generally advisable to adhere to the -order in which they are given here: - -\begin{enumerate} _{MIDI!parameters} - \item \texttt{t}[\emph{x}] sets the tempo to \emph{x} - quarter notes per minute. Default is 96. You can change the - tempo as often as you like, but only at the start of an input - block (as with all MIDI commands). - \item _{instruments!names!in MIDI} - \texttt{i}[\emph{i1i2...in}] assigns MIDI instrument names - \emph{i1,i2,...,in} to the staves of the respective {\PMX} - instruments. The default is harpsichord, of course. - - If you use this option, you must specify \emph{all} instruments. - Each \emph{i} is either an integer between 1 and 255 or a - 2-letter mnemonic. The instrument mnemonics allowed with {\PMX} - are listed in Table~\ref{tab:MIDIinstr}. Numbers and mnemonics - may be mixed, but consecutive pairs of numbers must be separated - by \texttt{:} (colon)\,% - \footnote{Otherwise the assignment could be ambiguous!}. - Care is needed with multi-staff instruments: there must be one - instrument name \emph{per staff}; so for a sonata for violin and - piano, e.g., the instrument names entry would be - \texttt{ipipivl}, not \texttt{ipivl} ! - \item \texttt{v}[\emph{i1}]:[\emph{i2}]:[...]:\emph{in}] assigns the - relative MIDI volume to each instrument. Each \emph{i} is an - integer between 1 and 127; the colons are required. The volume - parameter \texttt{v} must either be given with exactly as many - parameters as there are instruments, or none at all. The default - (no parameters given) is 127. - \item \texttt{b}[\emph{m1}]:[\emph{m2}]:[...]:\emph{mn}] assigns the - MIDI stereo balances to each instrument. The numbers \emph{m} - may vary between 1 and 128; otherwise their usage is similar to - that for the volume. The default value is 64, which represents - the center; smaller numbers favor the left stereo channel, - larger ones the right. - \item \texttt{p}[\emph{x}] inserts a pause of \emph{x} quarter notes - -- for all instruments! -- at the beginning of the first bar of - the input block in which the MIDI symbol appears. Decimals are - allowed, but will be rounded to the nearest sixteenth note. - \item \texttt{g}[\emph{i}] sets the MIDI gap to \emph{i} MIDI clock - tics: this is a silence inserted at the end of every note, - while decreasing the sounding duration by the same amount. The - default is 10, which corresponds to 2/3 of a 64th note. -\end{enumerate} - -_{MIDI!file players and editors} -Key signatures, time signatures (meter) and instrument names will be -written into the MIDI file, the latter as track names. This will have -no effect whatsoever on audible output, but will affect on-screen -appearance with some MIDI file players and editors. - -\medskip -The instruments given in Table~\ref{tab:MIDIinstr} are a subset of -``The General MIDI Instrument Specification''. Of course how they sound -depends on your hardware and software. Instruments not listed below can -still be used but must be specified by number -(cf.~Table~\ref{tab:MIDIspecif}). - -\newcommand{\T}[1]{\texttt{#1}} -\begin{table}[!htb] _{MIDI!instrument mnemonic names} -\begin{tabular}{ll@{\qquad}ll@{\qquad}ll} -\T{pi} & Acoustic Grand Piano & \T{vl} & Violin & \T{re} & Recorder \\ -\T{rh} & Rhodes Piano & \T{va} & Viola & \T{fl} & Flute \\ -\T{ha} & Harpsichord & \T{vc} & Cello & \T{ob} & Oboe \\ -\T{ct} & Clavinet & \T{cb} & Contrabass & \T{cl} & Clarinet \\ -\T{or} & Church Organ & \T{ab} & Acoustic Bass & \T{ba} & Bassoon \\ -\T{so} & Soprano Sax & \T{tr} & Trumpet & \T{ma} & Marimba \\ -\T{al} & Alto Sax & \T{fr} & French Horn & \T{gu} & Acoustic Nylon Guitar \\ -\T{te} & Tenor Sax & \T{tb} & Trombone & \T{vo} & Synth Voice \\ -\T{bs} & Baritone Sax & \T{tu} & Tuba & & -\end{tabular} - \caption{Mnemonics for instruments acceptable in {\PMX} } - \label{tab:MIDIinstr} -\end{table} - -\subsection{MIDI macros \protect\footnotemark} -\footnotetext{{\PMX} normally does not allow tempo changes in MIDI macros. - As of version 2.511, this restriction no longer holds; but it - is designated as ``experimental''. So if you use it, be - prepared for surprises! Naturally, Don Simons will certainly - be interested to hear of your experiments. - } - -\texttt{IM} initiates a MIDI macro operation. Although the syntax of a -{\PMX} MIDI macro is analogous to that of regular {\PMX} macros -(decribed in Section~\ref{sec:macros}), its function is different: -\begin{enumerate} - \item a MIDI macro cannot be saved (i.e.\ recorded without playing --- - there is no command \texttt{IMS[}\emph{i}\texttt{]}), - \item the code sandwiched between \texttt{IMR[}\emph{i}\texttt{]} - (``start \textbf{r}ecord \textbf{M}IDI macro'') and \texttt{IM} - (``end \textbf{M}IDI macro'') will be recorded as with a regular - macro, but - \item \texttt{IMP[}\emph{i}\texttt{]} (``\textbf{P}layback of - \textbf{M}IDI macro \emph{i}'') will \emph{not insert anything - in the written score}, it will merely replay in the MIDI output - the number of bars defined by the macro. -\end{enumerate} -MIDI macros are needed for repeats or dacapos, as the {\PMX} coding for -these features of a score merely provides the appropriate notation on -paper, nothing else. MIDI Macros must have ID numbers between 1 and 20. -Only one macro may be active at a time, recording or playing, but not -both. Never try nesting or overlapping macros! - -\subsection{MIDI only accidentals} \label{sec:MIDIaccidentals} -_{MIDI!accidentals} _{accidentals!MIDI} - -\begin{table}[!hbp] -\begin{center} _{MIDI!General Instrument Specification} - {\scriptsize - \begin{tabular}{|ll|ll|ll|} - \hline - \bfseries 1-8 & \bfseries PIANO & \bfseries 9-16 & \bfseries CHROMAT. PERC. & - \bfseries 17-24 & \bfseries ORGAN \\ - \hline - 1 & Acoustic Grand Piano & 9 & Celesta & 17 & Drawbar Organ \\ - 2 & Bright Acoustic Piano & 10 & Glockenspiel & 18 & Percussive Organ \\ - 3 & Electric Grand Piano & 11 & Music Box & 19 & Rock Organ \\ - 4 & Honky-tonk Piano & 12 & Vibraphone & 20 & Church Organ \\ - 5 & Electric Piano 1 & 13 & Marimba & 21 & Reed Organ \\ - 6 & Electric Piano 2 & 14 & Xylophone & 22 & Accordian \\ - 7 & Harpsichord & 15 & Tubular Bells & 23 & Harmonica \\ - 8 & Clavinet & 16 & Dulcimer & 24 & Tango Organ \\ - \hline - \bfseries 25-32 & \bfseries GUITAR & \bfseries 33-40 & - \bfseries BASS & \bfseries 41-48 & \bfseries STRINGS \\ - \hline - 25 & Acoustic Guitar (nylon) & 33 & Acoustic Bass & 41 & Violin \\ - 26 & Acoustic Guitar (steel) & 34 & Electric Bass (finger) & 42 & Viola \\ - 27 & Electric Guitar (jazz) & 35 & Electric Bass (pick) & 43 & Cello \\ - 28 & Electric Guitar (clean) & 36 & Fretless Bass & 44 & Contrabass \\ - 29 & Electric Guitar (muted) & 37 & Slap Bass 1 & 45 & Tremelo Strings \\ - 30 & Overdriven Guitar & 38 & Slap Bass 2 & 46 & Pizzicato Strings \\ - 31 & Distortion Guitar & 39 & Synth Bass 1 & 47 & Orchestral Strings \\ - 32 & Guitar Harmonics & 40 & Synth Bass 2 & 48 & Timpani \\ - \hline - \bfseries 49-56 & \bfseries ENSEMBLE & \bfseries 57-64 & - \bfseries BRASS & \bfseries 65-72 & \bfseries REED \\ - \hline - 49 & String Ensemble 1 & 57 & Trumpet & 65 & Soprano Sax \\ - 50 & String Ensemble 2 & 58 & Trombone & 66 & Alto Sax \\ - 51 & Synth Strings 1 & 59 & Tuba & 67 & Tenor Sax \\ - 52 & Synth Strings 2 & 60 & Muted Trumpet & 68 & Baritone Sax \\ - 53 & Choir Aahs & 61 & French Horn & 69 & Oboe \\ - 54 & Voice Oohs & 62 & Brass Section & 70 & English Horn \\ - 55 & Synth Voice & 63 & Synth Brass 1 & 71 & Bassoon \\ - 56 & Orchestra Hit & 64 & Synth Brass 2 & 72 & Clarinet \\ - \hline - \bfseries 73-80 & \bfseries PIPE & \bfseries 81-88 & - \bfseries SYNTH LEAD & \bfseries 89-96 & \bfseries SYNTH PAD \\ - \hline - 73 & Piccolo & 81 & Lead 1 (square) & 89 & Pad 1 (new age) \\ - 74 & Flute & 82 & Lead 2 (sawtooth) & 90 & Pad 2 (warm) \\ - 75 & Recorder & 82 & Lead 3 (calliope) & 91 & Pad 3 (polysynth) \\ - 76 & Pan Flute & 83 & Lead 4 (chiff) & 92 & Pad 4 (choir) \\ - 77 & Blown Bottle & 84 & Lead 5 (charang) & 93 & Pad 5 (bowed) \\ - 78 & Shakuhachi & 85 & Lead 6 (voice) & 94 & Pad 6 (metallic) \\ - 79 & Whistle & 86 & Lead 7 (fifths) & 95 & Pad 7 (halo) \\ - 80 & Ocarina & 87 & Lead 8 (bass+lead) & 96 & Pad 8 (sweep) \\ - \hline - \bfseries 97-104 & \bfseries SYNTH EFFECTS & \bfseries 105-112 & - \bfseries ETHNIC & \bfseries 113-124 & \bfseries PERCUSSIVE \\ - \hline - 97 & FX 1 (rain) & 105 & Sitar & 113 & Tinkle Bell \\ - 98 & FX 2 (soundtrack) & 106 & Banjo & 114 & Agogo \\ - 99 & FX 3 (crystal) & 107 & Shamisen & 115 & Steel Drums \\ - 100 & FX 4 (atmosphere) & 108 & Koto & 116 & Woodblock \\ - 101 & FX 5 (brightness) & 109 & Kalimba & 117 & Taiko Drum \\ - 102 & FX 6 (goblins) & 110 & Bagpipe & 118 & Melodic Drum \\ - 103 & FX 7 (echoes) & 111 & Fiddle & 119 & Synth Drum \\ - 104 & FX 8 (sci-fi) & 112 & Shanai &120 & Reverse Cymbal \\ - \hline - \bfseries 121-128 & \bfseries SOUND EFFECTS & & & & \\ - \hline - 121 & Guitar Fret Noise & & & & \\ - 122 & Breath Noise & & & & \\ - 123 & Seashore & & & & \\ - 124 & Bird Tweet & & & & \\ - 125 & Telephone Ring & & & & \\ - 126 & Helicopter & & & & \\ - 127 & Applause & & & & \\ - 128 & Gunshot & & & & \\ - \hline - \end{tabular} - } - \caption{The General MIDI Instrument Specification} - \label{tab:MIDIspecif} -\end{center} -\end{table} - -In rare cases a special notation for accidentals is needed to guarantee -that the MIDI output corresponds exactly to what is intended in the -score. Cases in point are: -\begin{description} - \item[Repeated notes with accidentals:] the generally accepted rules - of musical orthography, at least for tonal music, say that when - two identical notes with accidentals occur in the same bar (and - in the same voice, of course), only the first one is written with - an explicit accidental; for the following notes the accidentals are - implied (`inherited', in {\PMX} parlance). - - This rule is less clear when there is a bar line between two - successive notes. Some composers -- in particular in the baroque - era, where this notation is almost the default -- will assume the - first note in the new bar to have `inherited' the accidental - along with it, while others would insist on repeating the - accidental, and still others would put a cautionary accidental - over the first note of the new bar. {\PMX} takes the first - position, and MIDI files generated by {\PMX} will reflect this - attitude. - - {\PMX} users with a different attitude could thus find their - intention misrepresented in the MIDI output. - - \item[Editorial/dubious accidentals:] in editing an historical piece, - a conscientious editor will provide information about - dubious points, but she nevertheless, in creating a MIDI file, - might want to assert her own position. -\end{description} -For these and similar applications {\PMX} provides the \emph{MIDI only -accidentals}. These are written and used like normal accidentals, -except with an `\texttt{i}' added . Such accidentals are -effective \emph{only in the MIDI output}; they are disregarded in the -printed score. - -This is particularly useful when you want to override the MIDI -``baroque default'' described above. To understand the ``baroque -default'' clearly, consider the example given in -Fig.\ref{fig:MIDIbaroquedefault} , where the {\PMX} coding is given -directly below the system: - -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/MIDIbaroque.eps} - \caption{The ``baroque default'', and overriding it with MIDI - only accidentals} - \label{fig:MIDIbaroquedefault} - \end{center} -\end{figure} -\noindent -Now compare the printed score with the MIDI version -- provided -\href{http://www.itp.uni-bremen.de/~noack/MIDI.mid}{here} for your -convenience --, and you can hear the differences explicitly\,% -\footnote{It is also instructive to note the MIDI implementation of - slurs and ties generated by {\PMX} here (Cf.\ the list of MIDI - restrictions on p.\pageref{p:midi}). - }. - -\medskip -Another example for the use of MIDI only accidentals is given in -Fig.\ref{fig:MIDIaccidentals}: -\begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.82]{eps/MIDI.eps} - \end{center} - \caption{Further use of MIDI only accidentals} - \label{fig:MIDIaccidentals} -\end{figure} -\begin{itemize} - \item MIDI plays the first $C$ in bar 2 as a $C\sharp$. The editorial - $\natural$ over the second $C$, however, suggests that - $C\natural$ was intended (at least from here on), so the MIDI - accidental \texttt{in} is appended to that $C$, - \item the final $F$ (in bar 5) suggested to the editor that we are - moving towards F major here, and thus the $B$ in bar 3 should - actually have been a $B\flat$. By bar 4 the assumption is - confirmed, and so he changes the `dubious' accidental to an - editorial one, and the MIDI only accidental \texttt{fi} is appended - to that $B$. -\end{itemize} - -\section{Lyrics} \label{sec:lyrics} -_{\texttt{musixlyr.tex}} _{\textbf{musixlyr}} -_{lyrics|see{\textbf{musixlyr}}} - -{\PMX} has no special provisions for lyrics. One way to include them is -by using the macro package \texttt{musixlyr.tex} developed by Rainer -Dunker. It introduces lyrics into {\TeX} more easily than with -{\MusiXTeX}'s own facilities. The macros could be entered as inline -{\TeX} directly into the \texttt{.pmx} file, but most would prefer the -convenient interface to \textbf{musixlyr} via the program {\MTX} -developed by Dirk Laurie (cf.~Section~\ref{sec:MTX}). -_{\MTX} _{Laurie, Dirk} _{Dunker, Rainer} - -_{accented letters in lyrics} - -If you have foreign-language lyrics, you may run into the problem of -accented letters. Straight {\TeX} does not provide these directly, as -the modern font encoding schemes used by {\LaTeX} do. -_{Vogel, Olivier} -However, Olivier Vogel has developped a method with which to use these -encoding schemes with {\MTX}/{PMX}/{\MusiXTeX}. For details you should -look at his contribution on this in the -\href{http://icking-music-archive.org/software/pmxtricks/tricks.html}% - {Tricks and Tricks} -section in the WIMA, or contact Olivier directly: \quad -\raisebox{-0.8ex}{\includegraphics[scale=0.6]{addresses/ovogel} } - -\section{{\PMX} and {\LaTeX} } \label{sec:LaTeX} -_{\LaTeX} - -{\LaTeX} (``A Document Preparation System''), although written for a -very different purpose, has a lot in common with -{\PMX}: it is a (huge) set of {\TeX} macros that allows to solve -complicated layout problems without the need to dive into the -- -sometimes arcane -- depths of {\TeX} itself. So {\LaTeX} simplifies the -use of {\TeX} for the non-{\TeX}pert in much the same way that {\PMX} -does for {\MusiXTeX}. - -\medskip -So it would certainly be wonderful to have the best of two worlds: merge -{\LaTeX} and {\PMX}. The problems with that (or merging {\LaTeX} and -{\MusiXTeX}, for that matter) are threefold: -\begin{enumerate} - \item {\PMX} deals with many of the layout aspects of a musical score - on its own (such as width of systems, line breaks, page breaks - etc.), and with techniques that are not really compatible with - those of {\LaTeX}. - \item {\MusiXTeX} / {\PMX} and {\LaTeX} make heavy use of - {\TeX}'s ressources, both in memory and registers, and together - they may strain these ressources beyond their usual limit. - \item both {\MusiXTeX} / {\PMX} and {\LaTeX} use many special - command definitions, often enough incompatible with one another. -\end{enumerate} - -While with modern implementations of ressources are no longer a serious -problem, the incompatibility problems are, and their resolution would be -a major programming task. So there have, to this day, not been any -serious efforts to provide a truly merged version of {\LaTeX} with -{\PMX}. - -\bigskip -There are, however, several methods to use {\LaTeX} and {\PMX} in -(partial) ``coexistence'': -\begin{enumerate} - \item _{\LaTeX!with short musical scores} _{short scores} - The best way to include short scores, of less than one printed - page, in a {\LaTeX} document is to - \begin{enumerate} - \item _{PostScript} - produce the musical score with {\PMX} -- {\MusiXTeX} - -- \textbf{dvips} in the way described in this tutorial. - The end product is a PostScript file, - \item _{encapsulated PostScript file} - _{\texttt{.eps} file|see{encapsulated PostScript file}} - make an \texttt{.eps} (``encapsulated PostScript'')\,% - \footnote{In general, this is possible for - single-page PostScript files only. - } - file from the \texttt{.ps} with one of the standard - tools, e.g.~\textbf{ghostview}, - \item include this \texttt{.eps} file in the {\LaTeX} - document with the {\LaTeX} \bs\texttt{includegraphics} - command, e.g. \\[-1ex] - \hspace*{\fill}\verb#\includegraphics[scale=0.58]{sample.eps}# - \hspace*{\fill} . - \end{enumerate} - This is the method with which the present tutorial was produced. - \item _{\textbf{musixltx}} _{\LaTeX!\textbf{musixltx}} - use the {\LaTeX} package \textbf{musixltx}, together with - {\MusiXTeX}\,% - \footnote{\textbf{musixltx} is part of the standard - distribution of the {\MusiXTeX}~\texttt{1.15} package. - }. - The {\MusiXTeX} code is then sandwiched between the start and - end of a specific environment: - \begin{center} \vspace*{-2ex} - \verb#\begin{music}# \dots \verb#\end{music}# . - \end{center}\noindent - For more detail on this method see the - {\MusiXTeX} manual by Daniel Taupin. _{Taupin, - Daniel} - - \medskip - But be aware of the fact that the \texttt{.tex} files produced - by {\PMX} contain a number of incompatibilities with {\LaTeX}. - So if you want to use the \textbf{musixltx} package together - with {\PMX}, you may have to comment out a few lines in the - \texttt{.tex} file --- by hand, unfortunately. For that reason, - the \textbf{musixltx} package usually works well with {\PMX} - only in rather simple cases. An example of how to proceed can - be found in the WIMA: \\ - \hspace*{\fill} - \href{http://icking-music-archive.org% - /software/musixtex/add-ons/pmx-l2e.tex}% - {\texttt{http://icking-music-archive.org/% - /software/musixtex/add-ons/pmx-l2e.tex}} - \hspace*{\fill} \\ - \item _{\LaTeX!\textbf{mtxlatex}} _{\LaTeX!e\TeX} - _{\LaTeX!interface with \PMX} _{Laurie, Dirk} _{\MTX} - Dirk Laurie, the author of {\MTX}, has developped a - {\LaTeX} package, \textbf{mtxlatex}. It is is part of the - \href{http://icking-music-archive.org/software/mtx/mtx060.pdf}% - {{\MTX} 0.60b distribution}, available from the WIMA, and can be - considered a successor to the \textbf{musixltx} package - described above. An outstanding feature of this package is that - it interfaces quite well with {\PMX}; so this is usually the - method of choice in cases where you want to include longer - music scores in a long text such as a book. Detailed - instructions on how to use this package are contained in the - {\MTX} manual. - - When - using \textbf{mtxlatex}, be sure to - include the \textbf{mtxlatex} package as the - \emph{first} package in the {\LaTeX} source file. -\end{enumerate} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter D starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\chapter{Limitations, error messages, and bugs} -\section{Limitations} \label{sec:limits} -_{limitations} - -For simplicity in writing the program, {\PMX} has numerous variables -with fixed dimensions. In most cases there are no checks against these -limits, so occasionally there may be hangups due to exceeding a -dimension. - -\medskip -The limits of the variables given in Tables~\ref{tab:softlimits} and -\ref{tab:hardlimits} fall in two distinct classes, named ``soft'' and -``hard'' limits to distinguish them: -\begin{enumerate} - \item soft limits can be increased fairly easily: all it takes (sic!) - is to change the dimensions in the FORTRAN source of - _{\texttt{pmxab.exe}} \texttt{pmxab.exe} (the {\PMX} program) - accordingly, and recompile, - \item hard limits, on the other hand, could only be increased with - more or less elaborate reprogramming - \footnote{Often these hard limits are a consequence of - features of {\MusiXTeX} and thus cannot be changed - without changes in {\MusiXTeX}. - - Note, however, that this character count - \emph{includes all empty spaces before the final - character} (such as \texttt{/}) at the end of an - input line. If -- for better readability, e.g.\ -- - you are in the habit of aligning these end-of line - characters, being more stingy on the resulting blanc - characters often helps to stay within the limit. - } - (or at least recompiling the source code), so for all practical - purposes they are unchangeable. - -\end{enumerate} -In both cases, however, it will usually be possible to work within -existing limits by breaking the input into smaller blocks. Consider that -solution before asking Don Simons for changes to the {\PMX} source code, -or attempting such changes yourself! _{Simons, Don} - -\begin{table}[!htb] -\begin{center} -_{limitations!soft limits} -\begin{tabular}{l@{\quad:\quad}r} -characters per input line & 128 \\ -staves & 24 \\ -voices per staff & 2 \\ -voices per system & 24 \\ -systems & 125 \\ -bars & 600 \\ -forced line breaks & 40 \\ -forced page breaks & 10 \\ -key changes & 18 \\ -pages & 20 \\ -notes per input block & 600 \\ -bars per input block & 15 \\ -slurs per input block & 101 \\ -figures (figured bass) per input block & 74 \\ -grace note groups per input block & 37 \\ -notes in grace note groups per input block & 74 \\ -inline {\TeX} strings per input block & 52 \\ -volte per input block & 6 \\ -trills per input block & 24 \\ -chordal notes (non-spacing) per input block & 62 \\ -beams per voice per bar & 8 \\ -forced beams per voice per input block & 40 \\ -clef changes per voice per input block & 10 \\ -notes per beam & 24 \\ -notes per xtuplet & 24 \\[-3ex] -\end{tabular} -\end{center} - \caption{Numerical limits of {\PMX} variables (soft limits)} - \label{tab:softlimits} -\end{table} - -\vfill -\begin{table}[!htbp] - -\noindent -------------------------------------------------- -\begin{center} -_{limitations!hard limits} -\begin{tabular}{l@{\quad:\quad}r} -total number of characters in source file & 65~536 ($2^{16}$) \\ -\bs{\tt notes} groups (total) & 2000 \\ -\bs{\tt notes} groups per bar & 20 \\ -inserted standard anti-collision spaces - (not xtuplet or end-of-bar) per bar & 20 \\ -inserted anti-collision spaces within xtuplets per bar & 20 \\ -inserted anti-collision end-of-bar hardspaces per system & 19 \\ -inserted anti-collision end-of-bar hardspaces (total) & 83 \\ -inserted standard anti-collision spaces per system & 400 \\ -inserted anti-collision spaces within xtuplets per system & 100 \\ -inserted standard anti-collision spaces & 1000 \\ -inserted anti-collision spaces within xtuplets & 200 \\ -bytes of MIDI output data per line of music & 24576 -\\[-3ex] \end{tabular} \end{center} \caption{Numerical limits of {\PMX} -variables (hard limits)} \label{tab:hardlimits} \end{table} - -\section{{\PMX}'s error messages} \label{sec:errormsg} -_{error messages} - -When run on, say, \verb#my_opus.pmx#, {\PMX} will always generate two -files in the working directory, \verb#my_opus.pml# and -_{\texttt{pmxaerr.dat}} \texttt{pmxaerr.dat}. \verb#my_opus.pml# is a -log file, and \verb#pmxaerr.dat# contains a single integer: 0 if the run -was successful, otherwise the line number in the source file -\verb#my_opus.pmx# of the fatal error (useful for batch processing). -Also, on successful completion, \verb#my_opus..tex# will be placed in -the path specified in the preamble. - -\medskip -Usually, when there is an error, {\PMX} will give you a pretty good -explanation\,% -\footnote{Note that sometimes an error message will use a name for a - preamble numerical parameter that differs from that used in - this tutorial --- but it usually is easily recognized. - \label{p:errormsg} - }. -There are some cases, however, in which the error message will be issued -not by {\PMX}, but by the FORTRAN compiler directly, and it may look -very cryptic to you. An infamous example is: -\begin{center} \vspace*{-1ex} \begin{verbatim} - forrtl: severe (24): end-of-file during read, unit 10 -\end{verbatim} \vspace*{-1ex} \end{center} -Such messages are almost always caused by an extra line in your source -file that shouldn't be there, so experiment with deleting lines towards -the end of your file! - -\section{Bugs} -_{bugs} - -As was mentioned before, {\PMX} is continuously maintained and improved -by Don Simons, and there is a very active group of {\PMX} users. Thus -there is no serious bug known (as of Version 2.514) that hasn't been -fixed. _{Simons, Don} - -\medskip -If you think you have discovered a new bug, don't hesitate to send a -message to the TeX-music users' list: - \raisebox{-1.0ex}{% - \includegraphics[scale=0.72]{addresses/texmusiclist} - }$\!\!$% -\footnote{Almost all reported ``bugs'' turn out to be misunderstandings. - So if you state politely that you \emph{think} you may have - found a bug, and ask for help, you will avoid irate replies of - the ``RTFM'' species. - }. -The same is true if you have a problem with {\PMX} that you simply cannot -solve by yourself, even though you suspect that it's \emph{not} a bug: -don't hesitate to ask! - -\subsection{A Benign Bug} \label{sec:bug} -When {\TeX}ing the output of {\PMX} you will usually get an -\texttt{Underfull \bs vbox} message at the end of each page. This is -due to {\PMX} inserting \verb#\eject# at the end of every page, which -automatically spaces the systems vertically without having to fiddle -with \verb#\staffbotmarg#. As far as is known, the warning is benign, -and may be ignored. - -\vfill -\vspace*{\fill} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter E starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\chapter{Tricks of the Trade} \label{sec:tricks} - -\section{Simple tricks} - -\subsection{Special coding in L'Incoronazione di Poppea} -_{figured bass!continuation} - -Bar 17 in Fig.~\ref{fig:poppea} requires an explanation: the -continuation figure appears under the \verb#5#, but the these two -figures are coded as \verb#x145 x12\_00.2# . Why not \verb#x14500.2# , -giving them both the same horizontal offset? That is because the -continuation figure always starts 0.3 \verb#\noteskip#s to the -\emph{left} of the associated note's position. This works well in most -normal situations. But here \verb#\noteskip# is large,based on the -dotted half, while the desired length is short, so in fact the left -offset of the starting point is even larger than the desired length. -Consequently the entry point of the continuation figure has to be offset -by a half note to make it appear offset by a quarter note. - -\subsection{Text after final system} - _{text!after final system} -Suppose you want to add some text, Or any other {\TeX} material, -after the final system of a score. How can you include that in the -{\PMX} file?\,% -\footnote{This question was posted to the {\TeX}-music list by Herrmann - Hinsch. _{Hinsch, Herrmann} - } - -The answer, given by Christian Mondrup, is instructive: -\begin{enumerate} _{Mondrup, Christian} - \item Write the text to a separate file, say - \verb#Myendnotes.tex# , - \item Insert - \begin{center}\begin{verbatim} - \let\Endpiecesav\Endpiece - \def\Endpiece{\Endpiecesav\input Myendnotes} - \end{verbatim}\end{center} -\end{enumerate} -in the header of the {\PMX} source file, i.e.\ as a Type 4 inline {\TeX} -command (cf.\ Sec.~\ref{sec:inlinetypefour}). You can see that the -redefinition of {\TeX} commands, if done carefully, can be a rather -powerful tool. - -\medskip _{\LaTeX!interface with \PMX} _{\textbf{mtxlatex}} -Another solution to this problem is to use the {\LaTeX}/{\PMX} -interface \textbf{mtxlatex} (cf.~\ref{sec:LaTeX}); this may be -simpler in cases involving more complicated layout. - -\subsection{Clef octaviation} \label{sec:clefoctaviation} -_{octaviation} - -As was noted in Section~\ref{sec:octaviation}, {\PMX} does not -presently provide a notation for octaviation; but native {\MusiXTeX} -does; cf.~the {\MusiXTeX}~\texttt{1.15} manual, Sec.~2.11 for details. - -\medskip -Consider, for example, bar 155 of the $2^\text{nd}$ movement of -Beethovens piana sonata op.\ 111 : - -\begin{center} -\includegraphics[scale=.82]{eps/beethoven0.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{360pt} -\small -\begin{verbatim} -\\interstaff{13}\ -w170m -Abepl -% -[ e83d ze+ e8- ze+ sl c1- zc+ sl ] c8d-l zc+ | Rb / -[l c15x3n g+ c b1-x3n g+ b c1-x3n g+ c ] -[l gs1x3n b gs+ g1-x3n b e a1-x3n e+ a ] -[l a-1x3n e+ a g1-x3n e+ g a1-x3n e+ a ] | / -% -\end{verbatim} -\end{minipage} -\end{center} -In most editions, you will find the figures in the right hand in the -second and third three beats written in octaviation notation: -\begin{center} -\includegraphics[scale=.82]{eps/beethoven1.eps} \\[2ex] -\end{center} -which is clearly easier to read. This octaviated version was produced by -the following {\PMX} code: -\begin{center} -\begin{minipage}{360pt} -\small -\begin{verbatim} -\\interstaff{13}\ -w170m -Abepl -\\def\octnumber{8$^{va}$}\ -% -[ e83d ze+ e8- ze+ sfu c1- zc+ sfu ] c8d-l zc+ | Rb / -[l c15x3n g+ c b1-x3n g+ b c1-x3n g+ c ] -\Ioctfinup1d\ [l g-s1x3n b gs+ g1-x3n b e a1-x3n e+ a ] -[l a-1x3n e+ a g1-x3n e+ g a1-x3n e+ a ] \toctfin1\ | / -% -\end{verbatim} -\end{minipage} -\end{center} - -The octaviation is started with the Type 1 inline {\TeX} symbol -\verb#\Ioctfinup1d\# and ended with \verb#\toctfin1\# ; the -transposition downward is, of course, generated in the standard {\PMX} -way by writing \verb#g-s1x3n# instead of \verb#gs1x3n# . By default, -{\MusiXTeX} will start the octaviation symbol with a simple \texttt{8}; -this is changed to 8$^{va}$ by the Type 2 inline {\TeX} symbol given in -the preamble. - -\medskip -\Note{When using this octaviation notation in a score, do not try to - produce a MIDI file for that score: it will come out faulty - } - -\section{More tricks} -The above examples are actually rather simple cases of the use of inline -{\TeX}, not really ``tricks''~; they have been included here for you to -`warm up' to doing such things yourself. But there are many -further-reaching tricks to overcome shortcomings of {\PMX} --- -some truly ingenious. Here are a few of general interest: - -\subsection{Changing vertical positioning of instrument name} -\label{sec:shiftname} _{\textbf{scor2prt}!use of Ti} -_{\textbf{scor2prt}!adjusting instrument name} - -When making parts from a score with \textbf{scor2prt}, you will -sometimes find the adjustment of the vertical position of the instrument -name not to your liking. In particular, if you have a tempo indicated in -a line of text above the first system (e.g.~``allegro''), you may find -that the instrument name of some (but not all) parts collides with the -tempo indication. How can you fix that? - -\medskip _{\textbf{scor2prt}!usage} _{Van Ryckeghem, Andre} - _{instruments!names} _{comments!usage with \textbf{scor2prt}} -A practical solution of this problem has been given recently by Andre -Van Ryckeghem. It is quite instructive to see in this example how -the mechanism of handing over commands to \textbf{scor2prt} operates: - -Suppose that you are writing a string quartet, and the relevant part of -the preamble and header in the score are: -\begin{small}\begin{verbatim} -... -Violoncello -Viola -Violine II -Violin I -batt -./ -h -Allegro -Abpl -... -\end{verbatim}\end{small} - -After running \textbf{scor2prt}, you find that the allegro command is -positioned the way you want it, but the cello name collides fully, and -the Violino II slightly, with the ``allegro''. Therefore you want to -raise the cello by \texttt{3ex}, the Violin II by \texttt{1.5ex} . To do -so, replace the above part of the preamble and header in the score by -\begin{small}\begin{verbatim} - ... - %% Violoncello - %1 \raise+3ex \hbox{Violoncello} - Viola - %% - Violin II - %3 \raise+1.5ex \hbox{Violin II} - Violin I - batt - ./ - h - Allegro - Abpl - ... -\end{verbatim}\end{small} -All the comment lines are disregarded in compiling the score; but in the -\texttt{.pmx} file for the cello, you will find -\begin{small}\begin{verbatim} - Ti - \raise+3ex \hbox{Violoncello} - b - ./ - h - Allegro - Abpl - ... -\end{verbatim} -and in the part for the second Violin -\begin{verbatim} - Ti - \raise+1.5ex \hbox{Violin II} - t - ./ - h - Allegro - Abpl - ... -\end{verbatim}\end{small} -which does what you want. - -\vspace*{3cm} -\subsection{Xtuplets ending with a rest} - \label{sec:Xtuplets ending with a rest} - _{xtuplets!ending with a rest} - - As was pointed out in Section~\ref{sec:xtuplets}, \PMX\ does not - allow a rest as the last note in an xtuplet. - - \medskip - Can one find a way to circumvent this restriction? A pedestrian, - awkward way around might be this: remembering that \PMX\ is a - preprocessor for MusiXTeX, and in a second pass \TeX\ processes the - \PMX\ output, one could simply enter some arbitrary note in place of - the desired rest, run \PMX\ , and then in the resulting \TeX\ file - replace the arbitrary note \emph{manually} by the appropriate - {\MusiXTeX} rest symbol \emph{before} running the file through \TeX\ - for the the 2nd pass. - - This semi-solution however, has two major drawbacks: - \begin{enumerate} - \item it takes a certain amount of aquaintance with basic MusiXTeX, - so this is not for everyone; - \item more dangerously, this hack goes away if and when you - rerun \PMX\ ! So if you are still in the middle of a - development, you may find yourself redoing the hack over and - over, which could quickly become a real nuisance. - \end{enumerate} - - Luckily, for xtuplets with stand-alone notes there now exists a real - solution: an ingenious, generally usable inline {\TeX} method -- - developped by Don Simons -- solves the problem completely for - unbeamed xtuplets. Here is a simple example with two such triplets: - \begin{center} - \includegraphics[scale=.82]{eps/triplerest.eps} \end{center} - \newpage And this is the \PMX\ source text that creates these staves: - ------------------------------------- -\begin{verbatim} -2 2 -2 4 0 0 -0 0 -0 3 20 0.12 - - -tt -./ -w100m -\\def\qpforqu{\let\qut\qu\def\qu##1{\qp\zcharnote{##1}{~}\let\qu\qut}}\ -\\def\dsforcu{\let\cut\cu\def\cu##1{\ds\zcharnote{##1}{~}\let\cu\cut}}\ - -e4ax3 \dsforcu\ e \dsforcu\ e e4ax3 \qpforqu\ eD / -e4ax3 e e e4ax3 eD / -\end{verbatim} ------------------------------------- - -As you can see, there are two inline commands of type 2, which are -therefore effective throughout the file (from where they are first -entered), then followed by two standard \PMX\ lines; the lower one (the -top staff) of these has the standard triplets, as demonstration, while -the upper one (bottom staff) shows the corresponding triplets with ending -rests. - -The two inline \TeX\ commands produce the type of rest: \verb#\dsforcu# -stands for a quarter rest, and \verb#\qpforqu# for a half rest. Note -that these inline \TeX\ commands not only provide the correct graphics, -but \PMX\ considers them to have the corresponding duration values! So -if you use wrong ones, \PMX\ will complain in the usual way. - -\medskip -Explaining the inline {\TeX} commands in detail would go beyond the -scope of this tutorial. But if you know some of the MusiXTeX -terminology, you will recognize that these commands conform to the -MusiXTeX names for quarter and half notes etc.\,% -\footnote{This knowledge may be useful if you want to produce more - complicated xtuplets with ending rests than the simple - examples given here. The new {\MusiXTeX}~\texttt{1.15} manual - may be helpful in such cases. If that doesn't help: consult a - {\MusiXTeX}pert! - } - -The inline commands are then each followed by a dummy note. Usually it -is a good (and safe) habit to use the same note name as the last real -note in the xtuplet; but any {\PMX} note name is valid; variations can -produce surprising, but possibly useful grahical results. So if you feel -up to it, you can play with such variations! - -\subsection{Shorthand notation for consecutive quavers} - _{Van Ryckeghem, Andre} _{shorthand!for quavers} _{eighths} - _{quavers|see{eighths}} - _{shorthand!for quavers|see also tremolo} - Often, in accompanying voices, in particular, there are several - repeated quavers (eighth notes), e.g.~4 quavers to a half note. There - is a commonly used shorthand notation for this that helps - sight-reading enormously: a half-note, with a line through its stem, - indicating the quavers. - - Fig.~\ref{fig:JChrBach} shows the beginning of the cello part of a - Joh.\ Chr.\ Bach quartet. In this example an inline {\MusiXTeX} macro - (devised by Andre Van Ryckeghem) provides this shorthand. - -\begin{figure}[!htb] - \begin{center} -\includegraphics[scale=.82]{eps/JChrBach.eps} \\[2ex] - ------------------------------------------ -\begin{minipage}{380pt} -\small -\begin{verbatim} -%----------------% -% -% JCBach.pmx -% -%----------------% -% ---- -\let\husav\hu\ -\let\hlsav\hl\ -\def\FE{\def\hl##1{\let\hu\husav\let\hl\hlsav% - \relax{\advance\transpose2\loffset{0.5}% - {\ibl0{##1}9}\roffset{0.5}{\tbl0}}\ha{##1}}% - \def\hu##1{\let\hu\husav\let\hl\hlsav% - \relax{\advance\transpose-3\loffset{0.5}% - {\ibu0{##1}9}\roffset{0.5}{\tbu0}}\ha{##1}}% - } ---- -% -1 1 4 4 0 6 1.00 -2 -0 8 16 0.1 -% -Violoncello -b -./ -Abpl -r4 | b83 Dmf b b b \FE\ b2 | \FE\ a2 a8 a b b | -\FE\ e2- e8 e f f | \FE\ b2- Dp \FE\ b2 | -\FE\ b2 \FE\ b2 | \FE\ b2 Df b8 [ b Dp b b ] | -\FE\ b2 \FE\ b2 Rd / -\end{verbatim} -\end{minipage} - \end{center} - \caption{\textbf{J.Chr.\ Bach}, Quartet in B Major - (beginning of cello voice)} - \label{fig:JChrBach} -\end{figure} - - \medskip _{semiquavers|see{sixteenths}} _{sixteenths} - _{shorthand!for semiquavers} - If you want such a shorthand for semiquavers (sixteenth notes), you - need to consult the {\MusiXTeX}~\texttt{1.15} manual: you will find - that all you need to do is to replace \bs\texttt{ibl0} and - \bs\texttt{ibl0} by \bs\texttt{ibbl0} and \bs\texttt{ibbl0} , resp. - - -\subsection{Varying the stave sizes} \label{sec:varstaves} -_{figured bass!varying staves sizes} _{\texttt{curly.tex}} -_{staves!varying size} - -In modern editions of works with basso continuo e.g., the implementation -of the bass, as suggested by the editor, is often given in a staff using -a smaller size. {\MusiXTeX} does not support such a possibility. - -\medskip _{Molekwa, Mthimkhulu} -Fortunately, Mthimkhulu Molekwa has written two macros that provide -alternative solutions of this problem that are often sufficient. The -first, \verb#musixbar.tex#, which is included in {\MusiXTeX}, -allows you to easily define a set of staves (the two bottom ones, in the -case of a basso continuo) that have common bar lines joining these -staves \emph{and only these}\,% -\footnote{Normally, {\MusiXTeX} will draw common bar lines for - \emph{all} staves or for \emph{none}. - }. - -\medskip -The second macro, named \verb#curly.tex#\,% -\footnote{\texttt{curly.tex}, if not included in your - {\MusiXTeX} installation, is available in the ``add-ons'' - software section of the WIMA. - }, -provides a brace as an accolade of a set of staves\,% to be grouped -to\-gether\,% -\footnote{{\MusiXTeX} provides only the choir-type square accolades. For - the practical usage of \texttt{curly.tex} see the Caccini - example in the appendix, Fig.~\ref{fig:caccini}. - }. - -\medskip -Suppose we want to set a sonata for violin and basso continuo with -{\PMX}. There will be three staves: at the bottom the basso continuo -proper, then immediately above it, and grouped together with a brace -accolade (in a smaller size), its implementation, and above these the -violin staff. - -To get this, do the following: - -\begin{itemize} - \item indicate in the preamble the number of instruments, - \emph{three} in this case! - \item add a Type 4) {\TeX} inline command at the beginning of - the file, invoking the macros - \verb#musixbar.tex# and \verb#curly.tex#, e.g.\,% -\footnote{The {\MusiXTeX} command - \texttt{$\backslash$sepbarrules$\backslash$} sets the vertical - bar to be discontinous, i.e.\ \emph{not} extend across - different staves. - } - - \vspace*{-2ex} - {\small - \begin{verbatim} - --- - \let\:=\relax\input musixtex\:\sepbarrules\input pmx - \input musixbar\input curly - --- - \end{verbatim} - } - - \vspace*{-5ex} - \item insert the following {\TeX} inline commands in the header of - the {\PMX} input file: - - {\small - \begin{verbatim} - \\\indivbarrules\sepbarrule3\ - \\setsize2\smallvalue\curlybrackets{{1}{2}}\ - \\let\interstaffsav\interstaff\def\interstaff#1{}\interstaffsav{9}\ - \end{verbatim} - } - - - \vspace*{-3ex} - The command \verb#\interstaffsav{9}\# determines the extension - of the brace (and can be adjusted). The command - \verb#\\\indivbarrules\sepbarrule3\# says that the third staff, - that for the violin, has its own discontinuous bar line, not - joined with the other two. - - The second line contains two commands: - \verb#\\setsize2\smallvalue# sets the size of staff 2 to be - smaller, and \verb#\curlybrackets{{1}{2}}\# says which staves - are to be accoladed, i.e.\ joined by the brace. -\end{itemize} -The file \verb#curly.tex# must, of course, be in a directory where -{\PMX} and {\TeX} can find it, viz.\ either in the current directory or -in one in which the other {\MusiXTeX} files are stored. - -\subsection{Stuff in front of the clefs of the first system} - _{inline \TeX!special trick} _{Vogel, Olivier} - _{\textbf{musixlyr}} _{\MusiXTeX!\bs\texttt{setclefsymbol}} -And finally, to show you what is possible, here is a special example of -using inline {\TeX}: it was contributed to the {\MusiXTeX} users' list -by Olivier Vogel. Here is the literal text of his contribution, -with the result shown in Fig.~\ref{fig:bruckner}: - -\medskip -\begin{center}\begin{minipage}{380pt} -Dear all, - -\medskip\noindent -I've got a score of ``\emph{Locus iste}'' by Bruckner, which begins with -the indication of the range of voices. I tried to reproduce the result, -and share with you my solution, since it seems to me to be an -interesting trick. -\begin{small}\begin{verbatim} ---- -\input musixtex -\input musixlyr -\setlyrics{soprano}{% -Lo-cus i-ste a De-o fa-ctus est lo-cus i-ste a De-o % -fa-ctus est, a De-o, De-o fa-ctus est in-ae-sti-ma-bi-le} -\copylyrics{soprano}{alto} -\copylyrics{soprano}{tenor} -\copylyrics{soprano}{basse} ---- -4 4 4 4 0 6 0 0 1 2 20 0.04 - -bttt -./ -B -Abd -h180m -%1-2 -\\staffbotmarg3\Interligne\ -\\setclefsymbol{2}{\treblelowoct}\ -\\groupbottom{1}{1}\grouptop{1}{4}\ -\\sepbarrules\ -\\startmuflex\indent\hskip-\parindent\hbox{\vbox{\hsize=\parindent\ -\\setclefsymbol{1}{\empty}\setclefsymbol{2}{\empty}\ -\\setclefsymbol{3}{\empty}\setclefsymbol{4}{\empty}\ -\\grouptop{1}{0}\nostartrule\generalmeter{}\parindent=0pt\ -\\startpiece\hardspace{2pt}\notes\zq{F}\nq{''C}&\zq{c}\nq{'e}&\ -\\zq{N}\nq{'b}&\zq{b}\nq{'g}\en\zstoppiece}}\ -\\\assignlyrics{1}{basse}\assignlyrics{2}{tenor}\ -\\\assignlyrics{3}{alto}\assignlyrics{4}{soprano}\ -... -\end{verbatim}\end{small} -(The regular {\PMX} encoding of the music follows). -\end{minipage}\end{center} - -\begin{figure}[!htb] - \begin{center} -\includegraphics[scale=.82]{eps/bruckner.eps} \\[2ex] - \end{center} - \caption{\textbf{A.\ Bruckner}, \emph{Locus iste} } - \label{fig:bruckner} -\end{figure} - -\pagebreak - -\vspace*{10ex} -If you encounter a tricky {\PMX} problem that you think is of general -interest, so that it may have been solved by someone else already, -a good place to search is the -\href{http://icking-music-archive.org/software/pmxtricks/tricks.html}% - { {\PMX} `Tips and Tricks'} section of the WIMA. - -\medskip -And if you have found a nice trick yourself, don't hesitate to -share it via the TeX-music users' list. Perhaps it can be included in -`Tips and Tricks' ! - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / chapter F starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\chapter{An Extension of {\PMX}: {\MTX}} \label{sec:MTX} -_{\MTX} _{Laurie, Dirk} - -Although {\PMX} is already vastly simpler to use than {\MusiXTeX}, -anything can be improved. So Dirk Laurie -_{Laurie, Dirk} -set out to simplify {\PMX} even further, and thus created {\MTX}. - -\medskip -{\MTX} is actually a preprocessor to {\PMX}. Its input is a file with -extension \verb#.mtx# , for example ~\verb#mymadrigal.mtx# , its output -has the extension \verb#.pmx# , \verb#mymadrigal.pmx#. Its input -language is similar, but not identical, to that of {\PMX} and includes -most of the functionality of {\PMX} as a subset. - -\medskip _{\textbf{musixlyr}} -The major purpose of {\MTX} is to facilitate the introduction of lyrics -in a musical score of a song, cantata or opera. {\MTX} does this in -conjunction with the \textbf{musixlyr} package by Rainer Dunker; so if -you want to use {\MTX}, you ought to have \textbf{musixlyr} installed as -well. _{Dunker, Rainer} - -\bigskip _{Laurie, Dirk} -Laurie's Work on {\MTX} had essentially been ended in November 1998 with -the `final' version 0.52. But, as many such projects, {\MTX} continued -to evolve; presently, the `official' version is 0,60, dated March 2005, -and the current patch is 0.60c , dated 22 November 2007 ! - -\bigskip -Since there is a full -\href{http://icking-music-archive.org/software/mtx/mtx060.pdf}% - {manual on {\MTX}} -available in WIMA, these few remarks may suffice here. - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% PMX tutorial by ccn / Appendix starts here: -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% \renewcommand{\thechapter}{} - -\chapter{Appendix: Examples} \label{sec:examples} - -\section{Dons Example Files} \label{sec:donsexamples} - -The `official' distribution files for {\PMX}, -which are available from WIMA -\href{http://icking-music-archive.org/software/pmx/pmx2514.zip}% - {[(pmx2514.zip)]}, -, contain 3 instructive examples (not reproduced here): - -\begin{description} - \item[\texttt{most.pmx}] contains examples of most - of the {\PMX} commands, and a few programming tricks, including - examples in the last line of beam groups whose notes vary - widely in pitch. The printed output displays the {\PMX} - commands near to the resulting typeset characters. It is more - useful to look at the printed output rather than the source - file, since the file is littered with Inline \TeX ~needed to - output the text strings representing the {\PMX} commands. - \textbf{WARNING:} Do not try to play this music; it could be - hazardous. - \item[\texttt{barsant.pmx}] - _{\PMX!options!global} _{S symbol@\texttt{S} symbol} - contains the first movement of a recorder sonata by the Italian - Francesco Barsanti (1690-1772). It demonstrates many of - {\PMX}'s strong points in a `battlefield situation': figured - bass, complex beaming patterns, xtuplets, and automatically - adjusted horizontal and vertical spacing in crowded scores. In - fact, this single-page score is at the limit of vertical - crowding. It uses the global option \texttt{Ae} for equal space - betweem systems. The space between systems was increased (using - the option \texttt{AI1.1}) to give a more pleasing appearance. - This is a good score to try making parts with - \textbf{scor2prt}. The special command \texttt{\%2S9} is used - to increase the number of systems in the recorder part (as - explained in Section \ref{sec:Ssymbol}). - - \item[\texttt{mwalmnd.pmx}] is an Allemand for harpsichord by the - German Matthias Weckmann (1616-1674). It uses many techniques - peculiar to keyboard scores. -\end{description} - - -\section{Full-score examples} \label{sec:fullexamples} - -_{Cataldi, Luigi} -In this appendix you will find the {\PMX} code (by Luigi Cataldi) of -a full piece, together with the actual score which was generated from it -(Section~\ref{sec:Dufay}), as well as two extended {\MTX} examples (also -coded by Luigi Cataldi). - -\medskip -The {\PMX} code for the Dufay Kyrie contains a few inline {\TeX} -commands; this is done intentionally so you again can get a feel of the -usage of inline {\TeX}; to understand them fully, however, you will have -to consult the {\MusiXTeX}~\texttt{1.15} documentation.Similarily, you -can get an idea from the Vivaldi and Caccini example what {\MTX} is all -about. For a full understanding, you again need to look at the {\MTX} -documentation. - -\subsection{Dufay, \emph{Kyrie} ({\PMX} code) :} - \label{sec:Dufay} \label{p:Dufay} _{\PMX!full-score example} - -\begin{center} \begin{small} -\begin{verbatim} -%----------------% -% -% Dufay, Kyrie -% -%----------------% -% ---- -\font\tit = cmcsc10 scaled \magstep 5 -\font\dat = cmr12 -\def\comp{\rightline{\medtype Guillaume Dufay}} -\def\data{\rightline{\medtype (1400?--1474)}} ---- -2 1 3 4 3 4 0 0 -1 6 20 0 - -bt -./ -Abe -\\def\writebarno{\ifnum\barno>1\lrlap{\oldstyle\the\barno\barnoadd}\fi}%\ -\\def\shiftbarno{0\Interligne}\ -Tt -{\tit Kyrie} -Tc -\vbox{\comp\data} -It92iororb60:68 -% 1-6 -h-4 -Kyrie -dd23 | a23 bf4 | c24 d4 | ad23 | dd24 | a23 d44 // -a23 d4 | c2 d4 | e2 d4 | csd2 | f2 f4 | e2 f4 / -a24 a4 | e2 d4 | g2 f4 | e2 r4 | ad4 g8 a b | cd45 a84 b c85 / - -% 7-9 -c24 bf43 | ad2 | g2 d4 // -e24 d4 | e d8 c4 bf8 | d4 r+7 d / -a84 bf a g g f | ad2 | bf2 a4 / - -% 10-12 -e2 d4 | g4 bf a | gd2 Rd // -g8- f g e f4 | r8+8 [ d+ d cs c bn ] | dd2 / -g2 a4 | g2 fs4 | gd2 / -\end{verbatim} - -\pagebreak -\begin{verbatim} -% 13-18 -L3Mc+4 -h-5 -Christe -dd23 | fd2 | gd2 | d2 d4 | e2 d4 | g2 a4 // -dd24 | c2 f8 e | d4 c bf | ad2 | g2 f4 | r8+7 [ d+ c b c d ] / -ad24 s | ad2 s | r8 [ bf b a b g ] | fsd2 | g2 a4 | d- e f / - -% 19-24 -bf23 a4 | gd2 | d24 c4 | bf43 a g | d f e | dd2 Rd // -g4-r d+ c | d2 r4 | f2 e4 | d c b | a2 gs4 | ad2 / -g24 f4 | g r g | a bf a | g8 f4 e8 g d | f e c d cs b | dd2 / - -% 25-28 -L5Mc+4 -h-5 -Kyrie -d23 g4 | d r8 d e f | g4 f ef | d r+0 r+0 // -d24 ef4 | d2 c4 | bf2 c4 | dd2 / -a24 g4 | f2 g4 | bf a g | fsd2 / - -% 29-32 -g2 a4 | g2 f4 | g2 a4 | d2- d4 // -d2 cs4 | d2 a4 | bf2 c4 | ad2 / -r8 [ g g fs f e ] | g4 f8 g a bf | g4 f e | d r r / - -% 33-36 -g43 f g | a f e | d d+ c | d f e // -bf4 a g | fr a8 g4 f8 | a4 bf8r g4 a8 | d4-r d8+r c4 bf8 / -e84 d4 c8 bf4 | a8 c4 d8 c4 | d8 f4 g8 e4 | f8 d4 a8+ g4 / - -% 37-39 -d2 c4 | dd2 | gd2- // -d2 e4 | fd2 of-2 | dd2 of-2 / -a4 b c | ad2 of | gd2 of / -% -%----------------% -% -% end of Dufay, Kyrie -% -%----------------% -\end{verbatim} -\end{small} \end{center} - -\begin{figure}[!htbp] - \begin{center} -\includegraphics[scale=.73]{eps/dufay.eps} - \end{center} - \caption{\textbf{G.\ Dufay}, \emph{Kyrie} - (generated by {\PMX})} - \label{fig:dufay} -\end{figure} - -\pagebreak -\subsection{Vivaldi, \emph{Mundi Rector} ({\MTX} code) :} -\label{sec:Vivaldi} _{\MTX!full-score examples} - -\vspace*{8ex} -\begin{center} \begin{small} -\begin{verbatim} -%----------------% -% -% Vivaldi, Mundi Rector -% -%----------------% -% -Title: \vbox{\titA\titB} -Composer: \vbox{\comp\data} -Flats: 2 -Meter: 3/8 -Pages: 1 -Systems: 2 -Style: SATB4 -Size: 16 -Space: 6 6 6 12 - -%%\font\rxii = cmr12 -%%\font\tixii = cmti12 -%%\def\titA{\centerline{Mundi rector}} -%%\def\titB{\centerline{\rxii {\tixii Juditha Triumphans}, I, 27}} -%%\def\comp{\rightline{\medtype Antonio Vivaldi}} -%%\def\data{\rightline{\rxii (1678--1741)}} -%%\let\endpiecesav\endpiece\ -%%\def\endpiece{\endpiecesav\input judt}\ -%%\font\rix = cmr9 -%%\rix - -{sopA}={altoA}={tenorA}={basA} -Mun-di Rec-tor de Cae-lo mi-can-ti -Au-di pre-ces, au-di pre-ces, et su-sci-pe vo-ta -Quae de cor-de pro te di-mi-can-ti -Sunt pie-ta-tis in si-nu de-vo-ta. - -{sopB}={altoB}={tenorB}={basB} -In Ju-di-ta tuae le-gi di-ca-ta -Flam-mas dul-cis, flam-mas dul-cis, tui_a-mo-ris-ac-cen-de -Fe-ri-ta-tis sic hos-tis do-ma-ta -In Be-thu-liae spem pa-cis in-ten-de. - -{sopC}={altoC}={tenorC}={basC} -Re-di, re-di iam Vic-trix pu-gnan-do -In ci-li-cio, in ci-li-cio in pre-ce ri-vi-ve -De Ho-lo-fer-ne sic ho-die trium-phan-do -Pia_Ju-di-tha per sae-cu-la vi-ve. -\end{verbatim} - -\newpage -\begin{verbatim} -%%Abp -%%B -%%\def\writebarno{\ifnum\barno>1\lrlap{\oldstyle\the\barno\barnoadd}\fi}% -%%\def\shiftbarno{0\Interligne} -%%It58ibaclobobb60:70 -% 13 -%%h-4 -%%{\ppff ~~~Allegro} -r8 d+ e | e d d | [ c1 b ] c8 a | b g4 -L: {sopA,sopB,sopC} -r8 g g | g g g | fs f f | d d4 -L: {altoA,altoB,altoC} -r8 b c | c b b | a a c | b b4 -L: {tenorA,tenorB,tenorC} -@+13 r8 g g | g g g | a d- d | g g4 -L: {basA,basB,basC} - -%17-20 -r8 b b | [ b1 a ] b4 | r8 c c | [ c1 b ] c8 e -r8 f f | [ g1 f ] g4 | r8 g g | [ a1 g ] a8 c -r8 d d | b b4 | r8 g g | c c e -r8 d d | e e4 | r8 en e | f f f - -%21-24 -d8 e c | (~ [ b1 a b c d e ] | [ f b- ] c4 oT0 )~ | bd4 :|: -b8 c a | (~ [ bd8 a1 b c ] | d b a4 oT0 )~ | bd4 :|: -f8 g f | ( fd4 | fd4 ) | fd4 :|: -b8 e- f | (~ ( bd4- | b8 ) f4+ )~ | bd4- :|: - -%25-28 -%%L2 -r8 bn b | [ c1 bn ] c8 g | d+ d d | [ e1 d ] c4 | -r8 g g | g g g | g g g | g g4 | -r8 d d | e e e | d d d | c c4 | -r8 g+ g | c- c c | bn b b | c e4 | - -%29-31 -c8 b4 | b8 a c | b c a | -a8 g4 | g8 fs a | g a fs | -fs8 d4 | eN8 FS F | D EF D | -D8 D4 | CS8 D D | G C- D | - -%32-34 -(~ [ G1 FS G A B C ] | [ D G- ] A4 OT0 )~ | GD4 OF :| -(~ [ GD8 FS1 G A ] | [ B G ] FS4 OT0 )~ | GD4 OF :| -( DD4 | DD ) | DD OF :| -{~ ( GD4 | G8 ) D4 }~ | GD- OF :| -\END{VERBATIM} - -\NEWPAGE -\BEGIN{VERBATIM} -%%%%%%%%%%%%%%% TEXT WRITTEN TO A SEPARATE FILE -%%%%%%%%%%%%%%% JUDT.TEX -\FONT\BIG = CMCSC10 SCALED \MAGSTEP 5 -\LEFTSKIP = 3 CM -\FONT\LYR = CMTI10 -\LYR - -\DEF\LYROFFS{5MM} - -\VSKIP 10 MM -\HALIGN{\HSKIP 12MM # \HFILL & # \HFILL & # \HFILL & # \HFILL \CR - -MUNDI RECTOR DE CAELO MICANTI -& IN JUDITA TUAE LEGI DICATA -& REDI, REDI IAM VICTRIX PUGNANDO \CR - -AUDI PRECES ET SUSCIPE VOTA -& FLAMMAS DULCIS TUI AMORIS ACCENDE -& IN CILICIO IN PRECE RIVIVE \CR - -QUAE DE CORDE PRO TE DIMICANTI -& FERITATIS SIC HOSTIS DOMATA -& DE HOLOFERNE SIC HODIE TRIUMPHANDO \CR - -SUNT PIETATIS IN SINU DEVOTA. -& IN BETHULIAE SPEM PACIS INTENDE. -& PIA JUDITHA PER SAECULA VIVE. \CR -\END -% -%----------------% -% -% end of Vivaldi, Mundi Rector -% -%----------------% -\end{verbatim} -\end{small} \end{center} -\pagebreak - -\begin{figure}[!htbp] - \begin{center} -\includegraphics[scale=.73]{eps/vivaldi2.eps} - \end{center} - \caption{\textbf{A.\ Vivaldi}, \emph{Mundi Rector} - (generated by {\MTX}/{\PMX})} - \label{fig:vivaldi2} -\end{figure} -\pagebreak - -\subsection{Caccini, \emph{Amor l'ali m'impenna} ({\MTX} code)} -\label{sec:Caccini} _{\MTX!full-score examples} - -\begin{center} \begin{small} -\begin{verbatim} -%----------------% -% -% Caccini, Amor l'ali m'impenna -% -%----------------% -% -Title: {\tit {Amor l'ali m'impenna}} -Composer: \vbox{\compA\compB} -Meter: C -Style: Singer Cont Bass -Singer: Voices Sop; Vocal; Clefs G -Cont: Voices RH1,RH2; Clefs G -Bass: Voices B; Clefs F -Flats: 1 -Systems: 12 -Pages: 3 -Space: 4 1 -Size: 20 -Indent: 0.10 -Name: {\it{Soprano}} ~ {\it{Continuo}} - -%%\input musixbar\input curly -%%\font\data = cmr10 -%%\font\tit = cmb10 scaled \magstep 4 -%%\font\rxii = cmr12 -%\font\mov = cmmib10 scaled \magstep 1 -%%\font\num = cmr9 -%%\def\compA{\rightline{\rxii Giulio Caccini}} -%%\def\compB{\rightline{\data (1550--1618)}} -%%\def\writebarno{\ifnum\barno>1\lrlap{\oldstyle\the\barno\barnoadd}\fi}% -%%\def\shiftbarno{0\Interligne} - -{Aria} -A-mor l'a-li m'im-pen-na. -A-mor dol-ce, a-mor ca-ro,_a-mor fe-li-ce. -Tal che non spe-ro pi{\`u} n{\'e} pi{\`u} mi li-ce. -Pas-so nem-bi_e pro-cel-le, -pas-so'l ciel e le stel-le, -del pia-cer que-st'{\`e}'l re-gno. -Ah, mia for-tu-na non se l'ab-bia a sde-gno. -Que-sto, que-sto m'ac-co-ra: -ch'al-tri ca-deo, -ch'al-tri ca-deo dal pa-ra-di-so_an-co-ra. -Ah, mia for-tu-na non se l'ab-bia a sde-gno. -Que-sto, que-sto m'ac-co-ra: -ch'al-tri ca-deo, -ch'al-tri ca-deo dal pa-ra-di-so_an-co-ra. - -%%w187m -%%h251m -%%Ab -%%B -%%It86ivchaobb58:70:64 -%% \\setsize2\smallvalue\curlybrackets{{1}{2}}\ -%%\\let\interstaffsav\interstaff\def\interstaff#1{}\interstaffsav{9}\ -%%\\\indivbarrules\sepbarrule3\ -% Bar 1 -@+2 f0 -L: {Aria} -f0 -c0 za -f0 - -% Bar 2 -f2 ( f2 -f2 f4 e -a2 zd c zf- -d2 - a2 6 - -% Bar 3 -f4 ) f8 g8 (~ [ a1 b1 c1 b1 ] [ a8 g8 ] -d4.e f.e -b2 zf f zc+ -b2 a2 6 - -% Bar 4 -[ fd8 g1 ] [ f8 g8 ] [ a1 ( g g8 ) ] [ a1 ( f f8 ) ] )~ -d0e -cd2 zf- g4 zbn -d2 7 ( d4 7 d4 #6 ) - -% Bar 5 -g2 r4 g8 g8 -e2 g -c2 zg e+ zc -c2 c2 - -% Bar 6 -b2 g4 d8 d8 -b4 zd- a+ zc- g2+ -g2e+ d zb -g2 - g2 - -% Bar 7 -f4 [ f1 e1 f1 g1 ] a4 [ e1 d1 e1 f1 ] -fd2 za- g4 ze+ -de2 c -d2+ - a4 c4 - -% Bar 8 -g0 -d0 zg- -ce2 bn -\zcharnote{-6}{\num 11}\ ( g2 \zcharnote{-6}{\num 10}\ g ) - -% Bar 9 -g0 -e0+ -c0 zg -c0 - -% Bar 10 -c4 g8 g8 b4 [ a1 b1 c1 b1 ] -g2 g -c2 ze d zb -c2 g2 - - -% Bar 11 -ad4 d8- f4 [ e1 f1 g1 f1 ] -f2.g -a2 zd d zb -d2+ - b4 g4 - - -% Bar 12 -e0 -\zw e\ dr2 cs -a2d-2 g4 -%%%%%% The two following lines must actually be written in one line! -\zcharnote{-6}{\num 11}\ (5t a2 \zcharnote{-6}{\num $\sharp $10}\ -(6t a4 )5t a 7 )6t - -% Bar 13 -d2 r4 fs8 f8 -d2 fs -fs2 zd+ d za -d2 # d2 - -% Bar 14 -g4 d8 d8 (~ [ e8 f1 e1 ] [ f1 e1 d1 e1 ] )~ -g4 fn e2 -b2 zd c zg -g2- c2 - -% Bar 15 -f2 r4 fs8 f8 -f2 fs -a2 zc d za -f2 d2 - -% Bar 16 -g4 d8 d8 [ e8 f8 fd8 e1 ] -g4 fn e2 -b2 zd c zg -g2- c2 - -% Bar 17 -f4 f8 g8 a2 -f2 f -a2 zc c za -f2 f4 e8 d8 - -% Bar 18 -cd8 c1 (~ [ b1 a1 g1 f1 ] g2 )~ -e4 ( f f ) e -g2 zc c zg -%%%%%% The two following lines must actually be written in one line! -( c4 \zcharnote{-6}{\num 11}\ c4 ) -\zcharnote{-6}{\num 11}\ c4 \zcharnote{-6}{\num 10}\ c4 - -% Bar 19 -f0 -f0 -a0 zc -f0- - -% Bar 20 -ad2 g8 f8 -f4 ( c c ) bn -a4 g ( f f ) -f4+ e4 ( d4 d ) - -% Bar 21 -e8 d8 e8 f8 g2 -c2 r8+0 e d c -g2 ze rb -( c2 c8 ) c8 b8 a8 - -% Bar 22 -g4 d4 d2 -bnr4 ( c c ) b -g0 zd+ -%%%%%% The two following lines must actually be written in one line! -\zcharnote{-6}{\num $\sharp $10}\ ( g4 \zcharnote{-6}{\num 11}\ g ) -( \zcharnote{-6}{\num 11}\ g4 \zcharnote{-6}{\num $\sharp $10}\ g ) - -% Bar 23 -c0 -e0 -c0 zg -c0 - -% Bar 24 -gd4+ e8 a4 g8 f8 -e2 e4 f -g2 zc c za -c2 a4 f4 - -% Bar 25 -g2 f8 f8 f8 e8 -e2 f -g2 zc c za -c2+ f2- - -% Bar 26 d2 r8 b8+ b a f2 g b2 zd d zb b4 b8 a8 g2 - - -% Bar 27 g8 e8 e8 f8 g4 [ f1 g1 a1 b1 ] g4 f e ( f c2 ze c zg c2 -c4 \zcharnote{-4}{\num 11}\ c4 - -% Bar 28 g0 f2 ) cr4 b g2 zc e zg- %%%%%% The two following -lines must actually be written in one line! \zcharnote{-4}{\num -11}\ (5t c2 (6t \zcharnote{-4}{\num 10}\ c4 )5t c 7 )6t - -% Bar 29 f0 f0+ a0 f0- - -% Bar 30 ad2 g8 f8 f4 ( c c ) bn a4 g ( f f ) f4+ e4 ( d 7 d #6 -) - -% Bar 31 e8 d8 e8 f8 g2 c2 r8+0 e d c g2 ze rb ( c2 c8 ) c8 b8 -a8 - -% Bar 32 gd8 (~ g1 [ f1 e1 d1 c1 ] )~ d2 bnr4 ( c c ) b g0 zd+ -%%%%%% The two following lines must actually be written in one -line! \zcharnote{-6}{\num $\sharp $10}\ ( g4 \zcharnote{-6}{\num -11}\ g ) ( \zcharnote{-6}{\num 11}\ g \zcharnote{-6}{\num -$\sharp $10}\ g ) - -% Bar 33 c0 e0 c0 zg c0 - -% Bar 34 gd4+ e8 a4 g8 f8 e2 e4 f g2 zc c za c2 a4 f4 - -% Bar 35 g2 f8 f8 f8 e8 e2 f g2 zc c za c2+ f2- - -% Bar 36 d2 r8 b8+ b a f2 g b2 zd d zb b4 b8 a g2 - - -% Bar 37 g2 r8 c8 c8 b8 g2 a4 b c2 ze c4 zf d zg c4 c8 b8 a4 6 -g4 - -% Bar 38 a4 b4 ( c2 a2 a f2 c f2 a4 6 b4 - -% Bar 39 [ c8 ) (~ b1 a1 ] [ g1 f1 e1 d1 ] [ e1 d1 c1 d1 ] [ e1 -f1 g1 a1 ] g0 c0 ze c0 - -% Bar 40 [ g1 c1- d1 e1 ] [ f1 g1 a1 b1 ] [ c1 b1 a g1 ] [ a1 g1 -a1 f1 ] e0 c0 zg c0 - -% Bar 41 g0 )~ f2 e \zw N\ ce2d+0+1 b4 %%%%%% The two following -lines must actually be written in one line! \zcharnote{-4}{\num -11}\ (1t c2 (2t \zcharnote{-4}{\num 10}\ c4 )1t c 7 )2t - -% Bar 42 f0 f0 a0 f0- % %----------------% % % end Caccini, -Amor l'ali m'impenna % %----------------% \end{verbatim} -\end{small} \end{center} - -\begin{figure}[!htb] \begin{center} - \includegraphics[scale=.75]{eps/caccini1.eps} - \end{center} \end{figure} \begin{figure}[!htb] - \begin{center} - \includegraphics[scale=.75]{eps/caccini2.eps} - \end{center} \end{figure} \begin{figure}[!htbp] - \begin{center} - \includegraphics[scale=.75]{eps/caccini3.eps} - \end{center} \caption{\textbf{G.\ Caccini}, \emph{Amor - l'ali m'impenna} (generated by {\MTX}/{\PMX})} - \label{fig:caccini} \end{figure} - -\addcontentsline{toc}{chapter}{Index} - -\printindex - -\end{document} - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% End of PMX tutorial by ccn / Mon 2003 Sep 22 /19:15 -/ccn -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%))) |