Lilypond Userthread

  • Ersteller musikuss
  • Erstellt am
@Be-3: Vielen Dank! Ich muss mir deine Erklärungen noch in Ruhe im Detail anschauen, meine Lilypond-Kenntnisse sind noch lange nicht so, dass ich sie im Drüberlesen verstehen würde.

Den grundsätzlichen Ansatz, möglichst viel in Lilypond (bzw. Scheme) zu machen halte ich für richtig. Jacques Menu, auf den du verweist, macht es mit Shell, sed und Textmanipulation, was mir nicht gefällt.

Ich halte es für wichtig, dass man nicht speziellen, "transponierbaren" Code schreiben muss. Wenn möglich sollte ein beliebiger Schnipsel transponiert werden können. Wobei ich keine Ahnung habe, wie weit das machbar ist.

Aber wie gesagt, ich muss mir das alles noch in Ruhe anschauen und erwarte keine baldigen Resultate.
 
Jacques Menu, auf den du verweist, macht es mit Shell, sed und Textmanipulation, was mir nicht gefällt.

Ja, das halte ich auch für etwas umständlich, deshalb die "vollintegrierte" LilyPond-Lösung.


Ich halte es für wichtig, dass man nicht speziellen, "transponierbaren" Code schreiben muss. Wenn möglich sollte ein beliebiger Schnipsel transponiert werden können. Wobei ich keine Ahnung habe, wie weit das machbar ist.

Es können doch beliebige Schnipsel verarbeitet werden.
Die Tatsache, daß ich (wie meist in LilyPond üblich) für die rechte und linke Hand Variablen definiert habe (\RH und \LH, aber sie könnten auch anders heißen), hat ja nichts zu sagen. Du könntest an die Funktion \circleScore auch direkt beliebige "Musik-Schnipsel" in Form von \relative c' { ... } übergeben.
Aber irgendwo mußt Du LilyPond ja sagen, was genau im Schnipsel stehen soll.

Beispiel: Du kannst der Funktion \circleScore auch direkt beliebige "Schnipsel" übergeben, eben in dieser Lösung jeweils zwei Stimmen (eine für die rechte und eine für die linke Hand):

Code:
\circleScore a ##t "-Moll"
  \relative c' {
    \key a \minor
    \tempo "Largo cantabile"
    \time 3/4
    e4 a4. b8 gis2 d4 f8 e f4. f8 f4 e2
  }
  \relative c {
    \clef bass
    \key a \minor
    \time 3/4
    a8 b c a c d e f e d c a d e d c b g c b c d e c
  }

circleScore2.png


Da ist ja nichts fest vorgegeben - außer der Aufbau als Klaviersystem mit geschweifter Klammer davor.
Man könnte natürlich auch alles so umbauen, daß sich beliebige Konstrukte (einzeilig bis zu großen Partituren) übergeben lassen, dann muß man sich allerdings überlegen, wie man die Tonarten-Bezeichnungen für jeden Fall passend schön davorkriegt.

Viele Grüße
Torsten


PS: Du könntest ja mal ein Beispiel anhängen, wie Du Dir das Ergebnis vorstellst bzw. was Du unter "Schnipsel" verstehst.
 
Zuletzt bearbeitet:
PS: Du könntest ja mal ein Beispiel anhängen, wie Du Dir das Ergebnis vorstellst bzw. was Du unter "Schnipsel" verstehst.

Im Idealfall ein beliebiges, gültiges LilyPond-Dokument. Das Original sollte dann um eine Anzahl von Halbtonschritten nach oben oder unten transponiert gesetzt werden. Dabei dürfen Noten nicht in der Oktave springen und natürlich soll der ursprüngliche Quelltext nicht verändert werden müssen. Die Möglichkeit für mehrere Transpositionen, insbesondere auf derselben Seite, wäre natürlich praktisch.

Meine bisherige Erfahrung mit LilyPond bewegt sich im einstelligen Stundenbereich. Es gibt noch viel Doku, die ich lesen könnte, aber das werde ich nur bedarfsweise tun, denn meine geringen Anforderungen kann ich im Augenblick abdecken.

Bei meiner Frage zur Transposition geht es deshalb auch nicht um ein konkretes Problem, an dem ich leide und für das ich dringend eine Lösung brauche. Ich habe etwas am Klavier gespielt, wollte es notieren, habe LilyPond gefunden und benutzt. Anschliessend habe ich mir gedacht, es wäre doch schön, wenn ich das nun mit einem Fingerschnipp durch den Quintenzirkel jagen könnte. Woraus man (ich jedenfalls) leicht auf die Frage kommt, ob das so verallgemeinert geht, wie oben beschrieben.

Meine konkrete Aufgabe habe ich mit einer Variablen und ein paar \transpose-Zeilen lösen können.
 
Im Idealfall ein beliebiges, gültiges LilyPond-Dokument.

Das ist natürlich so eine Sache, denn in ein LilyPond-Dokument ist ja nicht mit einer "einfachen" ;) Sibelius- oder Finale-Datei zu vergleichen. Mit "einfach" meine ich hier, daß die Datei genau ein Musikstück/eine Partitur und sonst nichts enthält.
Bei LilyPond kann man ja quasi alles in eine Datei schreiben - angefangen bei einem Prosa-Roman bis hin zu mehreren Sätzen/Einzelpartituren, Stimmauszügen usw. usf.

Was man bräuchte, um jede beliebige ly-Datei transponieren zu können, wäre eine globale Transpose-Möglichkeit - und die gibt es (bisher) definitiv noch nicht.

Um eine solche Aufgabe zu lösen, müßtest Du also einen Parser schreiben, der den Inhalt der LilyPond-Datei interpretiert und erkennt, wo "Musik" auftaucht, um an die passende Stelle einen \transpose-Befehl einzufügen.

Durch die vielen impliziten Mechanismen gibt es in der LilyPond-Syntax allerdings vielerlei Möglichkeiten, sein Coding zu schreiben. Im Extremfall reicht es, geschweifte Klammern darumzusetzen: dann erhält man automatisch eine einzeilige Partitur (im absoluten Modus, d. h. mit expliziten Oktavlage-Angaben).

Beispiel:
{ a, b, c, }
wäre Musik und müßte z. B. in
\transpose c' f' { c' d' e' f' }
umgewandelt werden, aber

\markup \italic { a, b, c, die Katze lief im Schnee }
wäre keine Musik (sondern Markup) und dürfte nicht mit einem \transpose-Befehl versehen werden.

Viele Grüße
Torsten
 
Das war ja auch nur ein Wunsch, also ein beliebiges LilyPond-Dokument transponieren zu können. Da sollte sich kein Arbeitsauftrag an irgendwen hinter verstecken. Wie gesagt, meine bisher geringen Bedürfnisse kann ich auch manuell abdecken.
 
Hallo zusammen,

ich spring einfach mal hier hinein, weil ich einen Ersatz für ein Notensatzprogramm suche, das ich bislang sporadisch nutzte.
Es heißt (oder hieß, muß man leider sagen, weil der Autor, Klaus Kleinbrahm vor einigen Jahren verstorben ist) Scoretec.

Gut wäre natürlich, ich könnte Noten von Scoretec in Lilipond überführen. Vielleicht geht es ja über
Midi?

Gibt es ein GUI für Lilipond? Unter Unix kannte ich mal "Rosegarden". Oder weiß jemand auch etwas über die Zukunft von Scoretec?
 
Hallo Don,

Claus hat ja schon ein paar Oberflächen genannt. Eventuell wäre auch das Programm MuseScore eine Alternative für Dich.


Vielleicht geht es ja über
Midi?

Egal, ob LilyPond, MuseScore oder eine der kommerziellen Lösungen: ich würde auf jeden Fall MIDI als Übertragungsformat vermeiden, weil da doch sehr viel verloren geht.

Scoretec bzw. Score Perfect Professional kann doch auch Music-XML-Dateien exportieren, das sollte sehr viel besser als Austauschformat geeignet sein.

Die XML-Dateien kann man in die meisten Programme importieren, für LilyPond gibt's analog zu midi2ly ein musicxml2ly-Programm.

Viele Grüße
Torsten
 
Die letzte lizensierte Version, die ich habe, ist die Score Perfect Professional. Und die konnte noch keinen XML-Export, wenn ich mich nicht irre. Jedenfalls finde ich keine solche Option im "Speichern unter"-Dialog.

Und alle Versuche, die Erben von Klaus Kleinbrahm über ihre Internetseite anzusprechen und einen Update zu kaufen, schlugen bisher fehl.
 
Ach so...
Ich hatte mir gestern, um einen Eindruck zu gewinnen, die Demo-Version von Score Perfect Professional 7.0 installiert.
Da ist im Menü "Datei" direkt unter "Als Midifile speichern..." auch "Als XML speichern" verfügbar (also nicht im Speichern-unter-Dialog):

SPP-XML-export.png


Wenn das in Deiner Version noch nicht geht, dann muß eben MIDI ran.
Oder welche anderen Dateiformate gib es bei "Speichern unter..." noch? (Kann das leider nicht sehen, weil die Demo-Version jeglichen Speicherdialog sofort abblockt).
 
Ich würde die Demo 7 auf einen anderen Rechner installieren, damit nichts überschrieben wird, was nicht rückgängig gemacht werden kann.
Dann die fraglichen Dateien darin öffnen und als XML speichern, oder sind in der Demo Funktionen gesperrt?
 
oder sind in der Demo Funktionen gesperrt?

In der Score-Perfect-Professional-7.0-Demoversion sind leider alle Speichern-Funktionen gesperrt (egal, in welchem Dateiformat). :nix:


PS: Aber laut Versionsgeschichte müßte der XML-Austausch ab Release 5.1 von 2008 möglich sein. Aktuell ist Release 7.0 seit 2012.
Don hat ja noch nicht verraten, welche Programmversion er besitzt.
 
Zuletzt bearbeitet:
Die letzte lizensierte Version, die ich habe, ist die Score Perfect Professional. Und die konnte noch keinen XML-Export, wenn ich mich nicht irre. Jedenfalls finde ich keine solche Option im "Speichern unter"-Dialog.

Und alle Versuche, die Erben von Klaus Kleinbrahm über ihre Internetseite anzusprechen und einen Update zu kaufen, schlugen bisher fehl.
Irgendwie wurde ich unterbrochen, als ich die Nachricht verfaßte. Ich wollte schreiben:

Die letzte lizensierte Version, die ich habe, ist die Score Perfect Professional 5.1

Leider finde ich keinen Menupunkt, der mir die Abspeicherung von XML-Dateien erlaubt.
Weiß jemand, wie man noch an die 6er oder 7er Version herankommen kann? Verkauft jemand seine?

Hätte jemand eine solche und könnte mir meine Dateien in XML-Format konvertieren?

Da es scheinbar keine Möglichkeit gibt, noch an einen Update zu kommen, würde ich lieber heute als morgen dann umsteigen auf Lilypond.

So wahnsinnig viel habe ich nicht an .SON-Dateien, wenn also jemand noch die neuere Version hat, wäre ich sehr dankbar, er/sie könnte mir beim Umstieg behilflich sein.
 
Mal am Rande bemerkt: Am 7. ist Frescobaldi 2.18 erschienen. Changelog, falls es jemanden interessiert.

@Don Leslie: Bevor du dir falsche Hoffnungen machst, das ist keine Point&Click-GUI, die den Code versteckt, sondern eine IDE, in der man sich am Code die Finger schmutzig macht.


Martman
 
@Don Leslie: Bevor du dir falsche Hoffnungen machst, das ist keine Point&Click-GUI, die den Code versteckt, sondern eine IDE, in der man sich am Code die Finger schmutzig macht.


Martman

Die mache ich mir auch nicht. Als einem, der schon MusixTeX (Werner Icking †) benutzt hat, macht sowas gar nichts aus :) Im Gegenteil.




Werner Icking starb 2001 als er nachts vom Institut (GMDSt. Augustin) wie immer mit dem Fahrad nach Hause fuhr und über eine Rotte Wildschweine, die seinen Heimweg durch den Wald kreuzten, stürzte und sich tödlich verletzte.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: 1 Benutzer
Hallo Sylvia,

ersetze mal r4 durch s4 oder meintest Du eine Positionsveränderung?

Viele Grüße
Klaus
 
Wie kann ich die denn wegbekommen?

Wie man die Pause "wegbekommt" hat Klaus schon verraten.

Weglassen ist in diesem Fall allerdings keine gute Lösung, denn die Pause gehört ja schließlich zur oberen Stimme und ohne die Pause "geht der Takt nicht auf".
Pausen werden im polyphonen Modus jeweils automatisch von ihrer Mittelposition weg nach oben oder unten verschoben, damit die Zuordnung zur Stimme klar wird.
Wenn Dir diese automatische Verschiebung zu groß oder klein ist, kannst Du die Pausen beliebig positionieren, indem Du

statt
r4
die Note eingibst, auf deren Höhe die Pause stehen soll, und danach \rest. Dadurch "wird die Note zur Pause". Beispielsweise
a4\rest
schreibt eine Viertelpause auf die Höhe der Note a.

Viele Grüße
Tosten



\relative c'' << { b'4 a f a\rest g a b a } \\ { d,1 e2 d } >>

shift-rest.png

 
Zuletzt bearbeitet:
Hallo,
natuerlich soll die Pause an der Stelle in der ersten Stimme sein, nur eben etwas tiefer.
Das hier hat geklappt: a\rest
Ja, ich hatte mich ungenau ausgedrueck, sorry.
Vielen, vielen Dank!
Gruss,
Sylvia
 

Unser weiteres Online-Angebot:
Bassic.de · Deejayforum.de · Sequencer.de · Clavio.de · Guitarworld.de · Recording.de

Musiker-Board Logo
Zurück
Oben