Neueste Beiträge

Seiten: [1] 2 3 ... 10
1
Allgemeine Diskussion / Antw:Tragen einer Gesichtsmaske
« Letzter Beitrag von Enthalpy am Heute um 02:51 »
Wie genau das Virus übertragen wird, ist nicht besonders klar. Einsperrung in Italien und Spanien wirkt wenig, im Vergleich mit weniger strengen Ländern. In Schweden läuft es nicht wesentlich schlimmer. Und in Tschechien, mit Maskenpflicht, nicht wesentlich besser. Vielleicht übertragen die Fliegen das Virus, und dann sind alle bisherigen Maßnahmen völlig daneben.

Es würde mir logisch kommen, daß man über dem Mund und der Nase auch seine eigenen Lungen schützt, wie bei Erkältungen und Grippe. Daher trage ich eine Maske, besonders im Supermarkt: Kaffeefilter mit Doppelklebeband auf dem Gesicht. Das Klebeband wird für Teppiche verkauft. Das ganze sieht echt blöd aus, aber ich mache etwas.
2
Instrumentenspezifisch / Antw:Violine Fingersatz: "liegen lassen"
« Letzter Beitrag von Enthalpy am Heute um 02:36 »
Als Geiger erwarte ich keine solche Anweisung vom Notenheft. Einen Finger auf der Seite lassen wird vom Klang benötigt, und dafür genügen die Noten, oder manchmal für einen einfachere Ausführung, aber das muß ausprobiert werden und ist schlecht vorhersehbar. Also in der Regel nicht die Aufgabe des Komponisten.

Oder habe ich da einen Fall verpaßt?

Dazu die Beobachtung, daß praktisch alle Professoren möchten, mit mehr oder weniger Überzeugung, daß die Schüler die Finger so lang wie möglich liegen lassen, und den kleinen Finger sowie den Zeigefinger nicht ausstrecken wenn gerade ungebraucht, "um unnötige Bewegungen zu meiden" - und daß 100,000% der Geiger, auch die allerbesten, alle diese angeblich unnötigen Bewegungen machen.
3
Partituren und große Projekte / Antw:Wieviele Files für ein Quartett?
« Letzter Beitrag von Enthalpy am Heute um 02:13 »
Einige Tage Bastelei später... Die Lage hat sich stabilisiert.

Was ich (mittlerweile) will:
  • Nur Quartette, aber Noten für den Dirigenten sowie für die individuellen Pulte.
  • Auch für noch unbekannte Instrumentenquartette, mit variierten Schlüsseln und transponierenden Instrumenten, Midi-sicher.
  • Transposition leicht ändern, um für verschiedene Instrumente zu probieren.
  • Die Titel hängen von der Transposition ab, von den Instrumenten, von jedem Pult. Blöder Witz.
  • Ganz wichtig: Die Transposition an einer einzigen Stelle ändern. Dasselbe für die Instrumentengruppe. Sonst hätte ich immer Diskrepanzen in den Notenheften.
Weil aber ein \book die zu passenden Befehle überall zerstreut, habe ich die Anpassung mit Files erzeugt.
  • Eine erste Datei enthält die Originalmusik. Ohne Schlüssel, nicht transponiert, mit Teilen des Titels. Eine Datei genügt hier für zwei Seiten.
  • Die zweite Stufe bestimmt das Quartett. Dafür gibt es je eine Datei: Das originale Streichquartett, bzw das Vuvuzelaquartett, künftig ein Didgeridooquartett oder was weiß ich. Die Schlüssel, evtl Schlüsselwechsel werden hier gegeben, auch die transponierenden Instrumente, und weitere Teile der Titel.
  • Die dritte Stufe entscheidet die Transponierung. Eine Datei pro Höhe: Originalhöhe, verminderte Quinte höher, was immer nötig ist oder wird. Gut, daß man \transpose vernetzen kann. Der Rest der Titeln kommt da, evtl über \concat.
  • Die verschiedenen Instrumentenfiles definieren Variablen mit identischen Namen. Die verschiedenen Transponierungsfiles auch. Die späteren Stufen arbeiten identisch auf alle Kombinationen der Instrumente und Transpositionen, indem sie die Variablen rufen, mit selbem Namen aber unterschiedlichem Inhalt.
  • Die letzte Stufe \include ein ausgewähltes Instrumentenfile, ein ausgewähltes Transpositionsfile, und erzeugt die \layout und \midi. Ich habe da eine .ly für das Dirigentenheft und eine für die vier Pulte, mit anderen Größen und Untertiteln. Beide Files zusammen wäre vielleicht auch gegangen. Die pdf und midi tragen immer den selben Namen, besser so.

Jetzt sind die gedruckten Noten akzeptabel, und ich kann künftige Quartette hinzufügen.
4
Fragen und Probleme aller Art / Antw:Automatische Schlüssel?
« Letzter Beitrag von Enthalpy am Heute um 00:59 »
Probiert, nachgedacht, entschieden.

Schlüsselwechsel müssen tatsächlich sinnvoll plaziert werden. Auch eine Hysterese, mit Schwellen nach oben und nach unten, wäre noch lange nicht klug genug. Eine clevere Automatik dafür scheint es in Lilypond (noch) nicht zu geben. Vielleicht könnte etwas wie "nicht zu oft wechseln, und vorzugsweise zwischen langen Noten" genügen.

Also habe ich Manuela's Vorschlag 1:1 aufgenommen:
    <<
      \new Voice \mus
      \context Voice { \clef tenor s4*36 \clef bass }
    >>
und das läuft perfekt. Es braucht wenig Mühe, genügt für sinnvolle Transponierungen, und ist für künftige Instrumente brauchbar, woran ich noch nicht denke als ich die Noten tippe.

Danke Euch!
5
Spezielle Projekte / Antw:Akkordsymbole mit LilyJAZZ erzeigen
« Letzter Beitrag von harm6 am Dienstag, 7. April 2020, 11:50 »
Zitat
zu (4):

da ich den Fehler gefunden habe, erspare ich mir erstmal die Outputs zu Deinem Testfile; aber könntest Du vielleicht noch kurz erklären, was dieser Code eigentlich macht?

Es geht darum auszulesen welche Schriftarten tatsächlich genommen werden. Und zwar auch die defaults, nicht nur die, die man selber ausdrücklich angegeben hat.

Um einen solchen Testcode zu entwickeln gehe ich immer schrittweise vor (dagestellt am Beispiel der MetronomeMark)

(1)
Basis ist etwas wie:
printGrob = #(lambda (grob) (pretty-print grob))

{
  \override Score.MetronomeMark.after-line-breaking = \printGrob
  \tempo 4 = 120
  b1
}

Das after-line-breaking ist prädestiniert dazu auf eine procedure gesetzt zu werden. Hier auf printGrob. Welche einfach das grob anzeigt.
-->
#<Grob MetronomeMark >

Alle weiteren codings weiter unten.

(2) Dann laß ich mir den stencil anzeigen: after-line-breaking wird auf printStencil gesetzt.
-->
#<Stencil>

(3) Dann schau ich mir die "Bauanleitung" des stencils an: after-line-breaking wird auf printStencilExpression gesetzt.
-->
Zitat
(combine-stencil
  (translate-stencil
    (0.0 . 0.488764434793895)
    (combine-stencil
      (round-filled-box
        -1.04485121604389
        1.16066804940214
        -0.159793833831026
        2.67269615442102
        0.0386056111194147)
      (named-glyph
        #<Font_metric ("emmentaler-18" . 0.568990432408091)>
        "noteheads.s2")))
  (translate-stencil
    (1.16066804940214 . 0.0)
    (translate-stencil
      (0.0 . 0.0)
      (glyph-string
        #<Font_metric (#f . 1.0)>
        "TeXGyreSchola-Regular"
        3.865234375
        #f
        '((0.614579527559055 (0.0 . 0.0) 0.0 0.0 "space")
          (1.33158897637795
           (0.239003149606299 . 0.853582677165354)
           0.0
           0.0
           "equal")
          (0.614579527559055 (0.0 . 0.0) 0.0 0.0 "space")
          (1.22915905511811
           (0.0 . 1.53644881889764)
           0.0
           0.0
           "one")
          (1.22915905511811
           (0.0 . 1.53644881889764)
           0.0
           0.0
           "two")
          (1.22915905511811
           (-0.0341433070866142 . 1.53644881889764)
           0.0
           0.0
           "zero"))))))

Eigentlich kann man hier schon alles sehen, es ist aber sehr verwirrend und unübersichtlich.

(4) Ich reduziere das Ganze, indem ich nur den Namen des grobs und die Schriftarten ausgeben lasse, alles andere weglasse: after-line-breaking wird auf printStencilExpressionFonts gesetzt.
Zu diesem Zweck muß rekursiv durch all die geschachtelten Listen gegangen werden (das macht 'lists-map') und je nach Situation (das macht die Fallunterscheidung via 'cond') die Schriftart gefunden oder ausgewählt werden.
Die Schriftarten werden gesammelt und mit dem Namen des grobs ausgegeben.
-->
(MetronomeMark
  "Emmentaler-18"
  "TeXGyreSchola-Regular")


Das Coding ist ein bißchen anders als zuletzt, aber folgt demselben Prinzip.
printStencil = #(lambda (grob) (pretty-print (ly:grob-property grob 'stencil)))

printStencilExpression =
#(lambda (grob)
  (let ((stil (ly:grob-property grob 'stencil)))
    (pretty-print (ly:stencil-expr stil))))
   
#(define (lists-map function ls)
  "Apply @var{function} to @var{ls} and all of it sublists.
First it recurses over the children, then the function is applied to
@var{ls}."
    (if (list? ls)
        (set! ls (map (lambda (y) (lists-map function y)) ls))
        ls)
    (function ls))

printStencilExpressionFonts = 
#(lambda (grob)
  (let* ((stil (ly:grob-property grob 'stencil))
         (stil-expr (ly:stencil-expr stil))
         (output '())
         ;; Finde font-names und speichere sie in "output"
         ;; Die Methode muß zwischen "named-glyph" und "glyph-string"
         ;; differenzieren, da LilyPond das intern anders umsetzt.
         (store-font-names
           (lambda (entry)
             (cond
                   ;; Wenn die stencil-expression irgendwo "named-glyph"
                   ;; beinhaltet, dann extrahiere die Schriftart via
                   ;; ly:font-name aus dem zweiten Eintrag der mit "named-glyph"
                   ;; anfangenden Liste.
                   ;; Erweitere output mit dem Ergebnis.
                   ((and (list? entry)
                         (eq? 'named-glyph (car entry))
                         (ly:font-metric? (cadr entry)))
                     (set! output
                           (cons (ly:font-name (cadr entry)) output)))
                   ((and (list? entry)
                   ;; Wenn die stencil-expression irgendwo "glyph-string"
                   ;; beinhaltet, dann extrahiere die Schriftart indem das
                   ;; dritte Element, der mit "glyph-string" anfangenden Liste
                   ;; ausgewählt wird, ly:font-name würde hier #f zurückgeben.
                   ;; Erweitere output mit dem Ergebnis.
                         (eq? 'glyph-string (car entry))
                         (ly:font-metric? (cadr entry)))
                     (set! output
                           (cons (caddr entry) output)))
                   ;; Ansonsten mache nichts weiter.
                   (else entry)))))
        (lists-map store-font-names stil-expr)

       
       
    (pretty-print (cons (grob::name grob) (reverse output)))))
   
{
  \override Score.MetronomeMark.after-line-breaking = \printStencil
  %\override Score.MetronomeMark.after-line-breaking = \printStencilExpression
  %\override Score.MetronomeMark.after-line-breaking = \printStencilExpressionFonts
 
  \tempo 4 = 120
  b1
}


Zitat
habe die beiden .otf jetzt zu den anderen .otf kopiert und: es funktioniert!!

Sehr schön :D


Gruß,
  Harm
6
Spezielle Projekte / Antw:Akkordsymbole mit LilyJAZZ erzeigen
« Letzter Beitrag von Carlo am Dienstag, 7. April 2020, 10:15 »
Hallo harm6,

Vielen Dank für Deine Mühe!

Hier die Punkte:
zu (1): nein, ich habe lilypond nicht selbst kompiliert. Ich muss mich korrigieren: lilypond 2.20.0 habe ich von https://lilypond.org/unix.de.html heruntergeladen und das .sh-Skript laufen lassen auf meinem Linux-System.
Von https://github.com/OpenLilyPondFonts/lilyjazz stammt das LilyJazz-Paket (sorry for confusion). Wenn man das herunterlädt (lilyjazz-master.zip) und entpackt, erhält man automatisch einen Ordner namens "lilyjazz-master", wo dann die Fonts und Stylesheets etc in entsprechenden Unterordnern zu finden sind. Ich habe den Namen dieses Ordners "lilyjazz-master" einfach so gelassen, soweit zur Frage (3). Die *.otf-Fontfiles aus  .../lilyjazz-master/otf hatte ich in die entspr. Ordner meiner lilypond 2.20.0-Installation reinkopiert (was nicht alle nötigen *.otf erfasste- dazu gleich mehr unter (2)).

zu (2):
~$ ls /home/MEINUSERNAME/lilypond/usr/share/lilypond/current/fonts/otf/ liefert bei mir:
Zitat
C059-BdIta.otf
C059-Bold.otf
C059-Italic.otf
C059-Roman.otf
emmentaler-11.otf
emmentaler-13.otf
emmentaler-14.otf
emmentaler-16.otf
emmentaler-18.otf
emmentaler-20.otf
emmentaler-23.otf
emmentaler-26.otf
emmentaler-brace.otf
lilyjazz-11.otf
lilyjazz-13.otf
lilyjazz-14.otf
lilyjazz-16.otf
lilyjazz-18.otf
lilyjazz-20.otf
lilyjazz-23.otf
lilyjazz-26.otf
lilyjazz-brace.otf

NimbusMonoPS-BoldItalic.otf
NimbusMonoPS-Bold.otf
NimbusMonoPS-Italic.otf
NimbusMonoPS-Regular.otf
NimbusSans-BoldItalic.otf
NimbusSans-Bold.otf
NimbusSans-Italic.otf
NimbusSans-Regular.otf
texgyrecursor-bolditalic.otf
texgyrecursor-bold.otf
texgyrecursor-italic.otf
texgyrecursor-regular.otf
texgyreheros-bolditalic.otf
texgyreheros-bold.otf
texgyreheros-italic.otf
texgyreheros-regular.otf
texgyreschola-bolditalic.otf
texgyreschola-bold.otf
texgyreschola-italic.otf
texgyreschola-regular.otf

BINGO: lilyjazz-chord.otf und lilyjazz-text.otf haben bei mir gefehlt. Die liegen unglücklicherweise in einem gesonderten Verzeichnis im lilyjazz-master-Ordner (s.o.), nämlich unter .../lilyjazz-master/supplementary-files/lilyjazz-text bzw. .../lilyjazz-master/supplementary-files/lilyjazz-chord, und nicht unter .../lilyjazz-master/otf, wie die anderen.

OK - Fehler erkannt, habe die beiden .otf jetzt zu den anderen .otf kopiert und: es funktioniert!!

Ich werde das mal an den LilyJazz-Programmierer Abraham Lee schicken, das steht nämlich nicht so klar in der Anleitung zu LilyJazz https://github.com/OpenLilyPondFonts/lilyjazz/blob/master/LilyPond-Fonts-Installation-And-Usage.txt#L1. Vielleicht habe nur ich es nicht gerafft, dass man erst noch eine Suchfunktion über den Download-Ordner schicken muss um wirklich nach allen *.otf zu suchen, weil die nicht alle schön zusammen sortiert sind, aber evtl. hilft es auch anderen unbedarften Usern.

zu (4):

da ich den Fehler gefunden habe, erspare ich mir erstmal die Outputs zu Deinem Testfile; aber könntest Du vielleicht noch kurz erklären, was dieser Code eigentlich macht?

Tausend Dank jedenfalls schonmal!

Viele Grüße,
Carlo [in memoriam: Carlo Bohländer]


7
Allgemeine Diskussion / Antw:Anhänge im Archiv weg !!??
« Letzter Beitrag von Manuela am Montag, 6. April 2020, 19:23 »
da ich meinen Laptop vor einer Woche ertränkt habe, habe ich seitdem hier nicht mehr reingeschaut.

Oje, mein Beileid  :(

Vll sind die Anhänge im Forumsarchiv aus Solidarität mit untergegangen?  ;)

8
MIDI / Antw:Mehr als 128 MIDI-Instrumente?
« Letzter Beitrag von Manuela am Montag, 6. April 2020, 19:20 »
Hi Arnold,
leider kann ich dir bei deiner Frage nicht helfen.

Du kennst dich offensichtlich mit Midi aus. Welchen Soundfond würdest du empfehlen? Derzeit habe ich Timbres Of Heaven und SGM in Verwendung, wobei sich die beiden hauptsächlich durch die Lautstärke unterscheiden.
9
Instrumentenspezifisch / Antw:Violine Fingersatz: "liegen lassen"
« Letzter Beitrag von Wabbe am Montag, 6. April 2020, 16:47 »
Hallo Harm,
ganz ganz vielen Dank für die umfangreichen Beispiele. Mein erster Impuls war zwar, dass ich chancenlos bin, da was draus zu machen, weil Welten zwischen dem liegen, was Du weißt und was ich weiß, aber inzwischen habe ich es wenigstens geschafft, mit overwrite TextSpanner eine Linie zu ziehen, und viel mehr will ich ja auch nicht:
\relative c'' {
    \override TextSpanner.style = #'line
    a4-1 \startTextSpan
    b4 c-3
    a4-1 \stopTextSpan
}

Wenn die Linie jetzt noch auf Höhe der Fingersatzzahlen gerückt werden könnte, und wenn man solche Linien auch schachteln könnte, dann gäbe es nix mehr, was ich weiter brauchen würde.
Nochmal danke und beste Grüße  --  Wabbe


Hallo,

es gibt gleich eine Reihe von Ansätzen:

Template: integrating \startTextSpan and \stopTextSpan in a customized TextSpanner
http://lsr.di.unimi.it/LSR/Item?id=857

String number extender lines
http://lsr.di.unimi.it/LSR/Item?id=616

Adding line between fingerings or a glissando between nonadjacent notes
http://lsr.di.unimi.it/LSR/Item?id=662

David Nalesnik, fingering-slide-engraver
http://lilypond.1069038.n5.nabble.com/Glissando-on-single-note-in-chords-tt34672.html#a34676

Mein eigener Versuch eine eierlegende Wollmilchsau zu züchten ist angehängt.
Allerdings ist das work-in-progress. Mein eigentliches Ziel war es "Finger-Glissando" so zu implementieren, daß normales Glissando weiterhin möglich und unbeeinflußt bleibt. Das funktioniert noch nicht. Insoweit gibt mein bisheriger Code nur weitere style-optionen für "Finger-Glissando".

Ich hab ihn angehängt, falls jemand daran weiter arbeiten möchte.
In diesem Fall sollte man im \layout von fingeringSlideEngraverFF auf fingeringSlideEngraver wechseln.
fingeringSlideEngraverFF druckt glissandi nur zwischen den Fingersätzen.
fingeringSlideEngraver druckt zwar normale und gestylte Glissandi. Die normalen sind aber auch zwischen den Fingersätzen, diese auf die Notenköpfe zu beschränken wäre die Aufgabe...

Welchen Code Du jetzt nimmst hängt davon ab, was Du tatsächlich brauchst und wieviel Zeit Du aufzuwenden bereit bist, die Manipulationsmöglichkeiten der komplexeren codings zu erforschen. ;)
Die LSR-snippets müssen teilweise etwas angepaßt werden, sollte aber unproblematisch. Falls nicht, dann frag hier.


Gruß,
  Harm
10
Allgemeine Diskussion / Antw:Anhänge im Archiv weg !!??
« Letzter Beitrag von Malte am Montag, 6. April 2020, 14:03 »
Hallo ihr beiden,

da ich meinen Laptop vor einer Woche ertränkt habe, habe ich seitdem hier nicht mehr reingeschaut. Es scheinen nicht alle Anhänge weg zu sein, z. B. hier sind sie noch vorhanden. Ich kann mal probieren, nachzuforschen, aber das kann dauern (hab hier ein Ersatzgerät, welches mir nicht gehört und z. B. keine Software für nen ssh-Zugang hat).

Viele Grüße
Malte
Seiten: [1] 2 3 ... 10