Набір нот для баяна чи акордеона має свою специфіку: треба розставити зміни міху, аплікатуру, регістри, а ще врахувати готову басову систему – тобто позначати акорди від іншого басу. У кожному нотному редакторі це робиться по-своєму, а сьогодні розберемо, як усе це зробити в LilyPond.
Якщо ти тільки знайомишся з програмою, спершу прочитай як набирати ноти в LilyPond: там є основи, зокрема й аплікатура. Усі приклади нижче я перевірив на свіжій версії LilyPond.
Зміна міху
У LilyPond уже є готові символи розжиму й зжиму міху, їх лише треба вивести:
\mark \markup { \musicglyph "accordion.pull" } % розжим
\mark \markup { \musicglyph "accordion.push" } % зжим
Щоб не писати щоразу такий довжелезний рядок заради одного символу, присвоюємо кожному з них коротку змінну. Змінні оголошуються на початку файлу, до нот:
acpull = \mark \markup { \musicglyph "accordion.pull" }
acpush = \mark \markup { \musicglyph "accordion.push" }
Тепер для зміни міху достатньо написати \acpull або \acpush перед потрібною нотою:
\relative c'' { \acpull c4 d e f \acpush g f e d \acpull c1 }

Ліва рука: баси й акорди
Партію лівої руки я пишу на окремому нотному стані в басовому ключі, і без \relative – абсолютно. Так октави завжди під контролем: баси лягають у нижню частину нотного стану, акорди – у верхню, як і заведено в нотах для акордеона.
Баси пишуться звичайними нотами: c4 – до малої октави, g,4 – соль великої (кома опускає на октаву). А от набирати щоразу акорд нота за нотою, наприклад <g c' e'>4, втомлює. Тому для кожного акорду я зробив окрему функцію:
majorC = #(define-music-function (note) (ly:music?) #{ <g c' e'>$(ly:music-property note 'duration) $@(ly:music-property note 'articulations) #})
septG = #(define-music-function (note) (ly:music?) #{ <g b f'>$(ly:music-property note 'duration) $@(ly:music-property note 'articulations) #})
Функція сама ставить потрібні ноти акорду, а від ноти після неї бере лише тривалість. Тепер акорд до мажор четвертною записується як \majorC c4, восьмою – \majorC c8. Висота цієї ноти не важлива, але я для наочності пишу ту саму літеру, що й назва акорду.
Друга частина функції, $@(ly:music-property note 'articulations), переносить на акорд усе, що написано після ноти. Тож позначки над акордом, штрихи й динаміку пишеш як завжди: \majorC c4^"M" поставить над акордом літеру «М», \majorC c8-. – стаккато, \majorC c4\p – піано. Без цієї частини функція мовчки відкидала б усі позначки.
Акорд від іншого басу
Буває, що акорд береться не від свого басу: наприклад, бас мі, а акорд до мажор. Щоб акордеоніст одразу бачив, з якого ряду брати акорд, перед ним ставлять маленьку ноту в дужках. Вона має бути без штиля і не враховуватися в розмір такту. Вручну це виглядало б так:
\once \hide Staff.Stem \grace \parenthesize c
Тут \once \hide Staff.Stem ховає штиль у однієї ноти, \grace робить її маленькою форшлаговою нотою, яка не враховується в розмір, а \parenthesize бере в дужки. Не дуже зручно, правда? Тож загортаємо все це в маленьку функцію:
otherBass =
#(define-music-function (note) (ly:music?)
#{
\once \hide Staff.Stem
\grace
\parenthesize
#note
#})
Тепер позначка «від іншого басу» ставиться прямо перед акордом: e4 \otherBass c \majorC c4 – бас мі, а потім акорд до мажор з маленькою (c) у дужках. Ось як це виглядає в партитурі для двох рук разом зі зміною міху:
\new PianoStaff <<
\new Staff \relative c' {
\clef "treble" \time 2/4
\acpull e4 g | c2 | \acpush b4 g | e2 |
}
\new Staff {
\clef "bass" \time 2/4
c4 \majorC c4^"M" | % бас до і акорд до мажор з позначкою
e4 \otherBass c \majorC c4 | % бас мі, акорд до мажор
g,4 \septG g4 | % бас соль, септакорд соль
c4 \majorC c4 |
}
>>

Колись я обіцяв зробити окрему функцію для кожного басу, щоб у нотах залишалися тільки короткі назви. Обіцянку виконую 😉 Готові функції для всіх мажорних, мінорних і септакордів є в моєму шаблоні, який можна завантажити наприкінці статті.
Регістри
Мало хто знає, але LilyPond уміє малювати й позначки регістрів акордеона – ті самі кружечки з крапками. Для цього на початку файлу підключаємо модуль регістрів, а потім перед нотами пишемо \discant з кодом регістра:
#(use-modules (lily accreg))
\relative c'' {
\discant "10" c2 c
\discant "121" c2 c
\discant "1+0" c2 c
\discant "131" c1
}

Цифри в коді показують, скільки голосів якого ряду увімкнено, а «+» – додатковий голос. Для лівої клавіатури є аналогічні команди \stdBass та \freeBass. Повний перелік комбінацій є в документації LilyPond.
Готовий шаблон для акордеона
Усе описане вище я зібрав в один шаблон, з якого починаю кожну нову партитуру: дві руки на окремих нотних станах, функції для всіх мажорних, мінорних і септакордів, \otherBass, позначки міху, заголовок і поля сторінки. На початку файлу є короткий опис українською, як цим усім користуватися.
Шаблон для акордеона в LilyPond (accordion-template.ly) Звантажити
Відкрий його у Frescobaldi, допиши ноти в RightHand і LeftHand – і можна компілювати. А щоб шаблон завжди був під рукою, збережи його у Frescobaldi як сніпет: тоді він з'явиться в меню створення нового файлу.
Що далі
З цими кількома рядками на початку файлу набір нот для акордеона стає майже таким самим швидким, як і для будь-якого іншого інструмента. Ще більше можливостей LilyPond і порівняння з MuseScore – у статті про безкоштовні нотні редактори, а всі матеріали зібрані за позначками LilyPond та Набір нот.
А як ти позначаєш баси й міх у своїх нотах? Пиши в коментарях 🙂


Прокоментувати
На сайті відображається лише твоє ім'я та коментар. Електронна пошта зберігається виключно для зв'язку з тобою за потреби та в жодному разі не передається стороннім особам.