Saya tidak mengundang orang untuk membenci di AppleScript secara umum; Saya hanya ingin tahu apakah yang membuat AppleScript bermanfaat dapat digunakan oleh bahasa scripting tujuan umum lainnya. Yaitu, Lion & Mac Apps mungkin memberikan AppleScript hooks & APIs — dapatkah bahasa apa pun menggunakannya? Atau AppleScript dalam kategori khusus sendiri?
Konteks: Saya belajar tentang Unix dan bagaimana itu mendasari OS X, dan mencoba untuk menjadi sadar tentang peluang dan strategi untuk otomatisasi & abstraksi. Aaa dan aku sudah merasa otakku bocor, jadi jika aku harus menambahkan lebih banyak ke piringku aku berusaha melakukannya dengan hemat.
applescript
Josh Tilles
sumber
sumber
Jawaban:
Dalam hal tujuan umum skrip Unix, banyak bahasa seperti bash, perl, python, atau ruby lebih mampu daripada AppleScript. Tetapi AppleScript memiliki peran khusus dalam MacOS dengan dukungan asli yang bagus untuk hal-hal spesifik Mac, terutama yang terkait dengan GUI.
Ada ikatan antara bahasa skrip lain dan acara MacOS. Sebagai contoh, lihat Modul OSA MacPython °°° atau Apple's Ruby dan Python untuk Mac OS X °°°. Secara umum saya akan mempertimbangkan upaya warga negara kelas dua ini; mereka mungkin bekerja dan menjadi pilihan yang baik tetapi akan sedikit canggung.
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ °
¯¯ EDIT:
Kedua bahasa tidak didukung pada sistem MacOS terbaru . Tautan ini kembali:
Dokumen selesai dengan baris ini:
sumber
Jawaban saya adalah: ya
Applescript adalah anakronisme yang mengerikan dari System 7 dan dalam semua tahun penggunaan dan pengembangan Mac saya tidak pernah bisa membuat diri saya untuk menulis satu baris pun.
OSA adalah kerangka kerja yang didukung oleh Apple yang memungkinkan Anda melakukan akses apa pun yang biasanya dilakukan melalui Applescript. Apakah itu kelas satu atau dua, hanya Apple yang tahu. Java disebut-sebut oleh Apple sebagai warga negara kelas satu untuk Kakao sampai Apple membunuhnya. Python dan Ruby berbeda karena mereka adalah bahasa modern sementara Applescript adalah kekacauan kuno dan Apple tahu itu.
Berbicara khusus dari latar belakang Ruby, Anda memiliki beberapa opsi:
Saya telah menggunakan ini secara ekstensif dalam beberapa tahun terakhir dan mereka melakukan pekerjaan dengan sangat baik. Setara yang serupa harus ada untuk Python.
sumber
AppleScript berada dalam kategori khusus sendiri, karena dikembangkan oleh Apple dan memiliki mekanisme bawaan untuk berinteraksi dengan sistem Acara Apple di OS X. Saya tidak mengetahui adanya dukungan bawaan seperti itu dalam bahasa skrip lain kamu menyebutkan.
Untuk menambahkan dukungan itu ke skrip Anda, Anda bisa menggunakan jembatan acara seperti appscript untuk memungkinkan Anda memanfaatkan kait AppleScript di aplikasi dari Ruby atau Python. Saya tidak pernah menggunakannya sendiri, jadi jarak tempuh Anda mungkin berbeda.
sumber
Filosofi desain AppleScript dan bahasa scripting command-line adalah dua hal yang sangat berbeda. Mereka berdua bertujuan menyelesaikan sesuatu, tetapi melakukannya dengan cara yang sangat berbeda.
AppleScript dimaksudkan untuk membantu Anda mengotomatisasi tugas-tugas berbasis GUI tingkat tinggi yang umum, jadi Anda tidak perlu mengklik ini dan mengetiknya berulang-ulang.
Script command-line biasanya menawarkan lebih banyak fleksibilitas dan kekuatan daripada AppleScript (kecuali jika Anda benar-benar mengetahui SA Anda!) Membuat Anda menggali lebih dalam ke dalam nyala API mirip-mirip Mac OS X.
Untuk meringkas:
sumber
javascript secara resmi didukung sejak OSX 10.10. Dijelaskan oleh apple sebagai "javascript untuk otomatisasi", disingkat menjadi "JXA".
Hanya untuk mengklarifikasi hal-hal, Anda dapat mencapai dalam javascript segala sesuatu yang berkaitan dengan gui dan otomatisasi, seperti applescript dan banyak lagi. Selain itu, setidaknya ada sedikit aktivitas komit yang sedang berlangsung untuk wiki github untuk https://github.com/JXA-Cookbook/JXA-Cookbook/wiki/Getting-the-Application-Instance .
sumber