Fondamentaux
La programmation AppleScript en exemples.

Utilisation de "choose file".

Imaginons qu'on veuille demander à l'utilisateur de choisir le fichier sur lequel il veut agir. Disons qu'on veut nettoyer un fichier HTML de ces tabulations et de ces retour-chariots. On va donc demander à l'utilisateur de choisir un fichier sur le disque et ensuite la recherche s'effectuera sur ce fichier.

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

Le Script :

set mon_alias to choose file with prompt "Choisissez un document HTML" default location ((path to desktop folder) as alias) of type {"TEXT", "EPSF", "XLS8"} without multiple selections allowed and invisibles


tell application "BBEdit"
activate
open mon_alias
replace return using "" searching in text 1 of text window 1 options {search mode:literal, starting at top:true, wrap around:false, reverse:false, case sensitive:false, match words:false, extend selection:false}
replace return using " " searching in text 1 of text window 1 options {search mode:literal, starting at top:true, wrap around:false, reverse:false, case sensitive:false, match words:false, extend selection:false}
end tell

Explications :
On utilise la fonction "choose file" qui nous permet de choisir un fichier présent sur le disque. Le résultat est un alias mémorisé dans "mon_alias". Ensuite, le document choisi est ouvert depuis BBEdit de manière classique.

Les paramètres de "choose file" :
• "with prompt" : permet d'ajouter un texte dans la fenêtre qui s'ouvre
• "default location" : permet de choisir un dossier de départ, ici le dossier "Desktop" de l'utilisateur
• "of type {"xxxx", "yyyy",…} : permet de griser tous les fichiers qui ne sont pas d'un des types de la liste.
• "multiple selections allowed" : permet de choisir ou non plus qu'un seul fichier
• "invisibles" : permet de voir ou non les fichiers commençant par un point comme ".Trash"



Utilisation de "choose file with multiple selections allowed".
Avec l'option "with multiple selections allowed", nous pouvons sélectionner plusieurs fichiers. À ce moment, le résultat renvoyé par "choose file" n'est plus un Alias mais une liste d'Alias. Nous ouvrirons les fichiers un par un dans BBEdit grâce à une fonction Repeat.


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


Le Script :
set mon_alias to choose file with prompt "Choisissez un document HTML" default location ((path to desktop folder) as alias) of type {"TEXT", "EPSF", "XLS8"} with multiple selections allowed without invisibles


tell application "BBEdit"
activate
repeat with i in mon_alias
open i
replace return using "" searching in text 1 of text window 1 options {search mode:literal, starting at top:true, wrap around:false, reverse:false, case sensitive:false, match words:false, extend selection:false}
replace return using " " searching in text 1 of text window 1 options {search mode:literal, starting at top:true, wrap around:false, reverse:false, case sensitive:false, match words:false, extend selection:false}
end repeat
end tell


Explication :
Pour ouvrir chaque Alias de la liste, on utilise une fonction "Repeat" avec la particularité que la variable (le "i") est incrémentée dans la liste. On peut donc utiliser "open i" pour ouvrir le fichier désigné par l'Alias.

Astuce :
Si nous n'avons choisi qu'un seul fichier, le résultat de la fonction "choose file" est une liste contenant un seul Alias.