Spielanweisung für ternären Rhythmus

Begonnen von Ursus Princeps, Samstag, 7. September 2019, 14:44

« vorheriges - nächstes »

Ursus Princeps

Guten Tag,
ich suche nach einer Möglichkeit, die Spielanweisung für ternären Rhythmus zu notieren (zwei Achtel entsprechen einer Viertel- und Achteltriole).
Gibt es dafür in Lilypond einen vordefinierten Befehl und wenn nicht, wie kann ich dies dann bewerkstelligen?

Vielen Dank im Voraus



\version "2.19.83"

Malte

Hallo Ursus Princeps,

willkommen im Forum! Bitte gib bei Fragen immer die von dir verwendete LilyPond-Version an; bei fast allen Fragen ist außerdem ein kleines, kompilierbares Codebeispiel hilfreich.

Ich sehe drei Möglichkeiten:

  • Rein in LilyPond gäb es da das Snippet 204.
  • Es gibt seit kurzem eine Schriftart namens Metrico, die für genau so etwas geschaffen wurde. Damit hieße die Lösung \tempo \markup \override #'(font-name . "Metrico") "ee=3qe"
  • Eigentlich wär das mal ne Sache, die LilyPond selbst ohne viel Trickserei können sollte. Ich selbst habe leider grad nicht viel Zeit für die Entwicklung, aber vielleicht findet sich ja jemand ...

Viele Grüße
Malte

Ursus Princeps

Hallo,
danke für die schnelle Antwort.
Ich habe es mit der zweiten Möglichkeit probiert, d.h. die Schriftart installiert, sie wird vom System auch erkannt, aber mit dem in der Antwort zur Verfügung gestellten Code:


\tempo \markup \override #'(font-name . "Metrico") "ee=3qe"


Erscheint trotzdem nur "ee=3qe" über den Noten.
Ist die Schriftart dann doch nicht richtig installiert oder muss ich noch etwas hinzufügen, damit es klappt?

\version "2.19.83"

Malte

Zitat von: Ursus Princeps am Samstag,  7. September 2019, 19:34
Erscheint trotzdem nur "ee=3qe" über den Noten.
Ist die Schriftart dann doch nicht richtig installiert oder muss ich noch etwas hinzufügen, damit es klappt?
Tatsächlich ist das so eine Sache, wo die LilyPond-Version eine Rolle spielt: Mit 2.18.2 gehts bei mir auch nicht, der Aufruflilypond -dshow-available-fontslistet Metrico nicht auf. Warum, weiß ich nicht, aber 2.19.83 listet die Schriftart auf und zeigt auch ein gutes Ergebnis. Diese Version ist ein Prerelease zur nächsten ,,stabilen" Version 2.20.0 und selbst schon stabil genug, daß du sie ohne Probleme installieren könntest ;)

Ursus Princeps

Hallo,
ich habe nun auf Version "2.19.83" geupdated, erhalte jedoch immer noch exakt dasselbe Ergebnis.
Lilypond erkennt die Schriftart nicht und auch in der Liste von

lilypond -dshow-available-fonts

ist nichts zu finden.

Da alle anderen Programme "Metrico" finden und darstellen können, sollte es ja kein Problem mit der Installation sein.
Lilypond hat auch nach dem Update bei dem ersten Start einen Scan durchgeführt ...

Nur zur Klarstellung:
Bei der Installation von "Metrico" ist nichts weiter zu tun, als die .otf-Datei von Windows installieren zu lassen, oder?
Die anderen Dateien in dem Ordner sind prinzipiell "irrelevant".

\version "2.19.83"

Malte

#5
Zitat von: Ursus Princeps am Samstag,  7. September 2019, 23:48
Hallo,
ich habe nun auf Version "2.19.83" geupdated, erhalte jedoch immer noch exakt dasselbe Ergebnis.
Lilypond erkennt die Schriftart nicht und auch in der Liste von

lilypond -dshow-available-fonts

ist nichts zu finden.
Hast du mit dem Befehl sicher 2.19.83 gestartet oder ein noch installiertes 2.18.2? (Um das herauszukriegen, kannst dulilypond --versionprobieren.)

Zitat
Da alle anderen Programme "Metrico" finden und darstellen können, sollte es ja kein Problem mit der Installation sein.
Lilypond hat auch nach dem Update bei dem ersten Start einen Scan durchgeführt ...

Nur zur Klarstellung:
Bei der Installation von "Metrico" ist nichts weiter zu tun, als die .otf-Datei von Windows installieren zu lassen, oder?
Die anderen Dateien in dem Ordner sind prinzipiell "irrelevant".
Ja, Metrico.otf ist die einzig für die Installation relevante Datei. Ich kenne mich leider mit Fonts unter Windows nicht aus, hab hier Linux. Davon abgesehen habe ich herausgefunden, daß bei mir mit Version 2.19.25 der Font nicht gefunden wird, mit 2.19.26 der Font zwar gefunden wird, aber die Achtel nicht gebalkt werden (OpenType-Feature calt) und mit 2.19.27 dann alles in Ordnung ist. Ich konnte aber im Code nicht so richtig sehen, woran das liegt.

Und, was auch komisch ist: Viele andere Fonts werden ja von älteren Versionen schon gefunden. Ich frag mich, was so besonders an Metrico ist ...

Wenn du mir bestätigst, daß das Problem tatsächlich unter Version 2.19.83 besteht, teile mir bitte doch noch genau mit, was für ein Windows du nutzt, dann könnte ich die Frage mal weitertragen an die Bug-Mailingliste. Edit: Oder ich frag mal den Autor von Metrico, ob er ne Idee hat, was da los sein könnte.

Ursus Princeps

Hallo,
ich bedanke mich nochmals für die Hilfe.

Ich habe sicher die Version 2.19.83 benutzt. Dies bestätigt mir sowohl der Kommandozeilenbefehl, als auch die Tatsache, dass ich sicherheitshalber die alte Version deinstalliert habe.

Ich benutze Windows 10, Version 1903.

Ich bin mir sicher, dass "Metrico" auf dem System richtig installiert ist, alle anderen Programme haben damit kein Problem.

\version "2.19.83"

harm6

Hallo,

ich hab' jetzt selbst metrico installiert, Ubuntu 18.04, und kann bestätigen, daß es mit 2.19.83 problemlos läuft, mit 2.18.2 nicht.
Wenn ich mich richtig erinnere muß man mit älteren Versionen die neuen fonts noch in LilyPonds eigenen font-Ordner kopieren. Aber bitte nochmal in den Archiven recherchieren, ich bin mir da nicht sicher genug...
Wie's auf windows funktioniert, weiß ich auch nicht.

Einerseits finde ich die Eingabe für metrico durchaus elegant (so ähnlich funktioniert es auch mit einer Schriftart für Bläsergriffdiagramme, die ich schon gesehen habe: z.B. AKflute), allerdings finde ich das Ergebnis für "ee=3qe" nicht überzeugend, denn die TupletBracket fängt zu weit links an, imho. Auch sind (besonders mit erhöhter fontsize) die Größenverhältnisse, nicht überzeugend. Und man hat natürlich keinerlei Möglichkeit korrigierend einzugreifen.

Neben dem bereits erwähnten
http://lsr.di.unimi.it/LSR/Item?id=204
gibt es auch
http://lsr.di.unimi.it/LSR/Item?id=1029
welches ich als simpler in der Anwendung betrachte.

Hier ein komplettes Beispiel (snippet-code und Beispiel):


\version "2.19.83"

#(define-markup-command (ezscore layout props mus) (ly:music?)
  #:properties ((size 0))
  (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
          }
        }
      }
    #}))


\markup
%  \override #'(size . 4)
  {
    \ezscore
      ##{
        { c8[ c] }
       #}
    "="
    \ezscore
      ##{
        \override TupletBracket.shorten-pair = #'(-0.5 . -0.5)
          \times 2/3 { c4 c8 }
       #}
  }


Gruß,
  Harm

harm6

Nachtrag:
Ich hab' jetzt versuchsweise Metrico.otf nach /lilypond/usr/share/lilypond/current/fonts/otf kopiert (lily-version 2.18.2). Die Schrift wird jetzt gefunden, funktioniert aber nicht wie gewünscht. Siehe Anhang.
Etwas ähnliches habe ich bei der bereits erwähnten AKflute gelegentlich erlebt.
Keine Ahnung weshalb, aber ich bin wahrlich kein font-experte.

Gruß,
  Harm

Malte

Zitat von: harm6 am Sonntag,  8. September 2019, 11:32
Nachtrag:
Ich hab' jetzt versuchsweise Metrico.otf nach /lilypond/usr/share/lilypond/current/fonts/otf kopiert (lily-version 2.18.2). Die Schrift wird jetzt gefunden, funktioniert aber nicht wie gewünscht. Siehe Anhang.
Etwas ähnliches habe ich bei der bereits erwähnten AKflute gelegentlich erlebt.
Keine Ahnung weshalb, aber ich bin wahrlich kein font-experte.
Metrico arbeitet mit OpenType-Features. Was du da siehst, sind die Zeichen für ,,ee=3qe", aus ,,3qe" wird aber eine Ligatur (Feature liga) und ,,ee" kriegen gebalkte Varianten (Feature calt). Interessanterweise unterstützt 2.19.26 wie oben gesagt anscheinend liga, nicht aber calt. Oder es ist nicht standardmäßig an ... liga ist ab irgendwo zwischen 2.19.15 und 2.19.20 an.

harm6

Ich bin wie gesagt kein font-Experte. font-features waren mir bis vor kurzem noch schlichtweg unbekannt.
Insoweit habe ich nach einer Doku dazu gesucht.
Die Adobe-Doku gibts zwar, aber ich wollte etwas, das mehr dem open-source-Gedanken entspricht.
Gefunden habe ich:
https://sparanoid.com/lab/opentype-features/
Hat eine creative-commons license.

Weiß jemand noch was besseres?

Gruß,
  Harm

Ursus Princeps

Hallo,
abgesehen von dem Ordner "/lilypond/usr/share/lilypond/current/fonts/otf"
gibt es ja noch den Ordner "lilyPond\usr\share\fontconfig\conf.avail", der jede Menge Konfigurationsdateien enthält.
Wäre es möglich, dass man hier noch etwas ändern muss?

Abgesehen davon werde mich an dem Codebeispiel von harm6 versuchen, vielen Dank dafür!

\version "2.19.83"

Hilflos-im-Code

Ich habe diese Diskussion gefunden und bin bei dem hier erwähnten http://lsr.di.unimi.it/LSR/Item?id=204 auf folgende Anmerkung getroffen:


ZitatThis snippet is obsolete with LilyPond 2.23.x: use the new built-in \rhythm markup command, e.g.,

\tempo \markup { Swing \rhythm { 8[ 8] } = \rhythm { \tuplet 3/2 { 8( 8) 8 } } }


Das habe ich versucht:
\version "2.23.3"

global = {
  \key c \major
  \time 4/4
}

violin = \relative c'' {
  \global
\tempo \markup { Swing \rhythm { 8[ 8] } = \rhythm { \tuplet 3/2 { 8( 8) 8 } } }  a
 
}

\score {
  \new Staff \with {
  
  } \violin
 
}


Das gibt nur eine Fehlermeldung und eine Dokumentation finde ich nicht dazu. Also wie funktioniert das?

harm6

Das markup-command \rhythm steht ab 2.23.11 zur Verfügung.
Das LSR verwendet 2.24.0.

Falls Du wirklich 2.23.3 verwendest, dann hast Du es nicht.
Aber warum diese alte devel-Version?

Gruß,
  Harm

P.S. Bitte klicke unter "Erweiterte Optionen..." "Keine Smileys benutzen" an.