Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Простейшая программа на Лилипонде
Здесь, впрочем, мне придется прерваться. Продолжу чуть позже Продолжаю... того же числа, 20.04 Итак, переходим к конкретике. Простейшая программа на LilyPond выглядит так: \version " 2.12.2" \relative c' { c d e f g f e d c } Как видите, нетрудно догадаться, что c d e f g f e d c — это ноты. Фигурные скобки { } показывают, что к тому, что внутри них, относится команда \relative c'. Что такое \relative c', положим нам пока не понятно. Но давайте посмотрим на результат: Простейшая программа на Лилипонде (щелкните мышкой по картинке, чтобы увидеть код) Теперь виден следующий принцип. Ноты все располагаются относительно ноты до первой октавы. Если бы надо было получить все ноты октавой выше — достаточно вместо \relative c' написать \relative c'', Кроме того, можно заметить, что каждая следующая нота пишется как можно ближе к предыдущей. В частности, нота ре нарисовалась не в малой, а в первой октаве. Да и вообще, нужны ли здесь мои комментарии? По большому счету, достаточно увидеть программный код, а затем получившуюся картинку, чтобы понять, что произошло. Конечно, возникают вопросы. Что делать, если нужен не скрипичный, а басовый ключ? Как сделать другой размер? Как поставить заключительную тактовую черту? Не спешите. Если изучать LilyPond последовательно и ничего не пропуская, все со временем выяснится. Создатели Лилипонда просто заботятся о том, чтобы ваша крыша не поехала от чрезмерных сведений на каждом этапе. Скрипичный ключ, размер 4/4, тональность до мажор, наличие тактовых черт, пятилинейная нотная строка и многое другое установлено по умолчанию. КАЖДОЕ из умолчаний можно поменять. Но не все сразу. Если человек не знает ноты, какой смысл объяснять ему особенности тонального плана в симфониях Бетховена? Если прописать вручную ключ, размер и тональность, то самая простая программа не была бы уже самой простой. Она бы выглядела, например, так: \version " 2.12.2" \relative c' { \clef treble \time 4/4 \key c \major c d e f g f e d c } Согласитесь, что этот текст несколько сложнее, чем предыдущий. Хотя результат — абсолютно аналогичный предыдущему. Но незнакомых слов больше. И не зная, что означает текст предыдущей, простейшей программы, разобраться с этой, более сложной было бы, возможно, и не очень просто. Однако мы уже знаем, что означает " c d e f g f e d c" и " \relative c' "! Поэтому догадаться об остальном не так уж трудно: \clef treble — скрипичный ключ \time 4/4 — размер 4/4 \key c \major — тональность до мажор Как теперь сделать тональность ре минор? Это практически очевидно: написать вместо " \key c \major" — " \key d \minor". Так же можно изменить ключ на басовый (bass), альтовый (alto), теноровый (tenor) и т.д.Так же можно изменить и размер. У вас уже возникли вопросы типа: " Откуда берутся названия ключей? какие можно вводить размеры? как указать сложный размер? " Прекрасно! Значит, мы еще с чем-то разобрались и пора двигаться дальше. Конечно, где-то в Лилипонде запрограммировано, что " bass" означает басовый ключ, " tenor" — теноровый и т.д. Просто все " служебные" слова максимально приближены к естественным их значениям. Читая документацию LilyPond, вы будете двигаться от простого к сложному. На каждом этапе задачи будут такими же простыми, как те, которые мы только что разобрали. Надо лишь читать подряд, ничего не пропуская. Простейшая программа — верхушка лилипондовского айсберга, ниже которой располагаются ключи, тональности и размеры, затем конструирование партитур и верстка, затем приемы нестандартной нотации, затем переопределение заданных по умолчанию параметров (от месторасположения указаний темпа до толщины штиля или ребра), затем написание функций на языке Scheme. Попутно вы узнаете множество специально созданных решений для стандартных ситуаций (типа перепрыгивающих нот из левой руки в правую на фортепиано). И могу вас заверить, по количеству удобных стандартных решений, актуальных именно для музыканта, LilyPond очень серьезно обгоняет Finale и Sibelius! Как изучать документацию? Я поступил как «мамонт». Скачал PDF-файл (https://lilypond.org/doc/v2.10/Documentation/user/lilypond.pdf), распечатал его, переплел у брошюровщиков в ближайшем подвале и прочитал. Читал примерно два дня. Потому что ехал в поезде. Если вам проще читать на компьютере, то, возможно, проще читать HTML-версию (https://lilypond.org/doc/v2.10/Documentation/user/lilypond-big-page). Там можно кликнуть мышкой на любой из примеров и посмотреть соответствующий код. И еще один важный момент. Набирать код для LilyPond лучше в специальных блокнотах, где есть подсветка тэгов. Я, поскольку обитаю в SuSE Linux, использую встроенный редактор KWrite. В нем текст простейшей программы выглядит так: Под Windows, я уверен, есть блокноты, которые, по крайней мере, не хуже. Существуют умельцы (где-то в сети, забыл где), которые набирают лилипондовский текст в редакторе из программы FAR (раскрасив тэги соответствующим образом), а Лилипонд запускается у них прямо из FAR'а по горячей клавише. Это фантастически удобно. О выборе блокнота советую подумать серьезно, так как по мере усложнения текста наглядность начинает приобретать все большее и большее значение:
Очень удобно использовать в качестве блокнота редактор vim. Для этого, правда, необходимо освоить синтаксис Vim'а, хотя бы в масштабах того, что изложено в vimtutor (чтобы его запустить, надо после установки редактора vim набрать в консоли vimtutor в Linux или найти Vimtutor в меню Пуск в Windows). Кое-что дополнительно я написал здесь: LilyPond и Vim. Подсветка тэгов и расположение окон В заключение, приведу два примера. Почему именно эти два? Во-первых, ноты я набрал сам. Во-вторых, здесь все-таки не абстрактный набор нотных знаков, а более или менее живая музыка (о чем, впрочем, судить вам).
|