shoorick: (Default)
[personal profile] shoorick
Лилипонд хоть и требует указывать длительность в команде \skip, предназначенной для создания пропусков в тексте, в некоторых режимах (например, когда текст подключен командой \lyricsto) эту длительность игнорирует, о чём честно предупреждает в документации (это не баг — это фича!) Однако жить от такой предупредительности не легче.

Писать здоровенные куски кода, содержащие множество команд \skip 1 \skip 1 \skip 1 — не наш метод. Гуглением нашлось два метода: тупой и правильный.

Тупой заключается в замене n команд \skip цифра на одну: \repeat unfold n { _ } — дёшево и сердито. Единственный минус — надо подсчитать число слогов в скрываемом фрагменте.

Правильный метод показан во втором примере на http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Specific-uses-of-lyrics#Divisi-lyrics (хотя пример излишне сложен, смысл можно раскопать): мелодия делится на короткие голоса, к которым и привязываются фрагменты текста (также имеющие небольшую длину). Я как-то пробовал так делать: получилось, но тоже как-то всё непросто.

Теперь осталось разобраться с условными операторами в Scheme — хочется сделать так, чтобы некоторые фрагменты текста прятались, если выводится партитура, и отображались при выводе партии одного голоса.

P. S. Попытки задать скрываемому тексту прозрачность или белый цвет не сработали, команды \hidеLуriсs в лилипонде нет.

Profile

shoorick: (Default)
shoorick

December 2016

S M T W T F S
    1 23
45678910
11121314151617
18 19 2021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Mar. 22nd, 2026 01:45 am
Powered by Dreamwidth Studios