Autor Thema: Poitionierung von Noten  (Gelesen 2541 mal)

LaLuneNoir

  • Member
Poitionierung von Noten
« am: Donnerstag, 26. März 2009, 13:16 »
Hallo,

ich habe folgende kleine Datei gebastelt, es handelt sich um eine harmonische Analyse. Ich bin auch total glücklich, dass ich soweit gekommen bin (Da gehört nämlich eigentlich noch mehr zu, alles voller Zahlen :-) ).
Aber wie man sieht habe ich noch ein Problem mit den Vorzeichen (die Pfeile sind Vorzeichen), ich müsste irgendwie mehr Platz zwischen Note und Taktstrich bekommen.

\version "2.12.2"

globalo = {
\set fingeringOrientations = #'(left)
\clef treble
\override Staff.TimeSignature #'stencil = ##f
\override Staff.Stem #'stencil = ##f
}

globalu = {
\set fingeringOrientations = #'(left)
\clef bass
\override Staff.TimeSignature #'stencil = ##f
\override Staff.Stem #'stencil = ##f
}

Pfeil =
#(define-music-function (parser location note)   (ly:music?)
 #{ \once \override Voice.Fingering #'stencil =
          #ly:text-interface::print
        \once \override Voice.Fingering #'text =
          \markup { ↓ }
        $note #})

\score  {
\new PianoStaff <<
  \new Staff {
       \globalo
               << 
           {
     \shiftOff
     e'4 s2.
     \bar ":"
     \set fingeringOrientations = #'(left)
     \Pfeil
     <e'-1>4 s2.
     \bar ":"
     cis''4 s2.
     \bar ":"
     d''4 s2.
     \bar ":"
     d''4 s4
     b'4 s4
     \bar ":"
     \set fingeringOrientations = #'(left)
     \Pfeil
     <as''-1>4 s2.
     \bar ""
   }
         \\
   {
             \shiftOff
     s1
     s1
     e'1
               fih'1
     fih'1
     d''1
   }
\\
   {
     \shiftOff
     s1
     s1
     s1
     s1
     s1
     fih'4
     s2.
   }
       >>
  }
  \new Staff {
       \globalu
       <<
         {
   \shiftOff
           bes1
           bes1
   \set fingeringOrientations = #'(left)
   \Pfeil
           <bes-1>1
   \set fingeringOrientations = #'(left)
   \Pfeil
           <bes-1>1
           aih1
   \set fingeringOrientations = #'(left)
   \Pfeil
           <bes-1>1
}
       \\
         {
   \shiftOff
   \set fingeringOrientations = #'(left)
   \Pfeil
           <des-1>4
   s2.
           cis4
   s2.
           g,4
   s2.
           c1
           cih4
   s2.
   s2
           c4
}
       \\
         {
           \shiftOff
           g,1
           fis,1
   s1
           g,4
   s2.
   s1
   s2
           g,4
   }
\\
   {
           s1\noBreak
   s1\noBreak
   s1\noBreak
   s1\noBreak
   s1\noBreak
   s1\noBreak
   }
               >>
  }
>>
}

Kann mir jemand helfen?

Jonas

comper

  • Member
Re: Poitionierung von Noten
« Antwort #1 am: Donnerstag, 26. März 2009, 14:40 »
Eine Methode wäre: der Pfeil muss links mehr Platz beanspruchen.
Dessen \markup so beginnen: 
   \markup { \hspace #0

Gruss

Nachtrag:
Ich vermute dieser Pfeil bringt gar keine Abmessungen mit,
bleibt deshalb vom Layoutvorgang unberücksichtigt.
« Letzte Änderung: Donnerstag, 26. März 2009, 14:49 von comper »

LaLuneNoir

  • Member
Re: Poitionierung von Noten
« Antwort #2 am: Donnerstag, 26. März 2009, 15:06 »
Super, danke!!!

Genau das habe ich gesucht (und nicht gefunden...)

comper

  • Member
Re: Poitionierung von Noten
« Antwort #3 am: Donnerstag, 26. März 2009, 17:32 »
Gerne geschehen.

Übrigens, der Pfeil scheint mir unnötig kompliziert.
Vielleicht gibt's einen handfesten Grund, z.B. Ausbau vorgesehen.

Wenn nicht, reicht Folgendes:
  Pfeil = \once \override Fingering #'text = \markup { ...

Gruss

tao

  • Member
Re: Poitionierung von Noten
« Antwort #4 am: Freitag, 27. März 2009, 14:07 »
Hmm...

ich bin mir jetzt nicht sicher ob das funktionieren würde, aber wenn du den Pfeil als Vorzeichen willst könntest du auch versuchen einfach das Stencil vom Vorzeichen zu ändern und dieses mit '!' erzwingen, um sicherzugehen, dass es gedruckt wird.

Aber wie gesagt, nur ein Gedanke als alternative herrangehensweise.