Я начинаю соваться с Applescript, и я смотрю на создание нескольких сценариев для управления окнами. Общая задача, которая им понадобится, - получить текущий размер экрана.Могу ли я поместить общий код приложения в отдельный файл и загрузить его в различные скрипты?
Я создал подпрограмму screen_size, которая, кажется, работает, и я хочу иметь возможность поделиться ею со всеми моими сценариями. Однако я не могу понять, как это можно сделать в отдельном файле, который я могу загрузить в других моих сценариях. Я попытался создать отдельный файл screen_size.scpt и использовать load script "screen_size.scpt"
, но я получаю сообщение об ошибке «can not make» screen_size.scpt «в файл типа».
Должен быть способ сделать это, но я не смог найти что-либо в Интернете о том, как это сделать.
EDIT:
POSIX материал предложил не работает для меня. Я могу создать объект файла, но он отказывается конвертировать в псевдоним, заявив, что не может найти файл (похоже, что файл POSIX остается относительным, а не полностью расширяется).
я нашел предложение в Интернете, чтобы использовать Finder, и получил следующий работаю, чтобы получить псевдоним:
tell application "Finder"
set _myPath to container of (path to me) as text
end tell
set _loadPath to (_myPath & "screen_size.scpt")
set _loadAlias to alias _loadPath
Однако следующая строка завершается с ошибкой синтаксиса, утверждая, что _loadAlias не является переменной :
property _ScreenSize : load script _loadAlias
Каждый вариации этого я пытался (делать псевдоним в вызове нагрузки и т.д.) терпит неудачу, всегда требуя переменной не существует, хотя я знаю, что это время устанавливается и работает, как я могу отобразите его. Что происходит? Почему он утверждает, что переменная не существует, когда она, очевидно, делает?
может быть «pathtoscript» быть относительным (так, просто имя скрипта, так как оно находится в том же каталоге)? – Herms
Я попробовал это, используя только имя файла и получив синтаксическую ошибку: 'File alias screen_size.scpt из <
У меня есть люди, которые ежедневно используют мои библиотеки, поэтому я сначала гарантирую, что библиотека здесь, прежде чем звонить , Предположим, у меня есть библиотека «Lib.Excel.app» (сохранить как неприменимое приложение с Smile Smile). В начале сценария, который использует его, я «нагрузка» библиотека, используя этот код:
Тогда, когда я должен использовать функцию из Lib, я просто называю это так:
источник
2013-04-26 12:57:56 Zitoun
Вы можете загрузить сценарий в переменной, но сначала вы должны объявить его.
источник
2013-06-13 13:49:19