Bonjour !
Je poste un message car je suis actuellement sur mon premier AppleScript et je joue un peu avec en apprenant à m'en servir.
Bien sûr, à force d'en rajouter, ça ne marche plus, donc j'aurais voulu avoir des avis sur mon script (par exemple des corrections, simplifications, etc.)
Ce script me serait utile dans le but de copier toute nouvelle musique (venant d'un CD, du net…
vers mon disque externe, puis de l'ajouter dans iTunes dans une playlist renseignant son origine (histoire d'avoir une playlist avec tous mes CDs à moi, et une autre playlist avec des albums venant du net.)
Mon script donc surveille un dossier
puis lorsqu'on glisse dessus un dossier contenant de la musique
1- il va me demander où je veux le copier (dossier "Albums" ou "Singles") selon ce que j'ai encodé comme CD
2- il va le copier sur mon disque externe qui contient toute ma musique (selon ce que je choisis précédemment)
3- ensuite il efface le dossier source de mon disque dur interne
4- puis je choisis entre : CD, musique gratuite venant du net qualité CD, musique gratuite venant du net qualité mp3
5- il change le label du nouveau dossier selon le type de l'album que j'ai choisis à l'étape précédente
6- enfin il ajoute sur iTunes le nouveau dossier, en les ajoutant aussi à la playlist qui correspond au label que je lui ai donné précédemment (un des trois cités au dessus)
Mon code ne me pose a priori plus problème qu'à un seul endroit : pour ajouter les morceaux à iTunes.
J'ai bien créé les playlists sous iTunes, et je les ai même effacées puis recréées pour être sûr.
J'ai aussi essayé sans ajouter de playlist en destination, et iTunes ne me les ajoute pas non plus à ma bibliothèque principale, ce qui me laisse penser que j'ai simplement fait une erreur de syntaxe ou dans mon raisonnement.
Voici mon code :
(Mon disque externe s'appelle Saturnus.)
Par ailleurs, j'ai les actions de dossier qui se désactivent souvent quand je les modifie, est-ce qu'une droplet est plus sûre à utiliser qu'un dossier ?
Merci d'avance à ceux qui me liront !
Je poste un message car je suis actuellement sur mon premier AppleScript et je joue un peu avec en apprenant à m'en servir.
Bien sûr, à force d'en rajouter, ça ne marche plus, donc j'aurais voulu avoir des avis sur mon script (par exemple des corrections, simplifications, etc.)
Ce script me serait utile dans le but de copier toute nouvelle musique (venant d'un CD, du net…
Mon script donc surveille un dossier
puis lorsqu'on glisse dessus un dossier contenant de la musique
1- il va me demander où je veux le copier (dossier "Albums" ou "Singles") selon ce que j'ai encodé comme CD
2- il va le copier sur mon disque externe qui contient toute ma musique (selon ce que je choisis précédemment)
3- ensuite il efface le dossier source de mon disque dur interne
4- puis je choisis entre : CD, musique gratuite venant du net qualité CD, musique gratuite venant du net qualité mp3
5- il change le label du nouveau dossier selon le type de l'album que j'ai choisis à l'étape précédente
6- enfin il ajoute sur iTunes le nouveau dossier, en les ajoutant aussi à la playlist qui correspond au label que je lui ai donné précédemment (un des trois cités au dessus)
Mon code ne me pose a priori plus problème qu'à un seul endroit : pour ajouter les morceaux à iTunes.
J'ai bien créé les playlists sous iTunes, et je les ai même effacées puis recréées pour être sûr.
J'ai aussi essayé sans ajouter de playlist en destination, et iTunes ne me les ajoute pas non plus à ma bibliothèque principale, ce qui me laisse penser que j'ai simplement fait une erreur de syntaxe ou dans mon raisonnement.
Voici mon code :
(Mon disque externe s'appelle Saturnus.)
Bloc de code:
on adding folder items to this_folder after receiving added_items
repeat with i from 1 to number of items in added_items
set added_item to item i of added_items
tell application "Finder"
set la_destination to display dialog "Destination for \"" & added_item & "\" ?" buttons {"Albums", "Singles"} default button 1
if button returned of la_destination is "Albums" then
set ma_destination to "Saturnus:Musique:Media"
else
if button returned of la_destination is "Singles" then
set ma_destination to "Saturnus:Musique:Media:Singles"
end if
end if
try
set moved_item to duplicate added_item to folder ma_destination
on error
display dialog ("Copying files to " & ma_destination & " has failed")
end try
try
move added_item to trash
on error
display dialog ("Moving files to trash has failed")
end try
try
set le_type to display dialog "Label for \"" & moved_item & "\" ?" buttons {"CDs", "Lossless", "Lossy"} default button 1
on error
display dialog ("Choosing label has failed")
end try
try
if button returned of le_type is "CDs" then
set label index of moved_item to 5
else if button returned of le_type is "Lossless" then
set label index of moved_item to 6
else
if button returned of le_type is "Lossy" then
set label index of moved_item to 7
end if
end if
on error
display dialog ("Setting label has failed")
end try
end tell
tell application "iTunes"
activate
delay 0.5
try
add moved_item to playlist le_type
on error
display dialog ("Adding " & moved_item & " files to iTunes has failed")
end try
end tell
end repeat
end adding folder items to
Par ailleurs, j'ai les actions de dossier qui se désactivent souvent quand je les modifie, est-ce qu'une droplet est plus sûre à utiliser qu'un dossier ?
Merci d'avance à ceux qui me liront !