summaryrefslogtreecommitdiff
path: root/macros/musixtex/doc/musixdoc/extracting.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/musixtex/doc/musixdoc/extracting.tex')
-rw-r--r--macros/musixtex/doc/musixdoc/extracting.tex101
1 files changed, 101 insertions, 0 deletions
diff --git a/macros/musixtex/doc/musixdoc/extracting.tex b/macros/musixtex/doc/musixdoc/extracting.tex
new file mode 100644
index 0000000000..2039733fd0
--- /dev/null
+++ b/macros/musixtex/doc/musixdoc/extracting.tex
@@ -0,0 +1,101 @@
+\chapter{Extracting Parts from a Multi-Instrument Score}\label{parts}
+From the typesetting viewpoint, the major characteristic of orchestral and
+chamber music is that the scores not only have several instruments, but
+variants of the same basic score are needed in which one of the instruments is
+highlighted while some others are typeset in smaller notes or are
+omitted.
+Of course, it must be possible to permute the highlighted instruments and
+the small-type instruments or
+omitted instruments, depending on the instrument to which the
+version of the score is dedicated.
+
+The following is the most general approach to part extraction when
+using \musixtex\ without \textbf{PMX} or \textbf{M-Tx} pre-processors. A
+simpler approach which will work for most purposes is described in Section~\ref{musixtnt}.
+
+\section{Coding rules}\label{CodingRules}
+ To make a ``selectable'' orchestral score you must prepare the master score
+(i.e., the score with all instruments typed) as follows:
+
+ \begin{enumerate}
+ \item Avoid referring to instrument numbers with roman
+numerals. For example use \verb|\setclefs|~$n$ instead of
+\verb|\cleftoksiii=| .
+ \item Introduce symbolic names for the instruments; for example, define:
+ \begin{verbatim}
+ \def\Piano{1}%
+ \def\Flute{2}%
+ \def\Oboe{3}%
+ \def\Soprano{4}%
+ \end{verbatim}
+and code, for example
+ \smallskip
+
+ \verb|\setstaffs\Piano2| rather than \verb|\setstaffs12|.
+
+ \item If, initially, the Piano is the instrument number 1, replace all
+\verb|\notes|, \verb|\Notes|, \verb|\NOtes|, etc., with
+\verb|\notes\selectinstrument\Piano|, \verb|\Notes\selectinstrument\Piano|,
+\verb|\NOtes\selectinstrument\Piano|, etc.
+
+ \item Instead of using \verb|&| or \verb|\nextinstrument| to move to
+instrument $n+1$, use \verb|\selectinstrument\Flute| and similar instead.
+ \end{enumerate}
+For example,
+\begin{verbatim}
+ \Notes\selectinstrument\Piano ... | ...
+ \selectinstrument\Flute ...
+ \selectinstrument\Oboe ...
+ \selectinstrument\Soprano ... \en
+\end{verbatim}
+With this coding, difficult things such as putting the Flute above the Oboe
+are done easily: just say \verb|\def\Flute{3}| and \verb|\def\Oboe{2}|.
+
+ \section{Selecting, hiding or putting instruments in the background}
+
+ To put, for example, the Flute and the Oboe in the background, i.e., typesetting
+them in small notes, state at the beginning:
+ \begin{quote}
+ \verb|\setsize\Flute\tinyvalue\setsize\Oboe\tinyvalue|
+ \end{quote}
+where the value \keyindex{tinyvalue} for \keyindex{setsize} corresponds to notes and staffs
+of size \keyindex{tinynotesize}.
+ If, instead of putting an instrument in the background, one wants to omit it,
+this is done by:
+ \begin{quote}
+ \verb|\setstaffs\Flute{0}\setstaffs\Oboe{0}|
+ \end{quote}
+since nothing is typeset for
+instruments having \emph{zero} staffs (not to be confused with one-line staffs such
+as percussions).
+
+ \section{Recommendations}
+ \begin{itemize}
+ \item When hiding instruments, reduce
+\keyindex{instrumentnumber} by the number of hidden instruments; otherwise
+bars and leading braces will enclose the position of these dummy arguments,
+which would be ugly.
+
+ \item Exchange the actual instrument numbers so that hidden instruments have
+numbers \emph{greater} than the value of \verb|\instrumentnumber|.
+ Hidden instruments with numbers
+less than \verb|\instrumentnumber| will cause an excess of vertical
+space at their phantom positions; this is not
+recommended.
+
+ \item In hidden instruments, rests no longer behave like \verb|\hbox{...}| and
+\verb|raise|-ing them will result in an error.
+
+ \item In hidden instruments, explicit \verb|\hbox|es will remain as empty
+boxes, thus causing abnormal vertical spacings between instruments. Therefore,
+anything suspect should be made conditional with:
+
+\begin{quote}
+\keyindex{ifactiveinstrument}\ \textit{code to be omitted if instrument is hidden}\ \verb|\fi|
+\end{quote}
+Most \musixtex{} commands become properly hidden if requested. But
+problematic
+parts of code can nonetheless be protected with \verb|\ifactiveinstrument|.
+
+ \end{itemize}
+