GNU LilyPond

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
GNU LilyPond
software
Siglă
Exemplu de captură de ecran
Tip Program notational
Dezvoltator Dezvoltatori GNU LilyPond
Data primei versiuni 1996
Ultima versiune
  • 2.22.0 (10 ianuarie 2021)
  • 2.23.0 (24 ianuarie 2021)
Sistem de operare Multiplatform
Limba Sistem
Piton
C ++
Licență Licență publică generală GNU
( licență gratuită )
Site-ul web lilypond.org

GNU LilyPond este un software gratuit pentru notație muzicală , disponibil pentru toate sistemele de operare majore. Folosește o notație textuală pentru muzică bazată pe setul de caractere ASCII (conform modelului folosit și de LaTeX ), care este apoi compilată pentru a obține documente în PDF , PostScript , SVG , PNG și alte formate. LilyPond poate genera, de asemenea, un fișier MIDI .

Spre deosebire de alte programe comerciale populare precum Finale și Sibelius , LilyPond nu are o interfață grafică integrată pentru crearea de scoruri. Cu toate acestea, are același scop de a produce o ieșire comparabilă cu partituri tipărite profesional. Unele programe de notație muzicală grafică exportă fișiere în format LilyPond.

Unul dintre principalele avantaje ale LilyPond este acela de a produce partituri de înaltă calitate, concepute urmând regulile tradiționale de scriere, inspirate din vremea când ștampilele partiturii erau plasate manual. Partituri produse cu LilyPond sunt adesea considerate a fi mai bune decât cele realizate cu programe comerciale, deși acestea din urmă s-au îmbunătățit mult în ultimii ani [1] .

LilyPond este dezvoltat de o comunitate foarte activă: sunt publicate actualizări continue care constau în remedieri de erori pentru versiunea stabilă și, în plus, caracteristici noi pentru versiunea de dezvoltare. Mai mult, fiind scris în C ++ și asamblat folosind o bibliotecă Scheme ( GNU Guile ), permite utilizatorului să adauge extensii și personalizări.

Proiecte web folosind LilyPond

Primele bare ale Adele fideles , generate de LilyPond.

Există mai multe proiecte web care utilizează LilyPond (de asemenea, datorită faptului că este ușor integrat în paginile web):

  • Proiectul Mutopia , care colectează și distribuie muzică gratuită, folosește LilyPond ca format de distribuție.
  • Musipedia , o enciclopedie de muzică online, folosește LilyPond pentru a introduce și vizualiza partituri.
  • Software-ul MediaWiki , pe care se bazează Wikipedia , are o interfață numită WikiTeX care, printre altele, permite inserarea de muzică în articole prin formatul LilyPond.
  • Programul notational online Wikifonia .

Beneficii

Avantajele acestui software, pe lângă faptul că este software gratuit, sunt:

  • capacitatea de a crea scoruri cu aspect profesional, fără a interveni în formatare;
  • ușurința comunicării datelor, care poate fi procesată cu orice editor de text;
  • capacitatea de a crea orice tip de muzică, de la partitura orchestrală până la cântarea gregoriană;
  • disponibilitatea documentației gratuite de cea mai înaltă calitate, care permite învățarea la orice nivel;
  • abilitatea de a concepe muzica la un nivel ridicat de abstractizare, referindu-se la teme sau motive mai degrabă decât să o vadă ca o succesiune de note.

Dezavantaje

Posibilele dezavantaje sunt:

  • o fază de învățare destul de lungă și o logică diferită de cea a software-ului WYSIWYG ;
  • lungimea, în număr de caractere, a codurilor de compilare;
  • sintaxa, care devine destul de complicată pentru utilizarea funcțiilor avansate;
  • dificultatea de a cere compilatorului să se supună unor nevoi particulare, cum ar fi, de exemplu, să rămână într-un număr maxim de pagini;
  • sărăcia, în acest moment, a mecanismului care generează fișiere MIDI.

În ceea ce privește acest ultim punct, trebuie avut în vedere faptul că, în general, logica dezvoltării software-ului liber este diferită de cea a dezvoltării software-ului comercial, adică intenționezi să creezi un produs care poate face doar un singur lucru, dar realizat extrem de bine. Fișierul MIDI este, prin urmare, destinat ca o modalitate de a verifica dacă nu există erori de transcriere și nu ca rezultat care poate fi utilizat în orice alt mod. De fapt, pentru aceste sarcini, există programe speciale, compatibile și cu LilyPond, precum Rosegarden .

Pentru utilizatorii cărora le place în mod deosebit interfața grafică sau care nu au chef să învețe sintaxa LilyPond, au fost scrise diferite programe, inclusiv:

  • Denemo , care permite inserarea de muzică (dar fără caracteristicile mai avansate) grafic;
  • Frescobaldi , creat pentru a oferi o interfață grafică utilizatorului către LilyPond.

Interacțiunea cu LaTeX

O variantă numită lilypond-book vă permite să creați documente elaborate L A T E X , care conțin fragmente de muzică de lungime variabilă (de la o notă la o carte întreagă) amestecate cu text.

De asemenea, puteți rula LilyPond cu parametrul - tex care generează un cod T E X care poate fi ulterior integrat într-un alt fișier.

Integrare în LibreOffice

LilyPond poate fi integrat într-un document Apache OpenOffice și în LibreOffice datorită modulului OOoLilyPond. [2] [3]

Exemplu de fișier de intrare LilyPond

Textele după semnul procentual (%) sunt comentarii. Dublu procent este utilizat pentru a îmbunătăți lizibilitatea.

În LilyPond, notele sunt introduse ca o secvență de note (notație anglo-saxonă: abcdefg), ton și durată. Unul sau mai multe apostrofe (') sau virgule (,) plasate după notă indică respectiv o octavă mai mare sau mai mică decât cea de referință. Duratele sunt indicate cu numitorul fracției întregi (scurte) dorite (numerele 1, 2, 4, 8 etc.). De exemplu, a'4 este un A la 440Hz (A în notația anglo-saxonă este A), cu o octavă deasupra celei de bază, cu o sfert de notă (crotchet). O notă de sintaxă curioasă este faptul că orice alt modificator de notă, care este scris de obicei înainte de nota însăși, în LilyPond trebuie scris după.

În LilyPond, există două moduri de a intra în tonul unei note: absolut sau relativ. Absolut, pentru fiecare notă trebuie specificată înălțimea relativă la bază, în timp ce într-un mod relativ, când melodia se încadrează în limite, notele fără înălțimea specificată sunt considerate „apropiate” de notele care le preced și, prin urmare, înălțimea trebuie specificat numai dacă nota este la mai mult de jumătate de octavă față de cea anterioară. Următorul exemplu folosește modul relativ.

Codificarea pe care vă invităm să o utilizați pentru scrierea sursei este UTF-8 . Această codificare vă permite să inserați text (titlu, autor etc.) cu orice alfabet existent și chiar cu altele inexistente. Prima linie a exemplului următor îi spune lui Emacs să utilizeze această codificare. Dacă utilizați un alt editor, asigurați-vă că folosește UTF-8, altfel totul (în afară de ASCII ) nu va funcționa.

Sursă

 #! lilypond firebreathers.ly - * - codare: utf-8; - * -
Tema %% pentru „Fire Breathers”, un joc în continuă dezvoltare
%% Compus de Urpo Lankinen.

%% Notă: Compozitorul a făcut acest cod sursă disponibil
%% la Wikipedia sub licența GFDL. Versiuni în afara Wikipedia
%% Sunt de obicei sub CC BY-SA.

%% Acest fișier folosește notația finlandeză (de exemplu, unde
%% americanii folosesc „F #” și „Bb”, finlandezii folosesc „Fis” și „B”).
Numele olandeze %% sunt utilizate în mod implicit.
\ include „suomi.ly”

%% Asistență opțională pentru actualizarea limbii
\ versiunea "2.6.0"

%% Blocul Header definește titlurile
\ header {
    title = "Tema către„ Fire Breathers! "”
    instrument = "Pentru 2A03 sau SID"
    compozitor = "Urpo Lankinen"
    enterby = "Urpo Lankinen"
    updatedby = "Jan Nieuwenhuizen"
    data = "iunie 2005"
}

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

   %% Piesa începe cu o măsură parțială de un sfert, „\ partial 4”
   %% spune LilyPond.
   \ parțial 4
   a4 | e'4. (d8 [c]) r8 | d4. (c8 [h]) r8 | a2. | și2
   a4 | e'4. (d8 [c]) r8 | d4. (e8 [f]) ​​r8 | și2. | r2
   e4 | f4. (e8 [d]) r8 | d4. (c8 [h]) r8 | a2. | și2
   a4 | e'4. (d8 [c]) r8 | d4. (c8 [h]) r8 | a2. ~ a2 r4 | \ bar "|."
}

%% Aceasta este a doua intrare
SecondVoice = \ relative c {
   \ clef bass
   \ timp 3/4
   \ key a \ minor

   \ parțial 4
    r4 | și2. | d2. | a2. | și2
    a4 | e'2. | d2 f4 | și2. | r2.
       | f2. | d2. | a2. | și2
    a4 | e'2. | d2 h4 | a2. ~ a2 r4 | \ bar "|."
}

%% Melodii, cuvinte și acorduri pot fi atribuite
%% variabile și ulterior reutilizate de alte părți. Aici sunt
%% trei piese de acompaniament diferite, care sunt apoi utilizate
%% în melodia însoțitoare
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, | }

Însoțire = {
   \ clef bass
   \ timp 3/4
   \ key a \ minor

   \ parțial 4
    r4 | \ AccompA \ AccompB \ AccompA \ AccompA
        \ AccompA \ AccompB \ AccompA \ AccompA
        \ AccompC \ AccompC \ AccompA \ AccompA
        \ AccompA \ AccompB \ AccompA | a2 r4 | \ bar "|."
}

%% Definiția muzicii.
"
  \ new Staff \ Melody
  \ Personal nou \ Însoțire
  \ new Staff \ SecondVoice
"

Produs corespunzător

Partituri pentru "Fire Breathers"

Exemplu de tablatură

Cu LilyPond este posibilă și compunerea tablaturilor pentru instrumente. Arată un exemplu simplu de tablatură pentru chitară la scară pentafonica în La .

Sursă

 \ versiunea "2.10"

\ hârtie {
   # (definiți dump-extents #t)
   indentare = 0 \ mm
   ragged-right = ## t
}

\ layout { 
   \ context {
      \ Scor
      timing = ## f
   }
   \ context {
      \Personal
      \ remove Time _ signature _ gravor
   }
   \ context {
      \ TabStaff
      \ remove Time _ signature _ gravor
   }

}

gammeLaMinPenta = {
   a8 [cde] g [acd] și [gac]
   c [vârstă] d [cag] e [dca]
}

"

   \ new Staff \ relative c {
      \ clef "G _ 8"
      \ gammeLaMinPenta
      \ bar "|"
   }

   \ new TabStaff \ relative c {
      \ set TabStaff.minimumFret = # 5
      \ gammeLaMinPenta
      \ bar "|"
   }

"

Produs corespunzător

Scorul eșantionului

Notă

  1. ^ Producții folosind LilyPond , la lilypond.org . Adus la 10 decembrie 2016 .
  2. ^ OpenOffice și LibreOffice , pe lilypond.org . Adus la 10 decembrie 2016 .
  3. ^ (EN) OOoLilyPond , pe ooolilypond.sourceforge.net. Adus la 10 decembrie 2016 .

Elemente conexe

Alte proiecte

linkuri externe