• 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ü

alle Namen gleich rechts ausrichten

Begonnen von stefanhuglfing, Freitag, 13. Februar 2015, 21:34

Vorheriges Thema - Nächstes Thema

stefanhuglfing

im Beispiel unten sind die Namen für die erste Zeile (Sopran Mezzo) an der gleichen Linie rechts ausgerichtet.
Aber der Name für die zweite Zeile (Alt) ist weiter links.
Ich hätte gern alle Namen an der gleichen Linie rechts ausgerichtet.
Ist das möglich?

Darüber hinaus wünsche ich mir noch einen geringeren Abstands zwischen Namen und Notenzeile.


\version "2.18.2"

\score
{
  <<
   \new Staff
    <<     
     \new Voice
      {
       \voiceOne
       \set Staff.instrumentName = \markup \right-column
        { Sopran \line { Mezzo } }         
       \relative c'
        { c'4 b a g  a2 g }
      }
   
     \new Voice
      {
       \voiceTwo 
       \relative c'
        { e4 e e e  e (fis) d2 }
      }       
    >>
 
   \new Staff 
    {
     \set Staff.instrumentName = \markup \right-column
      { "Alt" } 
     \relative c'
      { a4 g c b c2 b }       
    } 
   >>
   
  \layout { indent = 50 }
}

harm6

#1
Hallo,

hier eine halb-automatisierte Möglichkeit, mittels des markup-command 'always-right-aligned'

Setze 'instr-line-width' in \layout auf einen passenden Wert. Falls zu klein wird es nichts mit der Rechtsbündigkeit. Um das besser zu visualisieren empfehle ich \box zu benutzen (ist momentan auskommentiert)

Ansonsen sollte InstrumentName am besten immer in einen \with-Block

ZitatDarüber hinaus wünsche ich mir noch einen geringeren Abstands zwischen Namen und Notenzeile.

Hier weiß ich nicht genau was Du meinst.
Aber vielleicht hilft rumexperimentieren mit dem override für 'self-alignment-X'


\version "2.18.2"

#(define-markup-command (always-right-aligned layout props args)(markup-list?)
  (let* ((layout-instr-line-width
           (ly:output-def-lookup layout 'instr-line-width))
         (line-width
           (if (null? layout-instr-line-width)
               (begin
                 (ly:warning
                   "\"instr-line-width\" in \\layout not set? Setting to zero.")
                 0)
               layout-instr-line-width)))
   (interpret-markup layout props
     #{
       \markup
         \override #(cons 'line-width line-width)
         \fill-line {
           \null
           \right-column $args
         }
     #})))

\score {
  <<
   \new Staff
    \with {
      instrumentName =
      \markup %\box
        \always-right-aligned {
          \fontsize #4 Sopran
          \with-color #red Mezzo
        }
    }
    <<     
     \new Voice
       \relative c' { \voiceOne c'4 b a g  a2 g }
   
     \new Voice
       \relative c' { \voiceTwo e4 e e e  e (fis) d2 }       
    >>
 
   \new Staff 
     \with {
       instrumentName =
       \markup %\box
         \always-right-aligned {
           \italic Alt
         }
     }
     \relative c' { a4 g c b c2 b }   
   >>
   
  \layout {
    indent = 50
    instr-line-width = 12
    \override Score.InstrumentName.self-alignment-X = 0.8
  }
}




HTH,
  Harm

Pierre

Hallo,
meinst du so etwas?

\version "2.18.2"

\score {
  <<
   \new Staff
   \with {
     \override InstrumentName.self-alignment-X = #RIGHT
     \override InstrumentName.padding = #2
     instrumentName = \markup \right-column  { Sopran Mezzo }   
   }
   <<     
     \new Voice {
       \voiceOne
       \relative c' { c'4 b a g  a2 g }
     }
     \new Voice {
       \voiceTwo 
       \relative c' { e4 e e e  e( fis) d2 }
     }
   >>
   \new Staff 
   \with {
     \override InstrumentName.self-alignment-X = #RIGHT
     \override InstrumentName.padding = #2
     instrumentName = "Alt"
   }
   \relative c' { a4 g c b c2 b }       
  >>
  \layout { indent = 50 }
}


Gruß,
Pierre

stefanhuglfing

perfekt!

beide Vorschläge erfüllen alle meine Wünsche
und zeigen sogar noch mehr Möglichkeiten auf.