Gibt es eine andere Skriptsprache, die verwendet werden kann, um Skripte in Programme einzubetten, die auf Mac OS X zugreifen können, oder Programmklassen mit denselben oder den meisten Funktionen von F-Skript?
Antworten
Zu viele Anzeigen?Die Skriptsprache mit der besten Unterstützung auf dem Mac ist immer noch AppleScript. Im Gegensatz zu F-Script kann sie jedoch nicht direkt auf die Objective-C-Ebene zugreifen, sondern nur das verwenden, was die Zielanwendung für die Skripterstellung freigibt.
Es gibt Objective-C-Brücken für Perl, Python und Ruby. Ich nehme an, dass diese eingebettet werden können, um Skripting für Ihre Anwendung bereitzustellen.
Nu ist eine interessante Option, auch wenn sie noch nicht sehr populär ist.
Eine Menge Leute scheinen zu mögen JSTalk .
Aber wahrscheinlich ist Applescript die beste Wahl: in das System integriert und so weiter.
Ich würde sagen F-Skript aus vielen Gründen. Es hat viele einzigartige Funktionen und ist extrem eng mit Cocoa und der Objective-C-Laufzeit integriert. Man kann zum Beispiel verschiedene Finder-Klassen inspizieren (Fenster, Icons, Coverflow-Ansicht...) und es ist sehr einfach (ein oder zwei Zeilen Code), andere Prozesse zu starten oder zu steuern. I nicht dass es einen guten Grund gibt, AppleScript zu bevorzugen. Es ist gut für sehr kurze Skripte, wird Sie aber wahrscheinlich in den Wahnsinn treiben, wenn Sie etwas Komplexeres machen wollen.
Auch, MacRuby wird rocken, wenn es ein bisschen stabiler ist, und einige ernste Dinge wurde auch mit PyObjC realisiert, obwohl ich glaube, dass es nicht mehr aktiv gepflegt wird.
Wenn Sie die grafischen Introspektionswerkzeuge von F-Script, die ziemlich einzigartig sind, nicht benötigen, gibt es einige vernünftige Skriptsprachen, die Sie in Anwendungen einbetten können. Siehe insbesondere RubyCocoa (für Ruby), PyObjC (für Python), JSTalk (für JavaScript) und CamelBones (für Perl). Sie basieren auf Brücken zwischen Cocoa und einem fremden Objektmodell, was zu einigen Komplexitäten führt. Dies unterscheidet sich von F-Script, das direkt für das Cocoa-Objektmodell entwickelt wurde. Wenn es soweit ist, könnte auch MacRuby eine Option sein, aber die Syntax zur Manipulation von Objective-C-Objekten ist nicht sehr schön (sie ist allerdings besser als RubyCocoa). Nu ist auch eine Option: direkt für Cocoa entwickelt wie F-Script, aber mit einem starken Lisp-Einschlag.
- See previous answers
- Weitere Antworten anzeigen