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

Metronomangabe mit Taktdauer

Begonnen von chf, Dienstag, 26. November 2013, 19:58

Vorheriges Thema - Nächstes Thema

chf

Liebe Freunde,
\version "2.16.2"
\time 5/8
die Metronomangabe des Komponisten soll heißen:
        \tempo  \markup {\note #"4.~4" #1 "ca. 66"}   (soweit meine Vorstellung vom code).
Ich erfahre:  schwerer Fehler: keine gültige Dauer: 4.~4

Wie muss der code heißen, damit die Dauer eines solchenTaktes angegeben wird?

Gruß
chf

iugin

So, ich habe das Beispiel für dich angepasst.
Ich hoffe, ist das, was du wolltest.
(ich habe das http://lsr.dsi.unimi.it/LSR/Snippet?id=204 geändert)

Liebe Grüsse

Eugenio
\version "2.16.2"

rhythmMarkStaffReduce = #-3
rhythmMarkLabelFontSize = #-2

rhythmMark = #(define-music-function (parser location musicI tempo) (ly:music? string?)
   #{
      \mark \markup {
        \line \general-align #Y #DOWN {
          \combine
           
            \transparent \italic \fontsize #rhythmMarkLabelFontSize f

          \score {                     % 2nd column in line
            \new Staff \with {
              fontSize = #rhythmMarkStaffReduce
              \override StaffSymbol #'staff-space = #(magstep rhythmMarkStaffReduce)
              \override StaffSymbol #'line-count = #0
              \override VerticalAxisGroup #'Y-extent = #'(-0.85 . 4)
            }

            {
              \relative { \stemUp $musicI }
             
%             \override Score.SpacingSpanner #'strict-note-spacing = ##t
              \once \override Score.TextScript #'Y-offset = #-0.4
              s4.^\markup{ \halign #-1 \italic "=" $tempo }
             
            }
           
            \layout {
              ragged-right= ##t
              indent = 0
              \context {
                \Staff
                \remove "Clef_engraver"
                \remove "Time_signature_engraver"
              }
            } % layout end

          } % Score end

        } % line end
      } % markup end
   #})

tempoMark = {
  \time 5/4
  b'4. ~ b4
}

\score {
  {
    \once \override Score.RehearsalMark #'X-offset = #5  % td
    \rhythmMark \tempoMark "60"
    \time 5/8
   c'8 d' e' f' g' |
   a'
   
  }
 
  \layout {
    ragged-right= ##t
    indent = 0       
  }
}

chf

#2
Hallo Eugenio,

das ist, was ich wollte - herzlichen Dank!
Nur sind die Ziffern  s e h r  klein, und ich finde die Stellen nicht,  wo ich etwas ändern kann.
Kannst du mir noch eine Variante liefern  mit dem Text "5/8 = ca 66" ?
Christa

iugin

Hallo Christa

sehr gern geschehen :)
Also, wenn du den Text grösser wird, kannst du die Zeile 27 z.B. so ändern:
s4.^\markup{ \halign #-1 \italic \huge { "=" $tempo } }
(jetzt ist extra übertrieben: versuch mit allen möglichen Grössen, \teeny, \tiny, \small, \normalsize, \large, \huge, \smaller, \larger).

Wegen der 2. Frage: meinst du so etwas?
\version "2.16.2"

rhythmMark = #(define-music-function (parser location tempo) (string?)
   #{
      \mark \markup {
          \score {                   
            \new Staff \with {
              fontSize = #-2
              \override StaffSymbol #'line-count = #0
              \override VerticalAxisGroup #'Y-extent = #'(-0.85 . 4)
            }
            {
              s4.^\markup{ \halign #-1 \italic { $tempo } }
            }
           
            \layout {
              ragged-right= ##t
              indent = 0
              \context {
                \Staff
                \remove "Clef_engraver"
                \remove "Time_signature_engraver"
              }
            } % layout end
          } % Score end
      } % markup end
   #})

\score {
  {
    \once \override Score.RehearsalMark #'X-offset = #5
    \rhythmMark "5/8 = ca. 66"
    \time 5/8
   c'8 d' e' f' g' |
   a'   
  }
}


Liebe Grüsse

Eugenio

iugin

...man kann es auch einfacher machen :)
\score {
  \new Staff {
    \override Score.RehearsalMark #'break-align-symbols = #'(time-signature)
     \mark \markup { \tiny \italic {"5/8 = ca. 66"}}
    c'1
  }
}


Ciao!

Eugenio

chf

Hallo Eugenio,

das Vergrößern ist mir gelungen mit    \fontsize Wert  {"= " $tempo }  .
Zur Variante 2 habe ich mich nicht deutlich ausgedrückt. Entschuldige bitte.
Ich möchte das  Bild mit den Notenwerten und dem Text " ca 66" (wie vom Komponisten vorgegeben).
Danke für deine Geduld mit mir!

Gruß
Christa

iugin

Hallo Christa

sorry, ich denke, ich verstehe nicht... :)
Wenn du das Notenbild brauchst, und dazu "ca 66", kannst du die Zeile 55
\rhythmMark \tempoMark "60"
in
\rhythmMark \tempoMark "ca 66"
So hast du aber das '=' Symbol.
Wenn du es weg nehmen willst, dann änderst du die Zeile 27
s4.^\markup{ \halign #-1 \italic "=" $tempo }
in
s4.^\markup{ \halign #-1 \italic $tempo }

Übrigens: \halign #-1 brauchst du nicht :)

Ich hoffe, ist das was du wolltest. Sonst einfach fragen...

Liebe Grüsse

Eugenio

chf

Hallo Eugenio,

auf einmal funktioniert alles! Wer weiß, wo mein Fehler steckte...
Danke nochmals,
und schöne Grüße

Christa