L'exécution AppleScript plus rapide sur macOS Monterey

Mickaël Bazoge |

Il existe plein de bonnes raisons de passer à macOS Monterey, mais il y en a une qui fera craquer les amateurs d'AppleScript : le nouveau système d'exploitation est beaucoup plus rapide que macOS Big Sur dans le traitement des scripts. Cet utilisateur explique que l'exécution d'un de ses scripts InDesign prend 15 secondes sur Monterey, contre 85 secondes sur Big Sur ! Un gain significatif qu'il retrouve avec d'autres scripts.

Quelques lignes d’AppleScript, extraites d’un script utilisé en interne pour récupérer les informations d’une app de l’App Store.

macOS Monterey inaugure la version 2.8 d'AppleScript (2.7 sur Big Sur), que l'on peut créer et éditer dans l'app Éditeur de Script. Sur son blog, le spécialiste Takaaki Naganoya confirme l'accélération du traitement et pas qu'un peu : selon ses tests, l'exécution d'un script de tri de tableaux de nombres aléatoires est jusqu'à 12 fois plus rapide sur les Mac Intel, et 30 fois plus rapide sur les Mac M1 ! Le gain avec d'autres scripts est moins impressionnant, mais leur exécution est toujours plus rapide que sur Big Sur.

C'est donc une très bonne nouvelle pour les développeurs AppleScript, qui souffraient pas mal avec le précédent OS. Bien sûr, il faudra croiser les doigts pour ne pas tomber sur les petits soucis de Monterey…

avatar Olivier_D | 

J’ai du me servir de AppleScript qu’une fois dans ma vie… pour lancer un script qui extrait mes mots de passe KeyChain pour migrer sur une autre solution.

Je serais curieux de savoir la part d’utilisation de celui-ci.

avatar jerome74 | 

@Olivier_D: et moi, je n'ai jamais utilisé, vraiment pas une seule fois, Messages, Photos, Books, FaceTime etc… Par contre AppleScript, ça oui!!!

avatar Olivier_D | 

@jerome74

Je sais pas si le ton était cynique, mais pour moi la question était plus « pourquoi utiliser AppleScript quand on a déjà les scripts zsh ». Loin de moi l’idée de faire une liste exhaustive des apps que je n’utilise pas, sinon on est pas rendu, et en plus on sen cogne.

avatar jerome74 | 

zsh c'est très bien aussi, mais ça ne permet pas de scripter des applications. Et ce qu'on peut faire avec Automator ou probablement Shortcuts reste très, très loin de ce qu'on peut faire avec AppleScript. AppleScript gagnerait à un sacré coup de jeune pour ce qui est de sa syntaxe (beaucoup trop molle à mon goût), mais c'est juste un outil génial.

avatar BeePotato | 

@ Olivier_D : « pour moi la question était plus « pourquoi utiliser AppleScript quand on a déjà les scripts zsh ». »

La réponse est simple : parce que ça ne sert pas à la même chose.
Les deux peuvent d’ailleurs être combinés pour tirer profit de leur complémentarité.

avatar Tibimac | 

Super nouvelles ! AppleScript qu’on pensait un peu mort ne l’est finalement pas, ou pas tant que ça !
Personnellement je me sers pas mal d’Apple Script avec Hazel afin d’automatiser le rangement et renommage de fichiers/dossiers. C’est vraiment puissant (en terme de possibilités) et pratique grâce à son intégration dans l’ensemble du système 🙂
Peut-être qu’à terme ça sera remplacé par Raccourcis, mais quand des actions pré-conçues n’existent pas alors que c’est possible en Apple Script il est très plaisant de pouvoir "branche" un script custom en Apple Script sur un trigger géré par un logiciel (comme le fait Hazel mais ça pourrait tout autant être Raccourcis dans le futur).

avatar switch (non vérifié) | 

Quelle excellente nouvelle, j'adore AppleScript et je craignais qu'Apple ne l'abandonne lors de la migration vers Silicon, mais ce "joyau de la couronne" n'a pas été abandonné et même accéléré.
Je suppose qu'il faudra envisager quelques modifications sur des scripts complexes dans macOS Monterey, mais c'est plutôt bon signe pour l'avenir d'AppleScript.

avatar Mac1978__old | 

Bonne nouvelle ! Je ne sais pas pourquoi mais j’ai toujours le sentiment qu’AppleScript et Automator vont être abandonnés par Apple.
Pourtant AppleScript est vraiment puissant, puissance augmentée par l’intégration de shell scripts.
C’est dommage que toutes les applications, notamment tierces, n’offrent pas un dictionnaire complet.

avatar mat16963 | 

@Mac1978

Automator, Apple a clairement dit que c’était l’objectif à moyen terme, pour le remplacer par Raccourcis.
Maintenant comme les fonctions de script ont migré vers Raccourcis c’est une bonne nouvelle…

avatar bugman | 

Jamais rien compris à la syntaxe de l’AppleScript (à la vue de l’illustration on dirait un extrait de film avec Louis Defunes).

avatar alitaliano | 

Génial 👍 Je suis rassuré, moi qui de par mon travail de graphiste a créé des scripts en AppleScript tellement complexes… Merci à Macg d’en parler, c’est vrai qu’on a l’impression qu’AppleScript est abandonné d’année en année, mais visiblement peut-être pas…

avatar Patrick_C | 

Tiens, je me demandais dans quel langage d’Apple je pourrais le mieux faire un tâche qui me semble basique mais sur laquelle j’ai buté avec Automator: je voudrais récupérer un PDF qui est mis tous les jours à jour à une adresse fixe en incluant la date dans le nom du PDF (le nom du fichier en ligne ne change pas). Comme j’entrevois les grands fans de ces langages ici, est ce que quelqu’un pourrait me dire lequel choisir?

avatar BeePotato | 

@ Patrick_C :
• Pour lancer la tâche automatiquement tous les jours : cron (« crontab -e » pour l’édition de la table, et une petite recherche sur internet ou dans les pages man pour trouver la bonne syntaxe).
• Pour télécharger et renommer le fichier : faisable tout autant avec Automator qu’en AppleScript, mais de mon point de vue le plus simple serait d’utiliser la commande curl (même pas besoin d’écrire un script, car le téléchargement + renommage se fait en une seule et même commande, qui peut du coup être mise telle quelle dans l’entrée du crontab).

CONNEXION UTILISATEUR