| 77 | | Теперь добавим обозначения позиции. Так как мы хотим, чтобы (как и в исходных нотах, набранных вручную) вдоль нот, которые надо играть в указанной позиции, тянулся пунктир, нам придётся переопределить стандартное значение переменной {{{TextSpanner}}}. Делается это совсем просто: там, где нужно расположить указание позиции, даём команду {{{\override TextSpanner #'(bound-details left text) = "II "}}}, где {{II}} — это номер нужной позиции; после ноты, с которой должен начинаться пунктир, даём команду {{{\startTextSpan}}}, а после ноты, на которой пунктир должен закончиться — команду {{{\stopTextSpan}}}. |
| | 83 | == Обозначения позиций == |
| | 84 | |
| | 85 | Теперь добавим обозначения позиции. Так как мы хотим, чтобы (как и в исходных нотах, набранных вручную) вдоль нот, которые надо играть в указанной позиции, тянулся пунктир, нам придётся переопределить стандартное значение переменной {{{TextSpanner}}}. Делается это совсем просто: там, где нужно расположить указание позиции, даём команду {{{\override TextSpanner #'(bound-details left text) = "II "}}}, где {{{II}}} — это номер нужной позиции; после ноты, с которой должен начинаться пунктир, даём команду {{{\startTextSpan}}}, а после ноты, на которой пунктир должен закончиться — команду {{{\stopTextSpan}}}. |
| | 116 | |
| | 117 | == Номера струн == |
| | 118 | |
| | 119 | Добавить одиночные обозначения струн (там, где они указаны в книжке — к аккорду во втором такте) совсем несложно: для этого достаточно написать номер струны после ноты через обратный слэш: |
| | 120 | {{{ |
| | 121 | ... |
| | 122 | <d\4 fis\3 a\2> |
| | 123 | ... |
| | 124 | }}} |
| | 125 | |
| | 126 | А вот с обозначениями струн, которые захватывают несколько нот, всё несколько хитрее. На данный момент (октябрь 2009 года, я использую версию 2.12.1) в !LilyPond ещё не добавили для этого специальную команду, хотя такие разговоры ведутся. Поэтому нам придётся определить собственный макрос: |
| | 127 | {{{ |
| | 128 | stringNumberSpanner = |
| | 129 | #(define-music-function (parser location StringNumber) (string?) |
| | 130 | #{ |
| | 131 | \override TextSpanner #'style = #'dashed-line |
| | 132 | \override TextSpanner #'dash-period = #1 |
| | 133 | \override TextSpanner #'font-size = #-5 |
| | 134 | \override TextSpanner #'(bound-details left stencil-align-dir-y) = #CENTER |
| | 135 | \override TextSpanner #'(bound-details left text) = \markup { \circle \number $StringNumber } |
| | 136 | #}) |
| | 137 | }}} |
| | 138 | |
| | 139 | *Текст всё ещё дорабатывается, не стоит пока его использовать как руководство к действию =)* |