Débuter en AppleScript
La programmation AppleScript en exemples.

citrons
Les listes : comment les créer.
Les listes sont très pratiques pour stocker de l'information facilement et pouvoir y accéder ultérieurement. Pour bien maitriser le maniement des listes est impératif de savoir comment on les crée, comment on les remplit, comment on y accéde, comment on les transforme.

Exemple 1 : Récupérez l'AppleScript ici.

Le Script :


set ma_liste to {}
set ma_liste to {"b"}



Explications :
Il y a plusieurs façons de créer une liste. On pourra dire que nous venons de voir les deux plus simple. Dans le premier cas, on crée une liste vide. Dans le second cas, on affecte une liste à une variable.
Une liste est un contenant qui commence et termine par des guillements. Dans ce contenant, on pourra trouver toutes sortes de variable ou constantes y compris d'autres listes. on pourra avoir une liste de listes. On omme on l'a déjà vu dans la section Débutant.



Les listes : comment les modifier.
Maintenant qu'on sait comment les créer, il faut savoir comment les remplir ou les complèter.

Exemple 2 : Récupérez l'AppleScript ici.

Le Script :

set ma_liste to {}
set ma_liste to ma_liste & "b"
set
ma_liste to ma_liste & "d"
set
ma_liste to ma_liste & "d"
log ma_liste

set end of
ma_liste to "e"
log ma_liste

set beginning of
ma_liste to "a"
log ma_liste

set
3rd item of ma_liste to "c"
log ma_liste

set
ma_liste to ma_liste & {"f", "g", "h", "i", "j"}
log
ma_liste


Explications :
Dans la première partie de ce deuxième script, on crée une liste vide et on y ajoute trois valeurs. Chaque nouvel élément est ajouté à ceux existant. La liste finale obtenue est constituée de 3 éléments "b", "d" et "d". C'est le symbole "éperluette" "&"qui permet cette opération.

Dans les deuxiéme et troisième partie, on veut qu'on peut choisir l'ajouter un élément en début ou en fin de liste.L'ajout en tête de liste par l'instruction "
beginning of" va décaler les élements, le premier élément devient le deuxième et ainsi de suite. L'ajout en fin de liste par l'instruction "end of" est équivalente à l'utilisation de l'éperluette "&".

En quatrième partie, on veut qu'on peut modifier un élément d'une liste. Il suffit de connaitre sa position dans la liste. Chaque élément est un "
item" et on compte les "item" en commençant à 1. Si on veut modifier le troisième "item" il suffit de spécifier la valeur de la n-ième valeur "3rd item of". Attention, il ne s'agit par d'un ajout mais bien d'une modification.

Enfin, on peut aussi ajouter une liste à une liste pour former une nouvelle liste.



Les listes : comment y accéder, comment les utiliser.
Maintenant qu'on sait comment les créer, il faut savoir comment les remplir ou les complèter.

Exemple 3 : Récupérez l'AppleScript ici.

Le Script :

set ma_liste to {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j"}

set
longueur to length of ma_liste
set
monbre_d_item to count of ma_liste
log
longueur
log
monbre_d_item

set
quatrieme to 4th item of ma_liste
log
quatrieme

set
premier to first item of ma_liste
set
dernier to last item of ma_liste
log
premier
log
dernier

set
interval to items 3 thru 7 of ma_liste
log
interval


set
l_inverse to reverse of ma_liste
log
l_inverse

set
sauf_le_premier to rest of ma_liste
log
sauf_le_premier

set
sauf_le_dernier to reverse of rest of reverse of ma_liste
log
sauf_le_dernier

set
text item delimiters to ", "
set
ma_liste to ma_liste as string
display dialog
ma_liste



Explications :
Tout d'abord, il est essentiel de connaitre le nombre d'élément dans la liste. Pour cela, il existe deux méthodes "length of" ou "count of". Le nombre obtenu est un entier.

Il est possible d'accéder à un élément de la liste en connaissant sa position dans la liste. Dans l'exemple 2, on a vu comment modifier la valeur du n-ième élément. De la même façon, on peut "lire" la valeur du n-ième élément de la liste grâce à "
Xth item of". La valeur du x devra être comprise entre 1 et "length of".

Il est également possible d'accéder aux premier et dernier éléments grâce à des instructions dédiées "
first item of" et "last item of". Ceci est totalement équivalent à ce qu'on vient de voir précédement. Il n'est pas obligatoire d'utiliser "last item of" quand on veut accéder au dernier élément.

Dans la cinquième partie du script, on voit qu'on peut extraire une partie de la liste en spécifiant deux positions à l'intérieur de la liste grâce à "
items X thru Y of".

La sixième partie nous montre une instruction très pratique. "
reverse of" permet d'inverser une liste. Le premier devient le dernier et ainsi de suite.

Autre instruction très utile, "
rest of" permet de supprimer le premier élément d'une liste.

Dans la huitième partie de ce script, une combinaison de "
reverse of" et de "rest of" permet de supprimer le dernier élément d'une liste. Dans cette exemple, pour supprimer le dernier élément, on inverse une liste, on supprime le premier (qui était le dernier avant l'inversion) et on inverse à nouveau la liste.

Enfin, dernière opération utile à effectuer sur une liste, le transtypage. Il est possible de tansformer une liste en une chaîne de caractères. Dans notre exemple, on a choisit de spécifier le délimiteur de caractère "
text item delimiters" pour qu'il soit égale à virgule-espace. Ainsi, la chaîne de caractère finale ressemblera à une liste. Ceci est purement esthétique. Le transtypage est réalisé grâce à "as string".
on peut aussi ajouter une liste à une liste pour former une nouvelle liste.