AppleScript для передачи перетаскиваемого документа в другое приложение - PullRequest
0 голосов
/ 29 октября 2019

Благодаря помощи, полученной на этих прекрасных страницах , мой Mac имеет небольшой AppleScript, чтобы открыть новый сеанс Adobe Distiller.

do shell script "open -n -a " & quoted form of "Acrobat Distiller"

Новый вопрос с небольшим улучшением. Может ли быть так, что если .ps перетаскивается (или даже перетаскивается несколько файлов) в .app, созданный этим .scpt, новый сеанс Distiller открывается вместе с этим документом (или этими несколькими документами)?

Спасибо.

1 Ответ

1 голос
/ 29 октября 2019

Сохраните следующий скрипт как приложение. Если вы запустите приложение, оно позволит вам выбрать файлы для открытия в новом экземпляре;если вы уроните на него файлы, он откроет их все в новом экземпляре:

on run
    set filesToOpen to choose file with multiple selections allowed
    set fileListString to createUnixFileString(filesToOpen)
    makeNewInstanceWithFiles(fileListString)
end run

on open droppedFiles
    set fileListString to createUnixFileString(droppedFiles)
    makeNewInstanceWithFiles(fileListString)
end open

on createUnixFileString(aList)
    set fileString to ""
    repeat with thisItem in aList
        set fileString to fileString & " " & quoted form of (POSIX path of thisItem)
    end repeat
    return fileString
end createUnixFileString

on makeNewInstanceWithFiles(f)
    do shell script "open -n -a " & quoted form of "Acrobat Distiller" & f
end makeNewInstanceWithFiles

Если вы хотите, чтобы каждый файл открывался в отдельном экземпляре, вызовите makeNewInstanceWithFiles для каждого файла (убедитесь, что вы получилипуть posix и включите пробел в качестве разделителя) вместо вызова обработчика createUnixFileString.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...