schoettl / nn2gs-plugin-musescore

Nn2GS - Griffschrift für Steirische Harmonika - Plugin für MuseScore

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MuseScore 3 Plugin

Nn2GS („Normalnototation zu Griffschrift“) ist ein Computerprogramm zum Übersetzen zwischen Normalnoten und Griffschrift für Steirische Harmonika, Club Harmonika, Schwyzer-Orgel und ähnliche Instrumente.

/Nn2GS is a software to convert between normal music notation and Griffschrift for Steirische Harmonika (a diatonic button accordion), and similar instruments./

Die Webseite https://griffschrift-notation.de/ zeigt die Diskant-Tastenanordnungen, für die Griffschrift erzeugt werden kann. Auf Anfrage können auch weitere Tastenanordnungen hinzugefügt werden.

Demo-Videos gibt es hier bei YouTube.

Features:

  • Übersetzen in beide Richtungen
  • „Durchschalten“ der alternativen Griffweisen.
  • Übersetzte Griffschrift ist abspielbar in MuseScore.
  • In Griffschrift werden die Notenköpfe automatisch auf die richtige Seite des Notenhalses sortiert (optional).
  • In Griffschrift werden Zusatztasten zusätzlich durch spezielle Notenköpfe gekennzeichnet.
  • Verschiedene Griffschrift-Varianten (=Schriftarten), z.B. Kreuz vor Notenkopf oder Notenkopf in Kreuzform.
  • 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 automatisch auswählen durch Klick auf Aktuelle Dur-Tonart.
  • Tastaturschema mit aktuell markiertem Akkord anzeigen (im Browser).
  • Kann komplett mit Tastenkürzeln bedient werden.
  • Bassbezifferung zu ausnotierten Basslinien hinzufügen (z.B. bei Chorälen).
  • Unterstützung für verschiedene Basssystemen und Schemas für die Bassbenennung (A-H vs. A, A’, …).

Geplante Erweiterungen:

  • Druckbalken automatisch einfügen (ist leider nicht so einfach).
  • Existierende Griffschrift abspielbar machen.
  • Bassbegleitung halbautomatisch einfügen.

screenshot.png

Installation:

  1. Plugin als Zip-Datei herunterladen: nn2gs-v1.6.zip (MuseScore 4) oder nn2gs-v1.5.1-ms36.zip (MuseScore 3.6)
  2. QML-Datei extrahieren und in den Ordner Dokumente / MuseScore4 / Plug-Ins ablegen
  3. MuseScore starten und das Plugin im Plugin-Manager aktivieren
  4. Plugin starten: Plug-Ins → Griffschrift (Nn2GS)

Getestet wurde das Plugin mit:

  • MuseScore 3.6.2 unter Windows 10, Linux und macOS (Plugin Version 1.5.1)
  • MuseScore 4.0.2 und 4.1.1 unter Linux und macOS (Plugin Version 1.6)
  • MuseScore 4.1.1 unter Windows 7 (Qt 5.15.2), Windows 11 (Plugin Version 1.6)

Kosten: Aktuell kostenlos, irgendwann später wohl wenige Euro pro umgewandeltes Stück.

Kontakt: Jakob Schöttl, jschoett@gmail.com

Downloads

Die Plugin QML-Datei für MuseScore wird per Skript generiert. Sie kann hier heruntergeladen werden:

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

Development

MS4 kann scheinbar nicht dieses Projektverzeichnis als Plugin-Verzeichnis. Deswegen müssen wir das nn2gs.qml in den Standard-Plugin-Ordner kopieren.

mscore -D 100 ~/projects/nn2gs-plugin-musescore/beispiele/Echt_Boarischer_Klang_1.mscz
nix-shell
. BUILD_CONFIG
watchexec 'make devbuild && cp nn2gs.qml ~/Documents/MuseScore4/Plugins'
watchexec 'make build && cp nn2gs.qml "nn2gs-v$VERSION.qml" ~/Documents/MuseScore4/Plugins'

Contributing

Um zu diesem Plugin beizutragen und mitzuentwickeln können gerne GitHub Issues und PRs erstellt werden.

Meine Entwicklungsumgebung ist Linux und folgende Programme müssen installiert sein:

  • GNU Make, um die QML-Plugin-Datei zu erzeugen
  • closure-compiler, um die ES6 JavaScript-Dateien in einfaches JS zu übersetzen
  • GNU awk/sed/bash, ebenfalls für den Build-Prozess der QML-Datei

Wer den Nix package manager installiert hat kann mit folgenden Befehlen alle Abhängigkeiten installieren:

git clone git@github.com:schoettl/nn2gs-plugin-musescore.git
cd nn2gs-plugin-musescore
nix-shell

Folgender Befehl erzeugt die Datei nn2gs-vXXX.qml, die in MuseScore 3.6 im Plugin-Editor (Strg+Shift+P) geöffnet und gestartet werden kann.

make build

Mit diesem Befehl (mithilfe eines “File Watchers”) wird die QML-Datei bei jeder Änderung von Quell-Dateien automatisch übersetzt:

watchexec make build

Dieser Befehl ist nur für mich, da hiermit die URL der Übersetzungs-API auf localhost geändert wird:

make devbuild

Documentation sources

Implementation details

Hinzufügen der Balken für Druck?

newElement(type) where type is one of these.

I guess Spanner would be the right one but it’s not yet implemented as plugin API.

Umwandlung von Normalnotation zu Griffschrift

Dies ist die komplizierte Richtung, weil

  • es meist mehrere Tasten gibt, die ein und denselben Ton erzeugen.
  • es Töne gibt, die auf dem Instrument gar nicht gespielt werden können (z.B. bestimmte Halbtöne bei einer Harmonika ohne Zusatztöne).

Es gibt also pro Akkord meistens verschiedene Griffweisen/Alternativen. Außerdem unterscheidet man natürlich zwischen dem Spielen auf Zug und Druck.

Umwandlung von Basslinien (ausgeschriebene Bassstimme) in Tastennamen

Die Tastennamen werden dann als „Liedtext“ unter die Noten geschrieben. So funktioniert es:

Anhand der Stimmung und des Basssystems wird das konkrete Basssystem für die Stimmung berechnet.

  1. Anhand dieses Mappings von Ton zu Taste (auf Druck und Zug) wird dann für jeden Ton der Basslinie die Basstaste berechnet.
  2. Anhand des Basstasten-Benennungsschemas wird aus der Basstaste dann der Name des zu drückenden Knopfes berechnet.

About

Nn2GS - Griffschrift für Steirische Harmonika - Plugin für MuseScore


Languages

Language:JavaScript 92.0%Language:Makefile 5.4%Language:Shell 2.3%Language:Nix 0.3%