Plugin: Convert to/from Griffschrift for Steirische Harmonika (diatonic button accordion)

• Jan 9, 2021 - 20:16

Hi all,

I'd like to introduce my new plugin that generates a special tablature called „Griffschrift“ for the Steirische Harmonika instrument.

https://musescore.org/en/project/nn2gs-normalnoten-zu-griffschrift-fur-…

It requires an internet connection because the heavy part is done by a web service hosted at griffschrift-notation.de. I implemented the web service in my favorite programming language, Haskell, and the intent is, to make the non-trivial conversion accessible to a wider range of plugins or programs and to allow for licensing. Currently it's free to use.

I don't know if there are more than two Harmonika players in this forum :D
But I'd like to have this thread for discussion of new features or for a kind of change log.

Steirische Harmonika
Griffschrift


Comments

In reply to by nurfz

Danke für das Mail, ich glaube dieses Plugin sollte für MS 3 sein, leider funktioniert das bei mir nicht. Habe MS3 aktualisiert, trotzdem bekomme ich keine Griffschrift. Das Plugin heruntergeladen, wenn ich es öffne kommt Musescore 2 und meldet eine Fehlermeldung.
schade, dann muss ich weiter auf dem 2 umschreiben.

In reply to by nurfz

This bug is partly fixed: The accidental (Doppelkreuz) is now explicit, i.e. it appears for every note referring to row 3 or 4 in a measure. The problem with Auflösungszeichen probably still exists... harder to fix? Note to self: or just set n.accidentalType = Accidental.NONE after setting pitch and tpc?

In reply to by nurfz

Update, neue Version v1.1.2:

  • Verzierungsnoten (graceChords) werden nun auch umgewandelt.
  • Doppelkreuz vor Note als Griffschrift-Variante vorübergehend deaktiviert (accidental, tcp, pitch und accidentalType spielen einfach nicht gut/logisch zusammen...)

Danke für die unterstützenden Kommentare :)

Es gibt jetzt eine neue Version v1.2 des Plugins. Unter MuseScore 3.5 oder höher müsste sie weiterhin laufen.

Highlights der neuen Version:

  • Übersetzte Griffschrift ist abspielbar in MuseScore.
  • Griffschrift-Varianten mit Doppelkreuz vor Notenköpfen funktionieren jetzt.
  • Zug-Passagen werden wahlweise blau gefärbt, damit man sich auskennt.
  • Die Färbung kann auch wieder rückgängig gemacht werden durch abwählen des Häckchens.
  • Tonart wird automatisch ausgewählt durch Klick auf Aktuelle Dur-Tonart:

Umfrage zu Griffschrift-Notenbildern

Für meine Seminararbeit für's Studium an der HMTM mache ich eine Umfrage zum Notenbild von Griffschrift für Steirische Harmonika.

Es gibt viele Griffschrift-Varianten, die sich teilweise nur durch Details unterscheiden. Allein für die Darstellung einer Viertelnote in der 3./4. Reihe wüsste ich mindestens fünf Möglichkeiten.

Zur Umfrage: https://forms.gle/Vi5aspSmgrzb9SNTA

Dauert gute 5 Minuten.

Ich würde mich sehr freuen, wenn ein paar Leute mitmachen bis spätestens 4. April 2021. Gerne könnt ihr diese Umfrage auch an euch bekannte Ziach-Spieler weiterleiten!

Es gibt eine neue Version 1.3:

Neue Instrumente:
- Steirische, 46 Tasten, B-Es-As-Des mit 2 Halbtönen (auf Zug/Druck gleich)
- Schwyzer-Orgel B-Stimmung mit Standardbelegung

Vielen Dank an Roman Füchslin für die Unterstützung!

Neue Griffschrift-Varianten (= Schriftarten):
- Moderne Varianten
- Klassische Varianten
- Michlbauer
- Knöpferl
- und weitere

Mit den Ergebnissen der Griffschrift-Umfrage (siehe vorheriger Kommentar) wird sich diese Liste in den nächsten Monaten nochmal ändern.

In reply to by Jojo-Schmitz

Yeah... my JS compiler does only generate polyfills for ES6+. Looks like the missing Array.prototype.includes is ES5 which is still not supported on Qt 5.9 on Windows. I have to insert that polyfill myself...

--rewrite_polyfills                    : Rewrite ES6 library calls to use
                                          polyfills provided by the compiler's
                                          runtime. (default: true)

In reply to by gustebus10

Jetzt funktioniert es wieder! Version 1.3.2.

Danke Jojo, ja, es sind die Qt Versionen...
Qt properties in älteren Qt Versionen dürfen dürfen keine beliebigen JS expressions sein, null ist auch nicht erlaubt. Das ist auch der Grund, warum ich die JS Arrays an der Stelle als Strings kodiere... nur bei null hab ich das vergessen. Und das andere Problem war, dass Array.prototype.includes() nicht unterstützt ist unter Windows.

Kleines Update auf Version 1.3.4.

Ich musste gerade Noten in Griffschrift übersetzen und dabei für jeden einzelnen Akkord entscheiden, ob Druck oder Zug. Deshalb jetzt ein neues Tastenkürzel: Alt+N – damit wird der nächste Akkord nach der aktuellen Auswahl angewählt.

Man kann also jetzt Akkord für Akkord übersetzen mit den Tasten:
Alt+K, Alt+N, Alt+J, Alt+N, …
(„Druck“ – „Nächster“ – „Zug“ – „Nächster“ – …)

Update auf Version 1.4.0

  • Hintergrundfarbe und Stimmenauswahl überarbeitet
  • Liste der Griffschrift-Varianten überarbeitet
  • Fehlermeldungen verbessert, wenn z.B. keine oder zu viele Noten ausgewählt sind

    screenshot-2021-08-22-21-38-10.png

PS: Wir arbeiten gerade weiter an eine Ziach-Tastatur zur Noteneingabe in MuseScore via MIDI. Es wird auch direkte Griffschrifteingabe möglich sein :P

In reply to by jmueller5524

Ist dein Programm (Screenshot) ein virtuelles MIDI-Keyboard, also ein separates Programm? So wie z.B. VMPK? Das wäre eine gute Ergänzung. Für VMPK hab ich übrigens PC-Tastatur-Mappings generiert, nur erkennt VMPK die Shift-Taste (für Zug) leider nicht.

Ich habe aktuell nicht vor, eine Tastatur in das Plugin zu integrieren (so wie beim Fretboard Plugin). Ich glaube ein virtuelles MIDI-Keyboard ist eine elegantere Lösung.

In reply to by nurfz

Es ist Teil meines Midi-Sequenzers. Mein Programm erkennt die Shift-Taste als "Druck". Das Tastatur-Mapping ist unabhängig von der Belegung (QWERTZ bzw. QWERTY usw.). Wenn ein Keyboard mit Pedal angeschlossen ist, kann man auch das für Druck einsetzen. Es wäre ein Leichtes, Eingaben via Midi auszugeben und damit als virtuelles Midi-Keyboard einzusetzen.

Hallo,
tolles Projekt nur leider für mich als Anfänger noch nicht ganz so ein Thema.
Aber ich weiß das das meiste Repertoire für die Steirische in Griffschrift vorliegt mit der man auf anderen Instrumenten nichts anfangen kann. Also durchaus nützliches Plugin.

Hier habe ich mir als Griffhilfe die Knopfnummern in einen Tab zu notiert.

Wärs möglich mit deinen Plugin solche Tabs zu generieren?

Attachment Size
happyBirthdayTab.mscz 9.4 KB

In reply to by irgenwad

Hi, ja, wahrscheinlich wäre das möglich... aber diese Tabulatur ist halt nicht sehr verbreitet, oder? Und eben auch nur Spielhilfe aber kein Notenersatz, weil nicht zwischen den Reihen unterschieden wird.

Also ich werde das wohl nicht ins Plugin einbauen, aber es kann gerne jemand das Plugin selbst weiterentwickeln und das einbauen. Der Quellcode ist ja online auf GitHub. Ich schätze aber, dass es technisch einfacher wäre, die Tastennummern als "Fingersatz" direkt an die Violinschlüsselnoten zu binden statt in eine Extra Tabulatur-Notenzeile.

In reply to by nurfz

Könnte man den Fingersatz bei der Umwandlung automatisch hinzufügen lassen? Die Werte sind ja bei der Griffschrift genau definiert.

Bei den Tabs unterscheidet mit den Lienen die Reihe.
Ist aber umständlich blöd einzugeben weil ich hier die Tabulatur von der viersaiten Gitarre verunstalten musste. :D

Attachment Size
GriffTab.jpg 104.03 KB

In reply to by irgenwad

Ah, verstehe. I find's etwas gewöhnungsbedürftig, wenn die Spielreihen da waagrecht liegen. Ja das Eingeben macht keinen Spaß, kann ich mir vorstellen ^^ Aber solche Stücke kann man doch eh irgendwann auswendig und bis dahin würde ich mir die Notizen per Hand in die Noten schreiben.

Ich weiß nicht, ob mein Plugin jemals eine Option für Fingersatz haben wird. Stimmt schon, bei ganz einfachen Stücken ist der Fingersatz mitunter eindeutig.

Aber sobald z.B. ein Drehgriff bei Tonleitern in Terzen dazu kommt gibt es schon mehrere mögliche Fingersätze. Außerdem, wenn die Hand z.B. nach oben rutschen muss wird's mehrdeutig. Dazu kommt 3-Finger-, 4-Finger- und 5-Finger-Spielweise und unterschiedliche Lehrmeinungen, welchen Fingersatz man anwenden sollte. Dazu kommt, dass man den gleichen Akkord auf verschiedene Arten spielen kann (verschiedene Griffweisen) und die jeweils verschiedene Fingersätze haben. Also da erscheint mir der Aufwand nicht wert. Außerdem hat doch Griffschrift bei schwierigeren Stücken schon den Vorteil, dass du auf einen Blick siehst, wie und wo der Akkord ungefähr liegt und nicht Zahlen lesen und Tasten zählen musst.

In reply to by irgenwad

Was dir vllt helfen könnte, die Fingersätze/Tastennummern zu schreiben, ist das:

  • In MuseScore den ersten Akkord markieren
  • Im Plugin auf "Instrument (anzeigen)" klicken, dann öffnet sich die Internetseite
  • "Nächster Akkord" (Alt+N) und wieder "Instrument (anzeigen)" usw.

Auf der Internetseite ist unter "Jakobs Griffschrift" meine Art, Griffe zu notieren:
https://ziach.intensovet.de/nn2gs?notes=d%27%20fis%27#jakobsgs
Da könntest du die Ziffern die du brauchst rauslesen. Also zumindest bei schwierigen Akkorden könnte das hilfreich sein :)

Neue Version 1.5.0

Es gibt ein neues Feature: Bassbezifferung zu ausnotierten Basslinien hinzufügen (z.B. bei Chorälen oder Bassläufen). Unterstützung für verschiedene Basssystemen und Schemas für die Bassbenennung (A-H vs. A, A’, …).

Ich glaube diese Funktion wird ziemlich selten gebraucht. Aber wenn man doch mal Noten für Leute schreiben will, die ihr Basssystem nicht in- und auswendig beherrschen, ist das eine ziemlich schöne Sache!

Auch ohne Plugin kann die Funktion hilfreich sein, wenn man bestimmte Töne im Bass sucht: https://ziach.intensovet.de/nn2gs/bass

screenshot-2022-11-27-19-09-17.png

Version 1.5.1 Beta MuseScore4

Ich konnte leider noch nicht ausführlich testen (MS4/MS3/Win10/Win11/Linux/etc.).

  • Bisherige Versionen funktionieren bis einschließlich 1.5.0 nur mit MS3.
  • Die neue 1.5.1 Beta sollte mit MS4 funktionieren.

Für Fehlerberichte brauche ich MuseScore-Version, Betriebsystem und Fehlerlog (MS4 aus Terminal raus starten, dann tauchen dort im Terminal die Fehlermeldungen auf).

Neue Version – Update notwendig!

Das Plugin musste umgezogen werden auf griffschrift-notation.de. Deshalb ist ein Update notwendig.

Alternativ zum Update kann die QML-Plugin-Datei per Hand angepasst werden, es ist nur eine kleine Änderung:

  1. Datei nngs-v*.qml im Ordner Dokumente / MuseScore / Plugins per Rechtsklick "Öffnen mit" einem Texteditor, z.B. Notepad
  2. In der Datei suchen nach "ziach.intensovet.de" und das ersetzen durch "griffschrift-notation.de".
  3. Speichern und MuseScore neu starten.

Update auf Version 1.6:

Endlich Support für MuseScore 4! Beim Sprung von MuseScore 3.6 auf 4 wurde onScoreStateChanged abgeschafft. Damit wurde dem Plugin nicht mehr mitgeteilt, wenn sich die Auswahl der markierten Noten änderte. Das war der Grund warum das Plugin lange nicht zuverlässig mit MuseScore 4 funktionierte.

Dieses Problem ist jetzt behoben. Getestet bisher unter MuseScore 4.0.2 unter Linux und MuseScore 4.1.1 unter macOS Big Sur.

In reply to by nurfz

Besten Dank! Ich habe mit dem Plug-in herumprobiert und auch erste Erfolge erzielt.
Frage: Nach dem Konvertieren hat es vor Noten, die auf dem Schwyzerörgeli auf der ersten Reihe gespielt werden, ein #. Das wäre nicht notwendig. Besteht eine Möglichkeit, dass diese # nicht gesetzt werden?

In reply to by nurfz

Lieben Dank für die super schnelle Hilfe! Du hast recht, es ist das "Auflösungszeichen", das nicht da sein sollte. Ich weiss nur nicht (auch mit dem Manual), wo ich den Fehler mache. Ich habe Screenshots meines Beispiels angehängt.

01_klingend.png – Die Noten, welche ich konvertieren will. Geschrieben in Ab Dur. Mit dem Ziel, am Schluss auf dem B-Schwyzerörgeli das Stück in Ab-Dur zu spielen.

02_einstellungen_konvertierung – Meine Einstellungen fürs Konvertieren. Da habe ich auch Ab eingestellt (konvertieren tue ich "auf Zug")

03_resultat – Ist perfekt, ausser eben die "Auflösungszeichen". Wenn ich diese lösche, kann ich es mit dem B-Schwyzerörgeli in Ab-Dur spielen.

Wo mache ich den Fehler? Mein Ziel: Ein Stück, das klingend in Ab geschrieben ist, am Schluss auch in Ab auf dem B-Schwyzerörgeli zu spielen.

Herzlichen Dank und liebe Grüsse
Hans-Peter

Attachment Size
01_klingend.png 445.25 KB
02_einstellungen_konvertierung.png 770 KB
03_resultat.png 550.07 KB

In reply to by oergele.ch

Also du hast alles richtig gemacht, nur als letzten Schritt musst du noch die Vorzeichen am Anfang der Notenzeile wegmachen, sprich die Tonart auf "ohne Vorzeichen" bzw. C-Dur setzen. (Handbuch: "Lösung: Erst nachdem das Stück komplett in Griffschrift umgewandelt ist, kann man einfach die Tonart nach C-Dur (keine Vorzeichen) ändern und auch den Notenschlüssel unsichtbar machen. ")

Das geht in MuseScore in den "Paletten" (linker Rand, Reiter "Paletten") und da unter "Tonarten". Den Button ohne Vorzeichen musst du auf die Notenzeile ziehen. Das kann das Plugin nicht machen, weil es nicht weiß, wann du fertig übersetzt hast.

Do you still have an unanswered question? Please log in first to post your question.