[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Dokumentchronik

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Dokumentchronik

Martin Fischer
  
Beiträge gesamt: 12783

27. Feb 2012, 16:47
Beitrag # 1 von 8
Bewertung:
(5107 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

auf der Benutzeroberfläche ist es möglich, sich über Befehl-Klick auf InDesign/Über InDesign weitere Informationen über ein Dokument, z.B. dessen Chronik, einzuholen.

Hat jemand eine Idee, ob – und wenn ja – wie diese Informationen per Skript ermittelt werden können?

(Dieser Beitrag wurde von Martin Fischer am 27. Feb 2012, 16:52 geändert)
X

Dokumentchronik

Uwe Laubender
Beiträge gesamt: 5319

28. Feb 2012, 10:18
Beitrag # 2 von 8
Beitrag ID: #490853
Bewertung:
(5066 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, Martin!

Ich habe gerade mal "spaßeshalber" versucht das Menü "Über InDesign…" per Script im ESTK zu testen:

Code
app.menuActions.itemByName("Über InDesign…"); //Ergebnis: [object MenuAction] 


Aber das hier hat mich dann doch verblüfft:

Code
try{ 
app.menuActions.itemByName("Über InDesign…").title; //Referenzfehler: Objekt ist ungültig
}catch(e){$.writeln(e)};


Oder der hier (noch "besser!"):

Code
try{ 
app.menuActions.itemByName("Über InDesign…").name; //Referenzfehler: Objekt ist ungültig
}catch(e){$.writeln(e)};


Hiermit bin ich wnigstens an die Properties rangekommen:

Code
$.writeln(" \r"+'PROPERTIES: '+" \r \r"+ app.menuActions.itemByName("Über InDesign…").reflect.properties.sort().toString().replace(/,/g,"\r")); 
/*
Ergebnis in der JavaScript-Konsole:
PROPERTIES:

__proto__
area
checked
enabled
eventListeners
events
id
index
isValid
isValid
label
name
parent
properties
title
*/


Getestet mit InDesign CS5.5 v7.5.2.

So jedenfalls kommen ich nicht weiter. Vielleicht gelingt ja was mit AppleScript?


als Antwort auf: [#490820]

Dokumentchronik

Martin Fischer
  
Beiträge gesamt: 12783

28. Feb 2012, 11:56
Beitrag # 3 von 8
Beitrag ID: #490864
Bewertung:
(5046 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Uwe,

hab Dank für Deine Mühe.

Der Aufruf von 'Über InDesign ...' allein würde am Ende leider nicht ausreichen.
Er müsste mit gedrückter Befehlstaste erfolgen. ;-)

Aber das ist bei menuActions nicht vorgesehen.
Oder doch?


als Antwort auf: [#490853]

Dokumentchronik

Gerald Singelmann
  
Beiträge gesamt: 6269

28. Feb 2012, 12:35
Beitrag # 4 von 8
Beitrag ID: #490867
Bewertung:
(5033 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat Oder doch?

Und wenn: dann geht das Fenster auf. Und dann?

Ich glaub nicht, dass man an die Infos rankommt... :(


als Antwort auf: [#490864]

Dokumentchronik

Martin Fischer
  
Beiträge gesamt: 12783

28. Feb 2012, 12:51
Beitrag # 5 von 8
Beitrag ID: #490869
Bewertung:
(5025 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Antwort auf [ Gerald ] Und dann?


Na, dann macht man einen ScreenShot. ;-)

Wer erst mal so weit ist, für den sollte es ein Klacks ein, auch noch den Button 'Protokolldatei schreiben' auszulösen. Im Protokoll stünde dann alles drin, was ich brauche. ... Leider für Windows, also keine Möglichkeit, das über AppleScript zu lösen.


als Antwort auf: [#490867]
(Dieser Beitrag wurde von Martin Fischer am 28. Feb 2012, 12:51 geändert)

Dokumentchronik

Gerald Singelmann
  
Beiträge gesamt: 6269

28. Feb 2012, 16:09
Beitrag # 6 von 8
Beitrag ID: #490884
Bewertung:
(4983 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
So, genug nicht-verfügbare Zeit versenkt...

Wer Lust hat, kann hier weitermachen:
Code
-- key codes: http://macscripter.net/viewtopic.php?id=18734 
-- basics: http://www.mactech.com/articles/mactech/Vol.21/21.06/UserInterfaceScripting/index.html
-- key down: http://en.wikibooks.org/wiki/AppleScript_Programming/System_Events

tell application "System Events" to set isUIScriptingEnabled to UI elements enabled
if isUIScriptingEnabled = false then
tell application "System Preferences"
activate
set current pane to pane "com.apple.preference.universalaccess"
display dialog "Your system is not properly configured to run this script.
Please select the \"Enable access for assistive devices\"
(\"Zugriff fuer Hilfsgeraete aktivieren\")
checkbox and trigger the script again to proceed."
return
end tell
end if
--tell application "System Events" to return name of every process
tell application "System Events"
tell process "Adobe InDesign CS5.5"
-- set ma to menu action "$ID/&About Shuksan..."
set frontmost to true
--key code 120 using {control down}
-- click menu "InDesign" of menu bar 1
-- select menu item 1 of menu "InDesign" of menu bar 1
-- beep
key down {command}
-- keystroke return using {command down}
-- --click menu item 1 of menu "InDesign" of menu bar 1
-- keystroke " "
-- repeat until window 2 exists
-- end repeat
tell application "Adobe InDesign CS5.5" to invoke menu action "$ID/&About Shuksan..."
key up {command}

-- click button 1 of window 1
delay 1
click button 2 of window 1
end tell
end tell



als Antwort auf: [#490869]

Dokumentchronik

Martin Fischer
  
Beiträge gesamt: 12783

28. Feb 2012, 16:48
Beitrag # 7 von 8
Beitrag ID: #490890
Bewertung:
(4967 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Gerald,

da hast Du Dich aber gut ins Zeug gelegt.

Es sieht gut aus – bis auf den Schluss.
Da sehe ich noch, dass ein Klick auf den Button "Protokolldatei schreiben" erfolgt (kurze Inversdarstellung). Aber wenn ich hinterher meine Festplatte nach so einer Datei abgrase, finde ich nichts.

Weißt Du, wo ich suchen muss?
Wenn ich normal draufklicke, wird das Protokoll ins Verzeichnis des Dokuments geschrieben.
Nach Ausführung des AppleScripts finde ich dort nichts.
Auch nicht in der InDesign-App-Package Datei. ;-)

----
edit: Ah, ich verstehe. Den letzten Klick muss ich selber machen.
Und hinterher auch noch Aufräumen.

Jetzt brauche ich noch ne kleine Erweiterung für einen Remote Access auf InDesign on Windows. ;-)


als Antwort auf: [#490884]
(Dieser Beitrag wurde von Martin Fischer am 28. Feb 2012, 16:52 geändert)

Dokumentchronik

Gerald Singelmann
  
Beiträge gesamt: 6269

28. Feb 2012, 18:12
Beitrag # 8 von 8
Beitrag ID: #490894
Bewertung:
(4944 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Zitat Ah, ich verstehe. Den letzten Klick muss ich selber machen.
Und hinterher auch noch Aufräumen

Nö, du musst rausfinden, warum InDesign den Click nicht annimmt und was man tun muss, damit er ihn doch annimmt. Dann musst du noch einen Klick auf den sich öffnenden Dialog machen und auf den OK-Knopf klicken.
Wenn man erst mal rausgefunden hat, wie der erste Click geht, sollte der Rest kein Problem sein.

Aber mir scheint, Adobe programmiert mit diesem Dialog ein wenig um das OS herum, so dass normales UIScripting nicht funzt. Es hat mich ne Stunde gekostet, eine Lösung dafür zu finden, dass die Apfel-Taste nicht gedrückt sein muss, wenn der Menübefehl ausgelöst wird, sondern, wenn der Dialog aufgebaut wird. Was absolut nicht dasselbe ist...

Insofern überlasse ich die weitere Recherche anderen ;)


als Antwort auf: [#490890]
X