summaryrefslogtreecommitdiff
path: root/macros/generic/musixtex/doc/notationMistakes/coulhack.tex
blob: 1f797876cd4a3dd23867c9d550ebdf1019c37d98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
% thicker ledger lines
\def\myhlthick{1.5\lthick}
\makeatletter
\def\h@linei{%
  \y@ii\n@v\internote
  \y@iii\y@ii
  \advance\y@ii\myhlthick
  \advance\y@iii-\myhlthick
  \y@vi\noteskip			% noteskip
%-\ifnum\y@vi=\z@ \y@vi\maxdimen\fi	% (or maxdimen if noteskip = 0)
  \advance\y@vi-\y@v			% - notewidth
  \y@vi0.7\y@vi				% this may be eaten =: additional length
  \y@iv\h@lf\qn@width\ifnum\y@vi>\y@iv \y@vi\y@iv\fi % not more than 0.5 qn@width
  \y@iv0.2\qn@width  \ifnum\y@vi<\y@iv \y@vi\y@iv\fi % not less than 0.2 qn@width
  \y@iv\y@v				% notewidth
  \advance\y@iv\y@vi			% + additional length =: total length
  \kernm\h@lf\y@vi			% center the ledger line
%-\message{noteskip = \the\noteskip, length = \the\y@iv, notewidth = \the\y@v}%
  \vrule\@height\y@ii\@depth-\y@iii\@width\y@iv
  \kernm\y@iv\kern\h@lf\y@vi}

% same adapted from MUSIXFLL.TEX

\ifx\undefined\longledgerlines \else \endinput \fi

\immediate\write10{MusiXFormerLedgerLines T.74\space<06 April 1997>}%

%\edef\catcodeat{\the\catcode`\@}\catcode`\@=11

\let\h@lineick\h@linei
\def\h@lineidt{%
  \y@ii\n@v\internote
  \y@iii\y@ii
  \advance\y@ii\myhlthick
  \advance\y@iii-\myhlthick
  \y@iv\y@v
  \advance\y@iv\h@lf\qn@width
  \kernm.25\qn@width
  \vrule\@height\y@ii\@depth-\y@iii\@width\y@iv
  \kernm\y@iv\kern.25\qn@width}
\def\longledgerlines{\global\let\h@linei\h@lineidt}
\def\autoledgerlines{\global\let\h@linei\h@lineick}
\longledgerlines
%\catcode`\@=\catcodeat

% space between signatures and first note at each system:

\def\contpiece{\noindent \piece@conta \writ@staffs \piece@beginc
%  \Writ@meters \wbarno@x \hardspace{10pt}\addspace\afterruleskip
  \Writ@meters \wbarno@x \hardspace{.3\elemskip}\addspace\afterruleskip}
%                        ^^^^^^^^^^^^^^^^^^^^^^^

% missing pixels at some beam ends:
\def\beamst@m{% queue de note vers une poutre
  \getcurpos \advance\y@v-\b@x
  \y@ii\b@p\y@v \divide\y@ii\tw@nty \advance\y@ii\b@z
  \ifdim\y@ii>\st@top % la poutre est au-dessus
    \stem@skip\qd@skip \comp@slope\stem@skip \advance\y@ii\s@lope
    \advance\y@ii .25\interbeam% hack
    \ifnum\b@n>\z@ \advance\y@ii\b@n\interbeam \advance\y@ii-\interbeam \fi
    \st@top\y@ii % a mettre a jour avec la pente ulterieurement
  \else
    \advance\y@ii-.25\interbeam% hack
    \stem@skip\z@
    \ifdim\y@ii<\st@bot
      \ifnum\b@n<\z@ \advance\y@ii\b@n\interbeam \advance\y@ii\interbeam \fi
      \st@bot\y@ii \fi \fi
  \C@stem}

\makeatother