| | 76 | |
| | 77 | Теперь добавим обозначения позиции. Так как мы хотим, чтобы (как и в исходных нотах, набранных вручную) вдоль нот, которые надо играть в указанной позиции, тянулся пунктир, нам придётся переопределить стандартное значение переменной {{{TextSpanner}}}. Делается это совсем просто: там, где нужно расположить указание позиции, даём команду {{{\override TextSpanner #'(bound-details left text) = "II "}}}, где {{II}} — это номер нужной позиции; после ноты, с которой должен начинаться пунктир, даём команду {{{\startTextSpan}}}, а после ноты, на которой пунктир должен закончиться — команду {{{\stopTextSpan}}}. |
| | 78 | |
| | 79 | Пунктир, предлагаемый !LilyPond по умолчанию, показался мне крупноватым, и я сделал его более мелким командой {{{\override TextSpanner #'dash-period = #2}}}. Кроме того, в книжке он выровнен вертикально по центру римской цифры, обозначающей позицию; добиться того же в !LilyPond можно командой {{{\override TextSpanner #'(bound-details left stencil-align-dir-y) = #CENTER}}}. |
| | 80 | |
| | 81 | В результате соответствующий фрагмент исходника приобретает следующий вид: |
| | 82 | {{{ |
| | 83 | ... |
| | 84 | One = \new Voice {\relative c'' { |
| | 85 | \voiceOne |
| | 86 | a16-2 h-4 cis-1 d-2 e-4 fis-1 g-2 a-4 |
| | 87 | h8-4 <d,-3 fis-2 a-1> <d fis a> r |
| | 88 | \bar "||" |
| | 89 | \stemDown |
| | 90 | \textSpannerUp |
| | 91 | \override TextSpanner #'dash-period = #2 |
| | 92 | \override TextSpanner #'(bound-details left stencil-align-dir-y) = #CENTER |
| | 93 | \override TextSpanner #'(bound-details left text) = "VII " |
| | 94 | c'16-2\startTextSpan a-4 fis-1 e-3 dis-2 fis-1 dis h-3 |
| | 95 | \stemUp |
| | 96 | c-4\stopTextSpan a-1 |
| | 97 | \override TextSpanner #'(bound-details left text) = "VI " |
| | 98 | fis-4\startTextSpan e-2 dis-1 fis-4 dis h-2\stopTextSpan |
| | 99 | \bar "|." |
| | 100 | ... |
| | 101 | }} |
| | 102 | |
| | 103 | }}} |
| | 104 | |
| | 105 | В результате получается вот что: |
| | 106 | |
| | 107 | [[Image(Agafoshin189-positions.png)]] |