GNU LilyPond

GNU LilyPond ir bezmaksas programmatūra nošu "gravēšanai" pazīstamajās operētājsistēmās; tā rakstīta valodā C++ un izmanto Scheme bibliotēku (GNU Guile), kas atļauj lietotājiem rakstīt pašiem savus paplašinājumus. Tā izmanto mūzikas pierakstu vienkāršā tekstā, ko pēc tam kompilē PDF (ar starpformātu PostScript), SVG un citiem formātiem. LilyPond var automātiski veidot MIDI failus no LilyPond formātā pierakstītas mūzikas.

Atšķirībā no komerciālām programmām, piemēram, Finale and Sibelius, LilyPond neprasa noteiktu grafisko saskarni jeb GUI nošu tekstu veidošanai. Tomēr visām šīm programmām ir kopīgs mērķis — elektroniski veidot nošu tekstus, atbilstoši rietumu mūzikas pieraksta tradīcijai. Dažas grafiskās nošu salikšanas programmas, piemēram, Rosegarden un NoteEdit var eksportēt failus tieši LilyPond formātā.

Viens no Lilypond veidotāju mērķiem ir veidot nošu tekstus, kas iegravēti saskaņā ar tradicionāliem izvietojuma likumiem, kuri bija spēkā tad, kad notis gravēja ar roku. Tādēļ nošu izskats var nedaudz atšķirties no tā, ko veido pašreiz lielākās komercprogrammas, lai gan arī to veidotais nošu grafiskais izskats pēdējos gados ir pietuvinājies senākajai tradīcijai.

Mutopia projekts, kas piedāvā bezmaksas notis, izmanto LilyPond nošu tekstu salikšanai, tāpat kā Musipedia — lietotāju saimes uzturēta mūzikas enciklopēdija. WikiTeX — MediaWiki saskarne atbalsta LilyPond rediģēšanu tieši enciklopēdijas rakstos.

LilyPond ieejas faila paraugs 
Teksts pēc procenta simbola (%) ir komentārs. Vieglākai lasāmībai var lietot arī divus procentu simbolus.

Programmā LilyPond, notis ievada, norādot nots nosaukumu (c, cis jeb des, d, dis jeb ees, e, f, fis jeb ges, g, gis jeb aes, a, ais jeb bes, b), augstumu (to attēlo ar virkni apostrofu — uz augšu no mazās oktāvas, vai komatu virkni — uz leju no Mazās oktāvas) kā arī garumu. Piemēram, a'4 ir A (jeb skaņa "la") no pirmās oktāvas, kur nots garums ir viena ceturtdaļa. LilyPond sintakses īpatnība ir tā, ka dažādus modifikatorus, ieskaitot iekavas, raksta aiz tās nots, kuru tie iespaido. Piemēram, d8[ c] apzīmē divu astotdaļnošu pāri, kas savilktas kopā (uz to norāda kvadrātiekavas).

LilyPond atbalsta divus nošu ievades režīmus — absolūto un relatīvo. Absolūtajai nošu ievadei, nots augstumu jeb oktāvu norāda katrai notij atsevišķi ar vajadzīgo apostrofu vai komatu skaitu. Relatīvajā režīmā notis bez norādīta garuma uzskatāmas par tuvām iepriekšējai notij — komatus un apostrofus lieto vienīgi tad, ja melodijā ir lēciens, kura garums pārsniedz kvartu. Dotajā piemērā izmantots relatīvais nošu augstuma apzīmējums.

Vienīgais kodējums, kuru LilyPond saprot ir UTF-8. Tas ļauj kombinēt visdažādāko valodu tekstus nošu anotācijās, dziesmu vārdu tekstos, u.tml. T.i. jālieto teksta redaktori, kas atbalsta UTF-8, citādi LilyPond nevarēs strādāt ne ar ko citu, kā vienīgi ASCII tekstiem, kuros nav modificētu latīņu burtu (ar to pietiek, lai saliktu notis bez vārdiem vai dziesmas angļu vai itāļu valodās).

<nowiki>
#!lilypond firebreathers.ly -*- coding: utf-8; -*-
%% Tēma melodijai "Fire Breathers" no pastāvīgi izstrādes stadijā
%% esošas datorspēles, komponējis Urpo Lankinen.

%% Piezīme: Komponists šo tekstu darījis pieejamu Vikipēdijai
%% ar GFDL licenci.  Versijas ārpus Vikipēdijas parasti 
%% ir ar CC BY-SA licenci.

\include "suomi.ly"

%% Optional language upgrade helper.
\version "2.6.0"

%% The header block defines the titles and texts.
\header {
    title = "Theme to ``Fire Breathers!''"
    instrument = "For the 2A03 or SID"
    composer = "Urpo Lankinen"
    enteredby = "Urpo Lankinen"
    updatedby = "Jan Nieuwenhuizen"
    date = "June 2005"
}

Melody = \relative c'' {
   \clef treble
   \time 3/4
   \key a \minor

   %% The piece starts with a quarter-note partial bar, "\partial 4"
   %% tells so to LilyPond.
   \partial 4
   a4 | e'4.( d8[ c]) r8 | d4.( c8[ h]) r8 | a2. | e2
   a4 | e'4.( d8[ c]) r8 | d4.( e8[ f]) r8 | e2. | r2
   e4 |  f4.( e8[ d]) r8 | d4.( c8[ h]) r8 | a2. | e2
   a4 | e'4.( d8[ c]) r8 | d4.( c8[ h]) r8 | a2. ~ a2 r4 | \bar "|."
}

%% Otrā balss
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 "|."
}

%% Melodijas, vokālo tekstu gabalus, akordus, utml. var piešķirt
%% mainīgajiem un izmantot cik patīk reižu. 
%% Šeit to izmanto, lai apzīmētu atkārtojošos fragmentus
%% no pavadījuma. 
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 "|."
}

%% Viss skaņdarbs aprakstāms ļoti īsi, ja definēti 
%% atbilstoši mainīgie
<<
  \new Staff \Melody
  \new Staff \Accompaniment
  \new Staff \SecondVoice
>>
</nowiki>

Piemēram atbilstošais nošu attēls

Atsauces

Ārējās saites 
 
 "Lilypond, a system for automated music engraving" -(by Han-Wen Nienhuys, Jan Nieuwenhuizen; PDF)
 LilyPond Forum — hosted by Nabble archiving LilyPond mailing lists into a searchable forum.
 LilyPond wiki
 Lilypond-based Musical Scores Archive
 Denemo, a GUI for LilyPond.
 LilyPondTool, a plug-in for jEdit with sophisticated LilyPond support.
 Musipedia, a collaborative music encyclopedia that uses LilyPond

LilyPond, GNU