Я намагаюся створити робочий процес Автоматизатора (який буде збережено як Сервіс, так що я можу отримати доступ до нього з контекстних меню та викликати його за допомогою комбінації клавіш), який буде функціонувати так само, як вбудований в Finder "Показати пакет Команда "Зміст", але вона додатково сприймає псевдонім пакета як вхідний. Послуга задовольнить наступне:
Він буде доступний лише тоді, коли вибір Finder складається з пакета або псевдоніма пакета.
Замість того, щоб показувати вміст самого каталогу пакунків, як це робить вбудована команда, Сервіс покаже вміст каталогу "Зміст" (якщо він існує), що знаходиться безпосередньо в каталозі пакунків.
Якщо вибір Finder являє собою пакет або псевдонім на робочому столі, каталог Contents слід відкрити в новому вікні Finder. В іншому випадку каталог Вміст слід відкрити у вікні Finder, що містить вибір.
Мій підхід полягав у тому, щоб сценарій спочатку визначив, чи є файл псевдонімом, і якщо він є, сказати сценарію, щоб він відображав вміст оригіналу. Якщо файл не є псевдонімом, я хотів би сказати сценарію просто показати вміст введеного тексту.
Виключаючи можливість псевдоніму як введення та припускаючи, що вхідний пакет обраний у вікні Finder, я можу успішно написати сценарій, який показує вміст папки вмісту пакета в тому ж вікні:
on run {input, parameters}
set my_output to {}
repeat with oneItem in input
tell application "Finder" to set target of window 1 to ((oneItem as text) & "Contents")
end repeat
return input
end run
Коли я намагаюся створити схему "якщо ... то ... інше", я не вдається.
Я використовую останні версії всього відповідного програмного забезпечення.