Эта статья требует дополнительных ссылок для проверки . ( июль 2016 г. ) ( Узнайте, как и когда удалить этот шаблон сообщения ) |
Разработчики) | Давид Каструп, Вернер Лемберг, Хан-Вен Ниенхейс, Ян Ньювенхайзен, Карл Соренсен, Янек Вархол и др. [1] |
---|---|
изначальный выпуск | 1996 |
Стабильный выпуск | 2.22.0 (10 января 2021 г . [2] ) [±] |
Предварительный выпуск | 2.23.0 (24 января 2021 г . [3] ) [±] |
Репозиторий | |
Написано в | C ++ , Scheme , Metafont , PostScript , Python [4] |
Операционная система |
|
Размер | 20–100 МБ |
Стандарт (ы) | EPS , MIDI , MusicXML , PDF , PS , SVG |
Доступно в | Английский, каталонский, голландский, французский, немецкий, венгерский, итальянский, японский, испанский |
Тип | Музыкальное программное обеспечение , автор партитуры |
Лицензия | GPLv3 [6] |
Интернет сайт | lilypond .org |
LilyPond - это компьютерная программа и формат файла для гравировки музыки . Одна из основных целей LilyPond - создавать партитуры, на которых выгравированы традиционные правила компоновки, отражающие эпоху, когда партитуры гравировали вручную.
LilyPond является кроссплатформенным и доступен для нескольких распространенных операционных систем ; выпущенный в соответствии с условиями Стандартной общественной лицензии GNU , LilyPond является бесплатным программным обеспечением .
История [ править ]
Проект LilyPond был начат в 1996 году Хан Уэн Ниенуйс и Ян Ньюенхайзен, после того, как они решили отказаться от работы на MPP ( MusiXTeX препроцессор), проект они начали сотрудничать с в 1995 году [7] [8] Его имя было вдохновлено как по Rosegarden проект и знакомство Nienhuys и Ньюенхайзно имя Сюзанн, имя , которое означает лилию на иврите (שׁוּשָׁן). [9]
Версия 1.0 [ править ]
LilyPond 1.0 был выпущен 31 июля 1998 года, подчеркнув разработку специального музыкального шрифта Feta и полное отделение LilyPond от MusiXTeX. [10]
Версия 2.0 [ править ]
LilyPond 2.0 был выпущен 24 сентября 2003 года, объявляя об упрощенной синтаксической модели и гораздо более полном наборе средств для записи различных музыкальных стилей. [11]
Дизайн [ править ]
LilyPond в основном написан на C ++ и использует Scheme (интерпретируемый GNU Guile ) в качестве языка расширения, что позволяет настраивать его пользователем. [12] Он имеет относительно большую кодовую базу; по состоянию на 10 марта 2017 г. исходный код включает более 600 000 строк C ++, 140000 строк Scheme и 120 000 строк кода Python. [13]
Он использует простую текстовую нотацию для ввода музыки, которую LilyPond интерпретирует и обрабатывает в несколько этапов. [14] На заключительном этапе нотная запись выводится в PDF (через PostScript ) или другие графические форматы, такие как SVG или PNG . LilyPond также может генерировать файлы MIDI , соответствующие выходным нотам.
LilyPond - это текстовое приложение , поэтому оно не содержит собственного графического пользовательского интерфейса, помогающего создавать партитуры. (Однако графический интерфейс LilyPad на основе текстового редактора для Windows и MacOS включен по умолчанию в эти системы.) Тем не менее, он имеет гибкий язык ввода, который стремится быть простым, облегчая кривую обучения для новых пользователей. LilyPond придерживается парадигмы WYSIWYM ; Рабочий процесс набора нот с помощью LilyPond аналогичен процессу подготовки документов с помощью LaTeX .
LilyPond поддерживает экспериментальную нотную запись . Его гитарное оборудование поддерживает альтернативные строчки , такие как настройка мажорной трети . [15]
Возможности программного обеспечения [ править ]
Основная цель LilyPond - производить продукцию, сопоставимую с профессионально выгравированными партитурами, вместо результатов, которые выглядят механическими и сгенерированными компьютером. Эссе с веб-сайта LilyPond, написанное разработчиками LilyPond, объясняет некоторые типографские проблемы, решаемые LilyPond: [16]
- Оптическое масштабирование шрифта : в зависимости от размера нотоносца, немного меняется дизайн музыкального шрифта; это особенность, которой известен шрифт Дональда Кнута Computer Modern . В результате головки нот становятся более округлыми, а линии нотоносца - толще.
- Оптический интервал : направление стержней учитывается при размещении последующих нот.
- Специальная обработка строк книги: строки книги укорачиваются, когда рядом находятся случайные предметы, что улучшает читаемость.
- Пропорциональный интервал : ноты можно располагать таким образом, чтобы они точно отражали их продолжительность. Например, при этой настройке интервал между последовательными четвертными нотами в четыре раза больше, чем между последовательными шестнадцатыми нотами . [17]
Обзор синтаксиса ввода [ править ]
Родной язык ввода для LilyPond является всеобъемлющим и состоит из множества команд, необходимых для выражения любого вида артикуляции, динамики, счетчика и т. Д. Он похож на язык TeX . Возможность встраивать код схемы в исходный файл LilyPond позволяет произвольно расширять язык ввода и помогает с алгоритмической композицией . Ниже перечислены некоторые общие синтаксические особенности.
- Однострочные комментарии начинаются со знака процента
%
. [18] - Примечания представлены в пеке длительность формате: шаг задаются Гельмгольц основного тона записи , и длительность задаются с номером системой , основанной. Семантика формата длительности основного тона меняется в зависимости от активного режима ввода; это подробно объясняется в руководстве LilyPond. Например, в абсолютном режиме
a'4
- это ля, расположенная на одну октаву выше основного ля (А3 в научном представлении высоты тона ), длины четверти. [19] - Команды обычно начинаются с обратной косой черты (например
\time
, или\slurUp
). Функция рассматриваемой команды определяет место размещения команды; например, если команда используется для обозначения фиксированной динамики конкретной заметки, она помещается после заметки. [20] - Некоторые общие команды представлены символически для облегчения набора текста. Один из примеров - с оскорблениями , где
(
и)
обозначают начало и конец оскорбления, соответственно. [21] Другой пример - ручное излучение , где[
и]
указывают протяженность луча. [22]
Интерфейс LilyPond с Pango требует, чтобы кодировка входных символов была UTF-8 . [23] Одним из преимуществ этого является то, что в один и тот же исходный файл можно включить более одного языка.
Пример входного файла LilyPond [ править ]
\ версия "2.19.82"\ include "english.ly"\ header { title = \ markup { "Отрывок из" \ italic "fibonacci" } composer = "Патрик Маккарти" % copyright = \ markup \ fontsize # -5 % { % Copyright © 2009. % Набор с помощью GNU LilyPond. % Передано композитором в общественное достояние. %} }\ paper { paper-height = 4.6 \ in paper-width = 8.5 \ in отступ = # 0 system-count = # 2}\ score { \ new PianoStaff = "pianostaff" << \ new Staff = "RH" \ relative c ' { \ случайноStyle Score.piano \ clef "treble" \ time 2/4 \ set Score.currentBarNumber = # 51 \ tempo " Медленно и ровно "4 = 60 <например,> 4 \ acciaccatura { cs16 [ds] } <например,> 4 | % м. 51 <ds gs,> 4 \ acciaccatura { e16 [ds] } <cs gs> 4 | % м. 52 <cs gs> 4 \ acciaccatura { ds16 [cs] } <c g> 4 | % м. 53 <cs gs> 4 \ acciaccatura { ds16 [e] } <es bs gs> 4 | % м. 54 <e gs,> 4 \ acciaccatura { cs16 [ds] } e16 f gs a | % м. 55 <gs c,> 8 \ acciaccatura { as16 [gs] } <es b> 8 ~ <es b> 16 ds b as | % м. 56 b16 d8 bf32 f 'g16 af bf c | % м. 57 <df df,> 16 (c af) <e 'e,> (ds b) <g' g,> (ds | % m. 58 \ время 3/4 <gs gs,> 16) \ noBeam d, 16 f gs a16 efb c16 d, (f gs | % m. 59 а16 б) д, (ж gs16 bc) f, ( gs16 как bc) | % м. 60 } \ new Dynamics = "Динамика _ pf" { s4 \ p \ < s4 | % м. 51 s4 s4 | % м. 52 s4 \ mp \> s4 | % м. 53 s4 s4 \! | % м. 54 s4 \ p s4 | % м. 55 s1 * 2/4 | % м. 56 s4 \ < s4 | % м. 57 s4 s4 | % м. 58 \ переопределение DynamicText.extra-интервал ширина = # '(-. 0,75 0,75) s16 \ mf s16 \ p s8 s4 s4 | % м. 59 с2. | % м. 60 } \ new Staff = "LH" \ relative c, { \ clef "bass" \ time 2/4 cs4. cs8 | % м. 51 cs4. d8 | % м. 52 f4. a8 | % м. 53 f4. d8 | % м. 54 cs4. cs8 | % м. 55 d4 ds | % м. 56 гс4. bf, 8 | % м. 57 f'4 b, | % м. 58 \ время 3/4 d4. d8 ~ d4 | % м. 59 ef2 f4 | % м. 60 } >>}
Соответствующий вывод [ править ]
Более сложный вывод [ править ]
Lilypond также может создавать широко настраиваемые выходные данные. Примером может служить краткий отрывок из фортепианной пьесы Штокхаузена ниже.
Сотрудничество с другими проектами [ править ]
Некоторые графические редакторы партитур, такие как Rosegarden , NoteEdit , Canorus, Denemo и TuxGuitar, могут экспортировать файлы непосредственно в формат LilyPond. Другие графические приложения служат интерфейсом для LilyPond, включая Frescobaldi и плагин LilyPondTool для jEdit . Denemo интегрирует PDF- файл LilyPond в свой дисплей, позволяя выполнять некоторые операции редактирования окончательной набранной партитуры.
Проект Mutopia , распространяющий бесплатные ноты, использует LilyPond для набора своей музыки, как и Musipedia, совместная музыкальная энциклопедия.
Emacs ' орг-режим содержит поддержку для встраивания LilyPond оценки в документы. [24]
OOoLilyPond, расширение LibreOffice, обеспечивает поддержку вызова LilyPond для встраивания оценок в документы. [25]
Интеграция в MediaWiki [ править ]
Lilypond доступен в MediaWiki через код расширения Score . Это, например, преобразует обозначение
<score sound = "1" > \ relative c '{fdfadfed cis a cis eagfe} </score>
в
Вышеприведенный отрывок представляет собой упрощенную версию сольфеджио до минор К.П. Баха . Более сложные партитуры, включая тексты песен, также доступны в MediaWikis.
Интеграция в текст с помощью lilypond-book [ править ]
Интеграция музыкальных элементов lilypond в различные форматы документов (как системы на основе TeX, такие как LaTeX и Texinfo , а также страницы DocBook и HTML ) изначально поддерживается через сопутствующую программу lilypond-book , разработанную и поддерживаемую сообществом LilyPond. [26] Это позволяет пользователям встраивать в тексты музыкальные элементы, такие как музыковедение, буклеты с песнями, рабочие листы для обучения и школьных экзаменов.
Интеграция с LaTeX [ править ]
Для интеграции в систему подготовки документов LaTeX ly LuaT e X был разработан как пакет LuaL a T e X для встраивания музыкальных элементов в тексты. Он включает функции для согласования макета и внешнего вида музыкальных элементов с окружающим текстовым документом. [27] Музыкальные элементы могут состоять из музыкальных символов, текстов песен, диаграмм гитарных аккордов, отрывков, музыкальных отрывков, гитарных табулатур или многостраничных партитур.
Сравнение с другими авторами партитуры [ править ]
Finale и Sibelius - два запатентованных автора партитуры, которых часто сравнивают с LilyPond. Эндрю Гаврилюк, пользователь LilyPond, написал серию статей, сравнивающих качество вывода между Finale и LilyPond. [28]
Еще один составитель партитуры с функциями, сравнимыми с LilyPond, - это SCORE , но SCORE полагается на ручное позиционирование больше, чем Lilypond.
См. Также Сравнение авторов партитуры .
См. Также [ править ]
- Обозначение ABC
- Общие музыкальные обозначения
- Денемо
- Фрескобальди
- Ноты GUIDO
- MuseScore
- VexFlow
- MusicXML
- MusiXTeX
- ПримечаниеПравить
- Музыкальный писец Филиппа
- Сад роз
- SCORE (программное обеспечение)
- Список музыкального программного обеспечения
- Список составителей партитуры
Ссылки [ править ]
- ^ «Авторы» . Команда разработчиков LilyPond . Проверено 21 марта 2015 года .
- ^ "LilyPond - Ноты для всех" . 10 января 2021 . Проверено 10 января 2021 года .
- ^ "LilyPond - Ноты для всех" . 24 января 2021 . Проверено 24 января 2021 года .
- ^ "Архив с исходным кодом" . lilypond.org . Проверено 4 марта 2016 года .
- ^ «Загрузки для LilyPond 2.18.2» . lilypond.org . Проверено 4 марта 2016 года .
- ^ "КОПИРОВАНИЕ - lilypond.git - GNU LilyPond" . git.savannah.gnu.org .
- ^ "Учебное пособие по GNU LilyPond: Предисловие" . Проверено 23 декабря 2017 года .
- ^ "README препроцессора MusiXTeX" . Проверено 31 марта 2010 года .
- Перейти ↑ Kroger, Pedro (2004). «Re: Происхождение названия кувшинок» . Список рассылки пользователей lilypond . lists.gnu.org . Проверено 19 марта 2014 года .
- ^ Nienhuys, Хан-Вен (31 июля 1998). «Выпущен GNU LilyPond 1.0» . gnu-music-Disc (Список рассылки) . Проверено 16 февраля 2010 года .
- ^ Nienhuys, Хан-Вен (24 сентября 2003). «LilyPond 2.0 - создавайте красивые нотные репродукции» . info-lilypond (Список рассылки) . Проверено 16 февраля 2010 года .
- ^ "Языки программирования LilyPond" . Проверено 21 марта 2015 года .
- ^ "Наборщик музыки GNU LilyPond - Анализ кода" . Проверено 25 июля 2017 года .
- ^ "Обзор архитектуры LilyPond" . Проверено 21 марта 2015 года .
- ^ Griewank, Andreas (4 января 2010). «Настройка гитар и чтение нот в мажорных третях» . Препринты Matheon . Берлин, Германия: Исследовательский центр DFG «МАТЕОН, Математика для ключевых технологий». 695 . Проверено 14 января 2020 года .
- ^ "LilyPond - Очерк автоматической гравировки нот" . Проверено 23 декабря 2017 года .
- ^ "Пропорциональное обозначение" . Проверено 21 марта 2015 года .
- ^ «Учебное пособие по LilyPond: 1.2.2 Работа с входными файлами» . Проверено 21 марта 2015 года .
- ^ "LilyPond Notation Reference: 1.1.1 Написание смол" . Проверено 21 марта 2015 года .
- ^ «LilyPond Notation Reference: 1.3.1 Выразительные знаки, прикрепленные к нотам» . Проверено 21 марта 2015 года .
- ^ «LilyPond Notation Reference: 1.3.2 Выразительные знаки в виде кривых» . Проверено 21 марта 2015 года .
- ^ "Ссылка на обозначения LilyPond: 1.2.4 Лучи" . Проверено 21 марта 2015 года .
- ^ "LilyPond Notation Reference: 3.3.3 Кодирование текста" . Проверено 21 марта 2015 года .
- ^ "org-babel lilypond language module" . 17 декабря 2018 . Проверено 30 ноября 2019 г. - через GitHub.
- ↑ Клаус Блюм (18 апреля 2017 г.). «OOoLilyPond: Создание музыкальных фрагментов в документах LibreOffice» . Проверено 12 октября 2017 года .
- ^ Сообщество LilyPond (1996–2020). «Руководство по использованию LilyPond» .
- ↑ Перон, о. Жак; Лиска, Урс; Springuel, Br. Самуэль (27 мая 2019 г.). «LyLuaTeX 1.0f» (PDF) . Комплексная сеть архивов TeX (CTAN) . Проверено 16 апреля 2020 года .
- ^ Hawryluk, Эндрю. «Финал и пруд с лилиями» . Проверено 15 февраля 2010 года .
Внешние ссылки [ править ]
- Официальный веб-сайт
- "lyluatex - Команды для включения оценок lilypond в документ LATEX (Lua)" . Проверено 16 апреля 2020 года .