Tengo un AppleScript script para Música que procesa las pistas seleccionadas y modifica el nombre de la pista.
Básicamente, funciona.
Si selecciono un elemento, funciona sin problemas.
Si selecciono varios elementos, se modifica correctamente el primero artículo. A veces se detendrá ahí; otras veces, procesará varios elementos más. En raras ocasiones, procesará toda la lista de pistas seleccionadas.
He puesto un retraso para ver si eso ayudaba, pero no lo hace.
¿Alguna idea de por qué puede ocurrir esto?
Aquí está mi código:
tell application "Music"
set selectedTracks to selection
if selectedTracks is {} then return
if (get class of (item 1 of selectedTracks)) is not file track then return
repeat with i from 1 to (length of selectedTracks)
set thisTrack to item i of selectedTracks
tell thisTrack to set {trackName} to {get name}
set my text item delimiters to {"/"}
set theResults to text items in trackName
set newTrackName to item 2 of theResults
set newArtist to item 1 of theResults
set newTrackName to my removeLeadingAndTrailingSpacesFrom(newTrackName)
set newArtist to my removeLeadingAndTrailingSpacesFrom(newArtist)
set name of thisTrack to newTrackName
set artist of thisTrack to newArtist
delay 1
end repeat
end tell
on removeLeadingAndTrailingSpacesFrom(sourceString)
repeat while character 1 of sourceString = " "
set sourceString to text 2 thru end of sourceString
end repeat
repeat while last character of sourceString = " "
set endIndex to (length of sourceString) - 1
set sourceString to text 1 thru endIndex of sourceString
end repeat
return sourceString
end removeLeadingAndTrailingSpacesFrom