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

Linie nach einer Saitenangabe

Begonnen von trulli, Samstag, 21. November 2009, 10:56

Vorheriges Thema - Nächstes Thema

trulli

Hallo,

nach einem Lily-Snippet kann man eine Saitenangabe mit Linie so setzen wie unten auf dem Bild.

Der Code dazu lautet:
\version "2.12.1"
stringNumberSpanner =
#(define-music-function (parser location StringNumber) (string?)
  #{
    \override TextSpanner #'style = #'solid
    \override TextSpanner #'font-size = #-5
    \override TextSpanner #'(bound-details left stencil-align-dir-y) = #CENTER
    \override TextSpanner #'(bound-details right text) = \markup { \draw-line #'(0 . 0.5) }
    \override TextSpanner #'(bound-details left text) = \markup { \circle \number $StringNumber }
  #})


\relative c {
  \clef "treble_8"
  \stringNumberSpanner "5"
  \textSpannerDown
  a4\startTextSpan
  b c d\stopTextSpan}
 


Ich möchte daran jetzt zwei Dinge ändern:
1 - zwischen umkreister Zahl und Linie soll ein Leerzeichen sein (sodass die Linie nicht direkt an den Kreis stößt)
2 - die Linie soll nach rechts noch etwas verlängert werden, damit die Note d noch in der Klammer ist

Könnt ihr mir da helfen?

Grüße von Trulli

trulli

Ich habe eben das erste Problem so gelöst:
den TextSpan habe ich in die dritte Stimme (mit versteckten Noten) geschrieben. Da diese ja versetzt notiert wird, umfasst die Klammer jetzt auch die letzte Note.

comper

Danke für den Code.

Ding 1 (Leerzeichen)
Text links abändern, zu
  \markup \concat { \circle \number $StringNumber " "}

Ding 2 (verlängern)
Es braucht eine zusätzliche Override
  \once \override TextSpanner #'(bound-details right padding) = #-0.5
und diesen Wert justieren (Voreinstellung ist +0.25)

Gruss

trulli

Lieber comper,

ich habe zu danken - wie immer sind deine Lösungsvorschläge hervorragend :)

Mit dem Wert -1.5 sieht es nach meiner Meinung am besten aus:
\once \override TextSpanner #'(bound-details right padding) = #-1.5

Aufgrund deines Vorschlages habe ich den TextSpan aus der 3. Stimme herausgenommen und jetzt doch in die Diskantstimme gesetzt. \start \stopTextSpan nimmt ja nicht viel Platz weg. Das Bild bleibt trotzdem übersichtlich.

Grüße von Trulli

So sieht die Stelle jetzt im Stück aus: