Autor Thema: Variable für \layout?  (Gelesen 2120 mal)

derburn

  • Member
Variable für \layout?
« am: Mittwoch, 13. April 2011, 11:21 »
Hi Lilys,

an himatts Frage "Variable für \with" (https://liarchiv.joonet.de/index.php?topic=385.0) anknüpfend möchte ich in die Runde fragen,
ob jemand es schon mal geschafft hat, einen \layout-Block in eine Variable zu schreiben?

Z.B.:
myLayout = \layout {
  indent = #10
  \context {
    \Score
    \remove "System_start_delimiter_engraver"
    } % context
  } % layout

Ruft man dann \myLayout auf, erzeugt Lilypond zwar ein PDF, kümmert sich aber nicht um die Layout-Einstellungen
und zeigt den Fehler: syntax error, unexpected OUTPUT_DEF_IDENTIFIER \myLayout.

Z.B.:
\version "2.13.51"

eins = \drummode { bda8. bda16 sn8. bda16 r16 bda8 bda16 sn4 } 

myLayout = \layout {
  indent = #10
  \context {
    \Score
    \remove "System_start_delimiter_engraver"
    } % context
  } % layout

\score { <<
    \new DrumStaff { \eins }
    \new DrumStaff { \eins }
    >> }

\myLayout % Fehler

Ebenso ergibt der Aufruf \layout \myLayout den Fehler:
syntax error, unexpected OUTPUT_DEF_IDENTIFIER, expecting '{'.
(Den habe ich versucht, um zu sehen, ob man \layouts auch verschachteln kann, so wie bspw. \withs. Ergebnis: NEIN! :))

Vielleicht hatte da schon jemand Erfolg...?
Viele liebe Grüße,
Manuel

ding-dong

  • Member
Re:Variable für \layout?
« Antwort #1 am: Mittwoch, 13. April 2011, 13:09 »
vielleicht
\score { <<
    \new DrumStaff { \eins }
    \new DrumStaff { \eins }
  >>
  \layout { \myLayout } % kein Fehler !!!
}

!?

harm6

  • Member
Re:Variable für \layout?
« Antwort #2 am: Donnerstag, 14. April 2011, 00:16 »
Hallo Manuel,

Die Thematik ist auch schon hier:
http://old.nabble.com/%5Cscore-block-as-variable-function-to31147554.html#a31180922
diskutiert worden.

Gruß,
  Harm

derburn

  • Member
Re:Variable für \layout?
« Antwort #3 am: Donnerstag, 14. April 2011, 15:17 »
Eieiei... manchmal hat man aber auch ein Brett vorm Kopf!
Klammern soll helfen... ;)

Danke Euch beiden!
Hatte den Eintrag auf old.nabble schlicht nicht gesehen!

Viele liebe Grüße,
Manuel