Si vous vous sentez à l'aise dans le monde des scripts et que vous travaillez sur un Mac, AppleScript pourrait être la solution d'automatisation pour vous. AppleScript est un langage puissant qui vous donne le pouvoir de contrôler n'importe quelle application, tant qu'il fournit une bibliothèque AppleScript.
Utilisez-le pour des tâches aussi banales que le redimensionnement automatique des photos Photoshop, le renommage des dossiers et le verrouillage des fichiers avec un mot de passe. Nous allons vous montrer comment commencer à l'utiliser.
Comme bash, AppleScript est un langage de script. Et similaire à Automator, il interagit principalement avec les applications et le Finder pour automatiser les tâches pour vous. Il est sorti dans le cadre de Mac OS System 7, depuis 1993. Il est resté coincé depuis lors, niché dans les utilitaires dossier.
AppleScript a gagné en puissance avec les débuts de Mac OS X. Le framework Cocoa a permis aux développeurs d'applications d'inclure plus facilement la compatibilité AppleScript. Cette flexibilité accrue, combinée à la capacité d'AppleScript à parler directement à la ligne de commande, fait d'AppleScript l'un des meilleurs outils pour les bricoleurs. Cela donne également à macOS l'avantage sur iOS en matière d'automatisation.
Avant de détailler exactement ce que dit un AppleScript, examinons les scripts préinstallés avec Script Editor et comment vous pouvez les utiliser.
Les scripts préinstallés vivent dans Macintosh HD> Bibliothèque> Scripts. Vous pouvez également y accéder en ouvrant l'éditeur de script (recherchez-le avec Spotlight), en accédant à Préférences > Général > Afficher le menu Script dans la barre de menus , puis en cliquant sur l'icône de script qui apparaît dans la barre de menus.
Vous pouvez simplement exécuter l'un de ces scripts à partir de la barre de menus.
Jetons un coup d'œil aux actions de dossier. Une action de dossier est un AppleScript attaché à un dossier. Lorsqu'il est activé, le script s'exécute sur tout fichier ajouté à ce dossier.
Si vous accédez à Actions de dossier > Joindre des scripts à un dossier , une fenêtre contextuelle vous demandera quel type de script vous souhaitez ajouter à un dossier. Vous pouvez retourner les photos horizontalement ou verticalement, les dupliquer au format JPEG ou PNG, les faire pivoter ou déclencher une alerte lorsqu'un nouvel élément est ajouté.
Une fois que vous avez sélectionné votre script et le dossier auquel vous souhaitez le joindre, cliquez avec le bouton droit sur le dossier lui-même. Allez dans Services > Configuration de l'action du dossier , et assurez-vous que Activer les actions de dossier est vérifié. Faites ensuite glisser un fichier au-dessus du dossier pour voir votre AppleScript s'exécuter.
Jouez avec la barre de menus Scripts pour avoir une idée de ce qu'AppleScript peut faire d'autre pour vous. Pour voir ce qui se passe sous le capot, rendez-vous dans les Scripts dossier, faites un clic droit sur n'importe quel script et ouvrez-le avec Script Editor.
AppleScript utilise une syntaxe lisible par l'homme. Cela signifie que, par rapport à de nombreux autres langages de programmation, il est écrit dans un format compréhensible. Parce qu'il utilise des mots et des phrases complets pour envoyer des commandes, il est facile à comprendre et simple à apprendre.
Regardons la syntaxe de début de add - new item alert.scpt dans Actions de dossier. Cela vous donnera une idée de l'instruction la plus fondamentale d'AppleScript :l'instruction tell .
sur l'ajout d'éléments de dossier à this_folder après avoir reçu les éléments ajoutés
essayer
dire à l'application "Finder"
--obtenir le nom du dossier
définissez le nom_du_dossier sur le nom de ce_dossier
fin dire
Une "instruction tell" est composée de trois parties :
En termes simples, l'instruction tell ci-dessus indique "Dites au Finder d'utiliser le nom du dossier auquel ce script est attaché chaque fois que le script demande "this_folder".
Le but d'AppleScript est d'automatiser les tâches pour vous en disant aux applications d'effectuer des tâches que vous n'avez pas envie de faire vous-même. Par conséquent, la commande "tell" est essentielle. Vous pouvez aller loin dans le monde AppleScript avec "dire" seul.
A noter également :la ligne qui dit
--obtenir le nom du dossier
est en fait juste un commentaire, indiquant à l'utilisateur ce que le script fait à ce moment-là. Les commentaires sont essentiels, non seulement pour dire aux autres ce que votre script a fait, mais pour vous le rappeler.
Si vous avez une certaine expérience en programmation et que vous êtes familiarisé avec des concepts tels que les variables, les boucles do-while et les conditions, vous pouvez tirer beaucoup d'AppleScript au-delà de la portée de cette introduction. Pour l'instant, nous allons juste vous montrer comment créer, écrire, exécuter et enregistrer un script de base :
indiquez à l'application "Événements système" d'afficher la boîte de dialogue "Hello world !"
. Ensuite, appuyez sur le bouton marteau dans la barre de menu juste au-dessus du script pour le compiler. Cela parcourra votre script pour vérifier les erreurs de syntaxe. Si vous ne recevez aucune boîte de dialogue d'erreur et que votre script modifie le formatage et la police, il a été compilé avec succès. Avec cette syntaxe simple, vous pouvez dire à presque n'importe quelle application Mac de faire à peu près n'importe quoi. Pour passer en revue les commandes disponibles pour une application donnée, accédez à Fichier > Ouvrir le dictionnaire et choisissez l'application. De là, vous pouvez voir toutes les commandes AppleScript disponibles.
Si la programmation vous donne mal à la tête, il existe des moyens plus simples d'automatiser vos tâches. Automator utilise une interface graphique conviviale et une interface simple pour transformer des routines abrutissantes en tâches à définir et à oublier en un clic.
Bien qu'Automator ne soit pas aussi personnalisable ou complexe qu'AppleScript, il est plus simple et beaucoup plus difficile à casser. Jetez un œil à certains flux de travail Automator qui vous feront gagner du temps si vous êtes intéressé.