LilyPond

редактировать
Автор партитуры бесплатного программного обеспечения

LilyPond
LilyPond-logo-with-music.png
Fibonacci Composition.svg
Разработчик (и) Дэвид Каструп, Вернер Лемберг, Хан-Вен Ниенхейс, Ян Ньювенхейзен, Карл Соренсен, Янек Вархол и др.
Первоначальный выпуск1996 г.; 24 года назад (1996 г.)
Стабильный выпуск 2.20.0 (1 марта 2020 г.; 7 месяцев назад (2020-03-01))
Предварительный выпуск 2.21.7 (11 октября 2020 г. ; 17 дней назад (2020-10-11))
Репозиторий Измените это в Wikidata
Написано наC ++, Scheme, Metafont, PostScript, Python
Операционная система
Размер 20–100 МБ
Стандарт (s)EPS, MIDI, MusicXML, PDF, PS, SVG
Доступно наанглийском, каталонском, голландском, французском, немецком, Венгерский, итальянский, японский, испанский
Тип Музыкальное программное обеспечение, Scorewriter
Лицензия GPLv3
Веб-сайтlilypond.org

LilyPond - это компьютерная программа и формат файла для гравировки музыки. Одна из основных целей LilyPond - создавать партитуры, на которых выгравированы традиционные правила компоновки, отражающие эпоху, когда партитуры выгравировали вручную.

LilyPond кроссплатформенный и доступен для нескольких распространенных операционных систем ; выпущенный в соответствии с условиями Стандартной общественной лицензии GNU, LilyPond является бесплатным программным обеспечением.

. MediaWiki Расширение Score позволяет редакторам встраивать нотацию Lilypond в Статьи в Википедии и преобразование их в изображения PNG, аудио и файлы MIDI.

Содержание
  • 1 История
    • 1.1 Версия 1.0
    • 1.2 Версия 2.0
  • 2 Дизайн
  • 3 Программные функции
  • 4 Обзор синтаксиса ввода
  • 5 Пример входного файла LilyPond
    • 5.1 Соответствующий вывод
    • 5.2 Более сложный вывод
  • 6 Сотрудничество с другими проектами
    • 6.1 Интеграция в MediaWiki
    • 6.2 Интеграция в текст с помощью lilypond-book
    • 6.3 Интеграция в LaTeX
  • 7 Сравнение другим авторам партитуры
  • 8 См. также
  • 9 Ссылки
  • 10 Внешние ссылки
История

Проект LilyPond был начат в 1996 году Хан-Веном Ниенхейсом и Яном Ньювенхёйзеном после того, как они решили отказаться от работы над MPP (MusiXTeX PreProcessor), проектом, над которым они начали сотрудничать в 1995 году. Его название было вдохновлено как проектом Rosegarden, так и знакомым Ниенхейса и Ньивенхайзен по имени Сюзанна, имя, которое означает лилия на иврите (שׁוּשָׁן).

Версия 1.0

LilyPond 1.0 была выпущена 31 июля 1998 года, подчеркнув разработку специального музыкального шрифта, Feta и полное отделение LilyPond от MusiXTeX.

Версия 2.0

LilyPond 2.0 была выпущена 24 сентября 2003 г., объявляя об упрощенной синтаксической модели и гораздо более полном наборе средств для обозначения различные стили музыки.

Дизайн
Скриншот LilyPond, работающего в Linux

LilyPond в основном написан на C ++ и использует Scheme (интерпретируется GNU Guile ) в качестве языка расширения, позволяющего настраивать пользователя. У него относительно большая кодовая база; по состоянию на 10 марта 2017 г. исходный код включает более 600 000 строк C ++, 140000 строк Scheme и 120 000 строк кода Python.

Он использует простую текстовую нотацию для ввода музыки, которую LilyPond интерпретирует и обрабатывает в серия этапов. На заключительном этапе нотная запись выводится в PDF (через PostScript ) или в другие графические форматы, такие как SVG или PNG. LilyPond также может создавать файлы MIDI, соответствующие выходным нотам.

LilyPond - это текстовое приложение, поэтому оно не содержит собственного графического пользовательского интерфейса для помощи в создании партитуры. (Однако графический интерфейс LilyPad на основе текстового редактора для Windows и MacOS включен по умолчанию в эти системы.) Тем не менее, он имеет гибкий язык ввода, который стремится быть простым, что облегчает обучение для новых пользователей. LilyPond придерживается парадигмы WYSIWYM ; Рабочий процесс набора нот с помощью LilyPond аналогичен процессу подготовки документов с помощью LaTeX.

LilyPond поддерживает экспериментальные нотные записи. Его гитарные возможности поддерживают альтернативные строчки, такие как настройка мажорных третей.

Программные функции
Бетховена Симфония № 5, напечатанная с файл PDF с цифровой гравировкой, созданный LilyPond; выпущенный Mutopia Project

Основная цель LilyPond - производить продукцию, сопоставимую с профессионально выгравированными партитурами, вместо того, чтобы выглядеть механически или сгенерированной компьютером. В эссе с веб-сайта LilyPond, написанном разработчиками LilyPond, объясняются некоторые типографские проблемы, которые решает LilyPond:

  • Оптическое масштабирование шрифта : в зависимости от размера нотоносца дизайн музыкального шрифта немного изменяется; это особенность, которой известен шрифт Дональда Кнута Computer Modern. В результате заголовки банкнот становятся более округлыми, а линии нотоносца - толще.
  • Оптический интервал : направления стержней учитываются при размещении последующих нот.
  • Специальная обработка строк книги : строки книги являются сокращается, когда рядом находятся случайные предметы, что улучшает читаемость.
  • Пропорциональный интервал : ноты могут быть расположены таким образом, чтобы точно отражать их продолжительность. Например, при этой настройке расстояние между последовательными четвертными в четыре раза больше, чем между последовательными шестнадцатыми нотами.
Обзор синтаксиса ввода

Родной язык ввода для LilyPond является всеобъемлющим и состоит из множества команд, необходимых для выражения любого вида артикуляции, динамики, метра и т. д. Он аналогичен таковому в TeX. Возможность встраивать код схемы в исходный файл LilyPond разрешает произвольные расширения входного языка и помогает с алгоритмической композицией. Некоторые общие синтаксические особенности перечислены ниже.

  • Однострочные комментарии начинаются со знака процента %.
  • Примечания представлены в формате длительности основного тона: высота звука указывается с помощью обозначения высоты тона Гельмгольца, а длительность - указывается в системе, основанной на цифрах . Семантика формата длительности основного тона изменяется в зависимости от активного режима ввода; это подробно объясняется в руководстве LilyPond. Например, в абсолютном режиме a'4- это A, на одну октаву выше базовой A (A3 в научной записи высоты тона ), длины четверти.
  • Команды обычно начинаются с обратной косой черты (например, \ timeили \ slurUp). Функция рассматриваемой команды определяет место размещения команды; например, если команда используется для обозначения фиксированного динамического на определенной заметке, она помещается после заметки.
  • Некоторые общие команды представлены символически для облегчения набора текста. Одним из примеров является оскорбления, где (и )обозначают начало и конец оскорбления, соответственно. Другой пример - ручное излучение, где [и ]указывают протяженность луча.

Для интерфейса LilyPond с Pango требуется введите кодировку символов как UTF-8. Одним из преимуществ этого является то, что в один исходный файл можно включить более одного языка.

Пример входного файла LilyPond
\ version "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 indent = # 0 system-count = # 2} \ score {\ new PianoStaff = "pianostaff" << \new Staff = "RH" \relative c' { \accidentalStyle Score.piano \clef "treble" \time 2/4 \set Score.currentBarNumber = #51 \tempo "Slow and steady" 4 = 60 4 \ acciaccatura {cs16 [ ds]} 4 | % м. 51 4 \ acciaccatura {e16 [ds]} 4 | % м. 52 4 \ acciaccatura {ds16 [cs]} 4 | % м. 53 4 \ acciaccatura {ds16 [e]} 4 | % м. 54 4 \ acciaccatura {cs16 [ds]} e16 f gs a | % м. 55 8 \ acciaccatura {as16 [gs]} 8 ~ 16 ds b as | % м. 56 b16 d8 bf32 f 'g16 af bf c | % м. 57 16 (c af) (ds b) (ds |% m. 58 \ time 3/4 16) \ noBeam d, 16 f gs a16 efb c16 d, (f gs |% m. 59 a16 b) e, (f gs16 bc) f, (gs16 as bc) | % м. 60} \ new Dynamics = "Dynamics_pf" {s4 \ p \ < s4 | % m. 51 s4 s4 | % m. 52 s4 \mp \>s4 | % м. 53 s4 s4 \! | % м. 54 s4 \ p s4 | % м. 55 s1 * 2/4 | % м. 56 s4 \ < s4 | % m. 57 s4 s4 | % m. 58 \override DynamicText.extra-spacing-width = #'(-0.75. 0.75) s16 \mf s16 \p s8 s4 s4 | % m. 59 s2. | % m. 60 } \new Staff = "LH" \relative c, { \clef "bass" \time 2/4 cs4. cs8 | % m. 51 cs4. d8 | % m. 52 f4. a8 | % m. 53 f4. d8 | % m. 54 cs4. cs8 | % m. 55 d4 ds | % m. 56 gs4. bf,8 | % m. 57 f'4 b, | % m. 58 \time 3/4 d4. d8 ~ d4 | % m. 59 ef2 f4 | % m. 60 }>>}

Соответствующий вывод

Обработанный вывод

Более сложный вывод

Lilypond также может создавать широко настраиваемые выходные данные. Примером может служить краткий отрывок из фортепианной пьесы Штокхаузена ниже.

Отрывок из Klavierstück II Штокхаузена в качестве примера визуализации

Сотрудничество с другими проектами
Сначала измеряет из Adeste Fideles, созданный LilyPond.

Несколько графических составителей партитуры - таких как Rosegarden, NoteEdit, Canorus, Denemo и TuxGuitar - можно экспортировать файлы непосредственно в формат LilyPond. Другие графические приложения служат интерфейсом для LilyPond, включая Frescobaldi и плагин LilyPondTool для jEdit. Denemo интегрирует в свой дисплей PDF вывод LilyPond, позволяя выполнять некоторые операции редактирования с окончательной набранной партитурой.

Проект Mutopia, распространяющий бесплатный контент ноты, использует LilyPond для набора своей музыки, как и Musipedia, совместная музыкальная энциклопедия.

Emacs 'org-mode содержит поддержку для встраивания оценок LilyPond в документы.

OOoLilyPond, расширение LibreOffice обеспечивает поддержку вызова LilyPond для встраивания оценки в документы.

Интеграция с MediaWiki

Lilypond доступен в MediaWiki через код Расширение оценки. Это, например, преобразует нотацию

\ relative c '{fdfadfed cis a cis eagfe}

в

Музыкальные партитуры временно отключены.

Приведенный выше отрывок является упрощенным версия сольфеджио до минор от CPE Бах. Более сложные партитуры, включая тексты песен, также доступны в MediaWikis. См. Пример в Времяпровождение с хорошей компанией.

Интеграция в текст с использованием lilypond-book

Интеграция музыкальных элементов lilypond в различные форматы документов (обе системы на основе TeX, такие как LaTeX и Texinfo, а также страницы DocBook и HTML ) изначально поддерживается через сопутствующую программу lilypond-book, разработанную и поддерживаемую сообществом LilyPond. Это позволяет пользователям встраивать в тексты музыкальные элементы, такие как музыковедение, буклеты с песнями, рабочие листы для обучения и школьных экзаменов.

Интеграция в LaTeX

Для интеграции в систему подготовки документов LaTeX lyLuaTeX был разработан как пакет LuaLaTeX для встраивания музыкальных элементов в тексты. Он включает в себя функции для согласования макета и внешнего вида музыкальных элементов с окружающим текстовым документом. Музыкальные элементы могут состоять из музыкальных символов, текстов песен, диаграмм гитарных аккордов, отрывков, музыкальных отрывков, гитарных табулатур или многостраничных партитур.

Сравнение с другими авторами партитуры

Finale и Sibelius - два проприетарных автора партитуры, которых часто сравнивают с LilyPond. Эндрю Гаврилюк, пользователь LilyPond, написал серию статей, в которых сравнивал качество вывода между Finale и LilyPond.

Еще один составитель партитуры со сравнимыми функциями с LilyPond - SCORE, но SCORE полагается на ручное позиционирование больше, чем Лилипонд знает.

См. Также Сравнение авторов партитуры.

См. Также
  • Портал бесплатного программного обеспечения с открытым исходным кодом
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-27 09:45:01
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте