Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: Manuela am Mittwoch, 14. November 2018, 16:42

Titel: Music expressions in MarkUps mit variabler Größe - wie?
Beitrag von: Manuela am Mittwoch, 14. November 2018, 16:42
Hi,

im LSR gibt es folgendes Snippet: Easily enter music expressions in markup (http://lsr.di.unimi.it/LSR/Item?id=1029)

Ich habe es ein wenig abgewandelt
\version "2.19.80"

\language "deutsch"
#(define-markup-command (ezscore layout props mus) (ly:music?)
   #:properties ((size -3))
   (interpret-markup layout props
     #{
       \markup {
         \score {
           \new RhythmicStaff { $mus }
           \layout {
             \context {
               \RhythmicStaff
               \remove Clef_engraver
               \remove Time_signature_engraver
               \omit StaffSymbol
               fontSize = #size
               \override StaffSymbol.staff-space = #(magstep size)
               \override StaffSymbol.thickness = #(magstep size)
             }
             indent = 0
             ragged-last = ##t
           }
         }
       }
     #}))

zwei=\markup \ezscore ##{ { c8[ c] } #}
drei=\markup \ezscore ##{ \tuplet 3/2 { c8( c) d } #}
swing = \markup \concat { \zwei " = " \drei }

\score {

  \new Staff
  \new Voice \relative c'
  {
    \mark \swing
    \repeat unfold 32 c4
  }
}


Die Größe ist fest verdrahtet #:properties ((size -3)), kann ich die gewünschte Größe als zusätzlichen Parameter übergeben, wenn ja, wie? Meine Versuche sind natürlich gescheitert...  :(
Titel: Antw:Music expressions in MarkUps mit variabler Größe - wie?
Beitrag von: harm6 am Mittwoch, 14. November 2018, 22:15
ZitatDie Größe ist fest verdrahtet #:properties ((size -3))

Das ist so nicht richtig, vielmehr ist 'size' ein property, welches durch einen entsprechenden override-Befehl für den user einstellbar ist.
Die Syntax ist:
\markup \override #'(property . value) \markup-command ....

Hier, z.B.:

zwei=\markup \override #'(size . 3) \ezscore ##{ { c8[ c] } #}
drei=\markup \override #'(size . 3) \ezscore ##{ \tuplet 3/2 { c8( c) d } #}
swing = \markup \concat  { \zwei \fontsize #3 " = " \drei }


HTH,
  Harm
Titel: Antw:Music expressions in MarkUps mit variabler Größe - wie?
Beitrag von: Manuela am Donnerstag, 15. November 2018, 05:12
Danke Harm.
Titel: Antw:Music expressions in MarkUps mit variabler Größe - wie?
Beitrag von: Hilflos-im-Code am Donnerstag, 19. August 2021, 14:10
Weil es dann mit der Formatierung einfacher ist, man kann statt \mark auch \tempo verwenden.