Reputation: 41
This code for an applet creates a specific folder structure inside of either a single selected folder or whatever the open folder is in Finder when the applet is clicked. It breaks down if multiple folders are selected. Is there a way to get this script to work when multiple folders are selected?
property archivesFolder : "Archives"
property imagesFolder : "Images"
property proofreadFolder : "Proofreading"
property proofFolder : "Proofs"
property sourceFolder : "Source"
try
tell application "Finder" to set theLocation to the selection as alias
on error
tell application "Finder" to set theLocation to (folder of the front window as alias)
end try
tell application "Finder"
if not (exists folder archivesFolder of theLocation) then
make new folder at theLocation with properties {name:archivesFolder}
end if
if not (exists folder imagesFolder of theLocation) then
make new folder at theLocation with properties {name:imagesFolder}
end if
if not (exists folder proofreadFolder of theLocation) then
make new folder at theLocation with properties {name:proofreadFolder}
end if
if not (exists folder proofFolder of theLocation) then
make new folder at theLocation with properties {name:proofFolder}
end if
if not (exists folder sourceFolder of theLocation) then
make new folder at theLocation with properties {name:sourceFolder}
end if
end tell
Upvotes: 0
Views: 1324
Reputation: 11238
Try this:
property folderNames : {"Archives", "Images", "Proofreading", "Proofs", "Source"}
tell application "Finder"
set selectedFolders to selection
if (count of selectedFolders) > 0 then
repeat with aFolder in selectedFolders
set theLocation to aFolder as string
repeat with newFolder in folderNames
try
make new folder at theLocation with properties {name:"" & newFolder & ""}
end try
end repeat
end repeat
else
set theLocation to (target of front window) as string
repeat with newFolder in folderNames
try
make new folder at theLocation with properties {name:"" & newFolder & ""}
end try
end repeat
end if
end tell
Upvotes: 2