[[Vorlage(Getestet, karmic, jaunty, intrepid, hardy,)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Paketen] [:Paketquellen_freischalten: Bearbeiten von Paketquellen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] }}} [[Inhaltsverzeichnis(2)]] [[Bild(./lilypond.png, align=left)]] LilyPond ist ein freies Notensatz-Programm für Linux, FreeBSD, MacOS X und Windows. Anders als [:Noteedit:] oder Rosegarden ist LilyPond kein "What you see is what you get"-Programm - die Noten werden ähnlich wie bei [:LaTeX:] in einer Textdatei gespeichert, die dann von LilyPond zum Beispiel in das PDF-Format übersetzt wird. Auch eine MIDI-Datei kann erzeugt werden. = Installation = == Ubuntu-Quellen == LilyPond liegt in den Ubuntu-Quellen und kann deshalb einfach über die Paketverwaltung installiert werden. Folgendes Paket muss installiert [1] werden: * '''lilypond''' (''universe'', [2]) == Manuelle Installation == Es kann auch die aktuelle Version von [http://lilypond.org/web/install/index.de.html Downloadseite] {de} heruntergeladen und installiert werden. Generell sollte den Paketen aus den Ubuntu-Quellen immer Vorzug gegeben werden. In besonderen Fällen jedoch kann eine aktuelle Version vorteilhaft sein, wenn man zum Beispiel verschiedene Ubuntu-Versionen und damit eigentlich auch LilyPond-Versionen nutzt oder bei Konvertierungsproblemen aus anderen Formaten und innerhalb von LilyPond. Die Entwickler von LilyPond stellen ein Installationsprogramm bereit, da das Kompilieren, nach den Angaben der Entwickler, kompliziert sein soll. Hat man das Installationsprogramm heruntergeladen, so kann LilyPond im Terminal [3] mit dem Befehl {{{#!vorlage Befehl sudo sh lilypond-X.Y.Z.linux-x86.sh }}} installiert werden. Hierbei bezeichnet X.Y.Z die entsprechende Versionsnummer. === Deinstallation === Das manuell installierte LilyPond kann mit dem Befehl {{{#!vorlage Befehl sudo /usr/local/bin/uninstall-lilypond }}} wieder gelöscht werden. = Benutzung = Eine kurze Einleitung findet sich im sogenannten [http://lilypond.org/web/switch/howto.de.html Intensivkurs] {de} , das Studium einer ausführlichen Anleitung ist aber für komplexere Beispiele zu empfehlen. Eine ausführliche Anleitung ist auf der offiziellen Homepage zu finden. Bietet diese nicht die gewünschten Informationen, so kann man in den Archiven der LilyPond [http://lists.gnu.org/mailman/listinfo/lilypond-user Mailingliste] {en} suchen, oder sich auf der Liste anmelden und Fragen stellen. Eine Übersicht über die gebräuchlichsten Befehle zeigt das [http://lilypond.org/doc/v2.6/Documentation/user/lilypond/Cheat-sheet.html#Cheat-sheet LilyPond Cheat Sheet] {en} . {{{#!vorlage Hinweis Die Syntax von LilyPond ist zwischen den Major Releases (also z.B. zwischen 2.6 und 2.8) kleineren oder größeren Änderungen unterworfen. Deswegen sollte man darauf achten, die zur verwendeten Version passende Dokumentation zu verwenden. Die Konvertierung von Quelldateien zwischen zwei Versionen übernimmt das Hilfsprogramm '''convert-ly''', das mit LilyPond ausgeliefert wird. }}} LilyPond-Dateien sind einfache Text-Dateien, ähnlich wie beim Textsatzsystem [:LaTeX:], mit der Endung '''.ly'''. Auch die Syntax hat eine gewisse Ähnlichkeit zu LaTeX. Die Eingabe der Noten erfolgt sehr intuitiv. Hat man ein Stück gesetzt, so kann dies mit {{{#!vorlage Befehl lilypond DATEINAME }}} in ein PDF-Dokument bzw. in eine MIDI-Datei exportiert werden. Auch andere Ausgabeformate wie PNG oder SVG sind möglich. Eine PNG-Datei wird zum Beispiel mit {{{#!vorlage Befehl lilypond --png DATEINAME }}} erzeugt. == Kile-Profil einrichten == Da LilyPond keine graphische Benutzeroberfläche bereitstellt, muss man, ähnlich wie bei LaTeX, von Zeit zu Zeit ein [:PDF:]-Dokument erstellen, um eventuelle Fehler ausfindig zu machen. Möchte man dies nicht im Terminal machen, so kann man zum Beispiel in [:Kile:] ein Ausgabeprofil für LilyPond erstellen und sich die Arbeit etwas komfortabler gestalten. Unter Ubuntu Karmic ist bereits ein Lilypond Profil in Kile vorhanden. Lädt man eine LilyPond-Datei, also eine Datei mit der Endung .ly, erkennt Kile automatisch den Typ und wählt den passenden Hervorhebungsmodus (Syntax Highlighting). Dieser Punkt ist im Menü unter ''"Extras -> Hervorhebungen -> Sonstige -> LilyPond"'' zu finden. Kile bietet zwar eine eingebettete Konsole, aber man kann sich auch einen eigenen Menüpunkt erstellen, so dass man ein LilyPond-Dokument wie jedes andere TeX-Dokument auch, per Knopfdruck kompilieren kann. Dazu erstellt man unter "''Einstellungen -> Kile einrichten -> Werkzeuge -> Erstellen"'' ein ''"Neues Werkzeug"''. Unter Befehl trägt man "``lilypond``" und unter Optionen "``'%source'``" oder für die Ausgabe als Bild die Option "``--png '%source'``" oder ein anderes gewünschtes Format ein. Im Reiter ''"Menü"'' lässt sich festlegen, wo der Menüpunkt unter ''"Erstellen"'' angelegt werden soll. Bei Bedarf kann man sich den Menüpunkt auch noch in eine der Werkzeugleisten legen. Natürlich kann man auch mehrere Build- bzw. Quickbuild-Profile anlegen, am einfachsten orientiert man sich dafür an den vorhandenen Profilen. = Beispiele = == Alle meine Entchen == Hier ein einfaches Beispiel: {{{\header { title = "Alle meine Entchen" } \version "2.6.3" << \relative c' { \time 2/4 \key d \major d8[ e fis g] a4 a b8[ b b b] a4 r b8[ b b b] a4 r g8[ g g g] fis4 fis a8[ a a a] d4 r } \addlyrics { Al -- le mei -- ne Ent -- chen schwim -- men auf dem See, schwim -- men auf dem See, Köpf -- chen un -- ters Was -- ser, Schwänz -- chen in die Höh’ } >> }}} Obiges Beispiel gibt folgendes Resultat: [[Bild(./entchen.png, 400, center)]] == Belle, qui tiens ma vie == Und noch ein komplexeres Beispiel mit Kommentaren, diese werden mit dem %-Zeichen eingeleitet. {{{ % Die Angabe der Versionsnummer stellt sicher, dass die Datei mit dem Programm convert-ly konvertiert werden kann. \version "2.6.3" % Um die Noten auf eine Seite einzupassen, kann die Größe der Systeme per Hand angepasst werden. #(set-global-staff-size 20) % Im sogenannten "header" kann man Überschriften u.Ä. setzen. \header { title = "Belle, qui tiens ma vie" composer = "Musik: Thoinot Arbeau (1520-1595)" arranger = "Aus \"Orchésgraphie\" (1589)" poet = "Text: 16. Jh." tagline = "- 1 -" } global = { \key f \major \time 2/2 } % Die Noten können als Variablen abgespeichert werden, damit man im sogenannten "score" Block auf sie zurückgreifen kann. % Somit können komplexere Dokumente gut strukturiert werden. SopranNoten = \relative c'' { \repeat volta 2 { \partial 2 g2 g4 fis g a bes2 bes4 d c bes bes a bes2 } \break bes2 \repeat volta 2 { a4 a g g fis2 d e8( f) g4 g fis } \alternative { { g2 bes } { g } } \bar "|." } AltNoten = \relative c' { \repeat volta 2 { \partial 2 d2 d4 d d f f2 f4 f e f g f f2 } f2 \repeat volta 2 { f4 f d es d2 f c4 d d d } \alternative { { b2 d } { d } } } TenorNoten = \relative c' { \repeat volta 2{ \partial 2 bes2 bes4 a bes c d2 d4 bes g d' c c d2 } d \repeat volta 2 {c4 d bes c a2 bes g4 bes a a} \alternative { { g2 bes } { g } } } BassNoten = \relative c' { \repeat volta 2 { \partial 2 g2 g4 d g f bes,2 bes4 bes c d es f bes,2 } bes'2 \repeat volta 2 { f4 d g c, d2 bes c4 g d' d } \alternative { { g,2 g' } { g, } } } stropheEins = \lyricmode { \set stanza = "1. " Bel -- le, qui tiens ma vi -- e cap -- ti -- ve dans tes yeux, viens tôt me se -- cou -- rir, ou me __ fau -- dra mou -- rir, viens rir. } stropheEinsWiederholung = \lyricmode { qui m'as l'â -- me ra -- vi -- e d'un sou -- riz gra -- ci -- eux, } stropheZwei = \lyricmode { \set stanza = "2. " Pour -- quoi fuis -- tu, mi -- gnar -- de, si je suis près de toy, car tes per -- fec -- ti -- ons chan -- gent __ mes ac -- ti -- ons, car ons. } stropheZweiWiederholung = \lyricmode { quand tex yeux je re -- gar -- de je me perds de -- dans moy, } stropheDrei = \lyricmode { \set stanza = "3. " Ap -- pro -- che donc ma bel -- le, ap -- pro -- che toy mon bien, pour mon mal ap -- pai -- ser, don -- ne __ moy un bai -- ser. pour ser. } stropheDreiWiederholung = \lyricmode { ne me sous plus re -- bel -- le puis -- que mon coeur est tien, } % Im score-Block wird die Gestaltung der Seite festgesetzt. \score { << \new ChoirStaff << \new Staff << \new Voice { \voiceOne << \global \SopranNoten >> } \new Voice { \voiceTwo << \global \AltNoten >> } \addlyrics { \stropheEins } \addlyrics { \stropheEinsWiederholung } \addlyrics { \stropheZwei } \addlyrics { \stropheZweiWiederholung } \addlyrics { \stropheDrei } \addlyrics { \stropheDreiWiederholung } >> \new Staff << \new Voice { \voiceOne << \global \clef bass \TenorNoten >> } \new Voice { \voiceTwo << \global \clef bass \BassNoten >> } \addlyrics { \stropheEins } \addlyrics { \stropheEinsWiederholung } >> >> >> } % Das Stück beeinhaltet Wiederholungen, die von der Midi-Ausgabe nicht berücksichtigt werden. % Um die Wiederholungen in der Midi-Datei auszuspielen, gibt es die Option "unfoldRepeats" \score { \new ChoirStaff << \new Staff << \new Voice { \global \unfoldRepeats \SopranNoten } >> \new Staff << \new Voice { \global \unfoldRepeats \AltNoten } >> \new Staff << \new Voice { \global \unfoldRepeats \TenorNoten } >> \new Staff << \new Voice { \global \unfoldRepeats \BassNoten } >> >> \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 120 4) } } } }}} Obiges Beispiel gibt folgendes Resultat: [[Bild(./belle.png, 400, center)]] = Integration von LilyPond in LaTeX = Musiknoten und Textgestaltung können mit [:LaTeX:] miteinander verbunden werden. == Das Textdokument == Als erstes wird mit einem der [:LaTeX-Editoren:] [4] ein Textdokument erstellt und in einem beliebigen Verzeichnis gespeichert. In diesem Artikel wird das Beispieldokument '''test.tex''' genannt und befindet sich im Verzeichnis '''/home/benutzer/lilypond'''. Das folgende Beispiel zeigt, wie ein Textdokument aussehen kann, in welchem LilyPond Dokumente in [:LaTeX:] integriert sind. Es kann als Vorlage für eigene Versuche genutzt werden und ist bewusst einfach gehalten. {{{ \documentclass[a4paper]{article} \usepackage[utf8]{inputenc} \usepackage{amsfonts} \usepackage{amsmath} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage{fancybox} \pagestyle{empty} \begin{document} \begin{huge} \textbf{Integration von LilyPond in $\LaTeX $} \end{huge}\ Hier kann nun alles stehen, was $\LaTeX $ zu bieten hat: Anweisungen, Erklärungen, Bilder, usw. Immer dann, wenn Musiknoten zum Einsatz kommen, wird LilyPond folgendermaßen eingebettet:\ \vspace*{1cm} \begin{lilypond} \header { title = "Dies ist ein phantasieloses Stück" } << \relative c' { \time 4/4 \key c \major g'2 e g4 c g8 f e d e4 f g a g8 f e d c2 } >> \end{lilypond}\ \vspace*{1cm} Anschließend wird das $\LaTeX $ Dokument weiter gestaltet. Natürlich können weitere Musiknoten integriert werden. In diesem Beispiel sind es reine Rhythmusnoten.\ \vspace*{1cm} \begin{lilypond} \header { title = "Dies ist irgendein Rhythmus" } << \new RhythmicStaff { \time 4/4 \override Staff.VerticalAxisGroup #'minimum-Y-extent = #'(-6 . 6) %vergrössert den Abstand! c4 c8 c c2 | r4 g r2 | c4 c c r | r2 c | c8 c c c c2 | r c | c4 r c2 | c8 c c2 c4 | r r2 c4 |c c8 c c c c c | c2 r | r r4 c | r c8 c c4 r | } >> \end{lilypond}\ Für weitere Möglichkeiten, betreffend Lilypond oder $\LaTeX $ siehe Doku.\ Viel Spass!\ Onkel Tom \end{document} }}} == Die Verarbeitung == Es gibt zwei möglichkeiten, um aus dem LaTeX-Quelltext ein fertiges [:PDF:]-Dokument zu erstellen. === Möglichkeit 1 === Bei der ersten Möglichkeit sind insgesamt fünf Schritte notwendig, um aus dem einfachen Textdokument ein fertiges PDF herzustellen. Terminal [3]: * In das Verzeichnis wechseln, in welchem sich das Textdokument befindet: {{{#!vorlage Befehl cd /home/benutzer/lilypond }}} * LilyPond: {{{#!vorlage Befehl lilypond-book --output=out/ test.tex }}} Damit wird ein Ordner erstellt, in dem alle nötigen Files entstehen für die weitere Verarbeitung. Die Noten selber sind als '''.eps''' Dateien abgespeichert. Diese könnten alternativ natürlich auch als Bildgrafik in ein [:LaTeX:] Dokument eingebaut werden. Für die weitere Verarbeitung mit [:LaTeX:] wird die neue Datei '''test.tex''' verwendet. * In den neuen Order wechseln: {{{#!vorlage Befehl cd out }}} * LaTeX: {{{#!vorlage Befehl latex test.tex }}} Es entsteht unter anderm ein DVI Dokument, '''test.dvi''' * Daraus wird zum Schluss ein [:PDF:] mit: {{{#!vorlage Befehl dvipdf test.dvi }}} === Möglichkeit 2 === Die zweite Möglichkeit besteht darin, das Programm ``pdflatex`` an Stelle von ``latex`` zu verwenden, um aus der LaTeX-Quelldatei ein fertiges Dokument zu erstellen. Im Gegensatz zu ``latex`` erstellt ``pdflatex`` nicht eine DVI-Datei, die danach in eine PDF-Datei umgewandelt werden muss, sondern erzeugt direkt eine PDF-Datei. Da man nun das Programm ``pdflatex`` verwendet, muss man jedoch den ``lilypond-book``-Befehl leicht abändern. Insgesamt müssen folgende Befehle in dieser Reihenfolge ausgeführt werden: * In das Verzeichnis wechseln, in welchem sich das Textdokument befindet: {{{#!vorlage Befehl cd /home/benutzer/lilypond }}} * LilyPond: {{{#!vorlage Befehl lilypond-book --output=out/ --pdf test.tex }}} * In den neuen Order wechseln: {{{#!vorlage Befehl cd out }}} * Das Programm ``pdflatex`` ausführen: {{{#!vorlage Befehl pdflatex test.tex }}} == Das Endergebnis == [[Bild(./LaTeX_logo.png, align=right)]] Das Produkt kann sich sehen lassen und liefert ein Dokument in hervorragender Druckqualität. || [[Bild(./latexundlilypdf.png, 200, )]] || || ~-(Fertiges PDF)-~ || = Links = * [http://www.lilypond.org offizielle Homepage] {de} {en} * [http://lilypond.org/web/switch/howto Intensivkurs] {de} * [http://lists.gnu.org/mailman/listinfo/lilypond-user LilyPond Mailingliste] {en} * [http://www.mutopiaproject.org/ Viele freie LilyPond Beispieldateien] {en} * [http://www.denemo.org/ Denemo] {en} - grafischer Notensatzeditor für LilyPond ---- # tag: Multimedia, Bildung, Programmierung