Thema "Unterlegnoten für Akkordzither"

Begonnen von Mikey70, Mittwoch, 15. Juni 2022, 20:38

« vorheriges - nächstes »

Mikey70

Im Archiv habe ich dieses Thema gefunden:

Unterlegnoten für Akkordzither

Bin an dem Thema sehr interessiert aber mindestens genauso unbedarft, was PC und Software angeht.

Meine Fragen: Ist 04 die aktuelle Version oder gibt es inzwischen was Neueres? Was muss ich genau tun, um die Erweiterung zu installieren? Ich habe mir Denemo als Oberfläche installiert in der Hoffnung, damit besser klarzukommen. Wie muss die Erweiterung dort aufgerufen werden?

Ich hoffe, @harm6 liest hier mit und kann mir helfen. Vielen Dank schon mal.

Mikey70

#1
Ich habe viel in Handbüchern zu LilyPond gelesen, aber es erschließt sich mir leider nicht, was mit der -.ly Datei in Denemo zu tun ist.

So, wie ich es in dem archivierten Thread gelesen habe, ist es eine Hauptdatei zither-tab-01.ly und 4 Include-Dateien.

Kann niemand helfen? Hatte gehofft, @harm6 liest hier, er hatte die Ergänzung ja entwickelt.

Mikey70

Habe jetzt noch Frescobaldi installiert und die Datei zither-tab-01.ly geöffnet. Beim Versuch einer Notenvorschau hat sich dann herausgestellt, dass die in OpenSUSE installierte Version LilyPond 2.23.3
fehlerhaft ist:

/usr/share/lilypond/2.23.3/ly/init.ly:64:2: Fehler: falscher Typ für Argument 1; duration erwartet, "4" gefunden
#
 (let ((book-handler (if (defined? 'default-toplevel-book-handler)
/usr/share/lilypond/2.23.3/scm/lily/parser-ly-from-scheme.scm:24:18: In procedure reverse! in expression (ly:parse-string-expression clone lily-string ...):
/usr/share/lilypond/2.23.3/scm/lily/parser-ly-from-scheme.scm:24:18: Wrong type argument in position 1: (1 "4" . #f)

Damit erübrigen sich alle weiteren Versuche.  :(

harm6

Zitat von: Mikey70 am Mittwoch, 15. Juni 2022, 20:38Ich hoffe, @harm6 liest hier mit und kann mir helfen. Vielen Dank schon mal.
Zitat von: Mikey70 am Donnerstag, 16. Juni 2022, 08:30Kann niemand helfen? Hatte gehofft, @harm6 liest hier, er hatte die Ergänzung ja entwickelt.
Und dann noch eine PM? Ehrlich?

Nun, willkommen im Forum.
Bitte mach Dir klar das alle Leute hier in ihrer Freizeit fragen bzw antworten.
Nur für mich sprechend: Meine Freizeit wird Job-bedingt zunehmend weniger, sodaß ich deutlich weniger Möglichkeiten habe hier zu posten.
Mich zu drängen ist dann der exakt falsche Weg.

Zudem ist der Code den Du hier nachfragst exotisch und ist seit Jahren nicht mehr nachgefragt worden.
Ich müßte selbst nochmal richtig Zeit aufwenden mich erneut einzuarbeiten.
Mich zu drängen ist dann der exakt falsche Weg.

Aber ich kann sagen, daß der Code mit 2.20. problemlos läuft.
Allerdings sind wir mittlerweile bei 2.23.9. Heutzutage wird das markup \note und der TextSpanner anders gehandhabt. Der alte code für Zither-tab braucht also ein upgrade.

ZitatHabe jetzt noch Frescobaldi installiert und die Datei zither-tab-01.ly geöffnet. Beim Versuch einer Notenvorschau hat sich dann herausgestellt, dass die in OpenSUSE installierte Version LilyPond 2.23.3
fehlerhaft ist:
[...]
Damit erübrigen sich alle weiteren Versuche.

Unsinn. Der Zither-code ist nicht mehr zeitgemäß. LilyPond selbst ist ok.
Wie schon gesagt, der alte code für Zither-code braucht ein upgrade.
Das wird zeitaufwändig und ich weiß nicht wann ich dazu komme.

Habe ich eigentlich schon gesagt ... mich zu drängen ist dann der exakt falsche Weg?

--Harm


Mikey70

#4
Tut mir leid, wirklich. Hatte ich gesagt, dass ich vollkommen unbedarft mit Software bin und heilfroh bin, wenn ich jemand finde, der hilft.


Allerdings hatte ich nicht gefragt, ob du das Programm weiter- oder gar neuentwickelst. Ich wollte nur eine Anleitung, wie mit der -.ly Datei zu verfahren ist, entweder in Denemo oder Frescobaldi.

Nichtsdestotrotz, auch wenn ich mich wiederhole, die Version in OpenSUSE scheint fehlerhaft zu sein, die Dateien, auf die sich die Fehlermeldung bezieht (ich habe die Meldung oben zitiert), sind Programmdateien von LilyPond.
Damit wäre erstmal oberstes Ziel, LilyPond mit Frescobaldi (meinetwegen) zum Laufen zu bringen.

Obwohl Denemo mir sympatischer wäre.

Mikey70

#5
Ich habe es geschafft, die Zitherdateien in Denemo zu öffnen bzw, einzubinden.
Und danach kommt die gleiche Fehlermeldung, wie auch in Frescobaldi, die ich zwei Beiträge weiter oben zitiert habe und hier nochmal zitiere (...und übrigens Asche auf mein Haupt, dass ich dachte, die fehlerhaften Dateien wären in LilyPond):

Typesetting ...Done/usr/share/lilypond/2.22.0/ly/init.ly:74:2: Fehler: falscher Typ für Argument 1; duration erwartet, "4" gefunden
#
 (let ((book-handler (if (defined? 'default-toplevel-book-handler)
/usr/share/lilypond/2.22.0/scm/parser-ly-from-scheme.scm:24:18: In procedure reverse! in expression (ly:parse-string-expression clone lily-string ...):
/usr/share/lilypond/2.22.0/scm/parser-ly-from-scheme.scm:24:18: Wrong type argument in position 1: (1 "4" . #...


Das sollte ein Hinweis geben, wo in der Vorlage etwas korrigiert werden muss.




Mikey70

Bin beim Einkreisen des Problems noch ein kleines Stück weiter.

Verwendet habe ich Denemo. Ich habe die 4 Dateien

zither-tab-default-bar-lines.ly
zither-tab-functions.ly
zither-tab-layout.ly
zither-tab-titling.ly


in /usr/share/lilypond/2.22.0/ly kopiert.

Der Inhalt von zither-tab-01.ly wird an das Ende vom "Temporary Score Layout" kopiert.

Wenn man jetzt die Zeile \include "zither-tab-layout.ly" auskommentiert und dann "Typeset" anklickt, öffnet sich ein kleines Fenster "Spurious line number" und nachdem es geschlossen wird, wird die angehängte Druckvorschau ausgegeben

Daher würde ich denken, man sollte zuerst die Datei zither-tab-layout.ly auf Fehler untersuchen.

Ich habe auch nochmal die im Archiv gefundene letzte Version von zither-tab-04 angehangen.

harm6

Zitat von: Mikey70Daher würde ich denken, man sollte zuerst die Datei zither-tab-layout.ly auf Fehler untersuchen.

Nope, der error kommt vom \note-markup, vormals brauchte es einen string jetzt eine duration.
Bei toplevel-markup oder nicht allzu verstecktem \markup hätte convert-ly geholfen. Allerdings ist das \note-markup hier tief im scheme-coding integriert. Dieser Fix war relativ einfach.

Der TextSpanner wird jetzt anders gehandhabt, wie jeder rein horizontale line-spanner. In der Folge mußte ich einen neuen stencil kreieren, denn der TextSpanner wird hier eben nicht horizontal angewendet, sondern als Leitlinie wie Voltas zu spielen sind. Diese Funktionalität klappte nicht mehr.

Aber apropos Voltas ... Auch hier gabs jede Menge Neuerungen seit 2.19.49. Da musste ich nochmal an das Glissando ran, denn sonst würde auch hier Funktionalität verloren gegangen sein.

Wie ich ja zum größten Teil voraussagte:
Zitat von: harmZudem ist der Code den Du hier nachfragst exotisch und ist seit Jahren nicht mehr nachgefragt worden.
Ich müßte selbst nochmal richtig Zeit aufwenden mich erneut einzuarbeiten.
[...]
Heutzutage wird das markup \note und der TextSpanner anders gehandhabt.

Aber das ist jetzt erledigt.
Der neue Code ist mit folgenden Versionen erfolgreich getestet:
2.20.0
2.22.1
2.23.9 (neueste devel)
2.23.10 (master)

Somit ist die alte Funktionalität, soweit sie damals für 2.19.49 kodiert wurde wieder da.
Allerdings bin ich nach wie vor sicher, daß es bugs gibt oder fehlende features.

Für Rückmeldungen wäre dankbar.

Gruß,
  Harm

Du darfst diesen Dateianhang nicht ansehen.


Mikey70

#8
Vielen, vielen Dank! Ich weiß gar nicht, wie ich das gutmachen kann.
Jedenfalls, indem ich dir Beschied gebe, wie es läuft.

Heute aber nicht mehr, ich sitze seit Tagen am Notebook, immer wieder neu installiert mit verschiedenen Linuxsystemen, dann mal Denemo, mal mit Frescobaldi versucht, nebenbei noch über die Mailinglist von Denemo ausgetauscht, bin jetzt echt etwas kirre.

Ich denke, aber, Bedarf ist für die Ausgabe von Zitherunterlegblättern da, eine Bekannte arbeitet im Seniorenheim, teilweise mit Demenzkranken und die haben auch einfache Musikinstrumente zur Beschäftigung und was ist einfacher als nach Unterlegnoten zu spielen und muss man die kaufen, geht das echt ins Geld.

Also erstmal einen schönen Abend!

P.S. Das Einbinden in Denemo (ganz allgemein) scheint nicht so recht unterstützt zu werden, du würdest sicher auch zu Frescobaldi raten?

harm6

ZitatJedenfalls, indem ich dir Beschied gebe, wie es läuft.
[...]
Ich denke, aber, Bedarf ist für die Ausgabe von Zitherunterlegblättern da, eine Bekannte arbeitet im Seniorenheim, teilweise mit Demenzkranken und die haben auch einfache Musikinstrumente zur Beschäftigung und was ist einfacher als nach Unterlegnoten zu spielen und muss man die kaufen, geht das echt ins Geld.

Der Einsatz in Seniorenheimen ist mir bekannt, aber vom ursprünglichen thread mal abgesehen, ist das hier erst der zweite zum Thema, sowohl hier als auch auf der internationalen Liste, iirc.
Insofern wäre ich für feed-back, bug-reports, feature-requests sehr dankbar.
Auch über die generelle Benutzbarkeit, im Moment ist vieles halt noch manuell zu erstellen/richten.

ZitatDas Einbinden in Denemo (ganz allgemein) scheint nicht so recht unterstützt zu werden, du würdest sicher auch zu Frescobaldi raten?
Zu Denemo kann ich nichts sagen, ich habs nie probiert.
Frescobaldi wird vielfach geliebt und zurecht gerade für Anfänger empfohlen.
Ich selbst verwende Frescobaldi nicht, sondern nur einen Texteditor (jEdit), terminal und pdf-viewer (idR evince).

ZitatIch habe die 4 Dateien

zither-tab-default-bar-lines.ly
zither-tab-functions.ly
zither-tab-layout.ly
zither-tab-titling.ly

in /usr/share/lilypond/2.22.0/ly kopiert.
Da rate ich von ab, denn sie sind dann weg, sobald Du auf eine andere LilyPond-Version wechselst.


Gruß,
  Harm




Malte

Zitat von: harm6 am Sonntag, 19. Juni 2022, 23:13Der Einsatz in Seniorenheimen ist mir bekannt, aber vom ursprünglichen thread mal abgesehen, ist das hier erst der zweite zum Thema, sowohl hier als auch auf der internationalen Liste, iirc.
Insofern wäre ich für feed-back, bug-reports, feature-requests sehr dankbar.
Auch über die generelle Benutzbarkeit, im Moment ist vieles halt noch manuell zu erstellen/richten.
Ich gebe das mal weiter an eine Freundin, deren Bruder dieses Instrument spielt. Falls sie damit etwas anfangen kann, soll sie sich bei mir oder hier melden, wenns Probleme gibt ;)
Zitat
ZitatIch habe die 4 Dateien

zither-tab-default-bar-lines.ly
zither-tab-functions.ly
zither-tab-layout.ly
zither-tab-titling.ly

in /usr/share/lilypond/2.22.0/ly kopiert.
Da rate ich von ab, denn sie sind dann weg, sobald Du auf eine andere LilyPond-Version wechselst.
Stattdessen kann man Frescobaldi in den Einstellungen das Verzeichnis nennen, in dem die Dateien liegen, dann bindet LilyPond die von dort ein, auch wenn du mal eine andere Version verwenden solltest (siehe Anhang unter ,,LilyPond-Include-Verzeichnis").

Mikey70

#11
Zitat von: harm6 am Sonntag, 19. Juni 2022, 23:13Insofern wäre ich für feed-back, bug-reports, feature-requests sehr dankbar.
Auch über die generelle Benutzbarkeit, im Moment ist vieles halt noch manuell zu erstellen/richten.

Gruß,
  Harm



Guten Morgen, heute hat es mich zeitig aus dem Bett gedrängt, ... zum Testen.

Folgendes ist mir spontan aufgefallen:
Das mit dem Querformat und damit Teilen der Noten auf 2 Blätter ist nicht recht praktikabel. Du musst dir vorstellen, die Unterlegnoten müssen unter die Zithersaiten plaziert und genau ausgerichtet werden. Das ist während des Spieles nicht machbar. Klebt man aber die zwei Blätter zusammen, passen sie nicht unter die Zither.

Im Prinzip müssen die Noten auf ein Blatt, Hochformat und notfalls zusammengedrängt werden, wenn das Stück zu lang ist, wäre eine Fehlermeldung denkbar in der Art "Passt nicht in Druckbereich. Berücksichtigt werden muss auch eine Ecke, die nach dem Druck abgeschnitten werden muss und in deren Bereich natürlich auch keine Noten sein dürfen.
Normale (Volks-)Lieder sollten auf ein Blatt passen, für große Stücke ist das Prinzip Unterlegnoten eh nicht geeignet.
Kurz gesagt, so wie du es schonmal hattest (Anhang), ist es optimal. Die Leiste unten mit den Saitennamen kann aber weg, dann ist noch etwas mehr Platz für Noten.

Ansonsten prima Arbeit, meine Bekannte aus dem Seniorenheim zeigt bereits Interesse. Der Saitenabstand ist perfekt.

P.S.: Mir ist aufgefallen, wenn ich den Header auf title zusammenschrumpfe, wird trotzdem nicht mehr Platz für die Unterlegnoten. Wäre es möglich insgesamt alles in Bezug auf die Unterbringung der Noten auf dem Hochformat noch effektiver zu machen, also oben nur den Titel und wie gesagt unten die Saitenbenennungsleiste weg, die klebt eh auf der Zither im Original?





Zitat von: Malte am Montag, 20. Juni 2022, 07:27Stattdessen kann man Frescobaldi in den Einstellungen das Verzeichnis nennen, in dem die Dateien liegen, dann bindet LilyPond die von dort ein, auch wenn du mal eine andere Version verwenden solltest (siehe Anhang unter ,,LilyPond-Include-Verzeichnis").



Vielen Dank für den Tipp.

Mikey70

#12
Wollte schon mal mitteilen dass ich die zither-tab-layout.ly wie folgt angepasst habe (zum Übernehmen in deinem code):

zitherTuning =
<
c' cis' d' dis' e' f' fis' g' gis' a' ais' b'
c'' cis'' d'' dis'' e'' f'' fis'' g'' gis'' a'' ais''
>

Es ist vollkommen normal und ausreichend, wenn das Unterlegblatt nur bis zur ais Saite geht, im Handel erhältliche sind zwar gerinfügig größer, geht aber nun mal nicht, wenn man auf Hochformat A4 drucken muss.
Ansonsten habe ich derweile mit dem Kleine meine Entchen-Lied rumprobiert. Hoffe, die Datei zither-tab-02.ly ist dazu gedacht. Ich will die Dateien von dir ja als Vorlage verwenden, und man muss ja, will man das Programm nutzen, hinter den Notenprogrammiercode kommen. Der Teil mit "Greensleeves" ist dazu zu kompliziert. Habe die Datei mal angehangen. Jedenfalls muss die Notenzeile auf ein Extrablatt, der Zithertuning-Balken muss weg und der Raum nach oben und unten voll ausgenutzt werden.
Die Akkorde fehlen natürlich auch noch, ist aber nicht so leicht, sich da reinzufitzen.

Wenn ich dir irgend wie helfen kann, sag Bescheid.

harm6

ZitatWenn ich dir irgend wie helfen kann, sag Bescheid.
Arbeite mit bzw teste den Code und poste Deine Beobachtungen, das ist die wertvollste Hilfe!
Ich komme aber wahrscheinlich frühestens nächstes Wochenende dazu sie in wesentlichem Umfang zu bearbeiten.

Hier nur ein paar Bemerkungen.
Die Anzahl der Saiten, Papierformat, etc sind ja einstellbar. Evtl. wäre das user-interface zu verbessern. Gilt auch für die Abschnittslinie(n).

Das ganze kommt nur dann auf mehrere Seiten, wenn irgendwo \break verwendet wird.

Im Moment kann ich die Linien nur so lang machen wie das Papierformat breit ist. Wie ich diese Limitierung umgehe weiß ich noch nicht, werde drüber nachdenken...

Gruß,
  Harm

Mikey70

Zitat von: harm6 am Dienstag, 21. Juni 2022, 10:55Die Anzahl der Saiten, Papierformat, etc sind ja einstellbar. Evtl. wäre das user-interface zu verbessern. Gilt auch für die Abschnittslinie(n).


Das habe ich in der unter #12 angehangenen Datei schon mal probiert, ob ich es aber optimal gemacht habe, weiß ich nicht.
Im Prinzip ist das ganze ja Programmierung eines Quellcodes, der, wenn er durchläuft, ein Notenblatt ausgibt. Aber ganz schön der Hammer für ein "einfach zu bedienendes Programm" (hatte ich wo gelesen).
Ich habe den festen Willen, mich da einzuarbeiten, habe schließlich vor Jahren mal Fachinformatiker Systemintegration gelernt, da war auch Programmierung kurz mit dabei. Bekomme allerdings auch nicht ohne Grund Erwerbsminderungsrente. Naja und die Zither wartet auch noch...


Zitat von: harm6 am Dienstag, 21. Juni 2022, 10:55Im Moment kann ich die Linien nur so lang machen wie das Papierformat breit ist. Wie ich diese Limitierung umgehe weiß ich noch nicht, werde drüber nachdenken...


Das Notenblatt, was ich in #11 zeige, stammt von einer älteren Version, scheint mir aber bis auf die Saitenleiste unten optimal zu sein. Kann aber täuschen, dass es doch nur so lang wie breit ist.
Ich teste weiter.

Übrigens hat jedit auch die Autovervollständigung der Codebefehle wie Frescobaldi?