• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

AppleScript-Application unter Snow Leopard

jack.jack

Klarapfel
Registriert
20.03.09
Beiträge
280
Hallo
Ich habe auf Snow Leopard installiert. Dazu noch das mitglieferte Xcode 3.2. Jetzt wollte ich eine AppleScript-Applikation erstellen. Doch es geht nicht. In meinem Skript steht bis jetzt nur

on opened theObject

end opened


Und noch irgendetwas, was unter Leopard noch nicht drinstand.
Doch ich kann das Programm nicht kompilieren.
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Du entwickelst Dich hier als mein Sorgenkind ;)

Was funktioniert nicht? Was bekommst Du für eine Meldung?
Bei mir funktioniert es. Deshalb vermute ich, dass es bei Dir auch funktionieren wird.
Hast Du ASS Application als Propjekt ausgewählt?

Viele Grüße
 

jack.jack

Klarapfel
Registriert
20.03.09
Beiträge
280
Ja. Coca-AppleScript.
Fehlermeldung: Auf Zeile 21 (on clicked theObject): Expected “given”, “into”, “with”, “without” or other parameter name but found identifier. (-2741)
 

materia

Roter Delicious
Registriert
10.02.08
Beiträge
93
Das ist aber nicht ASS.

Meine persönliche Meinung: Verschwende nicht Deine Zeit damit und nehme gleich Cocoa/Objective-C.

Viele Grüße

Schön, ich stehe gerade vor genau dem gleichen Problem und Deine Meinung bringt jetzt schon zwei Menschen nicht weiter... :/
 

naich

Pomme d'or
Registriert
22.11.08
Beiträge
3.082
...Und noch irgendetwas, was unter Leopard noch nicht drinstand.
Doch ich kann das Programm nicht kompilieren.

Ja. Coca-AppleScript.
Fehlermeldung: Auf Zeile 21 (on clicked theObject): Expected “given”, “into”, “with”, “without” or other parameter name but found identifier. (-2741)


Toll. Woher sollen wir bitte wissen, was du in Zeile 21 stehen hast?
Es wäre wohl sinnvoll, wenn du deinen ganzen Code einfach hier mal postest (oder wirklich relevante Ausschnitte...)!

Edit: Applescript und Objective C sind für mich immer noch 2 unterschiedliche Welten, und man kann nicht einfach pauschal sagen ObjC sei besser.
Für manche Anwendungszwecke mag das sein, für manche aber auch nicht.

Da ich nicht weiß, was überhaupt der TE machen will, kann man dazu nix weiter sagen...
 

materia

Roter Delicious
Registriert
10.02.08
Beiträge
93
Ich arbeite gerade diesen Workshop durch und bekomme selbst, wenn ich

Code:
on opened theObject
    
end opened
leer lasse folgende Fehlermeldung:

Code:
OSACompile Wikibooks_DemoAppDelegate.applescript
cd /Users/jm/Desktop/Wikibooks_Demo
/usr/bin/osacompile -l AppleScript -d -o /Users/jm/Desktop/Wikibooks_Demo/build/Debug/Wikibooks_Demo.app/Contents/Resources/Wikibooks_DemoAppDelegate.scpt Wikibooks_DemoAppDelegate.applescript

2009-09-15 13:46:18.570 osacompile[2207:607] Error loading /Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader:  dlopen(/Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader, 262): no suitable image found.  Did find:
    /Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax/Contents/MacOS/LCC Scroll Enhancer Loader: no matching architecture in universal wrapper
osacompile: OpenScripting.framework - scripting addition "/Library/ScriptingAdditions/LCC Scroll Enhancer Loader.osax" declares no loadable handlers.
Wikibooks_DemoAppDelegate.applescript:22: error: Expected “given”, “into”, “with”, “without” or other parameter name but found identifier. (-2741)
Command /usr/bin/osacompile failed with exit code 1
Fehlt sicher irgendwo nen Haken, nur wo?

Soweit ich das Beurteilen kann hat jack.jack das gleiche Problem.
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Hallo,

Edit: Applescript und Objective C sind für mich immer noch 2 unterschiedliche Welten, und man kann nicht einfach pauschal sagen ObjC sei besser.
Du hast scheinbar nicht gelesen um was es hier geht. ;)

Nämlich um das:

Ja. Coca-AppleScript.
Auch wenn es falsch geschrieben ist...

Hierbei kannst Du z.B. NSWindow in Deiner ASS-Applikation verwenden usw.
Zumal das Wissen in Ccocoa/Objective-C voraussetzt.
... und wer das kann, der würde doch nicht eine weniger performantere und unflexiblere Applikation in ASS schreiben.

Somit liegst Du damit "falsch":

Für manche Anwendungszwecke mag das sein, für manche aber auch nicht.
Viele Grüße
 

materia

Roter Delicious
Registriert
10.02.08
Beiträge
93
Ich hab mal ein neues Cocoa-AppleScript Projekt erstellt, dort im interface einen Button mit folgendem click-Event erstellt:

Code:
on clicked theObject
    display dialog "yay"
end clicked

Dabei kommt der gleiche Fehler.

Ich gehe mal davon aus, dass AppleScript in Xcode3.2 anders eingebunden werden müssen oder sich einiges mehr geändert hat. Weiß irgendwer wodurch dieses Problem beim Kompilieren auftritt?
 

Poljpocket

Salvatico di Campascio
Registriert
07.01.07
Beiträge
432
Seit wann wird AppleScript denn kompiliert?? o.0

Wenn du ausdrücklich eine "AppleScript Application" erstellst, sollte es funktionieren. Es hat immer funktioniert und sollte immer funktionieren. Wenn nicht, musst du dich wohl bei Apple beschweren oder uns mal das gesamte Projekt (verzippter Ordner) hochladen.

Gruss ppocket
 

materia

Roter Delicious
Registriert
10.02.08
Beiträge
93
Seit wann wird AppleScript denn kompiliert?? o.0

Nun, es wird ja eine Ausführbare .app erstellt, und die muss kompiliert werden.

Wenn du ausdrücklich eine "AppleScript Application" erstellst, sollte es funktionieren. Es hat immer funktioniert und sollte immer funktionieren. Wenn nicht, musst du dich wohl bei Apple beschweren oder uns mal das gesamte Projekt (verzippter Ordner) hochladen.

Gruss ppocket

- Untitled.zip

Gruss materia
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Bubben, Bubben, Bubben...

Habt ihr einmal in der Doku gelesen? Nein!

http://developer.apple.com/mac/libr...ef/doc/uid/TP40008853-CH1-DontLinkElementID_2

Bei mir funktioniert das tadellos.

Du kannst nicht einfach einsetzen:

Code:
on clicked theObject
    display dialog "yay"
end clicked
Sondern so etwas:

Code:
on clickAction_(myObject)
    display dialog "yay"
end clickAction_
Dann mußt Du vom Button aus mit gedrückter Strg-Taste das Otulet verbinden.
In Deinem Beispiel zum App-Delegate.

Ich betone nochmals:
Das ganze ist wie in Cocoa/Objective-C.
Da sollte man mehrmals überliegen, ob man nicht gleich das richtige lernt ;)

Zumal in Cocoa/Objective-C die ScriptingBridge genutzt werden kann.
Also genau andersrum als ASObjC.

Viele Grüße
 
Zuletzt bearbeitet:

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Anbei noch ein Beispiel mit einer zweiten AS-Class.

Viele Grüße
 

Anhänge

  • MyTest.zip
    25,3 KB · Aufrufe: 100

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Was mir gerade aufgefallen ist:

Die Skripte liegen im Klartext im fertigen Ressources-Ordner.
Oh mein Gott... vielleicht Einstellsache. Aber kein Plan.
 

Poljpocket

Salvatico di Campascio
Registriert
07.01.07
Beiträge
432
@materia: Ich hoffe, du weisst nur nicht, was ein *.app wirklich ist. Das ist ein sog. Bundle. Also ein Ordner mir allen zur Ausführung des Programms benötigten Ressourcen, der vom Finder als eine Datei angezeigt wird. Im Terminal ist ein *.app-Bundle aber nichts weiter als ein Ordner. Was der Finder beim Doppelklick drauf macht, ist nur die im Bundle unter /Contens/MacOS/ enthaltene ausführbare UNIX-Datei zu öffnen. Bei ASS-Applications wird nur dieser Teil kompiliert, der dann die Scripts und die nibs irgendwie zum Laufen bringt. Die Scripts kannst du aber im Klartext - wie LittlePixel sagt - im Bundle wieder finden. Wird also nichts kompiliert :D.

Der Vorteil von Bundles ist - wie gesagt -, dass der Benutzer die Zusammenfassung von mehreren Dateien, welche für ein Programm benötigt werden, in einer Datei auffindet, die jedoch vom Finder nur als solche dargestellt wird.

Viele OS X Ressourcen sind Bundles, darunter *.app, *.framework, *.bundle, *.plugin, *.component, ...
Den Inhalt dieser Bundles kannst du jederzeit im Kontextmenu unter "Paketinhalt zeigen" auch im Finder anzeigen lassen.

Viel Spass! Gruss ppocket
 

jannk

Niederhelfenschwiler Beeriapfel
Registriert
17.06.07
Beiträge
838
Ich glaube, hier sprechen einige von AppleScript, andere von AppleScript Studio unter Xcode. Und das muss kompiliert werden, denn es enthält .nibs.
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
@Poljpocket: mhh warum habe ihr hier compilierte AppleScripts in denen ich nicht mal, wenn ich die einzelnen HexWerte der Datei ansehe, mein geschriebenes Skript? komisch komisch