applescript · 2009. 10. 7. · iv applescript constantes texte 53 délimiteur de texte 53...

13
AppleScript Jean-Philippe Moreux et Aurélien Gaymay

Upload: others

Post on 16-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

AppleScript

Jean-Philippe Moreux et Aurélien Gaymay

Book_AppleScript.indb IBook_AppleScript.indb I 3/09/09 14:23:293/09/09 14:23:29

Page 2: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

Introduction 1

Comment Apple Script fonctionne 4Comment utiliser Apple Script 7Comment lire cet ouvrage 8Suppléments téléchargeables 10Ressources 11

Partie I Le langage

1 L’environnement de programmation 13

Confi gurer Apple Script 13Utiliser le menu des scripts 14Éditer un script 17Compiler un script 21Exécuter un script 23Déboguer un script 24Enregistrer un script 29Consulter un dictionnaire d’application 34Étendre l’Éditeur de scripts 40Associer un raccourci clavier à un script 41

2 Les bases d’Apple Script 43

Jeu de caractères 44Identifi ants 45Commentaires 45Caractère de continuation de ligne 46Littéraux 47Mots-clés 48Synonymes 50the 50Constantes Apple Script 51

Table des matières

Book_AppleScript.indb IIIBook_AppleScript.indb III 3/09/09 14:23:343/09/09 14:23:34

Page 3: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

IV AppleScript

Constantes texte 53Délimiteur de texte 53Variables 55Propriétés 56Expressions 57Instructions 57Commandes 58Opérateurs 59Utiliser les objets 62Conteneurs 69Spécifi eurs d’objet 70Références 76Messages et cibles 77

it et me 84

3 Structures des scripts 85

Blocs 86Instructions conditionnelles 89Instructions de boucle 90Instruction de ciblage des commandes applicatives 95Instruction de fi ltrage des réponses des commandes applicatives 96Instruction de garde temporelle 98Instruction de transaction 98Défi nir une sous-routine sans paramètre 99Défi nir une sous-routine avec paramètres positionnels 100Défi nir une sous-routine avec paramètres étiquetés 101Défi nir une sous-routine avec motif de paramètres 103Défi nir une sous-routine récursive 104Passer des paramètres par valeur ou par référence 104Appeler une sous-routine dans un bloc tell 106Créer une bibliothèque de sous-routines 107

Gestionnaire run 109

Gestionnaire idle et quit 110

Gestionnaire open 112Déterminer la portée et la durée de vie

Book_AppleScript.indb IVBook_AppleScript.indb IV 3/09/09 14:23:353/09/09 14:23:35

Page 4: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

VTable des matières

des variables et des propriétés 113Créer une variable persistante 115Déclarer une variable globale 115Accéder à une variable externe à un gestionnaire 116Rendre une variable locale 116

4 Scripts avancés 117

Gestion d’erreur 117Créer un script objet 121Initialiser des scripts objet 123Héritage et scripts objet 125Héritage et instanciation de scripts objet 128Coercition 130Connaître les diffi cultés et pièges d’Apple Script 131Compléments de pilotage 135

Créer un bundle 136

5 Outils, types de données et algorithmes de base 139

Utiliser les dates 140Obtenir la date courante 140Créer une date 142Comparer des dates 143Calculer une durée 143Calculer un décalage horaire 144Utiliser les enregistrements 144Accéder aux éléments d’un enregistrement 145Créer un enregistrement 145Positionner les éléments d’un enregistrement 146Comparer des enregistrements 146Parcourir un enregistrement 147Convertir un enregistrement 147Utiliser les listes 148Accéder aux éléments d’une liste 149Créer une liste 150Positionner les éléments d’une liste 152Ajouter des éléments à une liste 152

Book_AppleScript.indb VBook_AppleScript.indb V 3/09/09 14:23:363/09/09 14:23:36

Page 5: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

VI AppleScript

Supprimer des éléments d’une liste 153Trier une liste 154Inverser une liste 155Comparer des listes 155Parcourir une liste 155Convertir une liste 156Utiliser des nombres 157Obtenir des nombres aléatoires 157Arrondir un nombre réel 158Convertir un nombre en texte 159Travailler avec des unités de mesure 160Utiliser du texte 161Chercher un texte 163Décomposer un texte en ses constituants 164Concaténer des chaînes de caractères 166Comparer des chaînes de caractères 167Convertir un texte en nombre 168Résumer un texte 168Copier dans le presse-papiers 169Coller dans le presse-papiers 170Affi cher une boîte de dialogue 170Demander une saisie à l’utilisateur 174Affi cher une boîte d’alerte 175Produire un son d’alerte 176Affi cher une boîte de choix d’un élément dans une liste 176Affi cher une boîte de choix de fi chier 178Affi cher une boîte de choix d’URL 178Choisir une couleur 180Choisir une application 180

Partie II Scripter le système

6 Le Finder 181

Utiliser les fenêtres du Finder 182Ouvrir et fermer une fenêtre 184

Book_AppleScript.indb VIBook_AppleScript.indb VI 3/09/09 14:23:373/09/09 14:23:37

Page 6: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

VIITable des matières

Changer l’ordre d’affi chage des fenêtres 184Régler l’apparence des fenêtres 185Agrandir une fenêtre 188Sélectionner une fenêtre 189Placer une fenêtre dans le Dock 189Affi cher un dossier dans une fenêtre 190Révéler un élément dans le Finder 190Obtenir les éléments affi chés dans une fenêtre 190Obtenir les éléments sélectionnés 191Sélectionner des éléments 191Gérer les fenêtres des applications 192Utiliser Quick Look 193

7 Chemins, dossiers et fi chiers 195

Utiliser les chemins 196Décomposer un chemin 198Utiliser les dossiers 198Créer un nouveau dossier 199Spécifi er un dossier système 200Obtenir les éléments contenus dans un dossier 204Obtenir le dossier du script exécuté 206Tester la nature de dossier 206Tester l’existence d’un dossier 207Dupliquer un dossier 208Déplacer un dossier 208Obtenir le dossier englobant 208Obtenir le dossier affi ché par une fenêtre 209Obtenir la taille d’un dossier 209Choisir un dossier dans une boîte de dialogue 210Défi nir une action de dossier 211Utiliser les fi chiers 213Créer un nouveau fi chier 214Créer un nouveau lien 215Renommer un fi chier 215Supprimer un fi chier 216Dupliquer un fi chier 216

Book_AppleScript.indb VIIBook_AppleScript.indb VII 3/09/09 14:23:383/09/09 14:23:38

Page 7: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

VIII AppleScript

Déplacer un fi chier 217Obtenir les propriétés d’un fi chier 217Tester le type d’un fi chier 219Tester l’existence d’un fi chier 221Obtenir le disque de stockage d’un fi chier 221Obtenir les commentaires d’un fi chier 222Verrouiller un fi chier 222Affi cher l’extension d’un fi chier 222Changer les couleurs d’étiquette 223Changer le créateur et le type de fi chier 223Changer les dates de création et de modifi cation 225Choisir un fi chier dans une boîte de dialogue 226Trier des fi chiers 228Rechercher des fi chiers avec Spotlight 229Ouvrir un fi chier 231Imprimer un fi chier 232Lire un fi chier 233Écrire dans un fi chier 234

8 Le système 235

Obtenir la version de Mac OS X 235Obtenir le nom de l’utilisateur courant 237Obtenir les dossiers système 237Contrôler l’ordinateur 238Contrôler le volume sonore 238Obtenir la défi nition de l’écran 239Obtenir la liste des applications actives 239Obtenir la liste des applications installées 240Lancer et quitter une application 241Obtenir l’application de premier plan 242Masquer une application 243Déterminer si une application est lancée 243Obtenir le chemin d’une application 243Obtenir la version d’une application 244

Obtenir l’id d’une application 244Obtenir la liste des disques montés 245

Book_AppleScript.indb VIIIBook_AppleScript.indb VIII 3/09/09 14:23:393/09/09 14:23:39

Page 8: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

IXTable des matières

Monter un disque distant 246Gérer l’imprimante par défaut et les tâches d’impression 248

Exécuter une commande shell 249Obtenir les privilèges administrateur pour une commande 250Exécution d’Apple Script à partir d’un Terminal 251Personnalisation du Terminal 252

9 Préférences Système 255

Affi cher le panneau Apparence des Préférences Système 256Paramétrer l’apparence de l’IHM 257Affi cher l’onglet Bureau des Préférences Système 257Paramétrer le Bureau 257Affi cher l’onglet Économiseur d’écran des Préférences Système 258Lancer l’Économiseur d’écran 259Affi cher le panneau Dock des Préférences Système 259Paramétrer le Dock 259Affi cher les onglets Exposé et Spaces des Préférences Système 260Lancer Exposé 260Paramétrer Exposé 261Lancer Spaces 262Paramétrer Spaces 262Lancer Dashboard 263Affi cher le panneau Réseau des Préférences Système 264Paramétrer le réseau 264Lancer une application au login 265

10 Image Events 267

Changer de format d’image 268Changer de taille d’image 269Changer de mode colorimétrique 270Ajouter un cadre à une image 270Extraire les métadonnées d’une image 271Ressources 273

Book_AppleScript.indb IXBook_AppleScript.indb IX 3/09/09 14:23:403/09/09 14:23:40

Page 9: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

X AppleScript

11 Database Events 275

Créer une base de données 276Tester l’existence d’une base de données 276Ouvrir une base de données 277Stocker des enregistrements 278Créer des champs 278Obtenir des enregistrements 280Modifi er un enregistrement 281Supprimer des enregistrements 281Fermer une base de données 282Ressources 282

Partie III Scripter les applications

12 iApps 283

Utiliser le Carnet d’adresses 283Créer des contacts 285Lire les informations des contacts 287Créer des groupes de contacts 288Créer un plug-in pour le Carnet d’adresses 289Utiliser les calendriers d’iCal 291Créer des calendriers iCal 291Créer des événements iCal 293Créer des tâches iCal 294Défi nir des alarmes iCal 295Planifi er le lancement de scripts avec iCal 296Paramétrer iChat 298Gérer les événements d’iChat 299Utiliser Mail 304Accéder au contenu d’un message 306Accéder à l’expéditeur et aux destinataires d’un message 306Accéder aux pièces jointes 307Gérer les messages 307Envoyer un courrier électronique 308Attacher un fi chier 309

Book_AppleScript.indb XBook_AppleScript.indb X 3/09/09 14:23:413/09/09 14:23:41

Page 10: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

XITable des matières

Vérifi er le courrier 311Obtenir les messages sélectionnés 311Créer un compte Mail 311Obtenir les comptes Mail 312Désactiver un compte Mail 312Déclencher des scripts à l’aide de règles Mail 313Créer des règles Mail 315Utiliser Safari 316Obtenir le code source d’une page web avec Safari 316Obtenir le texte d’une page web avec Safari 318Du JavaScript dans Safari 318Utiliser TextEdit 319Formater un document TextEdit 320Enregistrer un document TextEdit 320Lire le contenu d’un document TextEdit 321Créer un fi lm avec QuickTime 321

13 iLife 323

Utiliser iPhoto 323Créer un album iPhoto 325Importer des images dans iPhoto 326Ajouter des images dans un album iPhoto 327Exporter des images 329Affi cher les photos sélectionnées dans le Finder 330Gérer les informations de géolocalisation dans iPhoto 330Ajouter des commentaires aux images iPhoto 333Ajouter des mots-clés aux images iPhoto 335Lancer un diaporama dans iPhoto 336Utiliser iTunes 337Accéder aux listes de lecture iTunes 338Accéder au morceau en cours d’écoute dans iTunes 339Accéder à la liste iTunes sélectionnée 340Accéder aux morceaux iTunes sélectionnés 341Accéder au fi chier des morceaux iTunes 341Accéder à un CD audio 341Rechercher des morceaux dans iTunes 342

Book_AppleScript.indb XIBook_AppleScript.indb XI 3/09/09 14:23:413/09/09 14:23:41

Page 11: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

XII AppleScript

Écouter les premières secondes 342Renommer des champs iTunes 343Gérer les classements iTunes 343Ressources 344

14 iWork 345

Créer un document Pages 346

Compter grâce à count 347Sauvegarder et exporter vos documents Pages 349Gérer les styles de paragraphe dans Pages 351Insérer des objets dans un document Pages 353Créer un document Keynote 355Démarrer, stopper ou mettre en pause Keynote 357Sauvegarder 357Créer un nouveau tableau Numbers 358Créer une nouvelle feuille dans Numbers 359Donner du style aux tableaux Numbers 360Ressources 362

15 Microsoft Offi ce 363

Créer un document Word 364Ouvrir un document Word 366Enregistrer un document Word 367Changer de document Word actif 368Obtenir la sélection de texte dans Word 368Modifi er la sélection de texte 370Éditer un document Word 371Coller le presse-papiers en tant que texte brut 373Insérer un paragraphe doté d’un style 374Insérer un tableau dans un document Word 375Peupler les cellules d’un tableau Word 376Convertir un tableau Word en texte 377Insérer une image dans un document Word 379Chercher et remplacer du texte dans Word 380Chercher et remplacer des styles 382Utiliser les fonctions lexicographiques de Word 384

Book_AppleScript.indb XIIBook_AppleScript.indb XII 3/09/09 14:23:423/09/09 14:23:42

Page 12: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

XIIITable des matières

Imprimer des documents Word 385Créer un classeur Excel 386Ouvrir un classeur Excel 387Créer une feuille Excel 388Accéder aux données d’une feuille Excel 388Activer une cellule 391Insérer une formule 391Créer un graphique 391Exporter un graphique 394Mise en forme automatique d’une feuille 395Ressources 395

16 Adobe CS 397

Utiliser Acrobat 398Obtenir les métadonnées d’un document Acrobat 399Enregistrer un document Acrobat 399Exporter un document Acrobat 400Modifi er un document PDF 400Ajouter des annotations à un document Acrobat 401Distiller un lot de fi chiers PostScript 403Utiliser Photoshop 405Exporter un document Photoshop 407Manipuler des sélections Photoshop 408Recadrer et retailler un document Photoshop 409Appeler un script Photoshop 410Ajouter un calque texte dans un document Photoshop 410Appliquer fi ltres et styles de calque dans Photoshop 412Utiliser InDesign 415Créer un calque InDesign 416Créer un style de paragraphe InDesign 417Insérer un texte dans un document InDesign 418Importer une image dans un document InDesign 420Habiller une image 422Mettre à jour des textes 424Ressources 426

Book_AppleScript.indb XIIIBook_AppleScript.indb XIII 3/09/09 14:23:433/09/09 14:23:43

Page 13: AppleScript · 2009. 10. 7. · IV AppleScript Constantes texte 53 Délimiteur de texte 53 Variables 55 Propriétés 56 Expressions 57 Instructions 57 Commandes 58 Opérateurs 59

XIV AppleScript

17 Adium, iSight, XPress 427

Utiliser Adium 427Gestion des contacts avec Adium 430Gestion des fenêtres Adium 431Créer des chats et des contacts dans Adium 433Répondre à une conversation dans Adium 435Faire de la vidéosurveillance avec iSight 436Utiliser XPress 438Créer un projet XPress 440Appliquer des changements globaux à un document XPress 441Imprimer un lot de documents 443Contrôler un document XPress 444Convertir un document XPress en EPS 445Importer des images 446Ressources 448

Index 449

Book_AppleScript.indb XIVBook_AppleScript.indb XIV 3/09/09 14:23:443/09/09 14:23:44