У меня работает следующая версия. Я оставил в командах "говорить". Использование команд say — хороший метод отладки.
on open droppedItems
say "on open"
tell application "Finder"
set inputFolder to (container of first item of droppedItems) as Unicode text
set convertedFolderPath to inputFolder & "converted:"
if (exists (folder convertedFolderPath)) then
say "converted folder exists"
set outputFolder to (inputFolder & "/converted/") as text
else
say "converted folder does not exist"
make new folder at inputFolder with properties {name:"converted"}
set outputFolder to the result as text
end if
end tell
say "end open"
end open
---Редактировать---
О, это помечено тегом "Automator". Если ваш код находится в действии Automator «Запустить AppleScript», то он не должен иметь «при открытии dropItems». В Automator скрипт должен выглядеть следующим образом:
on run {input, parameters}
-- Enter your scripting here (without the "on open droppedItems" part)
return input
end run
---Редактировать 2---
ХОРОШО. Я понимаю, что путь был частью HFS и частью POSIX. Забавно то, что на моем компьютере он работал как для создания новой папки, так и для обнаружения того, что папка уже существует, но вот мой код, который исправлен так, чтобы иметь путь HFS без какой-либо части, являющейся POSIX-тьфу:
on open droppedItems
say "on open"
tell application "Finder"
set inputFolder to (container of first item of droppedItems) as Unicode text
set convertedFolderPath to inputFolder & "converted:" ---- changed this ----
if (exists (folder convertedFolderPath)) then
say "converted folder exists"
set outputFolder to convertedFolderPath
else
say "converted folder does not exist"
make new folder at inputFolder with properties {name:"converted"}
set outputFolder to the result as text
say "created folder"
end if
end tell
say "end open"
end open
Пути для Mac
person
Kaydell
schedule
14.09.2013