Chercher-remplacer automatisé. Imaginons qu'on veuille réduire la taille d'un fichier .HTML en supprimant les caractères inutiles tels que les espaces, les tabulations et les retours chariots. Il suffit d'ouvrir le document avec BBEdit, sélectionner "Rechercher ", etc. On devra le faire trois fois alors qu'AppleScript peut le faire pour vous en un clic.
Exemple 1 : téléchargez ici le fichier exemple et récupérez le script.
Le Script : tell application "BBEdit"
activate
replace "\t" using "" searching in text 1of 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 1of 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 " " using "" searching in text 1of 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 peut obtenir le même résultat en choisissant "Start recording" dans BBEdit.) En français : on demande à BBedit de se mettre au premier plan (activate) et d'exécuter un remplacement (replace) de la chaîne de caractère "espace" en utilisant (using) une chaîne de caractère vide. Et ce, trois fois.
Astuces : le retour chariot s'écrit "return" (sans les guillemets)
la tabulation se tape "\t". Lorsqu'on enregistre le script, "\t" se transforme automatiquement en une vraie tabulation dans le programme.
Une Droplet. Imaginons qu'on veuille exécuter le chercher-remplacer décrit ci-dessous sur 10 fichiers sans avoir à les ouvrir un par un, exécuter le script, les enregistrer et les refermer. On pourra créer une droplet (une application sur laquelle on glisse & dépose des fichiers) qui ouvrira les 10 fichiers, excécutera le script 10 fois.
Exemple 2 : téléchargez ici 2 fichiers exemples (et dupliquez les 5 fois chacun) et récupérez le script.
Le Script : on open (liste_des_fichiers) repeat with le_fichier_a_nettoyerinliste_des_fichiers tell application "BBEdit"
activate
open le_fichier_a_nettoyer
replace "\t" using "" searching in text 1of 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 1of 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 " " using "" searching in text 1of 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}
save text window 1
close text window 1
end tell
end repeat
end open Explications : En français : la fonction "On open (nom_de_variable)" va stocker sous forme de liste les alias de chacun des fichiers qu'on aura glissé. Grâce à la fonction "repeat with une_variable_quelconque in une_liste", on va prendre les alias des fichiers glissés, les uns après les autres et exécuter le reste du script.
Astuces : un alias est un pointeur vers un fichier existant. C'est le chemin d'accès au fichier.
la fonction "On open"ne peut être utilisée qu'avec des scripts enregistrés sous forme d'applications.
cet exemple fonctionne avec un nombre de fichier compris entre 1 et beaucoup.