Autor Thema: Pause-Zeichen im ganzen Takt  (Gelesen 2336 mal)

flashgordonx

  • Newbie
  • *
  • Beiträge: 5
Pause-Zeichen im ganzen Takt
« am: Sonntag, 4. März 2018, 19:12 »
Hallo Lilypond-Fans

Ich möchte wissen, wie man erreichen kann, dass ein ganzes Pause-Zeichen im Takt miteinander bedeckt werden und zentriert sein? Wenn ich R1 schreibe, werden sie im verschiedenen Höhe, wenn "b1\rest" geschrieben werden, werden sie nicht zentriert.

Danke für die Hilfe :)

\version "2.18.2"

global = {
  \key c \major
  \time 4/4
}

sopranoVoice = \relative c'' {
  \global
  \dynamicUp
    <<  { \voiceOne   R1 e   b1\rest    }
                 
 \new Voice {\voiceTwo {  R1 d b1\rest }
   
   } >> \oneVoice
 
}

verse = \lyricmode {
  % Liedtext folgt hier.
 
}

\score {
  \new Staff \with {
    instrumentName = "Sopran"
    midiInstrument = "choir aahs"
  } { \sopranoVoice }
  \addlyrics { \verse }
  \layout { }
  \midi {
    \tempo 4=100
  }
}

harm6

  • Hero Member
  • *****
  • Beiträge: 728
Antw:Pause-Zeichen im ganzen Takt
« Antwort #1 am: Sonntag, 4. März 2018, 20:31 »
Hallo,

am einfachsten wird sein ein upgrade auf die letzte devel-Version zu machen, dort gibt es den Merge_rests_engraver.

Einen engraver der einfache Pausen vereint gibt es auch im lsr, für Ganztaktpausen such mal die Archive durch.
Diese Engraver sind nicht ganz so ausgefeilt wie das, was jetzt im source-code ist, aber ansonsten auch anwendbar.
Ansonsten kannst Du auch manuell die staff-position einstellen.

Hier ein Beispiel-code für 2.19.81:

\version "2.19.81"

\new Staff
  \with { \consists "Merge_rests_engraver" }
  \relative c'' {
    << {
        \voiceOne
        %% MMRs are merged
        R1
        \set Staff.suspendRestMerging = ##t
        %% not merged
        R
        %% manually set staff-position
        \once \override MultiMeasureRest.staff-position = 8
        R
        %% MMRs are merged again
        \set Staff.suspendRestMerging = ##f
        R
       }
       \new Voice {
         \voiceTwo
         R1
         R
        \once \override MultiMeasureRest.staff-position = -10
         R
         R
       }
    >>
  }

Gruß,
  Harm