jPicEdt unterstützt nun Skripte (aka „Makros“) durch einen integrierten BeanShell Interpreter. BeanShell ist eine leichtgewichtige, erweiterbare und integrierte Skripterweiterung für Java, geschrieben von Pat Niemeyer (pat@pat.net). Es folgt der Java-Grammatik (jedoch mit höherer Toleranz gegenüber Syntax-Fehlern; im besonderen ist die Typisierung nicht so streng wie bei Java), daher kann jeder, der über geringe Java-Kenntnisse verfügt, BeanShell-Skripte schreiben.
Eine umfassende Dokumentation der Beanshell gibt es unter
www.beanshell.org. Als guter
Anfangspunkt kann ein prüfender Blick in die Skripte dienen, die mit
jPicEdt ausgeliefert werden. Für weitere Arbeiten werden Sie
aber auch die API Dokumentation zu
jPicEdt brauchen (falls Sie die Dokumentation bisher nicht
installiert haben, können Sie sie mit jPicEdts
Installationsprogramm nachinstallieren), das gilt insbesondere, wenn
Sie Skripte mit komplexen Operationen schreiben wollen. Die
jpicedt.JPicEdt Klasse bietet eine Vielzahl statischer Methoden
(z.B. JPicEdt.newBoard()
), die grundlegenden Bedürfnisse
genügen könnten. Andere wichtige Klassen sind:
Alle diese Klassen sind leicht erweiterbar und können mit anderen verbunden werden (Dank dem bekannten View-Model-Controller Schema …). Außerdem beinhalten jpicedt.JPicEdt und jpicedt.graphic.toolkit.EditorKit eine Auswahl von Aktionen (implementiert als statische Klassen), die Sie in Teilklassen unterteilen können, und anschließend zu Ihrer eigenen grafischen Schnittstelle hinzufügen können. Vgl. dazu die Dokumentation jpicedt.graphic.toolkit.PEAction, dort finden Sie, was eine Aktion ist und wie Sie sie vielleicht in Ihrem eigenen Code benutzen können.
Der Bequemlichkeit halber wurden einige nützliche Variablen und Methoden vordefiniert; beides ist in der BSH-Konsole vom Start an aufrufbar, das gilt auch für Skripte, die über das Skriptmenü gestartet werden. Im einzelnen sind dies:
null
, wenn keine offenes
Zeichenbrett vorhanden ist;
Die Skripte des Benutzers müssen im „Makros“-Unterverzeichnis des
Verzeichnisses für die Benutzer-Einstellungen liegen (zum Beispiel,
/home/user/.jpicedt/macros in Unix). Skripte müssen eine
.bsh-Erweiterung haben. In Namen mit Unterstrichen werden
letztere durch Leerstellen im Skriptmenü ersetzt (z.B.
Repeat_copy.bsh wird gezeigt als „Repeat copy“). Es
ist möglich,
auch andere Skripte aus einem Skript heraus aufzurufen, indem man den
BSH source(path_to_other_script)
Befehl benutzt, und ebenso
können eigene Klassen mit dem addClassPath()
Befehl hinzugefügt werden.
Das Testen von Skripten wird mittels der BSH Konsole durchgeführt. Anschließend werden die getesteten Skripte Skriptverzeichnis abgelegt, sie werden dann automatisch im Skripte-Menü angezeigt – nötigenfalls ist ein „Skipte neu suchen“ erforderlich.