Ich habe die Erfahrung gemacht, dass Scripte sehr viel benutzbarer werden, wenn sie, wie jeder andere Befehl auch, im Menü zur Verfügung stehen. Aber bisher steht dieser Luxus nur zur Verfügung, wenn der Autor des Scriptes das vorgesehen hat.
Ab sofort können Sie (ab CS4) selbst bestimmen, welches Script unter wechem Namen in welchem Menü zur Verfügung steht.
Das Scriptpaket besteht aus zwei Scripten und einem Ordner mit Bildern.
Mit dem Script "loadScript2Menu.jsxbin" legen Sie fest, welche Scripte wo im Menü eingetragen werden sollen. Legen Sie es irgendwo in Ihren Scripts Panel Ordner. Wichtig ist, dass der Ordner mit den Bildern "ls2m_icons" direkt neben loadScript2Menu.jsxbin liegt.
Das Dialogfeld, das Sie dafür nutzen, müssen wir gleich noch besprechen. Die Auswahl wird in eine Preferences-Datei in Ihrem Userverzeichnis geschrieben:
Das Script "loadScript2Menu_startup.jsx" ist dafür zuständig, die von dem ersten Script geschriebene Preferences-Datei auszulesen und die Menübefehle entsprechend zu erstellen. Der geeignete Zeitpunkt hierfür ist, wenn InDesign startet, deswegen oben der Hinweis, dieses Script in den Startup Scripts Ordner zu legen.
Theoretisch könnten Sie loadScript2Menu_startup.jsx auch aus der Script Palette starten, aber ich habe nicht getestet, was passiert, wenn Sie das mehrfach machen. Für die Version 1.0 muss es gut genug sein, dass das beim Neustart passiert.
"loadScript2Menu.jsxbin" ruft dieses Dialogfeld auf. Beim ersten Mal ist die obere Liste allerdings leer.
Die obere Liste zeigt die Scripte, die Sie ins Menü eingeklinkt haben, unter welchem Namen, wo im Menü und ob ein Trennstrich darüber eingefügt wird.
Sie pflegen diese Liste über die sieben Icons rechts. Diese bedeuten der Reihe nach:
Falls Sie die Symbolik nicht selbsterklärend finden, klicken Sie auf das Fragezeichen.
Der Rest ist hoffentlich simpel: Sie laden mit dem obersten Knopf ein beliebiges Script irgendwo auf Ihrer Festplatte und werden auch gleich gefragt, wie der zugehörige Eintrag im Menü heißen soll.
Danach wählen Sie in der unteren Liste ein Menü aus oder einen Menübefehl und klicken auf den Zuweisen-Knopf. Wenn Sie ein Menü (oder Untermenü) ausgewählt haben, wird das Script ganz unten in diesem Menü eingefügt. Wenn Sie einen Menübefehl ausgewählt haben, dann direkt unter diesem.
Klicken Sie OK - die Voreinstellungsdatei wird geschrieben - und starten Sie InDesign neu.
Die Scriptingschnittstelle von InDesign lässt es nicht ohne weiteres zu, dass ein Script eine Liste wie die obere sortiert. Deswegen sind die Knopfe Duplizieren und Löschen derzeit der einzige Weg, die Reihenfolge zu ändern. Wenn Sie nämlich mehrere Scripte in das selbe Menü hängen, bestimmt die Reihenfolge in der Liste über die Reihenfolge im Menü
Ich habe das Script auf einem deutschen InDesign CS4 entwickelt und getestet. CS3 bietet meines Wissens nicht an, mehrspaltige Listen wie die obere zu verwenden. Deswegen ist dieses Script derzeit CS4-only.
Um diese Restriktion kann man sicherlich herumprogrammieren, aber aus Zeitgründen habe ich davon vorerst Abstand genommen, bis ein CS3-Anwender mich davon überzeugt, dass das doch sein muss :)
Das Script enthält eine komplette englische Übersetzung, die automatisch verwendet werden sollte auf einem nicht-deutschen InDesign. Falls jemand Interesse hat, die französische, italienische oder spanische (oder sonstige) Übersetzung beizusteuern, baue ich sie gerne ein.
Kommentare
Neuer Windows-Bug behoben
Unter einigen Windows-Systemen hat das Script-Paket bisher nicht funktioniert, da anscheinend ein Bug dafür sorgte, dass die Datei mit den Voreinstellungen leer blieb.
Ich bin halbwegs zuversichtlich, dass dieser Bug behoben ist. Die neue Version wie bisher oben unter dem Link.
Achtung: die neue Version kommt nicht mit den alten Voreinstellungesdateien zurecht. Probieren Sie das Update also nur aus, wenn die alte Version bei Ihnen nicht funktioniert hat.
Leider kein Eintrag in loadScriptToMenu.txt
Hallo Herr Singelmann,
vielen Dank für all die tollen Scripte!
Das loadScript2Menu will allerdings nicht so richtig.
Was habe ich gemacht:
1. Das Startup-Script in den Ordner C:\Programme\Adobe\Adobe InDesign CS4\Scripts\Startup Scripts\ entpackt.
2. Das eigentlich Script in den Ordner C:\Dokumente und Einstellungen\\Anwendungsdaten\Adobe\InDesign\Version 6.0\de_DE\Scripts\Startup Scripts entpackt.
3. ID gestartet, kein Dokument offen, Script gestartet, Plus-Icon geklickt, Script gewählt, Namen vergeben, unten ein Menü ausgewählt, Icon mit Pfeil nach oben geklickt, Trennlinien-Icon geklickt und dann ok.
4. InDesign neu gestartet
5. Ergebnis: Kein neuer Menüeintrag.
Dann habe ich mir die Datei loadScriptToMenu.txt im cuppascript-Ordner angesehen und die ist tatsächlich leer, hat aber ein brandaktuelles Änderungsdatum bzw. Änderungszeit). Schreibschutz ist keiner vorhanden.
Können Sie sich da vielleicht einen Reim drauf machen?
Viele Grüße
Wolfgang Giersberg
Menüeinträge nicht entfernbar?!
Hallo,
ersteinmal ein dickes Lob für die Mühe der Scripterstellung.
Ich hatte ein Startup-Script in den "Scripts"-Ordner gelegt, neues Menü mit Untermenü erschien.
Anschließend wollte ich es wieder entfernen und löschte den Ordner, aber der Menüeintrag ist immernoch da, allerdings leer, ohne Unterpunkte.
Wie kann das sein?
Vielen Dank im vorraus für die Hilfe. :)
Mach weiter so.
Beste Grüße Thomas
Load Script
... habe mich selbst überholt :))
erledigt - beim Menu sammeln waren in meiner Liste «Zuletzt verwendete Datei öffnen» ungültige Einträge. Dynamik lässt grüssen.
Also falls es Dir mal langweilig ist um Mitternacht.... könnte man dies natürlich abfangen ! Aber ich bin schon so mehr als begeistert von Deinen Scripts. Vielen Dank Gerald.
Script Menu
Wieso wohl erhalte ich diesen Error?
Fehlernummer 30477
Fehlerzeichenfolge: Ungültiger Wert für Parameter "for" von Ereignis "findKeyStrings". String erwartet aber "" erhalten.
Vielen Dank für eine Tipp !!
PS: indesign-faq finde ich schlicht & einfach DER hammer !!!!
Wow,
Herr Singelmann, das ist eine astreine Sache, danke Ihnen! Gibt es denn die Möglichkeit, für die neuen Menüeinträge auch Tastaturkürzel zu vergeben?
Tastaturkürzel
>Gibt es denn die Möglichkeit, für die neuen Menüeinträge auch Tastaturkürzel zu vergeben?
Ich glaube, nein.
Aber: Sie können Scripten Tastaturkürzel geben. Also nicht dem Menüeintrag, sondern dem, was durch den Menüeintrag aufgerufen wird.
Das geht natürlich sowieso, egal, ob Sie das Script hier installiert haben oder nicht.
Scriptpaket besteht aus zwei Scripten + einem Ordner mit Bildern
Hallo Herr Singelmann,
bei mir kommt das Scriptpaket auch nur als eine einzelne Datei loadScript2Menu.jsxbin an, und es bricht der der Ausführung mit einer Fehlermeldung ab, dass die Bilder nicht gefunden werden können. Könnten Sie bitte nochmal gucken, denn das Script würde uns das Leben sehr erleichtern ...
Viele Grüße
Bernd
Paket sollte wieder vollständig sein
Ich habe anscheinend beim Fixen von dem Windows Bug versehentlich das Paket kaputt gemacht.
Das sollte jetzt behoben sein, sonst bitte ich um Feedback
Danke
Windows-Bug (hoffentlich) behoben
Unter bestimmten Umständen konnte unter Windows kein Script ausgewählt werden, um es der Liste hinzuzufügen. Ab sofort ist oben eine Version des Scriptes verlinkt, die den dafür verantwortlichen Datei-Filter deaktiviert hat.
Damit sollte das auf jedem Windows-Rechner laufen.
Im Scriptpaket ist nur ein Script??
Hallo Gerald,
im Scriptpaket ist nur ein Script und nicht zwei und ein Ordner mit Bildern...
Habe ich da was übersehen?
Gruss
SetzDani
kann man auch Applescripts einfügen?
Applescripts sind ja (mit Applescript) nicht so einfach wie Javascripts unter Menüs einzufügen, da wird eine "script menu action" und ein "event listener" benötigt (noch was?). Ist das der Grund, warum das obige Script die Auswahl von Applescripts nicht zuläßt? Wäre es möglich, die auch noch einzuklinken?
In das JSXBIN komme ich leider nicht rein, sonst hätte ich es selbst mal probiert. :-(
Hoffnungsvolle Grüße
Stibi
Jetzt auch AppleScripts
Hallo Stibi,
ich hatte über AppleScripts nachgedacht..
Falls man die Dateiauswahl ohne Filter betreibt, bekommt man jede Datei angeboten, was sehr schnell unübersichtlich wird.
In dem ZIP ist jetzt eine Version enthalten, die auch Dateien mit der Endung .scpt und .app akzeptiert.
Damit lassen sich dann auch AppleScipts einbinden.
Applescripts
Inzwischen habe ich einige Applescripts versucht zu installieren. Bei manchen lief's, bei manchen nicht. Bisher habe ich nicht herausgefunden, woran es liegt :(
Um Klarheit zu bekommen, habe ich es mit einem Applescript versucht, das von CS4 mitinstalliert wird: "CornerEffects.applescript". Um es überhaupt einbinden zu können, muss man es zunächst umbenennen in "CornerEffects.scpt".
Beim Aufrufen kommt dann diese Fehlermeldung:
Fehlernummer: -10006
Fehlerzeichenfolge: "evt of «handler run»" kann nicht als "event id 7 of «class SAcn» id -16769010" gesetzt werden.
Das Script läuft beim Aufrufen über die normale Scriptpalette einwandfrei, auch aus dem Skripeditor.
Ähnliche Fehlermeldungen hatte ich auch bei meinen eigenen Skripts, die sich nicht einbinden ließen. Woran kann es liegen?
Gruß Stibi
Nun auch Einträge bewegen
Ein Tipp von Peter Kahrel hat mir gezeigt, wie man Einträge in einer Liste mit vertretbaren Aufwand auch bewegen kann. Das Paket enthält jetzt also Version 1.0.1 mit zwei Knöpfen mehr :)