Scripting-Studio-Editor und Bedienung

image-1655632187395.png


(1) Auswahl des aktiven Scriptes

Es werden beim Laden eines Filter immer gleichzeitig drei Skripte geladen, um das spätere Handling deutlich zu vereinfachen:

Speicherung unter
Titel
Zielstellung
Sichtbarkeit
\Daten\Scripts\<Name>.script Aktiver Filter Produktiver Filter Ja (ab 2.6) in den Filtermasken im Frontend außerhalb des Scripting-Studios
\Daten\Scripts\<Name>.script-dev Aktiver Filter ("Spielwiese") Test/Entwicklungsversion des produktiven Filters für Weiterentwicklungen, ohne den produktiven "Filter" kaputt zu entwickeln. Jeder Filter besitzt immer einen produktive und eine Entwicklungs(Sandbox)-Version. Eine Entwicklungsversion kann zur Produktiv-Version gemacht werden (wird hier kopiert) über das Hauptmenü "Projekte / Entwicklungsversion live nehmen". Nein nur im Scripting-Studio
\Daten\Scripts\Common.script Gemeinsame Bibliothek Hier sollte gemeinsam genutzte Funktionen und Hilfsroutinen ausgelagert werden, um effektiv in allen Filter zu arbeiten und Redundanzen zu vermeiden. Da auch das gegenseitige Einbinden der Standard-Scripte erlaubt ist, dient diese Sonderbehandlung aber der Effizienzsteigerung, um hier gezielte wiederverwendbare Funktionen und Procedures zu verlagern, um die eigentlichen Filter schlank und effizient zu halten. Nein nur im Scripting-Studio
\Daten\Scripts\Common.script-dev Gemeinsame Bibliothek ("Spielwiese") Test/Entwicklungsversion der gemeinsam genutzten Bibliothek Nein nur im Scripting-Studio

Hinweise zu Datensicherung und -Ablage

Da in Scripten sehr viel Zeit und Aufwand gesteckt werden kann, ist die Datensicherung nicht zu unterschätzen. Aktuell umgesetzt ist daher die Erstellung einer automatisches Backup-Version mit <Name>-backup-YYYYMMDD-HHMM bei jedem Speichervorgang (<F2>). Zu einem späteren Zeitpunkt ist auch die Synchronisation mit eigenen Dropbox-Instanzen vorgesehen. Aktuell werden diese Sicherungsdateien zu einem Script wieder gelöscht, wenn eine Script-Version "Verifiziert" wird (siehe Kontextmenü zu einem Filtereintrag (r.Maustaste über einen Filternamen)). 

(1a) Einstellungen

Unterhalb der Script-Auswahl findet sich ein kleines ein/ausklappbares Pannel "Einstellungen".

Für weitere Ausbaustufen wurde sofort ein Einstellungs-Grid angelegt, was praktisch unendlich fortgeführt werden kann durch seine Scrollfähigkeit. Beim Start sind nur wenige Einstellungen vorhanden:

(2) Bibliotheks-Zugriff

Um die Entwicklung zu unterstützen werden zwei Grundkonzepte mit unterstützt:

Mit Wechsel zwischen den Reitern wird zwischen den verschiedenen dahinterliegenden Code-Fragmenten gewechselt.

(3) Code

Hier befindet sich der Quelltexteditor der analog einem Notepad funktioniert mit den vorhandenen Tastenkombinationen (Strg-C-Kopieren, Strg-V-Einfügen etc.). Die Besonderheit ist hier, dass mit dem vorhandenen Code ein automatische Code-Highlighting erfolgt d.h. Schlüsselwörter oder Strukturen werden automatisch hervorgehoben in Schriftart und Form. So werden Kommentare beispielsweise immer kursiv/blau dargestellt.

Für die Entwicklung sind besonders folgende Funktionen relevant:

Übergreifend unabhängig vom Quell-Code kann mit:

(4) Ausgabe

Dies ist eigentlich eines der Highlights der Umsetzung und ist auch bisher nur eine erste Version, die spätere deutlich ausgebaut wird. Ziel ist es die Ergebnisse aus einem Filter-Lauf übersichtlich und performant und unmittelbar darzustellen.

Die Darstellung wird dabei durch den Code festgelegt d.h. welche Spalten, welcher Detaillierungsgrad, welche Sortierungen und welche Darstellungs-Gruppierungen genutzt werden sollen.

In der Ausgabe wird auf eine spezielle zugreifbare Komponente zugegriffen die folgende Eigenschaften unterstützt:

(5) Sourcecode-Explorer

Der Source-Explorer versucht zeitnah synchron zum Quellcode die Struktur des Skriptes wiederzugeben, wobei unterschieden wird nach

Mit Doppelklick auf einen Eintrag springt der Cursor automatisch an die zugehörige Programmcode-Position.

(6) Code-Snippet-Beispiele zur Übernahme

Dies sind aktuell nicht erweiterbare Code-Beispiele (TODO: Pflege sollte außerhalb der IDE möglich sein und auch über Updates ermöglicht werden z.B. ScriptStudio.MOD).

Mit Doppelklick auf einen Eintrag wird das Codebeispiel übernommen. Aktuell existiert eine Einstellung unter (1), um die Beispiele entweder nur als Struktur oder lauffähig zu verwenden.


Revision #4
Created 2022-06-19 07:49:26 UTC by Jens Werschmoeller
Updated 2022-06-19 07:56:21 UTC by Jens Werschmoeller