Autor Thema: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark  (Gelesen 2640 mal)

Manuela

  • Member
Hi,

ich hätte gerne, dass die RehearsalMarks in einer Linie stehen, das MetronomMark dazwischen und die Barnummern sollten näher beim Staff sein. Ich habe verschiedene Varianten von outside-staff-priority versucht, aber nichts hat eine Veränderung erbracht.

Hier ein Minimalbeispiel:

\version "2.19.2"

\header{
  title = "Blabla blabla"
  composer = "Text/Blabla blabla"
  subtitle = "Blabla blabla"
}

\language "deutsch"

\paper {
  #(set-paper-size "a4")
  annotate-spacing = ##f
  system-system-spacing.extra-distance = #0
  last-bottom-spacing.basic-distance = #10
  left-margin = #20
  system-system-spacing.basic-distance = #10

}

StropheI = \lyricmode {
  %\set stanza = "1:"
  bla bla bla
}

NurNoten= {
  \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1)
  \override Score.BarNumber.break-visibility = #end-of-line-invisible
  \mark \markup { \box \bold "Teil 1" }
  c c c c c c c c c c c c
}

Gesang = \relative c' {
  \clef "treble" \key c \major \time 4/4
  \set Timing.beamExceptions = #'()
  \set Timing.baseMoment = #(ly:make-moment 1/8)
  \set Staff.beatStructure = #'(2 2 2 2 )
  \set Staff.midiInstrument = #"acoustic grand"
  \autoBeamOff
  \tempo 4=120
  \set Score.markFormatter = #format-mark-box-alphabet
  \set midiInstrument = #"choir aahs"
  \override Score.BarNumber.break-visibility = #end-of-line-invisible
  \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1)
  \mark \markup { \box "Einleitung" } r1 r1

  r1 r1
  \NurNoten
  \bar "||"
}

% hier kommen die Akkordbezeichnungen
AK = \chordmode {
  \set chordChanges = ##f
  c1 g c c c c c
}

Struktur= {
  s1*7 \break
}

\score
{
  \new StaffGroup
  <<
    \new ChordNames
    {
      \AK
    }
    \new Staff \with
    {
      \override Staff.RehearsalMark.outside-staff-priority = #1000
      \override Staff.MetronomeMark.outside-staff-priority = #100
      \override Staff.BarNumber.outside-staff-priority = #10
    }
    <<
      \new Voice = "upper" {
        \set Staff.instrumentName="Vocal"
        \Gesang
      }
      \new Lyrics \lyricsto "upper" { \StropheI }
      \Struktur
    >>
  >>
}
« Letzte Änderung: Donnerstag, 5. Mai 2016, 21:38 von Manuela »

harm6

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #1 am: Freitag, 6. Mai 2016, 00:07 »
Zitat
Hier ein Minimalbeispiel:
Also, ein Minimalbeispiel ist das jetzt nicht - all diese Setzungen vernebeln nur das eigentliche Problem.

Das Problem ist aber ein bißchen komplexer. Schau mal, ob Du damit klar kommst:

\version "2.19.41"

Gesang = \relative c' {
  \tempo 4=120
  \once \override Score.RehearsalMark.self-alignment-X = #RIGHT
  \mark \markup { \box "Einleitung" }
  r1 r1
  r1 r1
  \mark \markup { \box \bold "Teil 1" }
  c c c c c c c c c c c c
  \bar "||"
}

% hier kommen die Akkordbezeichnungen
AK = \chordmode {
  c1 g c c c c c
}

\layout {
  \context {
    \Score
    \override BarNumber.break-visibility = ##(#t #t #t)
    \remove "Bar_number_engraver"
    \override RehearsalMark.padding = #3
    \override MetronomeMarkMark.padding = #3
  }
  \context {
    \ChordNames
    \override VerticalAxisGroup.staff-affinity = #UP
  }
}

\score {
  \new StaffGroup
  <<
    \new ChordNames
    \AK
    \new Staff
      \with {
        \consists "Bar_number_engraver"
        \override BarNumber.padding = #0
      }
      \new Voice = "upper" \with {
        instrumentName="Vocal"
      }
      \Gesang
  >>
}

HTH,
  Harm

Manuela

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #2 am: Freitag, 6. Mai 2016, 10:03 »
Danke Harm, werde ich mir ansehen!

Ok steht jetzt in einer Zeile, aber das 1. Mark zu weit links. Gibt wohl keine sinnvolle Lösung für mein Problem.

Das mit den Barnumbers klappt jedenfalls super, danke!

Update: ich habe jetzt das Metronom-Mark runtergesetzt und versuche es mit

\override MetronomeMark.outside-staff-horizontal-padding = #-3
nach links zu verschieben (im Score-Context), aber es rührt sich nicht vom Fleck!
« Letzte Änderung: Freitag, 6. Mai 2016, 10:39 von Manuela »

harm6

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #3 am: Freitag, 6. Mai 2016, 11:22 »
Das grundsätzliche Problem besteht ja darin, daß Du sowohl RehearsalMark als auch MetronomeMark zur selben Zeit gesetzt hast, aber beide horizontal in einer Linie haben willst.
Wenn man mal davon absieht, daß ich noch nie verstanden habe warum das jemand haben will (visuell steht dann doch entweder die RehearsalMark oder die MetronomeMark schlichtweg an der falschen Stelle), so kommt dieser Wunsch doch öfters.

Aber entweder Du mußt die RehearsalMark nach links schieben (wie in meiner ersten Antwort) oder die MetronomeMark nach rechts. Auch das geht, wenn auch mit einem work-around:

\version "2.19.41"

Gesang = \relative c' {
  \set Score.tempoHideNote = ##t
  \tempo 4=120
  \mark \markup { \box "Einleitung" }
  r1
  \unset Score.tempoHideNote
  \tempo 4=120
  r1
  r1 r1
  \mark \markup { \box \bold "Teil 1" }
  c c c c c c c c c c c c
  \bar "||"
}

% hier kommen die Akkordbezeichnungen
AK = \chordmode {
  c1 g c c c c c
}

\layout {
  \context {
    \Score
    \override BarNumber.break-visibility = ##(#t #t #t)
    \remove "Bar_number_engraver"
    \override RehearsalMark.padding = #3
    \override MetronomeMarkMark.padding = #3
  }
  \context {
    \ChordNames
    \override VerticalAxisGroup.staff-affinity = #DOWN
  }
}

\score {
  \new StaffGroup
  <<
    \new ChordNames
    \AK
    \new Staff
      \with {
        \consists "Bar_number_engraver"
        \override BarNumber.padding = #0
        instrumentName="Vocal"
      }
      \new Voice = "upper"
      \Gesang
  >>
}

Zitat
ich habe jetzt das Metronom-Mark runtergesetzt und versuche es mit ... zu verschieben

Hier weiß ich nicht genau was Du möchtest, code bitte ;)

Gruß,
  Harm

Manuela

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #4 am: Freitag, 6. Mai 2016, 18:13 »
Ich hoffe, jetzt komme ich einem Minimalbeispiel näher, habe vieles Unnötige rausgeschmissen

\version "2.19.2"

\language "deutsch"

\paper {
  #(set-paper-size "a4")
}

Gesang = \relative c' {
  \clef "treble" \key c \major \time 4/4
  \override Score.MetronomeMark.direction = #DOWN
  \tempo 4=120
  \set Score.markFormatter = #format-mark-box-alphabet
  \override Score.BarNumber.break-visibility = #end-of-line-invisible
  \set Score.barNumberVisibility = #(every-nth-bar-number-visible 1)
  \mark \markup { \box "Einleitung" }
  r1 r1 r1
  \mark \markup { \box \bold "Teil 1" }

}

AK = \chordmode {
  \set chordChanges = ##f
  c1 g f
}

\score
{
  <<
    \new ChordNames
    {
      \override VerticalAxisGroup.staff-affinity = #UP
      \AK
    }
    \new Staff
    <<
      \set Staff.instrumentName="Vocal"
      \new Voice = "upper" {
        \Gesang
      }

    >>
  >>
}

Ich würde gerne das Metronommark weiter nach links schieben.

Danke für deine unermüdlichen Bemühungen!  :) :D

harm6

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #5 am: Freitag, 6. Mai 2016, 23:25 »
Ein minimal-Beispiel für "eine unter dem Staff angesiedelte MetronomeMark horizontal verschieben" wäre

\version "2.19.41"

\new Staff {
  \override Score.MetronomeMark.direction = #DOWN
  \tempo 4=120
  r1
}

;)

Geht via 'X-offset oder 'self-alignment-X.
Ich finde immer 'self-alignment-X ist weniger invasiv aber schwerer zu handhaben. Probiers aus.

Z.B.:
\version "2.19.41"

\new Staff {
  \override Score.MetronomeMark.direction = #DOWN
  \override Score.MetronomeMark.self-alignment-X = 0.2
  \tempo 4=120
  r1
}

Preisfrage, wer kann vorhersagen was hier rauskommt ;)

\new Staff {
  \override Score.MetronomeMark.direction = #DOWN
  \override Score.MetronomeMark.X-offset = 15
  \tempo 4=120
  r1
}


Gruß,
  Harm

Manuela

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #6 am: Freitag, 6. Mai 2016, 23:44 »


Preisfrage, wer kann vorhersagen was hier rauskommt ;)

\new Staff {
  \override Score.MetronomeMark.direction = #DOWN
  \override Score.MetronomeMark.X-offset = 15
  \tempo 4=120
  r1
}


Ich hab's natürlich ausprobiert  ;)

harm6

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #7 am: Samstag, 7. Mai 2016, 00:06 »
Zitat von: Manuela
Ich hab's natürlich ausprobiert

Tja, somit muß ich Dir den Gewinn eines Toasters leider vorenthalten :D

Manuela

  • Member
Re: Vertikale Anordnung von BarNumbers, MetronomMark und RehearsalMark
« Antwort #8 am: Samstag, 7. Mai 2016, 00:22 »
Zitat von: Manuela
Ich hab's natürlich ausprobiert

Tja, somit muß ich Dir den Gewinn eines Toasters leider vorenthalten :D

Das kommt davon, wenn man ehrlich ist  ;)