Autor Thema: Formatierung der Stimmenbeschriftung  (Gelesen 1466 mal)

DocTaxon

  • Member
Formatierung der Stimmenbeschriftung
« am: Sonntag, 20. Oktober 2013, 09:57 »
Hallo!

Ich habe hier einen Code für eine Frage zur Beschriftung der Stimmen eingestellt.
Es sind fünf Staves, und wie normal, sind die Beschriftungen am Anfang ausgeschrieben (instrumentName) und weiterhin abgekürzt (shortInstrumentName).

Ich habe
  • Violino principale - Vl. pr.
  • Violino I - Vl. I
  • Violino II - Vl. II
  • Viola - Vla.
  • Organo e Violoncello [Basso continuo] - B. c.

Die beiden Violinen I u. II stehen bei mir in einer StaffGroup, so soll nur "I" und "II" vor der Notenzeile stehen und einmal "Violino" zwischen den beiden. Das habe ich schon. Nur werden leider alle Stimmen untereinander zentriert dargestellt.

Die umgebrochenen Stimmen Nr. 1 und 5 werden für sich auch zentriert dargestellt, obwohl ich ins markup right-column geschrieben habe. Ich möchte aber erreichen, dass diese rechtsbündig umgebrochen werden.

Außerdem sollen alle fünf Stimmen rechtsbündig untereinander stehen, als wenn sie sich an einer gedachten senkrechten Linie orientieren. Außer "I" und "II" der beiden Violinen, die Nummerierung soll quasi rechts neben dieser gedachten senkrechten Linie stehen.

Ich habe es mal in einem pdf dargestellt, wie ich mir das vorgestellt habe.

Zudem würde ich es begrüßen, dass bei den umgebrochenen Stimmen Nr. 1 und 5 der Zeilenabstand verringert wird.

Ich hoffe, Ihr wisst da was, wie Ihr mir helfen könnt.

Vielen Dank,
DocTaxon ...

\version "2.16.0"

\header{
  tagline = ##f
}

\layout {
  indent = 35
  short-indent = 15
  \context {
    \Score
    \remove "Bar_number_engraver"
    \override NonMusicalPaperColumn #'line-break-permission = ##f
    \override NonMusicalPaperColumn #'page-break-permission = ##f
  }
}

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

musicI = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 2 { gis8 gis gis fis16 e b'4. b16 a } gis8 a16 b a8 gis fis dis b e_\p \break
  r1 r r r
}

musicII = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 2 { gis8 gis gis fis16 e b'4. b16 a } gis8 a16 b a8 gis fis dis b e_\p \break
  r1 r r r
}

musicIII = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes b8 \repeat unfold 2 { e8 e e e gis4. gis16 fis } e8 fis16 gis fis8 e dis4 r8 b_\p \break
  r1 r r r
}

musicIV = {
  \clef alto
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes gis8 \repeat unfold 2 { b8 b b b e,4. gis16 a } b8[ b] cis cis fis,4 r8 gis_\p \break
  r1 r r r
}

musicV = {
  \clef bass
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 8 { e4 } e8[ e] a, ais b4 r8 e_\p \break
  r1 r r r
}

music = { <<
  \new StaffGroup <<
    \new Staff = "violin0" \with { shortInstrumentName = #"Vl. pr." midiInstrument = #"violin" }
    \relative c'' {
    \set Staff.instrumentName = \markup \right-column { Violino \line { principale } }
      \musicI
    }
    \new StaffGroup \with { systemStartDelimiter = #'SystemStartSquare instrumentName = #"Violino" shortInstrumentName = #"Vl." }
    <<
      \new Staff = "violin1" \with { instrumentName = #"I" shortInstrumentName = #"I" midiInstrument = #"violin" }
      \relative c'' {
        \musicII
      }
      \new Staff = "violin2" \with { instrumentName = #"II" shortInstrumentName = #"II" midiInstrument = #"violin" }
      \relative c'' {
        \musicIII
    }
    >>
    \new Staff = "viola" \with { instrumentName = #"Viola" shortInstrumentName = #"Vla." midiInstrument = #"viola" }
    \relative c'' {
      \musicIV
    }
    \new Staff = "organ" \with { instrumentName = #"Organo e Violoncello [Basso continuo]" shortInstrumentName = #"B. c." midiInstrument = #"church organ" }
    \relative c {
    \set Staff.instrumentName = \markup \right-column { Organo \line { e Violoncello } \line { [Basso continuo] } }
      \musicV
      }
    >>     
>> }

\score {
  \music
 
  \layout { }


\score {
  \unfoldRepeats

<<

  \music
>>

  \midi {
    \context {
      \Staff
      \remove "Staff_performer"
    }
    \context {
      \Voice
      \consists "Staff_performer"     
    }
    \tempo 4 = 100
  }
}

eluze

  • Member
Re: Formatierung der Stimmenbeschriftung
« Antwort #1 am: Sonntag, 20. Oktober 2013, 11:06 »
hier ein ansatz:
music = \new StaffGroup <<
  \new Staff = "violin0" \with {
    instrumentName = \markup \right-column {Violino principale}
  } \relative c'' \musicI
 
  \new StaffGroup \with {
    systemStartDelimiter = #'SystemStartSquare
    instrumentName = \markup \right-column { Violino }
    } <<
    \new Staff = "violin1" \with {
      instrumentName = \markup \fill-line{\null I}
    } \relative c'' \musicII
    \new Staff = "violin2" \with {
      instrumentName = \markup \fill-line{\null II}
    } \relative c'' \musicIII
  >>
% ...
>>
hilft das weiter?
Eluze


DocTaxon

  • Member
Re: Formatierung der Stimmenbeschriftung
« Antwort #2 am: Sonntag, 20. Oktober 2013, 11:39 »
Naja, so stehen alle Instrumente für sich rechtsbündig. Sie sollten aber schon insgesamt rechtsbündig stehen, als wenn man vor die gesamte Systemgruppe eine gedachte Senkrechtlinie zieht, quasi "instrumentenübergreifend rechtsbündig".

harm6

  • Member
Re: Formatierung der Stimmenbeschriftung
« Antwort #3 am: Sonntag, 20. Oktober 2013, 13:54 »
Hi,

geht das in Deine Richtung?

\version "2.16.0"

padInstr =
#(define-scheme-function (parser location amount arg)(number? markup?)
#{ \markup \pad-x #amount #arg #})

\header{
  tagline = ##f
}

\layout {
  indent = 35
  short-indent = 15
  \context {
    \Score
    \remove "Bar_number_engraver"
    \override NonMusicalPaperColumn #'line-break-permission = ##f
    \override NonMusicalPaperColumn #'page-break-permission = ##f
    %% !!!!!!!
    \override InstrumentName #'self-alignment-X = #RIGHT
  }
}

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

musicI = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 2 { gis8 gis gis fis16 e b'4. b16 a } gis8 a16 b a8 gis fis dis b e_\p \break
  r1 r r r
}

musicII = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 2 { gis8 gis gis fis16 e b'4. b16 a } gis8 a16 b a8 gis fis dis b e_\p \break
  r1 r r r
}

musicIII = {
  \clef treble
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes b8 \repeat unfold 2 { e8 e e e gis4. gis16 fis } e8 fis16 gis fis8 e dis4 r8 b_\p \break
  r1 r r r
}

musicIV = {
  \clef alto
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes gis8 \repeat unfold 2 { b8 b b b e,4. gis16 a } b8[ b] cis cis fis,4 r8 gis_\p \break
  r1 r r r
}

musicV = {
  \clef bass
  \key e \major
  \time 4/4
  \hideNotes r1*7/8 \unHideNotes e8 \repeat unfold 8 { e4 } e8[ e] a, ais b4 r8 e_\p \break
  r1 r r r
}

music =
  \new StaffGroup <<
    \new Staff = "violin0"
      \with {
            instrumentName = \padInstr #5 \markup \right-column { Violino \line { principale } }
            shortInstrumentName = \padInstr #1 "Vl. pr."
            midiInstrument = #"violin"
      }
    \relative c'' \musicI
    \new StaffGroup
      \with {
            systemStartDelimiter = #'SystemStartSquare
            instrumentName = \padInstr #5 "Violino"
            shortInstrumentName = \padInstr #1 "Vl."
      }
    <<
      \new Staff = "violin1"
        \with {
        instrumentName = #"I"
        shortInstrumentName = #"I"
        midiInstrument = #"violin"
        }
      \relative c'' \musicII
      \new Staff = "violin2"
        \with {
        instrumentName = #"II"
        shortInstrumentName = #"II"
        midiInstrument = #"violin"
        }
      \relative c'' \musicIII
    >>
    \new Staff = "viola"
      \with {
            instrumentName = \padInstr #5 "Viola"
            shortInstrumentName = \padInstr #1 "Vla."
            midiInstrument = #"viola"
      }
    \relative c'' \musicIV
    \new Staff = "organ"
      \with {
            instrumentName =
              \padInstr #5
                \markup
                  \right-column { Organo "e Violoncello" "[Basso continuo]" }
            shortInstrumentName = \padInstr #1 "B. c."
            midiInstrument = #"church organ"
      }
    \relative c \musicV
    >>     

\score {
  \music
  \layout { }
}

Btw, warum screibst Du
  \hideNotes r1*7/8 \unHideNotes e8
wenn Du ein 8-tel Auftakt haben willst?
Und nicht
  \partial 8 e8
?


Gruß,
  Harm

DocTaxon

  • Member
Re: Formatierung der Stimmenbeschriftung
« Antwort #4 am: Sonntag, 20. Oktober 2013, 14:42 »
Hey krass, das funktioniert, vielen Dank dafür!

Ja Auftakt, hatte ich gerade geklärt, funktioniert jetzt auch.

Danke sehr,
DocTaxon