Интернет магазин китайских планшетных компьютеров



Компьютеры - GNU LilyPond - Примеры работы

02 мая 2011


Оглавление:
1. GNU LilyPond
2. Примеры работы
3. Достоинства программы



Пример простейшей партитуры

Простейшая партитура

В любом текстовом редакторе необходимо набрать текст

{ a b c d }

Файл нужно сохранить с суффиксом .ly, после чего запустить из командной строки команду lilypond имя файла или просто перетащить файл мышью на значок программы. Если при наборе не было допущено ошибок, будет сгенерирован pdf-файл с готовыми нотами. В процессе генерации файла автоматически создаётся log-файл, в котором в случае ошибки будет указана причина, по которой сгенерировать файл не удалось.

Результат представлен на рисунке.

Сложный пример

Используемый синтаксис

Текст, идущий за знаком процента — это комментарий. Двойные знаки проценты используются здесь для удобочитаемости.

В LilyPond ноты вводятся в формате нота, октава и длительность; октава задаётся серией запятых или апострофов, каждый из которых, соответственно, понижает или повышает ноту на одну октаву. Например, a'4 обозначает ноту ля, на октаву выше базовой, длительностью в одну четвёртую. Синтаксисом предусмотрено правило: все остальные модификаторы — в том числе открывающие скобки, которые по обычным правилам должны были бы быть до ноты — добавляются после ноты, так d8 означает пару восьмых нот, соединённых общим ребром, что обозначается квадратными скобками.

Исходный текст

#!lilypond firebreathers.ly -*- coding: utf-8; -*-
%% Тема из "Огнедышащих", самодельной игры NES, находящейся в вечной
%% разработке. Композитор Urpo Lankinen.
 
%% Примечание: Композитор сделал этот исходный код доступным Википедии под
%% лицензией GFDL. Некоторые предыдущие версии этого кода могут также быть
%% доступны под лицензией CC BY-SA.
 
%% В этом файле используются обозначения нот, принятые в Европе и в России
%% (например, вместо употребляемых американцами "F#" и "Bb", использованы 
%% "Fis" и "B" соответственно).
%% Голландские названия нот используются по умолчанию.
\include "suomi.ly"
 
%% Необязательная подсказка для обновления языка.
\version "2.6.0"
 
%% Заголовки.
\header {
    title = "Тема из ``Огнедышащих!''"
    instrument = "Для 2A03 или SID"
    composer = "Urpo Lankinen"
    enteredby = "Urpo Lankinen"
    updatedby = "Jan Nieuwenhuizen"
    date = "June 2005"
}
 
Melody = \relative c'' {
   \clef treble
   \time 3/4
   \key a \minor
 
   %% Пьеса начинается с затакта длиной в четверть, "\partial 4"
   %% на это и указывает.
   \partial 4
   a4 | e'4. r8 | d4. r8 | a2. | e2
   a4 | e'4. r8 | d4. r8 | e2. | r2
   e4 |  f4. r8 | d4. r8 | a2. | e2
   a4 | e'4. r8 | d4. r8 | a2. ~ a2 r4 | \bar "|."
}
 
%% Второй голос.
SecondVoice = \relative c {
   \clef bass
   \time 3/4
   \key a \minor
 
   \partial 4
    r4 | e2.              | d2.             | a2. | e2
    a4 | e'2.             | d2       f4     | e2. | r2.
       |  f2.             | d2.             | a2. | e2
    a4 | e'2.             | d2       h4     | a2. ~ a2 r4 | \bar "|."
}
 
 
%% Мелодии, слова и аккорды могут присваиваться переменной и затем
%% *повторно использоваться* где-либо ещё.  Здесь представлены три
%% различных шаблона аккомпанемента используемые для сопровождения
%% всей мелодии.
AccompA = \relative c { a4 e'8 a, e' a, | }
AccompB = \relative c { g4 d'8 g, d' g, | }
AccompC = \relative c { e,4 h'8 e, h' e, | }
 
Accompaniment = {
   \clef bass
   \time 3/4
   \key a \minor
 
   \partial 4
    r4 | \AccompA \AccompB \AccompA \AccompA
        \AccompA \AccompB \AccompA \AccompA
        \AccompC \AccompC \AccompA \AccompA
        \AccompA \AccompB \AccompA | a2 r4 | \bar "|."
}
 
%% Высокоуровневое определение музыки.
<<
  \new Staff \Melody
  \new Staff \Accompaniment
  \new Staff \SecondVoice
>>

Результат работы

Результат обработки сложного примера



Просмотров: 2671


<<< GnuGK