Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/schoettl/nn2gs-plugin-musescore
Nn2GS - Griffschrift für Steirische Harmonika - Plugin für MuseScore
https://github.com/schoettl/nn2gs-plugin-musescore
musescore musescore-plugin music plugin
Last synced: 24 days ago
JSON representation
Nn2GS - Griffschrift für Steirische Harmonika - Plugin für MuseScore
- Host: GitHub
- URL: https://github.com/schoettl/nn2gs-plugin-musescore
- Owner: schoettl
- Created: 2021-04-01T16:24:40.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-12-13T17:32:51.000Z (11 months ago)
- Last Synced: 2024-04-29T17:09:44.203Z (6 months ago)
- Topics: musescore, musescore-plugin, music, plugin
- Language: JavaScript
- Homepage:
- Size: 1.05 MB
- Stars: 2
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.org
Awesome Lists containing this project
README
* MuseScore Plugin
- [[https://musescore.org/en/project/nn2gs-normalnoten-zu-griffschrift-fur-steirische-harmonika][Plugin page at musescore.org]]
- [[https://musescore.org/en/node/315330][Plugin discussion thread on musescore.org]]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 [[https://www.youtube.com/@jakob.schoettl][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, [email protected]
* 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 ~/projects/nn2gs-plugin-musescore/beispiele/Echt_Boarischer_Klang_1.mscz
For MS 4.0 to 4.3, if resolution is not correct, also pass =-D 100=.
: nix-shell
: . BUILD_CONFIG
: watchexec 'make devbuild && cp nn2gs.qml ~/Documents/MuseScore4/Plugins/nn2gs-dev.qml'
: 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-DateiWer den [[https://nixos.org/download.html#download-nix][Nix package manager]] installiert hat kann mit folgenden Befehlen
alle Abhängigkeiten installieren:: git clone [email protected]:schoettl/nn2gs-plugin-musescore.git
: cd nn2gs-plugin-musescore
: nix-shellFolgender 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
- https://musescore.org/de/handbook/developers-handbook/plugin-development
- More description of important score elements and their properties:
https://musescore.org/en/handbook/developers-handbook/plugins-3x
- Doxygen technical doc on QML classes, properties, methods:
https://musescore.github.io/MuseScore_PluginAPI_Docs/plugins/html/* Implementation details
** Hinzufügen der Balken für Druck?
=newElement(type)= where type is one of [[https://musescore.github.io/MuseScore_PluginAPI_Docs/plugins/html/class_ms_1_1_plugin_a_p_i_1_1_plugin_a_p_i.html#a5fcfe46c56901e9f3998a72a458e66dc][these]].
I guess =Spanner= would be the right one but it's
[[https://musescore.org/en/node/118231][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.