Voltenklammer mit Text

Begonnen von Hilflos-im-Code, Donnerstag, 8. März 2018, 15:34

« vorheriges - nächstes »

Hilflos-im-Code

Ich versuche gerade den letzten Takt des angehängten Beispiels nachzubauen. Kopfzerbrechen bereitet mir die letzte Klammer. Wie bekomme ich das mit dem Text hin?

Malte

Wie wärs damit?\version "2.19.81"
\language "deutsch"

{
  \set Score.repeatCommands = #`((volta ,(markup #:text "Fine")))
  \repeat volta 1 s1*0
  \alternative { { a'1 \bar "|." } }
}


Evtl. nach dem #:text noch ein #:normalsize o. ä. einbauen.

Be-3

#2
Zitat von: Hilflos-im-Code am Donnerstag,  8. März 2018, 15:34
Wie bekomme ich das mit dem Text hin?

... im Prinzip genau so, wie Malte es gezeigt hat.
Bei Texten braucht man i.d.R gleich vollständiges Markup, weil die üblichen Ziffern aus dem Emmentaler-(Feta-)-Font stammen, der keine normalen Buchstaben enthält.

Hierzu muss man (leider) alle repeatCommands manuell setzen.
Im Beispiel habe ich zuerst das öffnende Wiederholungszeichen, danach den Beginn der ersten Voltenklammer mit dem Text "1.", als nächstes den Markup-Text incl. schließendem Wiederholungszeichen und als letztes schließlich das Ende er zweiten Klammer.

\version "2.18.2"

\relative c'' {
  c1
  \set Score.repeatCommands = #'(start-repeat)
  c1
  \set Score.repeatCommands = #'((volta "1."))
  c4 b d e
  \set Score.repeatCommands = #`((volta ,(markup #:text #:small "Fin")) end-repeat)
  a,2 e'2\fermata
  \set Score.repeatCommands = #'((volta #f))
  e1
}   


Wenn Du dieses Konstrukt dann noch mit der passenden Musik füllst, solltest Du am Ziel sein.

Allgemein:

  • start-repeat: öffnendes Wiederholungszeichen
  • end-repeat: schließendes Wiederholungszeichen
  • volta: Voltenklammer - mit "..." Beschriftung oder #f Ende der Klammer

Edit:
oder auch eine Kombination aus herkömmlicher Syntax und nur einem "winzigen" Eingriff.
Wichtig ist hier trotzdem das "end-repeat", sonst fällt das schließende Wiederholungszeichen unter den Tisch.


\version "2.18.2"

  c1
  \repeat volta 2 { c1 }
  \alternative {
    {c4 b d e }
    {
      \set Score.repeatCommands = #`((volta ,(markup #:text #:small "Fin")) end-repeat)
      a,2 e'2\fermata
    }
  }
  e1
}   


Viele Grüße
Torsten

Hilflos-im-Code