[DEV][AppleScript] mise en place d'une boucle
bonjour,
J'ai utilisé le tuto à la découverte d'Apple script qui est très bien fait mais j'ai eu quelques soucis à le mettre en place j'ai enfin réussit...
Mon script permet donc de sélectionner un morceau dans Itunes est de modifier le nom d'une piste. Pour par exemple retirer le numéro des piste. Jusqu'ici tout fonctionne bien se que je voudrai faire maintenant c'est pouvoir appliquer cela à plusieurs piste sélectionner mais je ne trouve pas.
J'ai essayé d'utiliser
Code:
1 2 3 4
| repeat with un morceau in morceaux
tell unmorceau
...
end repeat |
mais cela ne fonctionne pas
si quelqu'un pourrai m'indiquer comment l'utiliser ça sera sympa merci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
tell application "iTunes"
set morceaux to selection
if morceaux is {} then
display dialog "vous devez sélectionner des morceaux!" with icon caution buttons ("ok")
return
end if
set champs to {"Nom", "Artiste", "Album"}
set champ to (choose from list champs with prompt "quel champ editer ?" default items "Nom") as string
if champ is "false" then
display dialog "Abandon du script!" buttons {"ok"} with icon note giving up after 15
return
end if
set choix to display dialog "Combien de caractères supprimer dans \"" & champ & "\"? " default answer "2" buttons {"Au début", "A la fin", "Annuler"}
--nb de caractère a couper
set longueur to text returned of choix
-- début ou en fin
set ou to button returned of choix
repeat
try
set longueur to (longueur as integer) + 1
exit repeat
on error
display dialog "Vous devez entrer une valeur numérique !" with icon caution buttons {"ok"}
set choix to display dialog "Combien de caractères supprimer ?" default answer "2" buttons {"ok"}
set longueur to text returned of choix
end try
end repeat
if ou is "Au début" then
set idx1 to longueur
set idx2 to -1
else
set idx1 to 1
set idx2 to -longueur
end if
set morceau to item 1 of morceaux
if champ is item 1 of champs then
try
set name of selection to text idx1 thru idx2 of (get name of morceau)
log name
end try
else if champ is item 2 of champs then
try
set artist of selection to text idx1 thru idx2 of (get artist of morceau)
end try
else
try
set album of selection to text idx1 thru idx2 of (get album of morceau)
end try
end if
end tell |