LilyPond

Wikipedia, Entziklopedia askea
 LilyPond
Jatorria
Sortzailea(k)Han-Wen Nienhuys, Jan Nieuwenhuizen eta Graham Keith Percival (en) Itzuli
Sorrera-urtea1997
Mugimenduasoftware librearen mugimendua
Azken bertsioa2.24.3
Ezaugarriak
Programazio-lengoaiaC++, Python eta Scheme (en) Itzuli
Programazio paradigmaWYSIWYM (en) Itzuli
Sistema eragileaLilyPond music score (en) Itzuli
Irakur dezakeGNU/Linux, BSD, Microsoft Windows eta macOS
Idatz dezakeLilyPond music score (en) Itzuli, Standard MIDI File (en) Itzuli, PDF, PostScript (en) Itzuli, PNG, SVG eta Encapsulated PostScript
Egile-eskubideakcopyrightduna
LizentziaGNU General Public License, version 3.0 or later (en) Itzuli eta GNU Free Documentation License, version 1.3 or later (en) Itzuli
Deskribapena
Honen parte daGNU Project (en) Itzuli
Ekoizpena
GaratzaileaGNU Project (en) Itzuli eta development team (en) Itzuli
Fikzioa
Erabiltzen duLilyPond notation (en) Itzuli
lilypond.org
Iturri-kodeahttps://gitlab.com/lilypond/lilypond.git, http://git.savannah.gnu.org/cgit/lilypond.git, https://git.savannah.gnu.org/gitweb/?p=lilypond.git eta https://github.com/lilypond/lilypond.git

LilyPond musika grabatzeko programa informatikoa eta fitxategi-formatua da. LilyPond-en helburu nagusietako bat diseinu-arau tradizionalekin idatzitako partiturak ekoiztea da, partiturak eskuz idazten zireneko aroa gainditzeko.

LilyPond software mulriplataforma da, eta hainbat sistema eragiletarako erabilgarri dago; GNU Lizentzia Publiko Orokorraren arabera askatuta dago, LilyPond software librea da eta GNU proiektuaren zati bat da.

Historia[aldatu | aldatu iturburu kodea]

Han-Wen Nienhuys eta Jan Nieuwenhuizen izan ziren LilyPond proiektuari ekin ziotenak 1996an, MPPri (MusiXTeX PreProcessor) buruzko lana utzi ondoren. 1995ean hasi ziren aurreko proiektu horretan parte hartzen.[1][2] Haren izena Rosegarden proiektuak inspiratu zuen, baita Nienhuys eta Nieuwenhuizen Suzanne izeneko ezagunak ere, hebreeraz lirio esan nahi duen izenak (Lily ingelesez).[3]

1.0 bertsioa[aldatu | aldatu iturburu kodea]

LilyPond1.0 1998ko uztailaren 31n kaleratu zen. Horretan azpimagarriak izan ziren musikako ikurrak konputagailuan lantzeko Feta izeneko tipo pertsonalizatuaren garapena eta MusiXTeX-en LilyPonder-en arteko erabateko bereizketa.

2.0 bertsioa[aldatu | aldatu iturburu kodea]

LilyPond 2.0 2003ko irailaren 24an kaleratu zen, sintaxi-eredu sinplifikatu bat eta hainbat musika-estilo jotzeko tresna-multzo askoz osoagoarekin.

Diseinua[aldatu | aldatu iturburu kodea]

LilyPond-en pantaila-argazkia, Linuxen korritzen

LilyPond C++ lengoaian dago idatzita batez ere, eta Scheme erabiltzen du (GNU Guile-k interpretatua) hedapen-lengoaia gisa, erabiltzailearekin pertsonalizatzeko aukera emanez.[4] Kode-base handi samarra du; 2017ko martxoaren 10etik aurrera, iturburuak 600.000 C++ lerro, 140.000 Scheme lerro eta 120.000 Python kode-lerro ditu.[5]

Musika idazteko testu-notazio sinple bat erabiltzen du, LilyPond-ek zenbait etapatan interpretatu eta prozesatzen duena.[6] Azken etapan, musika-notazioa PDFrako (PostScript bidez) edo beste formatu grafiko batzuetarako (SVG edo PNG) irteera da. LilyPond-ek musika-notazioaren irteerari dagozkion MIDI fitxategiak ere sor ditzake.

LilyPond testuan oinarritutako aplikazioa denez, ez du erabiltzaile-interfaze grafikorik behar partiturak sortzen laguntzeko. (Hala ere, Windowsen eta MacOSen "LilyPad" GUIn oinarritutako testu-editore bat lehenetsita hauetan sartzen da sistema). Doinuak sortzeko sarrera-lengoaia malgua da, sinple izaten saiatzen da, erabiltzaile berriei ikaskuntza-kurba erraztearren. LilyPond WYSIWYM paradigmari atxikitzen zaio; musika-notazioa LilyPondekin osatzeko lan-fluxua LaTeX-ekin dokumentuak prestatzeko lanaren antzekoa da.

LilyPond-ek musika-notazio esperimentala babesten du. Gitarrarako erraztasunetan afinazio alternatiboekin lan egiteko aukerak ere eskaintzen ditu.[7]

Softwarearen ezaugarriak[aldatu | aldatu iturburu kodea]

Beethovenen 5. Sinfoniaren partitura, LilyPond-ek digitalki sortutako PDF artxibo batetik abiatuta; Mutopia Proiektuak argitaratua

Profesionalki grabatutako partiturekin aldera daitekeen irteera bat sortzea da LilyPond-en helburu nagusia, ordenagailuz sortutako itxura baldartsuko emaitza izan ordez. LilyPond webgunean dagoen saiakera batek, LilyPond-en garatzaileek idatzia, LilyPond-ek bideratutako zenbait problema tipografiko azaltzen ditu:[8]

  • Ikurren tipo optikoa eskalatzea: pentagramaren tamainaren arabera, musika-ikurren tipoaren diseinua zertxobait aldatzen da; aukera hori Donald Knuth's Computer Modern ikur-tipoaren ezaugarria da. Ondorioz, nota-buruak biribildu egiten dira, eta pentagrama-lerroak finago bihurtzen dira, itxura baldarra ekidinez.
  • Bereizketa optikoa: zurtoinaren norabidea (gora edo behera) kontuan hartzen da segidan datozen notak banantzean.
  • Lerroen erabilera berezia: lerroak laburtu egiten dira aldakari bat (bemol...) hurbil daudenean, eta, hala, irakurgarritasuna hobetzen da.
  • Tarte proportzionala: noten arteko banatze-distantzia noten iraupenaren araberakoa izan daiteke. Adibidez, doikuntza horrekin, ondoz ondoko nota beltzen arteko tartea ondoz ondoko kortxeaerdikoen artekoa baino lau aldiz handiagoa da.[9]

Sarrerako sintaxia[aldatu | aldatu iturburu kodea]

LilyPond-en jatorrizko lengoaia ulergarria da, zenbait komandoren bidez adierazten da edozein artikulazio, dinamika, iraupen eta abar. TeX-en antzekoa da. LilyPond iturburu-artxibo batean Scheme lengoaiako kodea txertatzeko gaitasunak sarrera-lengoaia nahieran hedatzeko aukera ematen du, eta osaera algoritmikoarekin laguntzen du. Hona hemen ezaugarri sintaktiko orokor batzuk:

  • Lerro bateko iruzkinak  % portzentaje-zeinuarekin hasten dira.[10]
  • Notak exekuzio-iraupenaren formatuan adierazten dira: tonua Helmholtz tonu-notazioaren bidez zehazten da (a, b, c, d, e, f eta g) eta iraupena zenbakietan oinarritutako sistema baten bidez zehazten da. Exekuzio-iraupenaren formatu-aldaketaren semantika, idazteko modu aktiboaren arabera; hori sakonki azaltzen da LilyPond-en eskuliburuan. Adibidez, modu absolutuan, a'4 A nota bat da, A oinarriaren zortzidun bat gorago (A3 tonu zientifikoko notazioan), nota biribilaren laurdeneko luzera duena (nota beltza).[11]
  • Komandoen hasieran, normalean, backslash bat erabiltzen da (adibidez, \time, edo \slurUp). Komandoaren funtzioak zehazten du non jarri behar den komandoa; adibidez, komando hori nota jakin baten dinamika bat adierazteko erabiltzen bada, notaren ondoan jartzen da.[12]
  • Komando arrunt batzuk sinbolikoki adierazita daude, errazago tipifikatzeko. Adibide bat da frase ligaturaren kasua, non ( eta ) parentesiek jaitsieraren hasiera eta amaiera adierazten baitituzte, hurrenez hurren.[13] Beste adibide bat notak lotzea da, non [ eta ] habearen luzera adierazten baitute.[14]

LilyPond-ek Pangorekin duen interfazeak sarrera-karaktereen kodetzea UTF-8 izatea eskatzen du.[15] Horren abantaila bat da hizkuntza bat baino gehiago sar daitekeela iturburu-artxibo berean.

LilyPond-en sarrera-fitxategiaren adibide bat[aldatu | aldatu iturburu kodea]

\version "2.22.1"

\include "english.ly"

\header {
  title = \markup { "Excerpt from" \italic "fibonacci" }
  composer = "Patrick McCarty"
  %  copyright = \markup \fontsize #-5 
  %  {
  %    Copyright © 2009.
  %    Typeset with GNU LilyPond.
  %    Released into public domain by the composer.
  %  }
}

\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
      <e gs,>4 \acciaccatura { cs16[ ds] } <e gs,>4 | % m. 51
      <ds gs,>4 \acciaccatura { e16[ ds] } <cs gs>4 | % m. 52
      <cs gs>4 \acciaccatura { ds16[ cs] } <c g>4  | % m. 53
      <cs gs>4 \acciaccatura { ds16[ e] } <es bs gs>4 | % m. 54

      <e gs,>4 \acciaccatura { cs16[ ds] } e16 f gs a | % m. 55
      <gs c,>8 \acciaccatura { as16[ gs] }
      <es b>8 ~ <es b>16 ds b as | % m. 56

      b16 d8 bf32 f' g16 af bf c | % m. 57
      <df df,>16 ( c af ) <e' e,> ( ds b ) <g' g,> ( ds | % m. 58

      \time 3/4
      <gs gs,>16 ) \noBeam d,16 f gs
      a16 e f b
      c16 d, ( f gs | % m. 59

      a16 b ) e, ( f
      gs16 b c ) f, (
      gs16 as b c ) | % m. 60
    }

    \new Dynamics = "Dynamics_pf" {
      s4 \p \< s4 | % m. 51
      s4 s4 | % m. 52
      s4 \mp \> s4 | % m. 53
      s4 s4 \! | % m. 54
      s4 \p s4 | % m. 55
      s1 * 2/4 | % m. 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
    }
  >>
}

Dagokion emaitza[aldatu | aldatu iturburu kodea]

Irteera urtua

Emaitza konplexuago bat[aldatu | aldatu iturburu kodea]

Lilypond-ek oso irteera pertsonalizatua ere sor dezake. Adibidez, Stockhausen-en piano-piezaren laburpen hau.

Stockhausengo Klavierstück ii.aren laburpena, irudikapenaren adibide gisa

Beste proiektu batzuekiko lankidetza[aldatu | aldatu iturburu kodea]

LilyPond-ek sortutako Adeste Fidelesen lehen konpasak.

Zenbait partitura-editore grafikok —hala nola Rosegarden, NoteEdit, Canorus, Denemo eta TuxGuitar— zuzenean esporta ditzakete artxiboak LilyPond formatura. Beste aplikazio grafiko batzuek LilyPond-en aurreko mutur gisa balio dute, Frescobaldi eta jEdit-erako LilyPondTool plugina barne. Denemok LilyPond-en PDF irteera integratzen du bere pantailan, eta edizio-eragiketa batzuk ahalbidetzen ditu azken partituran.

Mutopia Proiektuak, eduki askeko musika-partiturak doan banatzen dituenak, LilyPond erabiltzen du bere musika idazteko, Musipediak bezala, elkarlaneko musika-entziklopedia bat.

Emacs-eko org-mode moduak dokumentuetan LilyPond-en partiturak txertatzeko euskarria du.[16]

OOoLilyPond-ek, LibreOffice-ren luzapen batek, dokumentuetan partiturak sartzeko laguntza ematen du LilyPondi deituz.[17]

MediaWikin integratzea[aldatu | aldatu iturburu kodea]

Lilypond eskuragarri dago MediaWikin Score luzapen-kodearen bidez.

Horrek, adibidez, notazio hau hartuta:

<score sound="1">\relative c' { f d f a d f e d cis a cis e a g f e }</score>

partitura hau ematen du:

\relative c' { f d f a d f e d cis a cis e a g f e }

Aurreko zatia Solfeggio-ren bertsio sinplifikatua da C Minor-en, C.P.E. Bach musikagilearena. Partitura konplexuagoak ere, hitzak barne adibidez, egin daitezke MediaWikiren barruan.   

Erreferentziak[aldatu | aldatu iturburu kodea]

Ikus, gainera[aldatu | aldatu iturburu kodea]

Kanpo estekak[aldatu | aldatu iturburu kodea]