Autor Thema: Dateistruktur für grössere Projekte  (Gelesen 1694 mal)

spinne

  • Member
Dateistruktur für grössere Projekte
« am: Mittwoch, 10. April 2013, 14:50 »
Hallo,
ich wollte mal fragen wie ihr das so macht mit der Dateistruktur bei grösseren Projekten. Also z. B. Orchesterwerke mit 35 oder mehr Einzelstimmen, Partitur (dort zum Teil Einzelstimmen kombiniert mit partcombine, z. B. 1. und 3. Horn, 2. und 4. Horn wird für gewöhnlich in der Partitur zusammengefasst in den Einzelstimmen jedoch nicht unbedingt).

Also ich hatte bisher folgende Dateien:
Header.ly (globale Definitionen und Makros)
Score.ly (include Header und der Einzelstimmen. Eine Score-Umgebung mit den StaffGroups und dann den Stimmen. Bei mehrsätzigen Werken mit bookpart)
part_Instrument.ly (Einzelstimme)

Bessere Vorschläge?

Gruss
Holger

infranator

  • Member
Re: Dateistruktur für grössere Projekte
« Antwort #1 am: Freitag, 12. April 2013, 16:26 »
Ich glaube genauso macht man das.  :)

Ich bin dazu übergegangen immer eine Datei für alle Einzelstimmen anzulegen, in der jede Einzelstimme in ihrem eigenen \book Abschnitt steht.
Wenn man nochmal irgendwas verändert, muss man nur eine Datei Kompilieren und alles ist auf dem aktuellen Stand. Ist aber natürlich Geschmacksache.
Sehr hilfreich für die Formatierung ist der "bars-per-line-engraver" http://lsr.dsi.unimi.it/LSR/Item?id=838

Zeit probiere ich noch ein anderes "System" aber das ist noch nicht der Weisheit letzter Schluss.
Die Musik steht bei mir komplett in \parallelMusic Abschnitten, damit ich im Code die Akkorde erkennen kann und nicht zwischen den Stimmen hin und her springen muss.
Das sieht dann z.B. so aus:
\version "2.16.0"

const = {
  \time 4/4
  \numericTimeSignature
  \key f \major
}

globalA = {
  \set Score.currentBarNumber = #1
  \mark \markup { \bold \box A }
  s1
  s1
  \bar "|."
}
\parallelMusic #'(EinsA ZweiA DreiA VierA FünfA) {
  % Bar 1
  g'1 |
  e'1 |
  c'1 |
  a1 |
  f1 |

  % Bar 2
  a'1 |
  f'1 |
  d'1 |
  bes1 |
  g1 |
}

%%{ %% Partitur
#(set-global-staff-size 15)
#(set-default-paper-size "a4" 'landscape)
\score {
  <<
    \new StaffGroup <<
      \new Staff {
        \const
        \context Voice = "Eins" <<
          \EinsA
          \globalA
        >>
      }
      \new Staff {
        \const
        \context Voice = "Zwei" <<
          \ZweiA
          \globalA
        >>
      }
      \new Staff {
        \const
        \context Voice = "Drei" <<
          \DreiA
          \globalA
        >>
      }
      \new Staff {
        \const
        \clef bass
        \context Voice = "Vier" <<
          \VierA
          \globalA
        >>
      }
      \new Staff {
        \const
        \clef bass
        \context Voice = "Fünf" <<
          \FünfA
          \globalA
        >>
      }
    >>
  >>
  \layout { }
}
%}

Für jeden Formteil habe ich so eine Datei, dann dauert es nicht immer so lange beim kompilieren.
Wenn dann alles fertig ist, kommentiere ich alle \score abschnitte aus und füge die Stimmen in einer neuen Datei zusammen, welche dann die Basis für die Partitur und die Einzelstimmen ist.

\version "2.16.0"

\include "TeilA.ly"
\include "TeilB.ly"
\include "TeilC.ly"

Eins = {
  \EinsA
  \EinsB
  \EinsC
}
global = {
  \globalA
  \globalB
  \globalC
}


So richtig flüssig läuft es aber noch nicht auf diese Art. Mehrtaktige Pausen z.B. sind eine ziemliche Fummelei, die ich zur Zeit mit \extractMusic
http://lsr.dsi.unimi.it/LSR/Item?id=542 umgehen muss.

Arnold

  • Member
Re: Dateistruktur für grössere Projekte
« Antwort #2 am: Montag, 15. April 2013, 09:32 »
Hallo,

auch ich benutze lieber zu viele als zu wenige Dateien.
Eine Datei je Instrument und Satz, nur zur Definition der Stimme.
Je eine Datei zur "isolierten" Darstellung derselben, oft auch in verschiedenen Transpositionen, teils nacheinander, teil parallel.
Oft je eine Datei für jeden Satztitel, wird per \include in den \header-block des \score eingebunden.
Je eine Datei für die Partitur jedes Satzes - oft transponiere ich darin alle Stimmen nach C.
Je eine Datei für die ganzen Einstelstimmen, und abgeleitete Transpositionen.
Eine Datei für die ganze Partitur.
Machmal habe ich auch eine extra 'Dateiebene' für das "Partitursatzlayout" eingefügt.
Mittlerweile bin ich dazu übergegangen, auch die (gemeinsamen, von mir immer gleich angewandten) Voreinstellungen  in je eine Includedatei zusammenzufassen - ein \include in der obersten Ebene, ein \include im Staff-Block.

Durch einen Patch erstelle ich neuerdings auch immer eine PDF-Datei mit und eine ohne point-and-click.
Und ich benutze eine (leider noch nicht »zur Weitergabe ausgereifte«) make-Methode, bei der das Dateiänderungsdatum auch der include-Dateien mit dem PDF-Dateidatum verglichen wird, um Massenkompilationen (auf meinen 8 CPU-Threads weitgehends parallel) durchzufüghen - natürlich nur bei Änderungen.

Nur \partcombine habe ich bisher kaum benutzt. Meistens habe ich die zwei Hornstimmen gleich parallel für eine Notenzeile notiert. Da muß ich noch herausfinden, wie man das Flattern (schneller Wechsel zwischen »a2«, »I. Solo«, »II. Solo«, Akkord-Schreibweise, Ober-Unterstimmen-Schreibweise) unterbindet.

Arnold