diff options
author | Karl Berry <karl@freefriends.org> | 2010-10-31 23:59:08 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2010-10-31 23:59:08 +0000 |
commit | f4500709457661ea04dfb225ac2a311bb5f9941c (patch) | |
tree | 0dec5afc16c92acbe51fab22574fa71a37519d42 /Master/texmf-dist/tex/generic/musixtex/musixtex.tex | |
parent | 6028598eadf5dc99c7cc0eac3327563363caf852 (diff) |
musixtex (30oct10)
git-svn-id: svn://tug.org/texlive/trunk@20275 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/generic/musixtex/musixtex.tex')
-rw-r--r-- | Master/texmf-dist/tex/generic/musixtex/musixtex.tex | 474 |
1 files changed, 348 insertions, 126 deletions
diff --git a/Master/texmf-dist/tex/generic/musixtex/musixtex.tex b/Master/texmf-dist/tex/generic/musixtex/musixtex.tex index fc6c4fa3253..618711cfa53 100644 --- a/Master/texmf-dist/tex/generic/musixtex/musixtex.tex +++ b/Master/texmf-dist/tex/generic/musixtex/musixtex.tex @@ -16,6 +16,19 @@ % the Free Software Foundation, Inc., 59 Temple Place - Suite 330, % Boston, MA 02111-1307, USA. % +% New in this version +% macros: \lwp \lwpp \rwp \rwpp \lhp \rhp \lhpp \rhpp +% +% Correction of signature spacing at change of the music size (l.1428-35)rev2 +% +% Correction of a bug in the definition of choir bracket (l.1690-1700) +% +% Correction of a bug in the macro \rul@sep (l. 2259)(l.2273) +% +% \cclp, \zccup, \zcclp from musixpoi.tex (l.3254)rev3 typo correction +% +% Correction of a historical bug of stem length (l.4460) +% \ifx\undefined\startpiece \else \endinput \fi \edef\catcodeat{\the\catcode`\@}\catcode`\@=11 @@ -23,8 +36,8 @@ \ifx\makeatother\undefined\def\makeatother{\catcode`\@=12\relax}\fi \def\mufl@x{0.83}% -\def\mxversion{T.103} -\def\mxdate{8 July 2001} +\def\mxversion{T.114} +\def\mxdate{1 Feb 2009} % T.114-rev.4 \immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}% \everyjob{\immediate\write16{MusiXTeX(c) \mxversion\space<\mxdate>}}% @@ -188,6 +201,8 @@ \newdimen\i@nv \newdimen\i@nvi +\def\i@n{\z@} % safety in case of.... + % positions x et z de debut des poutres \newdimen\b@xi \newdimen\b@zi @@ -197,19 +212,19 @@ \newdimen\b@xv \newdimen\b@zv \newdimen\b@xvi \newdimen\b@zvi -\newdimen\c@xi \newdimen\c@zi -\newdimen\c@xii \newdimen\c@zii -\newdimen\c@xiii\newdimen\c@ziii -\newdimen\c@xiv \newdimen\c@ziv -\newdimen\c@xv \newdimen\c@zv -\newdimen\c@xvi \newdimen\c@zvi +\newdimen\c@xi \newskip\c@zi +\newdimen\c@xii \newskip\c@zii +\newdimen\c@xiii\newskip\c@ziii +\newdimen\c@xiv \newskip\c@ziv +\newdimen\c@xv \newskip\c@zv +\newdimen\c@xvi \newskip\c@zvi -\newdimen\d@xi \newdimen\d@zi -\newdimen\d@xii \newdimen\d@zii -\newdimen\d@xiii\newdimen\d@ziii -\newdimen\d@xiv \newdimen\d@ziv -\newdimen\d@xv \newdimen\d@zv -\newdimen\d@xvi \newdimen\d@zvi +\newdimen\d@xi \newskip\d@zi +\newdimen\d@xii \newskip\d@zii +\newdimen\d@xiii\newskip\d@ziii +\newdimen\d@xiv \newskip\d@ziv +\newdimen\d@xv \newskip\d@zv +\newdimen\d@xvi \newskip\d@zvi \newdimen\e@xi \newskip\e@zi \newdimen\e@xii \newskip\e@zii @@ -218,6 +233,13 @@ \newdimen\e@xv \newskip\e@zv \newdimen\e@xvi \newskip\e@zvi +\newdimen\f@xi \newskip\f@zi +\newdimen\f@xii \newskip\f@zii +\newdimen\f@xiii\newskip\f@ziii +\newdimen\f@xiv \newskip\f@ziv +\newdimen\f@xv \newskip\f@zv +\newdimen\f@xvi \newskip\f@zvi + % pentes des poutres ( entier de -9 a +9 ) % multiplicite des poutres ( de -5 a +5 . 0= inactive ) @@ -301,11 +323,14 @@ % Find current font prefix (cm, dc, ec) %% \def\@onetoks#1#2+{#1} +\def\@secondtoks#1#2#3+{#2} \def\@twotoks#1#2#3+{#1#2} \def\@svntoks#1#2#3#4#5#6#7#8+{#7} \rm \edef\fontid{\expandafter\@twotoks\fontname\the\font+} +\edef\DynFontId{\fontid} \edef\fontfid{\expandafter\@onetoks\fontname\the\font+} +\edef\fontsid{\expandafter\@secondtoks\fontname\the\font+} % % Find out whether \rm font name of the form dcr1000 , i.e. with a digit at % 7th position @@ -329,6 +354,13 @@ \longECfontnamestrue \longDCfontnamesfalse \fi + \if\fontfid r + \if\fontsid x + \longECfontnamestrue + \longDCfontnamesfalse + \def\DynFontId{cm} + \fi + \fi \fi %% @@ -418,53 +450,78 @@ %% % Large fonts for titles: boldface only. %% - +\ifx\bigfont\undefined \iflongDCfontnames \font\bigfont=\fontid bx1440 % 14pt, formerly \moyen. -\font\Bigfont=\fontid bx1728 % 17pt, formerly \gros. -\font\BIgfont=\fontid bx2074 % 20pt, formerly \gros. -\font\BIGfont=\fontid bx2488 % 25pt, formerly \enorme. \else\iflongECfontnames \font\bigfont=\fontid bx1440 % 14pt, formerly \moyen. -\font\Bigfont=\fontid bx1728 % 17pt, formerly \gros. -\font\BIgfont=\fontid bx2074 % 20pt, formerly \gros. -\font\BIGfont=\fontid bx2488 % 25pt, formerly \enorme. \else \font\bigfont=\fontid bx12 scaled \magstep1 % 14pt, formerly \moyen. +\fi +\fi +\fi + +\ifx\Bigfont\undefined +\iflongDCfontnames +\font\Bigfont=\fontid bx1728 % 17pt, formerly \gros. +\else\iflongECfontnames +\font\Bigfont=\fontid bx1728 % 17pt, formerly \gros. +\else \font\Bigfont=\fontid bx12 scaled \magstep2 % 17pt, formerly \gros. +\fi +\fi +\fi + +\ifx\BIgfont\undefined +\iflongDCfontnames +\font\BIgfont=\fontid bx2074 % 20pt, formerly \gros. +\else\iflongECfontnames +\font\BIgfont=\fontid bx2074 % 20pt, formerly \gros. +\else \font\BIgfont=\fontid bx12 scaled \magstep3 % 20pt. +\fi +\fi +\fi + +\ifx\BIGfont\undefined +\iflongDCfontnames +\font\BIGfont=\fontid bx2488 % 25pt, formerly \enorme. +\else\iflongECfontnames +\font\BIGfont=\fontid bx2488 % 25pt, formerly \enorme. +\else \font\BIGfont=\fontid bx12 scaled \magstep4 % 25pt, formerly \emorme. \fi \fi +\fi %% % Bold italic fonts for dynamic markings. %% \iflongDCfontnames -\font\ppffsixteen=\fontid bi1000 -\font\ppfftwenty=\fontid bi1200 -\font\ppfftwentyfour=\fontid bi1440 -\font\ppfftwentynine=\fontid bi1728 -\font\smallppff=\fontid bi1000 -\font\normppff=\fontid bi1200 -\font\medppff=\fontid bi1440 +\font\ppffsixteen=\DynFontId bi1000 +\font\ppfftwenty=\DynFontId bi1200 +\font\ppfftwentyfour=\DynFontId bi1440 +\font\ppfftwentynine=\DynFontId bi1728 +\font\smallppff=\DynFontId bi1000 +\font\normppff=\DynFontId bi1200 +\font\medppff=\DynFontId bi1440 \else\iflongECfontnames -\font\ppffsixteen=\fontid bi1000 -\font\ppfftwenty=\fontid bi1200 -\font\ppfftwentyfour=\fontid bi1440 -\font\ppfftwentynine=\fontid bi1728 -\font\smallppff=\fontid bi1000 -\font\normppff=\fontid bi1200 -\font\medppff=\fontid bi1440 +\font\ppffsixteen=\DynFontId bi1000 +\font\ppfftwenty=\DynFontId bi1200 +\font\ppfftwentyfour=\DynFontId bi1440 +\font\ppfftwentynine=\DynFontId bi1728 +\font\smallppff=\DynFontId bi1000 +\font\normppff=\DynFontId bi1200 +\font\medppff=\DynFontId bi1440 \else -\font\ppffsixteen=\fontid bxti10 -\font\ppfftwenty=\fontid bxti10 scaled \magstep1 -\font\ppfftwentyfour=\fontid bxti10 scaled \magstep2 -\font\ppfftwentynine=\fontid bxti10 scaled \magstep3 -\font\smallppff=\fontid bxti10 -\font\normppff=\fontid bxti10 scaled \magstep1 -\font\medppff=\fontid bxti10 scaled \magstep2 +\font\ppffsixteen=\DynFontId bxti10 +\font\ppfftwenty=\DynFontId bxti10 scaled \magstep1 +\font\ppfftwentyfour=\DynFontId bxti10 scaled \magstep2 +\font\ppfftwentynine=\DynFontId bxti10 scaled \magstep3 +\font\smallppff=\DynFontId bxti10 +\font\normppff=\DynFontId bxti10 scaled \magstep1 +\font\medppff=\DynFontId bxti10 scaled \magstep2 \fi \fi @@ -736,7 +793,7 @@ % #1 start pitch #2 end pitch #3 length #4 right hoffset \newcount \meet@minus@n@iv -\def\writ@slur#1#2#3#4{% modified: sld... into slurd... 12.04.95 ick +\def\writ@slur#1#2#3#4{\check@staff % modified: sld... into slurd... 12.04.95 ick \let\slz\slurz% inserted \let\slzd\slurzd% inserted for dotted slurs +ickd \ifx\s@N\undefined \relax % \let\internote\Internote @@ -807,9 +864,9 @@ \def\@slope{z}\n@i\z@ \else \ifnum\n@ii<\n@i % Slope is negative - \C@csl\n@i\n@ii\def\@slope{d}% + \C@csl\n@i\n@ii\def\@slope{d}% % compute @meet height for slurs \else % Slope is positive - \C@csl\n@ii\n@i\def\@slope{u}\n@i\n@ii + \C@csl\n@ii\n@i\def\@slope{u}\n@i\n@ii % compute @meet height for slurs \fi \fi %% @@ -839,11 +896,13 @@ % setup meet height of slur % \ifx\empty\@meet +% \immediate\write16{\noexpand\@meet was empty.}% \else \n@iii\n@iv \advance\n@iii\@meet \fi \edef\@meet{\the\n@iii}% +% \immediate\write16{\noexpand\@meet = \@meet.}% % % allow a little bit overlap (2*2pt) for nicer outlook (as longer as nicer) % clip to extremities @@ -1008,7 +1067,8 @@ \llap{\raise\y@i\hbox\@to\y@ii{% %-ickd \hss\csname sl\@slope\endcsname\char\n@v\hss}\kern#4}% \hss\csname sl\@slope\@dotted\endcsname\char\n@v\hss}\kern#4}% - \fi} + \fi +\fi} % end writ@slur \def\sp@pt#1{\divide\n@v65536\divide\n@v#1} @@ -1080,13 +1140,20 @@ % #2 (length)slope left #3 (length)slope right \def\curve#1#2#3{\getcurpos % ignore \curve behind a linebreak - \ifdim\y@v>\@xxxii\p@ \xdef\@meet{#1}\edef\l@length{#2}\edef\r@length{#3}\fi} + \ifdim\y@v>\@xxxii\p@ \xdef\@meet{#1}\edef\l@length{#2}\edef\r@length{#3}\relax + \else +% \message{\noexpand\curve #1#2#3 not expanded}% + \fi} % raise (or lower) only the mid of slur % #1 final height [number, steps of internote, relativ to beginning! note] %! #1 can still be changed to work relativ from default height ??? -\def\midslur#1{\getcurpos\ifdim\y@v>\@xxxii\p@ \xdef\@meet{#1}\fi} +\def\midslur#1{\getcurpos + \ifdim\y@v>\@xxxii\p@ \xdef\@meet{#1}\relax + \else +% \message{\noexpand\midslur #1 not expanded}% + \fi} \let\@meet\empty \let\l@length\empty @@ -1121,6 +1188,11 @@ \def\ibslurd{\y@i\stemfactor\interbeam \advance\y@i\h@lf\internote \y@i-\y@i \i@slur0\y@i d} +% initiate slur at half note width but NO vertical offset (for linkings) + +\def\ihsluru{\i@slur\h@lf\z@ u}% +\def\ihslurd{\i@slur\h@lf\z@ d}% + \let\itieu\issluru \let\itied\isslurd \def\istieu{\i@slur{1\p@ne}{\qu@rt\internote}u}% shorter for accords @@ -1132,11 +1204,12 @@ \def\dotted{\let\dott@d\@ne}\let\dott@d\empty %+ickd -% #1 hoffset #2 voffset #3 sense (u,d) #4 reference number #5 start note - \def\@mis{missing } +% #1 hoffset #2 voffset #3 sense (u,d) #4 reference number #5 start note + \def\i@slur#1#2#3#4#5{% + \check@staff \global\advance\N@s\@ne % update slurcounter \s@l@ctslur#4\relax % test for already invoked \islur @@ -1151,7 +1224,8 @@ \global\s@a\altportee % store altportee of current slur \getcurpos \advance\y@v#1\qn@width - \global\s@x\y@v}% start hpos (current pos including hoffset) + \global\s@x\y@v + \fi}% start hpos (current pos including hoffset) % terminate slur #1 reference number #2 end note % the various types only influence the horizontal offset, if you want to @@ -1164,8 +1238,11 @@ \def\tbsluru{\t@slur1} \def\tbslurd{\t@slur0} -\def\ttie#1{\let\T@i\@c \t@slur{-\p@ne}#1\@ne} -\def\tleg#1{\let\T@i\@c \tslur #1\@ne} +% \def\ttie#1{\let\T@i\@c \t@slur{-\p@ne}#1\@ne} +% \def\tleg#1{\let\T@i\@c \tslur #1\@ne} +% #1 should be braced... by David Alsop on January 11, 2009 +\def\ttie#1{\let\T@i\@c \t@slur{-\p@ne}{#1}\@ne} +\def\tleg#1{\let\T@i\@c \tslur{#1}\@ne} \let\tten\ttie \let\Tten\ttie \let\Tleg\tleg @@ -1177,6 +1254,7 @@ % #1 hoffset #2 reference number #3 end note \def\t@slur#1#2#3{% + \check@staff \s@l@ctslur#2\relax \y@iv#1\qn@width \def\@sense{\the\s@s}% @@ -1202,17 +1280,28 @@ \writ@slur\s@y\n@i\y@v{-\y@iv}% % reset sense of slur \global\s@s{x}\let\T@i\empty - \global\advance\N@s\m@ne}% update slur counter + \global\advance\N@s\m@ne + \fi}% update slur counter % this command is made to terminate the slur #1 exactly on the note pitch #2 \def\Tslurbreak#1#2{\s@l@ctslur#1\relax \def\@sense{\the\s@s}% {\if d\@sense \advance\transpose 2\raise0.2\Interligne\hbox{\tslur{#1}{#2}}\relax \else \advance\transpose -2\raise-0.2\Interligne\hbox{\tslur{#1}{#2}}\relax - \fi}} + \fi + }% +\global\let\@meet\empty +\let\l@length\empty +\let\r@length\empty +\let\@invert\empty +} + \def\Islurubreak#1#2{{\advance\transpose -1\isluru{#1}{#2}}} \def\Islurdbreak#1#2{{\advance\transpose 1\islurd{#1}{#2}}} +\def\TslurbreakNextBar#1#2{\off{\beforeruleskip}\hloff{\Tslurbreak{#1}{#2}}\off{-\beforeruleskip}} +\def\IslurubreakPrevBar#1#2{\off{-\afterruleskip}\hloff{\Islurubreak{#1}{#2}}\off{\afterruleskip}} +\def\IslurdbreakPrevBar#1#2{\off{-\afterruleskip}\hloff{\Islurdbreak{#1}{#2}}\off{\afterruleskip}} \def\y@eol{\y@\line@width \advance\y@-\sign@skip \advance\y@-\clef@skip \advance\y@-\s@indent} @@ -1224,7 +1313,7 @@ % #1 start pitch #2 final pitch #3 sense(u,d) #4 length[noteskip] -\def\C@slur#1#2#3#4{% +\def\C@slur#1#2#3#4{\check@staff \inhgetn@i#1\relax \n@ii\n@i \inhgetn@i#2\relax \relax \ifx\dott@d\empty \gdef\@dotted{}\else\gdef\@dotted{d}\fi %+ickd @@ -1237,7 +1326,8 @@ \advance\y@v\y@iii \kern\y@iv \writ@slur\n@ii\n@i\y@v\z@ - \kernm\y@iv} + \kernm\y@iv + \fi} \def\sslur{% \let\s@N\undefined % do not store instrument number @@ -1338,13 +1428,13 @@ %%% \def\normalmusicsize{\musicsize\tw@nty \comput@specifics - \afterruleskip\@ight\p@ \elemskip\fontdimen\si@\musicnorfont} + \afterruleskip\@ight\p@ \elemskip\fontdimen\si@\musicnorfont \clef@skip\z@} \def\smallmusicsize{\musicsize\sixt@@n \comput@specifics - \afterruleskip\si@\p@ \elemskip\fontdimen\si@\musicnorfont} + \afterruleskip\si@\p@ \elemskip\fontdimen\si@\musicnorfont \clef@skip\z@} \def\largemusicsize{\musicsize\@xxiv \comput@specifics - \afterruleskip\t@n\p@ \elemskip\fontdimen\si@\musicnorfont} + \afterruleskip\t@n\p@ \elemskip\fontdimen\si@\musicnorfont \clef@skip\z@} \def\Largemusicsize{\musicsize\@xxix \comput@specifics - \afterruleskip\t@n\p@ \elemskip\fontdimen\si@\musicnorfont} + \afterruleskip\t@n\p@ \elemskip\fontdimen\si@\musicnorfont \clef@skip\z@} \def\comput@fonts{% \ifnum\musicsize=\sixt@@n @@ -1615,10 +1705,11 @@ \g@loop \ifnum\uppersonginstrum<\lowersonginstrum \else + \noinstrum@nt\uppersonginstrum\s@l@ctinstr\C@Inter \global\advance\g@h-\stem@skip \global\advance\g@h-\g@b \global\advance\g@h\Interligne \global\advance\g@b-\Internote \raise\g@b\llap{\uplap{\offinterlineskip - \hbox{\musixfont\fourt@@n}\hbox{\vrule\@height\g@h + \set@normalnotesize\hbox{\musixfont\fourt@@n}\hbox{\vrule\@height\g@h \@width\internote}\hbox{\musixfont\fiv@t@@n}}\kern\internote}% \fi \repeat @@ -2182,7 +2273,7 @@ \def\rul@full#1{\hbox{\raise\altplancher\rlap{\vrule\@depth\hlthick \@height\systemheight\@width#1}}\addspace#1} -\def\rul@sep#1{\n@loop +\def\rul@sep#1{\noport@@\z@\n@loop \edef\rul@hidden{\csname h@bl\romannumeral\noinstrum@nt\endcsname}% \Comp@High\hbox{\raise\altitude\rlap{% % \message{(tw@=\meaning\tw@\space thr@@=\meaning\thr@@\space \number\noinstrum@nt->}\expandafter\show\rul@hidden @@ -2576,10 +2667,15 @@ \expandafter\edef\csname instrument\romannumeral\n@v\endcsname{#2}} \def\writ@names{\n@loop + \setbox\toks@box\null\relax + \ifnum\st@ffs>0\relax \setbox\toks@box\llap{\vbox{\hbox\@to\parindent{% \hss\csname instrument\romannumeral\noinstrum@nt\endcsname\hss}}\ \ }% + \fi \altportee\altitude \Comp@High \advance\y@v-\ht\toks@box - \advance\altportee\h@lf\y@v \writ@box \repeat} + \advance\altportee\h@lf\y@v + \writ@box + \repeat} %%% @@ -2592,8 +2688,26 @@ \newdimen\elemskip \newdimen\@l@mskip +\def\check@staff{% + \ifnum\noport@@>\st@ffs\relax + \ifx\Post@Elims\undefined\else + \immediate\write16{check@staff\space inst=\the\noinstrum@nt\space + staff=\the\noport@@\space st@ffs=\the\st@ffs\space Elim.}\relax + \fi + \ifnum\st@ffs>0\relax + \errmessage{Staff number (\the\noport@@) out of specified range (\the\st@ffs)!}\fi + \else\relax} +%\def\check@staff{\iftrue\relax} + +\let\ifactiveinstrument\check@staff + \def\nextstaff{\@ndstaff\beginstaff} \def\nextinstrument{\@ndstaff\begininstrument} +\def\prevstaff{\@ndstaff\advance\noport@@-2\relax\beginstaff} +\def\selectstaff#1{\@ndstaff\noport@@#1\relax + \advance\noport@@ -1\relax\beginstaff} +\def\selectinstrument#1{\@ndstaff\noinstrum@nt#1\relax + \advance\noinstrum@nt -1\relax\begininstrument} \def\begininstrument{\advance\noinstrum@nt\@ne \s@l@ctinstr \ifdim\internote<\p@seven6\Internote \set@tinynotesize \comput@sizes @@ -2848,7 +2962,9 @@ \def\zwqq{\def\w@h{\musixchar127}\y@v\wn@width \advancefalse \g@w} \def\g@w#1{\let\st@m\resetst@m - \getn@i#1\relax\let\n@fon\g@w \let\n@sym\w@h \writ@note} + \check@staff + \getn@i#1\relax\let\n@fon\g@w \let\n@sym\w@h \writ@note + \fi} \def\maxima{\def\w@h{\musixchar36}\y@v\tw@\wn@width \g@w} \def\longa{\def\w@h{\musixchar39}\y@v\wn@width \g@w} @@ -2910,6 +3026,10 @@ \def\lw#1{\kernm\wn@width\zw{#1}\kern\wn@width} \def\rw#1{\kern\wn@width\zw{#1}\kernm\wn@width} +\def\lwp#1{\kernm\wn@width\zwp{#1}\kern\wn@width} +\def\rwp#1{\kern\wn@width\zwp{#1}\kernm\wn@width} +\def\lwpp#1{\kernm\wn@width\zwpp{#1}\kern\wn@width} +\def\rwpp#1{\kern\wn@width\zwpp{#1}\kernm\wn@width} %%% common routines for noteheads with the same width as a quarter note @@ -2926,8 +3046,9 @@ \def\@zq{\let\st@m\setst@m \advancefalse\g@q} \def\@nq{\let\st@m\resetst@m \g@q} -\def\g@q#1{\getn@i#1\relax\let\n@fon\g@q \let\n@sym\q@u - \y@v\qn@width \writ@note} +\def\g@q#1{\check@staff + \getn@i#1\relax\let\n@fon\g@q \let\n@sym\q@u + \y@v\qn@width \writ@note\fi} \def\@qup{\let\st@m\upst@m \g@qp} \def\@qlp{\let\st@m\downst@m \g@qp} @@ -2935,8 +3056,9 @@ \def\@nqp{\let\st@m\resetst@m \g@qp} \def\q@up{\q@u\C@Point\z@\raise} -\def\g@qp#1{\getn@i#1\relax\let\n@fon\g@qp \let\n@sym\q@up - \y@v\qn@width \writ@note} +\def\g@qp#1{\check@staff + \getn@i#1\relax\let\n@fon\g@qp \let\n@sym\q@up + \y@v\qn@width \writ@note\fi} \def\@qupp{\let\st@m\upst@m \g@qpp} \def\@qlpp{\let\st@m\downst@m \g@qpp} @@ -2944,8 +3066,9 @@ \def\@nqpp{\let\st@m\resetst@m \g@qpp} \def\q@upp{\q@u\C@Point\@ne\raise} -\def\g@qpp#1{\getn@i#1\relax\let\n@fon\g@qpp \let\n@sym\q@upp - \y@v\qn@width \writ@note} +\def\g@qpp#1{\check@staff + \getn@i#1\relax\let\n@fon\g@qpp \let\n@sym\q@upp + \y@v\qn@width \writ@note\fi} \def\@lqu#1{\kernm\qn@width\advancefalse\@qu{#1}\kern\qn@width} \def\@rqu#1{\kern\qn@width\advancefalse\@qu{#1}\kernm\qn@width} @@ -2980,14 +3103,19 @@ \def\@ccu{\n@vii\@xli \let\st@m\up@flag \g@q} \def\@cccu{\n@vii42\let\st@m\up@flag \g@q} \def\@ccccu{\n@vii43\let\st@m\up@flag \g@q} +\def\@cccccu{\n@vii44\let\st@m\up@flag \g@q} \def\@cl{\n@vii\@xlv \let\st@m\down@flag \g@q} \def\@ccl{\n@vii46\let\st@m\down@flag \g@q} \def\@cccl{\n@vii47\let\st@m\down@flag \g@q} \def\@ccccl{\n@vii48\let\st@m\down@flag \g@q} +\def\@cccccl{\n@vii49\let\st@m\down@flag \g@q} \def\@cup{\n@vii\@xl \let\st@m\up@flag \g@qp} +\def\@ccup{\n@vii\@xli \let\st@m\up@flag \g@qp} \def\@clp{\n@vii\@xlv \let\st@m\down@flag \g@qp} +\def\@cclp{\n@vii46\let\st@m\down@flag \g@qp} + \def\@cupp{\n@vii\@xl \let\st@m\up@flag \g@qpp} \def\@clpp{\n@vii\@xlv \let\st@m\down@flag \g@qpp} @@ -3028,6 +3156,11 @@ \def\lhl{\h@symbol\@lql} \def\rhl{\h@symbol\@rql} +\def\lhp#1{\loff{\zhp{#1}}} +\def\rhp#1{\roff{\zhp{#1}}} +\def\lhpp#1{\loff{\zhpp{#1}}} +\def\rhpp#1{\roff{\zhpp{#1}}} + %%% quarter notes, stem up \def\q@symbol{\def\q@u{\musixfont\s@v@n}} @@ -3089,40 +3222,49 @@ \def\cca{\q@symbol\@cca} \def\ccca{\q@symbol\@ccca} \def\cccca{\q@symbol\@cccca} +\def\ccccca{\q@symbol\@ccccca} \def\cu{\q@symbol\@cu} \def\ccu{\q@symbol\@ccu} \def\cccu{\q@symbol\@cccu} \def\ccccu{\q@symbol\@ccccu} +\def\cccccu{\q@symbol\@cccccu} \def\cup{\q@symbol\@cup} +\def\ccup{\q@symbol\@ccup} \def\cupp{\q@symbol\@cupp} \def\zcu{\advancefalse\cu} \def\zccu{\advancefalse\ccu} \def\zcccu{\advancefalse\cccu} \def\zccccu{\advancefalse\ccccu} +\def\zcccccu{\advancefalse\cccccu} \def\lcu#1{\kernm\qn@width\zcu{#1}\kern\qn@width} \def\rcu#1{\kern\qn@width\zcu{#1}\kernm\qn@width} \def\zcup{\advancefalse\cup} +\def\zccup{\advancefalse\ccup} \def\zcupp{\advancefalse\cupp} \def\cl{\q@symbol\@cl} \def\ccl{\q@symbol\@ccl} \def\cccl{\q@symbol\@cccl} \def\ccccl{\q@symbol\@ccccl} +\def\cccccl{\q@symbol\@cccccl} \def\clp{\q@symbol\@clp} +\def\cclp{\q@symbol\@cclp} \def\clpp{\q@symbol\@clpp} \def\zcl{\advancefalse\cl} \def\zccl{\advancefalse\ccl} \def\zcccl{\advancefalse\cccl} \def\zccccl{\advancefalse\ccccl} +\def\zcccccl{\advancefalse\cccccl} \def\zclp{\advancefalse\clp} +\def\zcclp{\advancefalse\cclp} \def\zclpp{\advancefalse\clpp} \def\lcl#1{\kernm\qn@width\zcl{#1}\kern\qn@width} @@ -3181,20 +3323,30 @@ \def\s@l@cte{\edef\e@x{\csname e@x\romannumeral\n@i\endcsname}% \edef\e@z{\csname e@z\romannumeral\n@i\endcsname}\s@l@ctd} +\def\s@l@ctf{\edef\f@x{\csname f@x\romannumeral\n@i\endcsname}% + \edef\f@z{\csname f@z\romannumeral\n@i\endcsname}\s@l@cte} + +\def\s@l@ctg{\edef\g@x{\csname g@x\romannumeral\n@i\endcsname}% + \edef\g@z{\csname g@z\romannumeral\n@i\endcsname}\s@l@ctf} + \def\ibu#1{\s@l@ctbeam#1\relax \i@bu} \def\ibbu#1{\s@l@ctbeam#1\relax \s@l@ctc \i@bbu} \def\ibbbu#1{\s@l@ctbeam#1\relax \s@l@ctd \i@bbbu} \def\ibbbbu#1{\s@l@ctbeam#1\relax \s@l@cte \i@bbbbu} +\def\ibbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctf \i@bbbbbu} \def\ibl#1{\s@l@ctbeam#1\relax \i@bl} \def\ibbl#1{\s@l@ctbeam#1\relax \s@l@ctc \i@bbl} \def\ibbbl#1{\s@l@ctbeam#1\relax \s@l@ctd \i@bbbl} \def\ibbbbl#1{\s@l@ctbeam#1\relax \s@l@cte \i@bbbbl} +\def\ibbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctf \i@bbbbbl} -\def\i@bu#1#2{\ifnum\b@n=\z@ \else \C@tb\t@bbu\qn@width \fi \global\b@n\m@ne +\def\i@bu#1#2{%\check@staff + \ifnum\b@n=\z@ \else \C@tb\t@bbu\qn@width \fi \global\b@n\m@ne \inhgetn@i#1\relax \n@v#2 \C@ib+\global\advance\b@x\qd@skip} -\def\i@bl#1#2{\ifnum\b@n=\z@ \else \C@tb\t@bbl\lthick \fi \global\b@n\@ne +\def\i@bl#1#2{%\check@staff + \ifnum\b@n=\z@ \else \C@tb\t@bbl\lthick \fi \global\b@n\@ne \inhgetn@i#1\relax \n@v#2 \C@ib-} \def\C@ib#1{\max@n@v\nin@\min@n@v{-\nin@}\global\b@p\n@v % clip slope number @@ -3212,10 +3364,15 @@ \i@bbl{#1}{#2}\C@ba\b@z\m@ne \C@ba\c@z\m@ne \fi\n@bbbl} \def\i@bbbbu#1#2{\ifnum\b@n=\z@ - \i@bbbu{#1}{#2}\C@ba\b@z\@ne \C@ba\c@z\@ne \C@ba\d@z\@ne \fi \n@bbbbu} + \i@bbbu{#1}{#2}\C@ba\b@z\@ne \C@ba\c@z\@ne \C@ba\d@z\@ne \fi\n@bbbbu} \def\i@bbbbl#1#2{\ifnum\b@n=\z@ \i@bbbl{#1}{#2}\C@ba\b@z\m@ne \C@ba\c@z\m@ne \C@ba\d@z\m@ne \fi\n@bbbbl} +\def\i@bbbbbu#1#2{\ifnum\b@n=\z@ + \i@bbbbu{#1}{#2}\C@ba\b@z\@ne \C@ba\c@z\@ne \C@ba\d@z\@ne \C@ba\e@z\@ne \fi\n@bbbbbu} +\def\i@bbbbbl#1#2{\ifnum\b@n=\z@ + \i@bbbbl{#1}{#2}\C@ba\b@z\m@ne \C@ba\c@z\m@ne \C@ba\d@z\m@ne \C@ba\e@z\m@ne \fi\n@bbbbbl} + %%% changing beams \def\Dec@b#1#2{\ifnum\b@n=#1#2\fi\ifnum\b@n=-#1#2\fi} @@ -3234,12 +3391,19 @@ \def\nbbbbl#1{\s@l@ctbeam#1\relax \s@l@cte \Dec@b\@ne\n@bbl \Dec@b\tw@\n@bbbl \Dec@b\thr@@\n@bbbbl} +\def\nbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctf + \Dec@b\@ne\n@bbu \Dec@b\tw@\n@bbbu \Dec@b\thr@@\n@bbbbu \Dec@b\f@ur\n@bbbbbu} +\def\nbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctf + \Dec@b\@ne\n@bbl \Dec@b\tw@\n@bbbl \Dec@b\thr@@\n@bbbbl \Dec@b\f@ur\n@bbbbbl} + \def\n@bbu{\C@nb\c@z\c@x\@ne\qd@skip} \def\n@bbl{\C@nb\c@z\c@x\@ne\z@} \def\n@bbbu{\C@nb\d@z\d@x\tw@\qd@skip} \def\n@bbbl{\C@nb\d@z\d@x\tw@\z@} \def\n@bbbbu{\C@nb\e@z\e@x\thr@@\qd@skip} \def\n@bbbbl{\C@nb\e@z\e@x\thr@@\z@} +\def\n@bbbbbu{\C@nb\f@z\f@x\f@ur\qd@skip} +\def\n@bbbbbl{\C@nb\f@z\f@x\f@ur\z@} \def\C@nb#1#2#3#4{% \global#1\b@z @@ -3288,27 +3452,32 @@ \advance\y@iv\y@ \comp@slope\y@ \advance\y@iii\s@lope \repeat \fi} -\def\s@l@ctcde{\s@l@ctc \s@l@ctd \s@l@cte } +\def\s@l@ctcde{\s@l@ctc \s@l@ctd \s@l@cte \s@l@ctf } \def\tbu#1{\s@l@ctbeam#1\relax \C@tb\t@bbu\qn@width } \def\tbbu#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbu} \def\tbbbu#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbu} \def\tbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbbu} +\def\tbbbbbu#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbbbu} \def\tbl#1{\s@l@ctbeam#1\relax \C@tb\t@bbl\lthick } \def\tbbl#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbl} \def\tbbbl#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbl} \def\tbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbbl} +\def\tbbbbbl#1{\s@l@ctbeam#1\relax \s@l@ctcde \t@bbbbbl} \def\beam@pos#1{\getcurpos\y@ii\y@v\advance\y@ii-#1} \def\C@tb#1#2{% \n@ii\b@n \ifnum\n@ii<\z@ \n@ii-\n@ii \fi - \ifcase\n@ii \or \or \s@l@ctc \or \s@l@ctd \or \s@l@cte \fi + \ifcase\n@ii \or \or \s@l@ctc \or \s@l@ctd \or \s@l@cte \or \s@l@ctf \or \s@l@ctg\fi \ifnum\b@n<\m@ne #1\fi \ifnum\b@n>\@ne #1\fi \y@i\b@z \advance\y@i-\altportee \beam@pos\b@x - \advance\y@ii#2\llap{\@beam\kernm#2}\global\b@n\z@} + \advance\y@ii#2\relax + \check@staff + \llap{\@beam\kernm#2}\relax + \fi\global\b@n\z@} \def\t@bbu{\n@v\tw@ \C@b\t@bbbu\n@bbu\y@i\c@z \beam@pos\c@x \t@xbu} \def\t@bbl{\n@v\tw@ \C@b\t@bbbl\n@bbl\y@i\c@z \beam@pos\c@x \t@xbl} @@ -3316,8 +3485,11 @@ \def\t@bbbu{\n@v\thr@@ \C@b\t@bbbbu\n@bbbu\y@i\d@z \beam@pos\d@x \t@xbu} \def\t@bbbl{\n@v\thr@@ \C@b\t@bbbbl\n@bbbl\y@i\d@z \beam@pos\d@x \t@xbl} -\def\t@bbbbu{\n@v\f@ur \C@b\empty\n@bbbbu\y@i\e@z \beam@pos\e@x \t@xbu} -\def\t@bbbbl{\n@v\f@ur \C@b\empty\n@bbbbl\y@i\e@z \beam@pos\e@x \t@xbl} +\def\t@bbbbu{\n@v\f@ur \C@b\t@bbbbbu\n@bbbbu\y@i\e@z \beam@pos\e@x \t@xbu} +\def\t@bbbbl{\n@v\f@ur \C@b\t@bbbbbl\n@bbbbl\y@i\e@z \beam@pos\e@x \t@xbl} + +\def\t@bbbbbu{\n@v\fiv@ \C@b\empty\n@bbbbbu\y@i\f@z \beam@pos\f@x \t@xbu} +\def\t@bbbbbl{\n@v\fiv@ \C@b\empty\n@bbbbbl\y@i\f@z \beam@pos\f@x \t@xbl} \def\C@b#1#2{% \n@ii\b@n \ifnum\n@ii<\z@ \n@ii-\n@ii \fi @@ -3331,9 +3503,13 @@ \def\t@xbl{\C@txb\lthick\b@amthick\interbeam\hlthick<} \def\C@txb#1#2#3#4#5{\advance\y@i-\altportee - \advance\y@ii#1\llap{\@beam\kernm#1}% + \advance\y@ii#1\relax + \check@staff + \llap{\@beam\kernm#1}% \ifnum\b@n#5\z@ \comp@slope\y@ii \advance\y@i\s@lope - \raise\y@i\rlap{\kern#4\vrule\@height#3\@depth#2\@width\lthick}\fi + \raise\y@i\rlap{\kern#4\vrule\@height#3\@depth#2\@width\lthick}\relax + \fi + \fi \ifnum\b@n<\z@ \global\advance\b@n\@ne \fi \ifnum\b@n>\z@ \global\advance\b@n\m@ne \fi} @@ -3353,6 +3529,8 @@ \def\Ibbbl#1{\s@l@ctbeam#1\relax \s@l@ctd \I@bl\i@bbbl} \def\Ibbbbu#1{\s@l@ctbeam#1\relax \s@l@cte \I@bu\i@bbbbu} \def\Ibbbbl#1{\s@l@ctbeam#1\relax \s@l@cte \I@bl\i@bbbbl} +\def\Ibbbbbu#1{\s@l@ctbeam#1\relax \s@l@cte \I@bu\i@bbbbbu} +\def\Ibbbbbl#1{\s@l@ctbeam#1\relax \s@l@cte \I@bl\i@bbbbbl} % compute altitude difference of tried beam in \y@iv % and compare with notes altitude difference @@ -3426,10 +3604,11 @@ \def\lppt{\g@pt\m@ne\@ne} \def\lpppt{\g@pt\m@ne\tw@} -\def\g@pt#1#2#3{\inhgetn@i#3\relax \relax % two \relax since the first one +\def\g@pt#1#2#3{\check@staff + \inhgetn@i#3\relax \relax % two \relax since the first one \ifnum\n@i<\@c % in swallowed by \inhgetn@i \ifodd\n@i \else\advance\n@i#1\fi - \pl@base \raise\y@i\hbox{\musixchar#2}\fi} + \pl@base \raise\y@i\hbox{\musixchar#2}\fi\fi} %%% rests @@ -3457,14 +3636,18 @@ \def\PAUSe{\adv@box{\musixchar59}} \def\PAuse{\adv@box{\musixchar58}} -\def\pause{\adv@box{\raise\si@\internote\hbox{\musixchar61}}} -\def\pausep{\wholeshift{\pt5}\pause} +\def\pause{\check@staff + \adv@box{\raise\si@\internote\hbox{\musixchar61}}\fi} +\def\pausep{%\check@staff + \wholeshift{\pt5}\pause} \def\liftpause{\C@ps\@l@v@n\si@} \def\liftpausep{\C@pspt\@l@v@n\si@} -\def\hpause{\adv@box{\raise\f@ur\internote\hbox{\musixchar60}}} +\def\hpause{\check@staff + \adv@box{\raise\f@ur\internote\hbox{\musixchar60}}\fi} \let\hp\hpause -\def\hpausep{\wholeshift{\pt5}\hpause} +\def\hpausep{%\check@staff + \wholeshift{\pt5}\hpause} \def\lifthpause{\C@ps\t@n\f@ur} \def\lifthpausep{\C@pspt\t@n\f@ur} @@ -3473,11 +3656,14 @@ \advance\lift@rest -2.5\fontdimen\fiv@\musixfont \raise\lift@rest\hbox\@to\noteskip{#1\hss}}\advance\locx@skip\noteskip} -\def\qp{\adv@restbox{\musixchar62}} +\def\qp{\check@staff + \adv@restbox{\musixchar62}\fi} \let\soupir\qp -\def\ds@oup{\adv@restbox{\musixchar63}} -\def\qs{\adv@restbox{\musixchar64}} +\def\ds@oup{\check@staff + \adv@restbox{\musixchar63}\fi} +\def\qs{\check@staff + \adv@restbox{\musixchar64}\fi} \def\hs{\adv@restbox{\musixchar65}} \def\qqs{\adv@restbox{\musixchar66}} @@ -3544,7 +3730,9 @@ \message{\@nod sharpen \noexpand\dsh \t@ruc}\let\@Ti\empty \or \n@v\thr@@ \or \n@v\tw@ \fi} -\def\C@acc#1{\inhgetn@i#1\relax \relax +\def\C@acc#1{% + \check@staff + \inhgetn@i#1\relax \ifx\rel@sw\@ne \s@l@ctsigns \n@iii\n@i \advance\n@iii-\ut@ref \advance\n@iii-\ut@ref @@ -3562,7 +3750,8 @@ % \n@ii positive signature limit, \n@ii-8 negative signature limit \advance\n@ii-\a@s \advance\n@ii\si@ \divide\n@ii\s@v@n \@Tii - \fi \advance\n@v\@l \advance\n@v\n@vi \@Ti} + \fi \advance\n@v\@l \advance\n@v\n@vi \@Ti + \fi} \def\@nod{Can't double } @@ -3638,13 +3827,17 @@ \def\lpzst{\n@iv19\lacc@Char} \def\dpzst{\lpzst} -\def\uacc@Char#1{\inhgetn@i#1\relax \relax +\def\uacc@Char#1{\check@staff + \inhgetn@i#1\relax \relax \ifnum\n@i<\@ight \ifodd\n@i \else\advance\n@i\@ne \fi \fi - \zchar\n@i\C@ChaR} + \zchar\n@i\C@ChaR + \fi} -\def\lacc@Char#1{\inhgetn@i#1\relax \relax +\def\lacc@Char#1{\check@staff + \inhgetn@i#1\relax \relax \ifnum\n@i>\@ne \ifodd\n@i \else\advance\n@i\m@ne \fi \fi - \zchar\n@i\C@ChaR} + \zchar\n@i\C@ChaR + \fi} \def\C@ChaR{\musixfont\char\n@iv} @@ -3849,12 +4042,33 @@ %%% octave lines -\def\octnumber{\ppffsixteen8} +\def\octnumberup{\octnumberdefault\vrule width 0pt height2ex} +\def\octnumberdefault{\ppffsixteen8} +\def\octnumberdown{\octnumberdefault$^a$\eightit\kern 0.3em bassa\vrule width 0pt depth \Internote} + +\def\octfinup{\check@staff + \n@v\@xxiii\n@ii\@xxiv\global\o@swz={\@ne}\fi + \C@of} +\def\octfindown{\check@staff + \n@v\@xxv \n@ii\@xxvi\global\o@swz={\z@}\fi + \C@of} +\def\C@of#1#2{\check@staff + \y@v#2\noteskip\zcharnote{#1}{\hbox\@to\y@v{% + \xdef\o@sw{\csname o@swz\endcsname}\relax + \octnumber\mxsps\xleaders\hbox{\char\n@v}\hfill\char\n@ii}}% + \fi} -\def\octfinup{\n@v\@xxiii\n@ii\@xxiv\C@of} -\def\octfindown{\n@v\@xxv \n@ii\@xxvi \C@of} -\def\C@of#1#2{\y@v#2\noteskip\zcharnote{#1}{\hbox\@to\y@v{% - \octnumber\mxsps\xleaders\hbox{\char\n@v}\hfill\char\n@ii}}} +%%%%%% +% selecting \octnumber??? according to \o@sw +\def\octnumber{% \show\o@sw + \setbox\w@rkbox\hbox{% + \ifnum \@ne=\the\o@sw\relax \octnumberup + \else \octnumberdown + \fi}% + \ifdim \wd\w@rkbox>\y@v\setbox\w@rkbox\hbox{\octnumberdefault}\fi + \box\w@rkbox +} + %%%%%% @@ -3874,6 +4088,7 @@ \newskip\o@yv % height of octline \newskip\o@yvi % height of octline +\newtoks\o@swz % sense of octline for \octfin[up][down] without number \newtoks\o@swi % sense of octline \newtoks\o@swii % sense of octline \newtoks\o@swiii % sense of octline @@ -3902,32 +4117,36 @@ \def\ioctfinup{\Ioctfinup0} \def\ioctfindown{\Ioctfindown0} -\def\Ioctfinup#1{\s@l@ctoctline#1\relax +\def\Ioctfinup#1{\check@staff + \s@l@ctoctline#1\relax \ifdim\o@x < \maxdimen\errmessage{\@mis \noexpand\Toctfin \number #1}\fi -% \global\expandafter\let\o@sw\@ne - \global\o@sw={\@ne}% + \global\o@sw={\@ne}\fi \C@O} -\def\Ioctfindown#1{\s@l@ctoctline#1\relax +\def\Ioctfindown#1{\check@staff + \s@l@ctoctline#1\relax \ifdim\o@x < \maxdimen\errmessage{\@mis \noexpand\Toctfin \number #1}\fi -% \global\expandafter\let\o@sw\empty - \global\o@sw={\z@}% + \global\o@sw={\z@}\fi \C@O} -\def\C@O#1{% +\def\C@O#1{\check@staff \getcurpos\global\o@x\y@v % store horizontal pos \inhgetn@i#1\relax\pl@base\advance\y@i\altportee % get absolute height - \global\o@y\y@i } + \global\o@y\y@i + \fi} % clise check@staff in Ioctfinup/down \def\toctfin{\Toctfin0} -\def\Toctfin#1{\s@l@ctoctline#1\relax - \advance\o@y-\altportee \let\T@ii\char \C@TO \global\o@x\maxdimen } +\def\Toctfin#1{\check@staff + \s@l@ctoctline#1\relax + \advance\o@y-\altportee \let\T@ii\char \C@TO \global\o@x\maxdimen + \fi} -\def\C@TO{% +\def\C@TO{\check@staff \ifnum \@ne=\the\o@sw \n@v\@xxiii \n@ii\@xxiv \else \n@v\@xxv \n@ii\@xxvi \fi \ifx\T@ii\n@ii \y@v\lin@pos \else \getcurpos \fi \advance\y@v-\o@x \kernm\y@v \raise\o@y\hbox\@to\y@v{% - \octnumber\mxsps\xleaders\hbox{\char\n@v}\hfill\T@ii\n@ii}}% + \octnumber\mxsps\xleaders\hbox{\char\n@v}\hfill\T@ii\n@ii}\relax + \fi}% % Liftoctline #1 refnumber #2 lift[steps of internote] @@ -3937,6 +4156,7 @@ %%% some specials \def\metron#1#2{{\stemlength\f@ur\noteskip\t@n\p@ #1 1\ = #2}} +\def\metronequiv#1#2{{\stemlength\f@ur\noteskip\t@n\p@ #1 1\ = #2 1}} \def\xtuplet#1#2{\n@iv#1\advance\n@iv\m@ne {\sign@skip=\n@iv\noteskip \sign@skip=0.5\sign@skip \xdef\half@sign@skip{\the\sign@skip}}% @@ -3945,9 +4165,9 @@ %\check -\def\zbreath{\raise\si@\internote\rlap{\BIGfont'}} -\def\cbreath{\adv@box{\raise\si@\internote - \hbox\@to\noteskip{\hss\BIGfont'\hss}}} +\def\zbreath{\check@staff\raise\si@\internote\rlap{\BIGfont'}\fi} +\def\cbreath{\check@staff\adv@box{\raise\si@\internote + \hbox\@to\noteskip{\hss\BIGfont'\hss}}\fi} % The following macros can be used to surround a note by parentheses % \l[r]par p produces a left[right] parenthesis at pitch p (Ian Collier) @@ -4101,22 +4321,22 @@ \def\hcharnote{\let\@Ti\hard@box \C@ch} \def\charnote#1#2{\zcharnote{#1}{#2}\sk} -\def\C@ch#1#2{\inhgetn@i#1\relax\pl@base\raise\y@i\@Ti{#2}} +\def\C@ch#1#2{\check@staff\inhgetn@i#1\relax\pl@base\raise\y@i\@Ti{#2}\fi} \def\zmidstaff{\let\@Ti\rlap \C@mid} \def\lmidstaff{\let\@Ti\llap \C@mid} \def\cmidstaff{\let\@Ti\lrlap \C@mid} -\def\C@mid#1{\y@v\interportee \advance\y@v\f@ur\Interligne \divide\y@v\tw@ - \raise\y@v\uplap{\@Ti{\strut#1}\vss}} +\def\C@mid#1{\check@staff\y@v\interportee \advance\y@v\f@ur\Interligne \divide\y@v\tw@ + \raise\y@v\uplap{\@Ti{\strut#1}\vss}\fi} -\def\zchar#1#2{\raise#1\internote\rlap{#2}} -\def\lchar#1#2{\raise#1\internote\llap{#2}} -\def\cchar#1#2{\raise#1\internote\lrlap{#2}} -\def\hchar#1#2{\raise#1\internote\hard@box{#2}} +\def\zchar#1#2{\check@staff\raise#1\internote\rlap{#2}\fi} +\def\lchar#1#2{\check@staff\raise#1\internote\llap{#2}\fi} +\def\cchar#1#2{\check@staff\raise#1\internote\lrlap{#2}\fi} +\def\hchar#1#2{\check@staff\raise#1\internote\hard@box{#2}\fi} -\def\uptext#1{\zchar\t@n{#1}} -\def\Uptext#1{\zchar\fourt@@n{#1}} +\def\uptext#1{\check@staff\zchar\t@n{#1}\fi} +\def\Uptext#1{\check@staff\zchar\fourt@@n{#1}\fi} \def\setsongraise#1#2{\n@v#1\relax % select instrument \expandafter\def\csname T@R\romannumeral\n@v\endcsname{#2}} @@ -4224,6 +4444,7 @@ \stafftopmarg\thr@@\Interligne \staffbotmarg\thr@@\Interligne \let\n@li\fiv@ \let\n@lii\fiv@ \let\n@liii\fiv@ \let\n@liv\fiv@ \let\n@lv\fiv@ \let\n@lvi\fiv@ + \noinstrum@nt1\s@l@ctinstr\internote\Internote \resetclefsymbols} \def\resetclefsymbols{% @@ -4239,10 +4460,10 @@ \let\nbinstruments\maxinstruments \normalnotesize \normalmusicsize +\normalnotesize% needs rerun to initialize \metron stem length (a very historical bug since T.103 or earlier) (T.114, Hiroaki) \resetlayout \def\nbinstruments{1} - %%% % % This is muflex.tex version 1.00 , January 1993 @@ -4503,3 +4724,4 @@ \catcode`\@=\catcodeat \endinput + |