Autor Thema: Mein LilyPond denkt...  (Gelesen 21654 mal)

trulli

  • Member
Mein LilyPond denkt...
« am: Dienstag, 1. Dezember 2009, 23:03 »
Hallo,

ich bin gerade auf ein merkwürdiges Phänomen gestoßen und wollte mal fragen, ob das jemand erklären kann. Ich habe über Frescobaldi ein und denselben Code zweimal durchlaufen lassen und bekomme dabei zwei unterschiedliche Ergebnisse (siehe unten). Ich habe nichts am Code verändert - ICH SCHWÖRS. :)

Ist euch das auch schon mal passiert? Und wie kann es sein, dass ein Computerprogramm bei einer Eingabe zu zwei unterschiedlichen Lösungen kommen kann????

Grüße von Trulli
« Letzte Änderung: Dienstag, 1. Dezember 2009, 23:05 von trulli »

ding-dong

  • Member
Re: Mein LilyPond denkt...
« Antwort #1 am: Dienstag, 1. Dezember 2009, 23:22 »
das sind ja wohl 2 ausschnitte aus den jeweiligen partituren, oder!?

und wie kommst du darauf, dass Lilypond was verändert - es ist doch ebenso wahrscheinlich dass das aufrufende programm was verscherbelt!

kannst du den (ganzen) code beilegen, damit wir das ausprobieren können?

gruss


trulli

  • Member
Re: Mein LilyPond denkt...
« Antwort #2 am: Mittwoch, 2. Dezember 2009, 11:44 »
Meinst du, dass vielleicht Frescobaldi etwas verändert? Ist bestimmt möglich, aber warum?

Hier ist der entsprechende Teil des Codes. Trotzdem es jetzt ein Ausschnitt ist, bekomme ich auch hier immer wieder unterschiedliche Ergebnise in den letzten beiden Takten: der Abschlag mit p und die Lagenangabe als römische Ziffer tauschen immer wieder ihre Plätze.

\version "2.12.1"


\include "deutsch.ly"

\paper {
%       #(set-paper-size "a4")
%       #(set-paper-size "letter")
%        left-margin = 0.75 \in
%       line-width = 7.0 \in
%       between-system-padding = #4.0
        between-system-space = #10.0
        ragged-last-bottom = ##f
        ragged-bottom = ##f
        print-page-number = ##t
        print-first-page-number = ##t
       
         print-all-headers=##t
         bookTitleMarkup = ##f
       
         
         
       
       
}

\header {
        title = "Lesart-Miniaturen"
        subtitle = ""
        subsubtitle = "LesArt-Miniaturen für Gitarre, Opus 60"
        composer = \markup{\column \right-align
        {\line {Komponist} }}
    }
     


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Nummer 6

%%%%%%%%%%%%Definitionen
% Finger stroke symbols
strokeUp = \markup { \postscript #"
  0.1     setlinewidth
  0.5 0   moveto
  0.5 2   lineto
  0.2 1.4 lineto
  0.5 2   moveto
  0.8 1.4 lineto
  stroke
"}

strokeDown = \markup { \postscript #"
  0.1     setlinewidth
  0.5 2   moveto
  0.5 0   lineto
  0.2 0.6 lineto
  0.5 0   moveto
  0.8 0.6 lineto
  stroke
"}

% Golpe symbol
golpe = \markup { \postscript #"
  0.2 setlinewidth
  0 0 moveto
  1 0 lineto
  1 1 lineto
  stroke
  "\postscript #"
  0.1       setlinewidth
  -0.6 -0.1  moveto
  -0.6  1.0 lineto
  0.5  1.0 lineto
  stroke
"} 

strokeUpGolpe = \markup { \column { \golpe \line { \strokeUp }}}
iUpGolpe = \markup { \column { \golpe \line { \small i } \line { \strokeUp }}}

% Strokes for all fingers
pUp   = \markup { \column { \small p \line { \strokeUp }}}
pDown = \markup { \column { \small p \line { \strokeDown }}}
iUp   = \markup { \column { \small i \line { \strokeUp }}}
iDown = \markup { \column { \small i \line { \strokeDown }}}
mUp   = \markup { \column { \small m \line { \strokeUp }}}
mDown = \markup { \column { \small m \line { \strokeDown }}}
aUp   = \markup { \column { \small a \line { \strokeUp }}}
aDown = \markup { \column { \small a \line { \strokeDown }}}
xUp   = \markup { \column { \small x \line { \strokeUp }}}
xDown = \markup { \column { \small x \line { \strokeDown }}}



%%% definition Ende



\score{
<<

#(define RH rightHandFinger)
\set strokeFingerOrientations = #'(up)
\set fingeringOrientations = #'(left)
\set stringNumberOrientations = #'(up)
\override Staff.TimeSignature #'style = #'()
\override Script #'padding = #3  %Fermaten höher setzen
\mergeDifferentlyHeadedOn
\mergeDifferentlyDottedOn
\relative c'{
        \clef "treble_8"
        \time 4/4
        \key d \major
             %1
             <a cis-.>8 <a cis> e16 <a cis>8 <a cis>16~ <a cis>16 <a cis>8 <a cis>16~ <a cis>8 <a cis>
             g,8 <g' h> d16 <g h>8 <g h>16~ <g h>16 <g h>8 <g h>16~ <g h>8 <g h>
             <a cis>8 <a cis> e16 <a cis>8 <a cis>16~ <a cis>16 <a cis>8 <a cis>16~ <a cis>8 <a cis>
             g,8 <g' h-.> r4 r16 a' g fis g( a) g8
             %5
             s4 e,16 <a cis>8 <a cis>16~ <a cis> <a cis>8 <a cis>16~ <a cis>8 <a cis>
             g,8 <g' h> d16 <g h>8 <g h>16~ <g h> g' fis e fis( g) fis8
             s4 e,16 <a cis>8 <a cis>16~ <a cis> <a cis>8 <a cis>16~ <a cis>8 <a cis>
             g,8 <g' h> d16 <g h>8 <g h>16~ <g h> a' g fis g( a) g8
             s4 e,16 <a cis>8 <a cis>16~ <a cis> <a cis>8 <a cis>16~ <a cis>8 <a cis>
             %10
             g,8 <g' h> g'16 fis e d cis h cis d e8 fis
             s4 e,16 <a cis>8 <a cis>16~ <a cis> <a cis>8 <a cis>16~ <a cis>8 <a cis>
             g,8 <g' h> d16 <g h>8 <g h>16~ <g h> <g h>8 <g h>16~ <g h>4
             fis,8 <fis'-4 ais-2> cis16 <ais' h>8 <ais fis>16~ <ais fis> <ais h>8 <ais fis>16~ <ais fis>8 <ais h>
             fis,8 <fis' ais> cis16 <ais' h>8 <ais fis>16~ <ais fis> <ais h>8 <ais fis>16~ <ais fis>8 <ais h>
             %15
             s1       
                             }
                               
\\
\set fingeringOrientations = #'(left)
\set stringNumberOrientations = #'(up)
\override Staff.TimeSignature #'style = #'()
\override Script #'padding = #1.5 %Fermaten höher setzen

\relative c {
             %1
             a4 e' a, e'
             g, d' g, d'
             a e' a, e'
             g, s4 s2
             %5
             a8 <a' cis> e4 a, e'
             g, d' s2
             a8 <a' cis> e4 a, e'
             g, d' s2
             a8 <a' cis> e4 a, e'
             %10
             g,4 s2.
             a8 <a' cis> e4 a, e'
             g,4 d' g, d'8 e,\accent
             <fis-1>4 <cis'-3> fis, cis'
             fis, cis' fis, cis'
              %15
              \override Beam #'positions = #'(-9 . -9)
             <e,-0 cis' fis ais cis-\tweak #'padding #2 -1 e-0>16 ^\pUp \override NoteHead #'transparent = ##t e'' ^\pDown  e ^\iUp e ^\pDown 
             r4 \override NoteHead #'transparent = ##f
             <e,,-\tweak #'padding #-4 -0 dis' gis his dis e>16 ^\pUp \override NoteHead #'transparent = ##t e''^\pDown  e ^\iUp e ^\pDown
             r4 \override NoteHead #'transparent = ##f
             %16
             <a,, e' ais-4 cis e a>16 ^\pUp \override NoteHead #'transparent = ##t g''^\pDown  g ^\iUp g ^\pDown ^\fermata
             s16 \bar "|."
             
 
                             }
                             
\\
\override Script #'padding = #1.5 %Fermaten höher setzen
\relative c' {
             %1
             s1 s1 s1 s1
             %5
             <e >2 \accent  s
             s1
             <e >2 \accent  s
             s1
             <e >2 \accent  s
             %10
             s1
             <e >2 \accent  s
             %12
             s1
             s1 ^\markup {\smaller "II"}
             s1 
             %15
             \override TextScript #'Y-offset = #8 s4^\markup {\smaller "II"} s4
             \override TextScript #'Y-offset = #8 s4^\markup {\smaller "IV"} s4
             \override TextScript #'Y-offset = #8 s4 -\markup {\smaller "V"}
   
              }
                               
>>

\header{
  title = "6. Fußball im Kopf"
   piece = "Bossa"
}
}

Grüße


ding-dong

  • Member
Re: Mein LilyPond denkt...
« Antwort #3 am: Mittwoch, 2. Dezember 2009, 14:07 »
passiert bei mir nicht - habe allerdings version "2.13.8" verwendet!

schau mal, was passiert, wenn du nur diesen ominösen akkord oder den ganzen takt hast!

trulli

  • Member
Re: Mein LilyPond denkt...
« Antwort #4 am: Mittwoch, 2. Dezember 2009, 22:30 »
Wenn ich nur die beiden betreffenden Takte allein im Code habe, passiert es nicht.

Eben habe ich einen einfachen Test gemacht: Ich habe Lily über die Kommandozeile gestartet und bekomme als Ausgabe dann immer ein und dasselbe Ergebnis.

Damit ist klar: es liegt an Frescobaldi.

Danke fürs Bemühen!

ding-dong

  • Member
Re: Mein LilyPond denkt...
« Antwort #5 am: Donnerstag, 3. Dezember 2009, 08:38 »
… ja, frescobaldi generiert da wohl unterschiedlichen (lilypond-) code!
kannst du mal die beiden versionen speichern und durchgeben - würde mich interessieren!?
danke + gruss

trulli

  • Member
Re: Mein LilyPond denkt...
« Antwort #6 am: Donnerstag, 3. Dezember 2009, 12:57 »
Gerne - aber wie mache ich das?

Ich habe einfach aus Fresco den gesamten Code herauskopiert und in einer .txt Datei gespeichert. Diese habe ich dann über die Kommandozeile durch Lily laufen lassen. Beide Codes sind also identisch (eben der Code, den ich oben angegeben habe).

Gibt es eine Möglichkeit den generierten Fresco-Code abzurufen?

Grüße

« Letzte Änderung: Donnerstag, 3. Dezember 2009, 12:59 von trulli »

ding-dong

  • Member
Re: Mein LilyPond denkt...
« Antwort #7 am: Donnerstag, 3. Dezember 2009, 16:00 »
Zitat
Gerne - aber wie mache ich das?

Ich habe einfach aus Fresco den gesamten Code herauskopiert und in einer .txt Datei gespeichert. Diese habe ich dann über die Kommandozeile durch Lily laufen lassen. Beide Codes sind also identisch (eben der Code, den ich oben angegeben habe).
genau so - einmal, wenn der output stimmt, einmal wenn er so komisch ist!
Zitat
Gibt es eine Möglichkeit den generierten Fresco-Code abzurufen?
ich kenne fresco nicht - läuft der auf windows?
Zitat
Grüße

trulli

  • Member
Re: Mein LilyPond denkt...
« Antwort #8 am: Donnerstag, 3. Dezember 2009, 20:16 »
genau so - einmal, wenn der output stimmt, einmal wenn er so komisch ist!

Der Input ist immer gleich - meinst du den Output, also das .pdf?

Zitat
ich kenne fresco nicht - läuft der auf windows?

Nein, unter Linux (GNOME).

ding-dong

  • Member
Re: Mein LilyPond denkt...
« Antwort #9 am: Donnerstag, 3. Dezember 2009, 23:01 »
absout keine unterschiede? wie hast du die files verglichen?

kann es sein, dass fresco verschiedene aufrufe tätigt?

um der sache auf die spur zu kommen, muss man da wohl durch…

anderseits, wenn dein output stimmt ist das auch schon was!

trulli

  • Member
Re: Mein LilyPond denkt...
« Antwort #10 am: Freitag, 4. Dezember 2009, 12:55 »
Nein, es gibt keine Unterschiede ich habe 1:1 kopiert. Frescobaldi muss mit dem Code irgend etwas machen, bevor er mit Lily bearbeitet wird. Ich kann aber in Menü oder Anleitung keine klärenden Einträge dazu finden.

Ich dachte erst, dass der Code zu lang für Frescobaldi ist. Er ist jetzt schon über 1000 Zeilen, weil es ein Werk mit 14 Teilen ist. Da ich aber nun ein einzelnes Stück herauskopiert habe und der Fehler dort immer noch auftritt, kann es also nur am Code dieses einen Teiles liegen. Die Definition der Auf- und Abschläge muss diese Probleme verursachen. Vielleicht ist es ein Prioritätenkonflikt, weil beide TextScripts die gleiche Prioritätenstufe haben...?
Das würde aber auch heißen, dass Frescobaldi diese Prioritäten bearbeitet.

Wenn ich das gesamte Layout mache, werde ich mich noch einmal mit dem Problem beschäftigen. Vielleicht komme ich dann auch auf eine Lösung.

Grüße

kilgore

  • Member
Re:Mein LilyPond denkt...
« Antwort #11 am: Mittwoch, 6. Januar 2010, 17:54 »
Ok ich benutze auch Frescobaldi mit Lilypond, und habe dein Stück eingegeben.  Bei mir werden die Positionen nicht getauscht....hmmmm....

trulli

  • Member
Re:Mein LilyPond denkt...
« Antwort #12 am: Donnerstag, 7. Januar 2010, 13:32 »
Seltsam, nicht? Bei mir ist die Ausgabe unterschiedlich, obwohl ich nichts am Code ändere.

Wie zeigt Lily die fragliche Stelle an? Die römischen Zahlen müssen immer oben stehen.

Welche Fresco-Version hast du?

Grüße

kilgore

  • Member
Re:Mein LilyPond denkt...
« Antwort #13 am: Donnerstag, 7. Januar 2010, 14:36 »
Ich benutze Frecobaldi Version 0.7.13-3

Aber jetzt bin ich auch verwirrt!   :o

Ich habe es eben wieder gemacht mit deinem Code, und jetzt ist es auch falsch!
Gestern waren alle römische Zahlen oben, ich schwöre es!  Heute ist die erste P mit Pfeil über die II!!   ???
Was auch immer es ist, es ist ansteckend!!!!!

kilgore

  • Member
Re:Mein LilyPond denkt...
« Antwort #14 am: Donnerstag, 7. Januar 2010, 15:06 »
....und jetzt habe ich aktualisiert.  Frescobaldi 1.0.0

Und jetzt ist es die IV, so wie du erst gesagt hast, die falsch rum ist.  ganz komisch!!!  kann mann das nicht mit priorität zwingen?