Autor Thema: Problem mit Variablen  (Gelesen 6099 mal)

dennis1307

  • Member
Problem mit Variablen
« am: Samstag, 12. Oktober 2013, 21:26 »
Liebe Community,

ich habe ein Problem. Ich gestalte grade ein Liederheft und wollte die Hauptdatei etwas übersichtlicher gestalten. Zu diesem Zweck würde ich gerne die Einstellungen in eine externe Datei auslagern und Variablen definieren, die ich dann in die Hauptdatei einbinden kann. Aber ich bekomme immer Fehlermeldungen bei Rauten. Hier ein Teil meines Problems:

heft.ly

\version "2.16.2" %Versionsnummer des Programms

\include "bookSettings.ly" % Einstellungsdatei

\staffSize

\paper {

\fonts
\paperSize
\paperSetting

}

\score {

<<
  \new Staff \new Voice = melody \relative c' {
    c4 d e f
    g4 f e d
    c1
  }
  \new Lyrics \lyricsto melody { aa aa aa aa aa aa aa aa aa }
>>

\layout { }

}

bookSettings.ly

fonts = {
myStaffSize = #17
#(define fonts
(make-pango-font-tree "Gentium Book Basic"
"Nimbus Sans"
"Luxi Mono"
(/ myStaffSize 20)))
}

staffSize = {
#(set-global-staff-size 17)
}

paperSize = {
#(set-paper-size "a5")
}

paperSetting = {
print-page-number = ##f
ragged-bottom = ##t
ragged-right = ##f
left-margin = #5
right-margin = #5
top-margin = #10
indent = #0
short-indent = #0
}

Und zu guter Letzt noch den Kompilationsbericht:

Zitat
# -*-compilation-*-
»C:/Users/Xplace/Dropbox/heft.ly« wird verarbeitet
Analysieren...
C:/Users/Xplace/Dropbox/bookSettings.ly:2:8: Fehler: syntax error, unexpected STRING
   
        myStaffSize = #17

C:/Users/Xplace/Dropbox/bookSettings.ly:2:22: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   myStaffSize =
                      #17

C:/Users/Xplace/Dropbox/bookSettings.ly:3:9: Fehler: GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck
   #
         (define fonts

C:/Users/Xplace/Dropbox/bookSettings.ly:11:8: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   
        #(set-global-staff-size 17)

Warnung: #(set-paper-size ..) muss innerhalb von \paper { ... } verwendet werden
C:/Users/Xplace/Dropbox/bookSettings.ly:19:8: Fehler: syntax error, unexpected STRING
   
        print-page-number = ##f

C:/Users/Xplace/Dropbox/bookSettings.ly:19:28: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   print-page-number =
                            ##f

C:/Users/Xplace/Dropbox/bookSettings.ly:20:24: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   ragged-bottom =
                        ##t

C:/Users/Xplace/Dropbox/bookSettings.ly:21:23: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   ragged-right =
                       ##f

C:/Users/Xplace/Dropbox/bookSettings.ly:22:22: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   left-margin =
                      #5

C:/Users/Xplace/Dropbox/bookSettings.ly:23:23: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   right-margin =
                       #5

C:/Users/Xplace/Dropbox/bookSettings.ly:24:21: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   top-margin =
                     #10

C:/Users/Xplace/Dropbox/bookSettings.ly:25:17: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   indent =
                 #0

C:/Users/Xplace/Dropbox/bookSettings.ly:26:23: Warnung: Nicht-musikalischer Ausdruck wird ignoriert
   short-indent =
                       #0

Warnung: keine Musik in der Partitur gefunden
Interpretation der Musik...
Vorverarbeitung der grafischen Elemente...
Ideale Seitenanzahl wird gefunden...
Musik wird auf eine Seite angepasst...
Systeme erstellen...
Layout nach »/Users/Xplace/Dropbox/heft.ps« ausgeben...
Konvertierung nach »/Users/Xplace/Dropbox/heft.pdf«...
schwerer Fehler: gescheiterte Dateien: "C:\\Users\\Xplace\\Dropbox\\heft.ly"

Ich weiß nicht, ob ich einfach blind bin, aber ich kann den Fehler nicht finden. Wenn ich die Settings direkt in die Hauptdatei schreibe, habe ich keinerlei Probleme.

In der Hoffnung, dass mir jemand helfen kann, verbleibe ich mit den besten Grüßen
Dennis

PS: Habe ich verschoben, weil es meiner Meinung nach besser hierhin passt. ;)

eluze

  • Member
Re: Problem mit Variablen
« Antwort #1 am: Samstag, 12. Oktober 2013, 23:10 »
hallo Dennis

ich würde vorschlagen, zuerst mal das was du möchtest kompilierbar in 1 einzelnes file zu schreiben (es kann auch nur 1 item sein, zb. fonts oder staffSize oder papersize...)!

Eluze

dennis1307

  • Member
Re: Problem mit Variablen
« Antwort #2 am: Sonntag, 13. Oktober 2013, 13:23 »
Hallo Eluze,
hallo an den Rest,

Ich habe jetzt die Teile, die in die paper-Umgebung sollen in einer Extradatei ohne Variablen gespeichert und dann direkt dort eingebunden. Das ist aber immer noch nicht das, was ich gerne möchte (auch wenn es der Sache schon sehr nahe kommt). Ich würde gerne alle Einstellungen, egal wo sie stehen in einer Datei speichern um sie dann per Variablen einzubinden. Frage: Wieso kann ich Settings nicht in Variablen speichern? Oder gibt es eine Möglichkeit, die ich nur noch nicht gesehen habe?

GLG
Dennis

eluze

  • Member
Re: Problem mit Variablen
« Antwort #3 am: Sonntag, 13. Oktober 2013, 16:21 »
gut - dann kannst du uns mal ein kurzes beispiel schicken, das du in einer variable speichern möchtest - wahrscheinlich ist das ein kleiner teil deiner bookSettings.ly!

Eluze

dennis1307

  • Member
Re: Problem mit Variablen
« Antwort #4 am: Sonntag, 13. Oktober 2013, 16:35 »
Hallo Eluze,

ja. Ich würde zum Beispiel gerne die Seiteneinstellung komplett in einer Variablen speichern. Etwa so:

paperSetting = {
print-page-number = ##f
ragged-bottom = ##t
ragged-right = ##f
left-margin = #5
right-margin = #5
top-margin = #10
indent = #0
short-indent = #0
}

Und dann am liebsten alles in einer Datei, damit ich immer wieder auf die Variablen zugreifen kann. Aber irgendwie funktioniert das nicht --- oder ich habe einfach den Weg noch nicht gefunden...  ;)

LG
Dennis

fugenkomponist

  • Member
Re: Problem mit Variablen
« Antwort #5 am: Sonntag, 13. Oktober 2013, 16:57 »
Was spricht denn dagegen, statt einer Variable einfach eine Datei anzulegen, die diese Settings beinhaltet und diese dann per \include einzubinden?

eluze

  • Member
Re: Problem mit Variablen
« Antwort #6 am: Sonntag, 13. Oktober 2013, 16:58 »
schön  :) , nun also (gekürzt auf das ragged-right):

myPaperSetting = \paper {
  ragged-right = ##t
}
myPaperSettingB = \paper {
  ragged-right = ##f
}
\book{
  \bookpart{
    \paper { \myPaperSetting }
    {c c d d}
  }
  \bookpart{
    \paper { \myPaperSettingB }
    \paper { \myPaperSetting }
    {c c d d}
  }
}

ähnlich mit \layout oder \header - probier's mal oder komm wieder

hdh
Eluze

dennis1307

  • Member
Re: Problem mit Variablen
« Antwort #7 am: Sonntag, 13. Oktober 2013, 17:01 »
Hi ihr Zwei,

danke für eure Antworten. :)

@fugenkomponist: Eigentlich nichts, aber ich würde gerne dem Dateienchaos einen Riegel vorschieben. :)

@Eluze: Danke, ich werde es ausprobieren und mich baldestmöglich wieder melden, ob es geklappt hat.

GLG Dennis

eluze

  • Member
Re: Problem mit Variablen
« Antwort #8 am: Sonntag, 13. Oktober 2013, 17:05 »
@ fugenkomponist:

1 variable -> 1 file???

Eluze

dennis1307

  • Member
Re: Problem mit Variablen
« Antwort #9 am: Sonntag, 13. Oktober 2013, 17:56 »
Hallo,

ich nochmal. Ich habe noch ein kleines Problem: Sobald ich zwei Variablen (oder mehr) in eine Datei schreibe, bekomme ich bei der Kompilierung wieder Fehlermeldungen und ab der zweiten werden die Variablen ignoriert. Wodran kann das liegen?

variable.ly
paperSize = \paper {
#(set-paper-size "a5")
}

paperSetting = \paper {
print-page-number = ##f
ragged-bottom = ##t
ragged-right = ##f
left-margin = #5
right-margin = #5
top-margin = #35
indent = #0
short-indent = #0
}

haupt.ly
\version "2.16.2"

\include "variable.ly"

\paper {
\paperSetting
\paperSize
}

\score {
\new Staff <<
{a a a a}
>>
}

Kompilierungsbericht:
Zitat
# -*-compilation-*-
»C:/Users/Xplace/Desktop/haupt.ly« wird verarbeitet
Analysieren...
C:/Users/Xplace/Desktop/haupt.ly:7:8: Fehler: syntax error, unexpected OUTPUT_DEF_IDENTIFIER
   
        \paperSize

Interpretation der Musik...
Vorverarbeitung der grafischen Elemente...
Ideale Seitenanzahl wird gefunden...
Musik wird auf eine Seite angepasst...
Systeme erstellen...
Layout nach »/Users/Xplace/Desktop/haupt.ps« ausgeben...
Konvertierung nach »/Users/Xplace/Desktop/haupt.pdf«...
schwerer Fehler: gescheiterte Dateien: "C:\\Users\\Xplace\\Desktop\\haupt.ly"

Habe ich irgendetwas vergessen? Hoffe auf eure Hilfe.

GLG Dennis

fugenkomponist

  • Member
Re: Problem mit Variablen
« Antwort #10 am: Sonntag, 13. Oktober 2013, 19:23 »
@ fugenkomponist:

1 variable -> 1 file???

Eluze
Genau so. Alle in ein Verzeichnis und dann „\include "settings/paperSetting.ly" \include "settings/paperSize.ly"“. Mehr als 10 Dateien werdens doch nicht sein, oder?

dennis1307

  • Member
Re: Problem mit Variablen
« Antwort #11 am: Sonntag, 13. Oktober 2013, 19:28 »
@fugenkomponist: Ich werde berichten. ;)

eluze

  • Member
Re: Problem mit Variablen
« Antwort #12 am: Sonntag, 13. Oktober 2013, 21:27 »
bitte bei mehreren variablen genau so wie unten angegeben:

\bookpart{
    \paper { \myPaperSettingB }
    \paper { \myPaperSetting }
    {c c d d}
  }

bin mir nicht ganz sicher, ob im verlauf von 2.17... verbesserungen stattgefunden haben.

Eluze