• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Tabulatur und \RemoveEmptyStaffContext

Begonnen von schlagsaite, Mittwoch, 30. September 2009, 11:23

Vorheriges Thema - Nächstes Thema

schlagsaite

Hallo

Ich möchte zu einer längeren ersten Gitarrenstimme ein zweite Gitarre hinzufügen. Diese spielt aber nur ein paar Takte in der Mitte des Stückes. Damit ich nicht ein langes leeres (Doppel) System mitschleppe würde ich leer Zeilen gerne entfernen. Dies funtioniert auch gut mit "\RemoveEmptyStaffContext" und "\override Staff.VerticalAxisGroup #'remove-first = ##t" (für die erste Zeile)
Leider verschwinden dabei nur die Noten und nicht die Tabulatur.

In der englischen Mailingliste gibts eine Frage dazu von 2004

http://lists.gnu.org/archive/html/lilypond-user/2005-11/msg00237.html

und auch eine Antwort die ich überhaupt nicht verstehe

hier meine Testdatei

\version "2.13.3"
\pointAndClickOff
% Beseitigt leere Systeme außer dem ersten

\layout {
\context { \RemoveEmptyStaffContext }
}

Musikone = \relative c' {
\repeat unfold 20 { d8 d d d d d d d }
}

Musiktwo = \relative c {
\repeat unfold 11 { R1 }
c8 c c c c c c c
c8 c c c c c c c
\repeat unfold 7 { R1 }
}

\score {
\new StaffGroup
<<
\new Staff { \clef "treble_8" \Musikone }
\new TabStaff { \set TabStaff.stringTunings = #'(4 -1 -5 -10 -15 -20) \clef "tab" \Musikone }
% Beseitigt das erste leere System
\new Staff { \override Staff.VerticalAxisGroup #'remove-first = ##t \clef "treble_8" \Musiktwo }
\new TabStaff { \set TabStaff.stringTunings = #'(4 -1 -5 -10 -15 -20) \clef "tab" \Musiktwo }
>>
}


Wie immer freue ich mich auf Eure Hilfe

Martin


RobUr

Hallo Martin,

die Antwort auf deine Frage steht in einem jüngeren Thread: http://lists.gnu.org/archive/html/lilypond-user/2007-04/msg00275.html

Verwende folgenden Layout-Block:

\layout {
\context {
\RemoveEmptyStaffContext
\override VerticalAxisGroup #'remove-first = ##t
}
\context {
\TabStaff
\remove "Axis_group_engraver"
\consists "Hara_kiri_engraver"
\override Beam #'auto-knee-gap = #'()
\override VerticalAxisGroup #'remove-empty = ##t
\override VerticalAxisGroup #'remove-first = ##t
}
}


Somit kannst du auch \override Staff.VerticalAxisGroup #'remove-first = ##t aus dem zweiten \Staff entfernen (gilt dann global).

Grüße,
Robert

schlagsaite

Hallo Robert

Vielen Dank für deinen Tip, damit funktionierts.

Martin