cdr@thor.stolaf.edu (Craig D. Rice, St. Olaf College) (06/02/89)
In response to many requests for the English translation of mtexinfo.tex (instructions for the mtex - music tex) package, a copy is enclosed below... Please mail any changes and improvements you might make to me - this translation is pretty rough, and there are bound to be improvements that can be made. Enjoy! Craig --- Craig D. Rice Academic Computing Center UNIX Systems Specialist cdr@stolaf.edu St. Olaf College +1 507 663-3631 Northfield, MN 55057 USA ----- CUT HERE ----- % quick translation by Craig Rice, cdr@stolaf.edu; please mail typos, etc. %format plain %\input verbatim %-------------------------------------------------------------------- % macros for verbatim scanning % im wesentlichen dem file MANHDR TEX von DEK entnommen \catcode`@=11 \def\tt{\fam\ttfam\tentt}% \newskip\ttglue \ttglue=.5em plus .25em minus .15em \chardef\other=12 \def\ttverbatim{\begingroup \catcode`\\=\other \catcode`\{=\other \catcode`\}=\other \catcode`\$=\other \catcode`\&=\other \catcode`\#=\other \catcode`\%=\other \catcode`\~=\other \catcode`\_=\other \catcode`\^=\other \catcode`\"=\other \parskip \z@ \obeyspaces \obeylines \tt} \def\begintt{$$\let\par=\endgraf \ttverbatim \catcode`\|=0 \rightskip-5pc \ttfinish} {\catcode`\|=0 |catcode`|\=\other % | is temporary escape character |obeylines % end of line is active |gdef|ttfinish#1^^M#2\endtt{|vbox{#2}|endgroup$$}} \catcode`\|=\active {\obeylines \gdef|{\ttverbatim \spaceskip\ttglue \let^^M=\ \let|=\endgroup}} %\def\ttspace{{\tt\hskip\ttglue}} \def\vrt{\hbox{\tt\char`\|}} % vertical line \def\dn{\hbox{\tt\char'14}} % downward arrow \def\up{\hbox{\tt\char'13}} % upward arrow \def\]{\hbox{\tt\char`\ }} % visible space \catcode`@=12 % at signs are no longer letters \def\verbatimon{\catcode`\|=\active} \def\verbatimoff{\catcode`\|=\other} \verbatimoff %---------------------------------------------- end of verbatim.tex \catcode`\"=12 \def\hex{"} % zum Eingeben von Zahlen in hex \def\3{\char"19{}} \catcode`\"=\active %Umlaute \def"{\accent'177} \newskip \iindent \iindent=30pt \font\bigrm=cmbx12 \font\ninerm=cmr9 \font\music=music16 %\footline={} \headline={\hfill User macros for MTEX TEX} \parindent=0pt % % einige allgemeine Definitionen (nicht alle hier ben"otigt) \def\tex#1{{\it #1\/}} \def\disp#1{{\sl #1\/}} \def\defi#1{{\bf #1}} \def\parh{\par\hang\hangafter0} \def\parn{\par\noindent} \def\ul#1{$\underline{\text{#1}}$} \def\pt{\,{\rm pt}}%nur f"ur mathmode \def\<#1>{\leavevmode\hbox{$\langle$#1\/$\rangle$}} % syntactic quantity \def\bull{\vrule height .9ex width .8ex depth -.1ex } % square bullet \def\hang{\hangindent\iindent} \def\textindent#1{\noindent\hskip\iindent\llap{#1\enspace}\ignorespaces} \def\item{\par\hang\textindent} \def\itemitem{\par\noindent\hskip\iindent\hangindent2\iindent\textindent} \frenchspacing % macros for non-centered displays \outer\def\begindisplay{\obeylines\startdisplay} {\obeylines\gdef\startdisplay#1 {\catcode`\^^M=5$$#1\halign\bgroup\hskip\iindent##\hfil&&\qquad##\hfil\cr}} \outer\def\enddisplay{\crcr\egroup$$} \def\vo{\tt\verbatimon} \def\voff{\tt\verbatimoff} \def\mf{{\rm METAFONT}} %\let\headings\relax % \openup\jot This is a list of the useful control sequences of MTEX phrases. \verbatimon Each piece of music should be built in the following form: \begindisplay Headline\cr |\beginsong|\<Clef>\<Key>\cr {}$\vdots$\cr |\endsong|\cr \enddisplay Information about title, composer or author of the text may be specified in any order in the headline. \begindisplay |\title{...}|\cr |\composer{...}|\cr |\poet{...}|\cr \enddisplay The name of the voice can be specified with |\voice{...}| This will be written above the first line of the staff. The following designations for Clef may be specified: \begindisplay |\vio| && Treble Clef\cr %|\viooct| && oktavierter Violinschl"ussel (nach unten) \cr %|\vioOct| && oktavierter Violinschl"ussel (nach oben) \cr |\bass| && Bass Clef \cr %|\bassoct| && oktavierter Ba\3schl"ussel (nach unten) \cr %|\bassOct| && oktavierter Ba\3schl"ussel (nach oben) \cr C-Clef:\cr |\bariton| && Baritone Clef \cr |\tenor| && Tenor Clef \cr |\alto| && Alto Clef \cr |\mezzosopran| && Mezzo Soprano Clef \cr |\sopran| && Soprano Clef \cr \enddisplay %Test: %\def\viooct{$\mathop{\hbox{\music\mviolin}}\limits^8_8$} %\def\bassoct{$\mathop{\hbox{\music\mbass}}\limits^8_8$} %\viooct %\bassoct The following control sequences can be employed for the various key designations: \begindisplay Major Keys:\cr |\F| && |\C| \cr |\B| && |\G| \cr |\Es| && |\D| \cr |\As| && |\A| \cr |\Des| && |\E| \cr |\Ges| && |\H| \cr |\Ces| && |\Fis| \cr Minor Keys:\cr |\mdis| && |\ma| \cr |\mgis| && |\md| \cr |\mcis| && |\mg| \cr |\mfis| && |\mc| \cr |\mh| && |\mf| \cr |\me| && |\mb| \cr && |\mes| \cr \enddisplay The meter of the piece is given with \begindisplay |\meter{|\<Count of the beats per measure>|}/{|\<measure>|}| \enddisplay The symbols for a measure instruction can also be specified with |\meter|, in that one specifies nothing for the first parameter, for example: |\meter/{\mC}| for {\music \char\hex53}. The music fonts can be specified with the following control sequences. \begindisplay |\music| && Music Sign \cr |\beamfont| && Beam font \cr |\slurfontuu| && Slur font (concave, rising) \cr |\slurfontud| && Slur font (concave, falling) \cr |\slurfontdu| && Slur font (convex, rising) \cr |\slurfontdd| && Slur font (convex, falling) \cr also: \cr |\eightrm| && Eight-point Roman Font for supporting text \cr \enddisplay The names for the \tex{character} in the font |\music| are: \begindisplay Note heads:\cr |\quart| (|\hex21|) && filled in note head\cr |\half| (|\hex22|) && empty note head\cr |\whole| (|\hex23|) && whole note\cr Flags:\cr |\eighthup| (|\hex28|) && Eigth upward \cr |\eighthdown| (|\hex2D|) && Eigth downward \cr |\sixteenthup| (|\hex29|) && Sixteenth upward \cr |\sixteenthdown| (|\hex2E|) && Sixteenth downward \cr |\thirtytwoup| (|\hex2A|) && Thirty-second upward \cr |\thirtytwodown| (|\hex2F|) && Thirty-second downward\cr |\sixtyfourup| (|\hex2B|) && Sixty-fourth upward \cr |\sixtyfourdown| (|\hex30|) && Sixty-fourth downward\cr |\hundredtwentyeightup| (|\hex2C|)&& Hundred-twenty-eigth upward\cr |\hundredtwentyeightdown| (|\hex31|)&& Hundred-twenty-eigth downward\cr Rest: \cr |\wholerest| (|\hex3C|) && Whole \cr |\halfrest| (|\hex3D|) && Half \cr |\quartrest| (|\hex3E|) && Quarter \cr |\eighthrest| (|\hex3F|) && Eighth \cr |\sixteenthrest| (|\hex40|) && Sixteenth \cr Measure rests: \cr |\doublerest| (|\hex3A|) && two measures \cr |\ddoublerest| (|\hex3B|) && four measures \cr Fermates: \cr |\fermateup| (|\hex50|) && Fermate above \cr |\fermatedown| (|\hex51|) && Fermate below \cr Pitch changes: \cr |\mflat| (|\hex32|) && b \cr |\mdoubleflat| (|\hex33|) && double-b \cr |\mquartflat| (|\hex37|) && quarter-b \cr |\mthreequartflat| (|\hex3A|) && three-quarters-b \cr |\msharp| (|\hex34|) && sharp \cr |\mdoublesharp| (|\hex35|) && double-sharp \cr |\mnatural| (|\hex36|) && natural \cr Clef: \cr |\mviolin| (|\hex47|) && Trebel Clef\cr %|\mviolinoct| (|\hex47|) && \cr %|\mviolinOct| (|\hex47|) && \cr |\mbass| (|\hex49|) && Bass Clef \cr %|\mbassoct| (|\hex49|) && \cr %|\mbassOct| (|\hex49|) && \cr |\mbariton| (|\hex4D|) && Baritone Clef \cr |\mtenor| (|\hex4C|) && Tenor Clef \cr |\malt| (|\hex4B|) && Alto Clef \cr |\mmezzosopran| (|\hex4E|) && Mezzosoprano Clef \cr |\msopran| (|\hex4E|) && Soprano Clef \cr Measure instructions: \cr |\mC| (|\hex53|) \cr |\allabreve| (|\hex52|)\cr |\mCreverse| (|\hex54|)\cr \enddisplay Alterable parameters are: \begindisplay |\textline| && interval between text and lowest line of staff\cr |\minsl| && minimal stem-length of note \cr |\overtext| && accompanying text above the staff \cr |\undertext| && accompanying text below the staff \cr \enddisplay Glue parameters for notes: \begindisplay |\NOTEskip| && Glue for whole note \cr |\noteskip| && Glue for half Note \cr |\noteskip| && Glue for 1/4 note \cr |\notEskip| && Glue for 1/8 note \cr |\noTEskip| && Glue for 1/16 note \cr |\nOTEskip| && Glue for 1/32 note \cr |\nOteskip| && Glue for 1/64 note \cr |\nOtEskip| && Glue for 1/128 note \cr |\ruleskip| && Glue for Rules \cr |\hunkskip| && Glue for notes und Rules \cr \enddisplay Following are the currently available glue macros: \begindisplay |\ruleskip = \nhw plus \seminhw minus \seminhw| \cr \cr |\def\hsmall{%hader| \cr |\Noteskip 3\nhw plus 2\seminhw minus 2\seminhw| \cr |\NOTEskip = \Noteskip| \cr |\noteskip 2\nhw plus 1.5\seminhw minus 1.5\seminhw| \cr |\notEskip 1\nhw plus \seminhw minus \seminhw| \cr |\noTEskip \z@ plus 0.5\seminhw minus \z@| \cr |\nOTEskip=\noTEskip \nOteskip=\noTEskip \nOtEskip=\noTEskip| \cr |\hunkskip \z@\relax}| \cr \cr |\def\small{%| \cr |\Noteskip 3.5\nhw plus 1.8\seminhw minus 1.8\seminhw| \cr |\NOTEskip = \Noteskip| \cr |\noteskip 2.5\nhw plus 1.4\seminhw minus 1.4\seminhw| \cr |\notEskip 1.5\nhw plus \seminhw minus \seminhw| \cr |\noTEskip \seminhw plus 0.6\seminhw minus 0.6\seminhw| \cr |\nOTEskip=\noTEskip \nOteskip=\noTEskip \nOtEskip=\noTEskip| \cr |\hunkskip \z@ \relax}| \cr \cr |\def\universal{%| \cr |\Noteskip 4\nhw plus 1.6\nhw minus 1.6\nhw| \cr |\NOTEskip = \Noteskip| \cr |\noteskip 3\nhw plus 1.3\nhw minus 1.3\nhw| \cr |\notEskip 2\nhw plus \nhw minus \nhw| \cr |\noTEskip \nhw plus 0.6\nhw minus 0.6\nhw| \cr |\nOTEskip=\noTEskip \nOteskip=\noTEskip \nOtEskip=\noTEskip| \cr |\hunkskip \z@ \relax}| \cr \cr |\def\wide{%| \cr |\Noteskip 4\nhw plus 1.42\nhw minus 1.42\nhw| \cr |\NOTEskip = \Noteskip| \cr |\noteskip 3.5\nhw plus 1.28\nhw minus 1.28\nhw| \cr |\notEskip 2.5\nhw plus \nhw minus \nhw| \cr |\noTEskip 1.5\nhw plus 0.9\nhw minus 0.9\nhw| \cr |\nOTEskip=\noTEskip \nOteskip=\noTEskip \nOtEskip=\noTEskip| \cr |\hunkskip \z@ \relax}| \cr \cr |\def\loose{%| \cr |\Noteskip 5\nhw plus 1.5\nhw minus 1.5\nhw| \cr |\NOTEskip = \Noteskip| \cr |\noteskip 4\nhw plus 1.25\nhw minus 1.25\nhw| \cr |\notEskip 3\nhw plus \nhw minus \nhw| \cr |\noTEskip 2\nhw plus 0.75\nhw minus 0.75\nhw| \cr |\nOTEskip=\noTEskip \nOteskip=\noTEskip \nOtEskip=\noTEskip| \cr |\hunkskip \z@\relax}| \cr \enddisplay Baselineskip-Macros: \begindisplay |\baselinesa| && for one-line examples\cr |\baselinesb| && for pieces of music\cr \enddisplay Default is: |\let\baselines = \baselinesb| \bigskip \goodbreak Macros for the entering of notes: Next the notes and rests and pitch changes: \begindisplay Names of notes:\cr |\g{|\<internal pitch>|}| && Whole Note \cr |\h{|\<internal pitch>|}| && Half Note \cr |\v{|\<internal pitch>|}| && Quarter Note \cr |\a{|\<internal pitch>|}| && Eighth Note \cr |\s{|\<internal pitch>|}| && Sixteenth Note \cr |\z{|\<internal pitch>|}| && Thirty-second Note \cr |\d{|\<internal pitch>|}| && Sixty-fourth Note \cr |\o{|\<internal pitch>|}| && Hundred-twenty-eighth Note \cr Pitch changes:\cr |\x{|\<internal pitch>|}| && Sharp \cr |\xx{|\<internal pitch>|}| && Double sharp \cr |\n{|\<internal pitch>|}| && Natural\cr |\b{|\<internal pitch>|}| && Flat \cr |\bb{|\<internal pitch>|}| && Double Flat \cr Pitch changes in accidentals:\cr |\b@{|\<internal pitch>|}| && Flat \cr |\x@{|\<internal pitch>|}| && Sharp \cr |\n@{|\<internal pitch>|}| && Natural \cr \enddisplay Rests kept as internal pitch |\pitch=5| for placement of the dots in the third interval: \begindisplay |\pg| && Whole Rest \cr |\dpd| && Two measure Rest \cr |\dpg| && Drei measure Rest \cr |\dpdd| && Vier measure Rest \cr |\ph| && Half Rest \cr |\pv| && Quarter Rest \cr |\pa| && Eigth Rest \cr |\ps| && Sixteenth Rest \cr |\pz| && Thirty-second Rest \cr |\pd| && Sixty-fourth Rest \cr |\po| && Hundred-twenty-eighth Rest \cr Worth of dots: \cr |\.{|\<Count of the dot>|}| \cr Bars:\cr |\|\vrt && normal bar\cr |\=| && close bar\cr |\doublebarline| && double bar \cr |\rightrepeat| && repeat mark - rechts :\vrt\vrt \cr |\leftrepeat| && repeat mark - links \vrt\vrt: \cr |\leftrightrepeat| && double repeat mark :\vrt\vrt: \cr Macro for orientation marks:\cr |\boxed{|\<Number or Letter>|}| \cr Boxes: \cr |\1|\<first time>|\2|\<repetition>|\*|\cr Breathing marks:\cr |\caesura|\cr Accent marks:\cr |\noaccent| && eliminate accent\cr |\stac| && staccato \cr |\dec| && small $>$ on note-head \cr |\staccatissimo| && staccatissimo mark \cr |\tr| && Trill {\it tr} \cr |\trbrack| && Trill in parentheses ({\it tr}) \cr |\tenuto| && Tenuto\cr |\plus| && Trill $+$ \cr |\cresc{|\<Noten>|}| && Crescendo mark $<$ above notes\cr |\decresc{|\<Noten>|}| && Decrescendo mark $>$ above note\cr Abbreviations for accents:\cr |\cantusfirmus| && {\it c.f.} \cr |\crescendo| && {\it cresc.} \cr |\dacapo| && {\it d.c.} \cr |\dalsegno| && {\it d.s.} \cr |\decrescendo| && {\it decresc.} \cr |\diminuendo| && {\it dim.} \cr |\fine| && {\it fine} \cr |\forte| && {\it f} \cr |\fortissimo| && {\it ff} \cr |\fortissimoposs| && {\it fff} \cr |\fortepiano| && {\it fp} \cr |\forzato| && {\it fz} \cr |\mezzoforte| && {\it mf} \cr |\mezzopiano| && {\it mp} \cr |\piano| && {\it p} \cr |\pianissimo| && {\it pp} \cr |\pianissimoposs| && {\it ppp} \cr |\rallentando| && {\it rall.} \cr |\rinforzando| && {\it rfz.} \cr |\ritardando| && {\it rit.} \cr |\ritenuto| && {\it riten.} \cr |\sforzato| && {\it sfz} \cr |\sforz| && {\it sf} \cr |\staccato| && {\it stacc.} \cr |\tacet| && {\it tacet} \cr |\unisono| && {\it unis.} \cr \enddisplay \goodbreak Beam-groups and bows should be specified as follows: The groups of notes should be given in the form \begindisplay |\group{|\<Element list>|}{|\<pitch list>|}|\cr \enddisplay The element list must look be composed as follows:\begindisplay |\\{|\<Note1>|}|$\ldots$|\\{|\<NoteN>|}| \enddisplay The pitch list must be composed similarly, only instead of specifying the note that is the $i$-th element in the note list one should specify the internal pitch. \begindisplay |\ubeam{|\<beam-begin-number>|}{|\<beam-end-number>|}| && Beams on upward climbing notes \cr |\lbeam{|\<beam-begin-number>|}{|\<beam-end-number>|}| && Beams on downward falling notes \cr |\ubeam{|\<bow-begin-number>|}{|\<bow-end-number>|}| && Bow above the group of notes \cr |\lbeam{|\<bow-begin-number>|}{|\<bow-end-number>|}| && Bow under the group of notes \cr \enddisplay These macros can be called as often as you like. It must be closed with the macro |\go|. The beams will be placed according to their respective |\beamlist|. These contain information about the accompanying beam of a part of a group of notes. The building of |\beamlist| is a little more complicated, but in the thesis paper described in detail. Default is \begindisplay |\def\beamlist{\\{\the\n@a-\the\n@e,}}| \enddisplay where |\n@a| is the first element of the beam-group, and |\n@e| the last. One element of a |\beamlist| describes eine row of beams, that is, the default will be used when only the eigth-beam can be placed. Also worth mention is the two-voice composition and the accompanying test. Notes can be notated above each other with |\two{|\<Note(n) above>|}{|\<Noten(n) below>|}| To specify the text, one should use: \begindisplay |\^|$\lbrack$\<Positioning mark>$\rbrack$% |{|\<text>|}{|\<Note>|}|\cr |\_|$\lbrack$\<Positioning mark>$\rbrack$% |{|\<text>|}{|\<Note>|}| \enddisplay As positioning marks one can use |n| (width of text will not be considered), |c| (text will be centered over the note), |l| (text will be left-justified over the note with consideration to the width) oder |r| (text will be right-justified over the note with consideration to the width). In the case of supporting text there is a further positioning mark: |v|. In this case the text will be positioned variably directly under the note and not on the writing line. If no positioning mark is specified, the sign willl be automatically positioned. With the application of chords, it must be next decided if the stem of the note should point upwards or downwards, that is, should appear to the right or to the left. The correct application is achieved with: \begindisplay |\rchord|\<Noten>|\endchord|\cr |\lchord|\<Noten>|\endchord| \enddisplay The notes should be given in order from top to bottom. \bigskip Closing comments:\hfill \break \hang One notices that no unnecessary empty spaces will be displayed (observe rules for control sequences!). Therefore every line should be ended with a comment mark. (\%). \end