Чи можна створити службу в Automator, яка буде працювати без вибраного файлу?


2

При створенні сервісів в автоматизаторі найпопулярніші опції - "Служба отримує вибрані ..." Чи є спосіб створити службу, яка лише працює на поточному відкритому вікні пошуку, не вибравши файл? Причина, чому це було б непогано:

Я маю свої тестові одиниці в дереві каталогів, які дублюють те, що мій вихідний код. Я написав службу, використовуючи автоматизатор, applescript і php, що дозволяє перемикатися між каталогами джерел і тестовими каталогами. В даний час я повинен вибрати файл в каталозі, щоб активувати послугу. Я хотів би мати можливість просто перейти до папки і активувати службу, яка перемикається на відповідний каталог, без першого вибору файлу (Іноді файлів ще немає!)

Редагувати: Після пропозиції robmathers у його коментарі до його відповіді я зараз використовую

tell application "Finder" to set windowTarget to the target of the front Finder window as alias
set posixPath to POSIX path of windowTarget`

який дає мені правильний шлях до шляху вікна пошуку, коли я запускаю службу в Automator.

Тепер проблема полягає в тому, що служба не відображається на панелі "Послуги", а в системних налаштуваннях під ярликами клавіш, коли я створюю нову службу з цими налаштуваннями. Якщо я змінюю існуючу службу, вона недоступна, якщо я не вибрав нічого.

Відповіді:


2

Так, внизу Служба отримує ви знайдете a немає входу опції. Ви можете активувати її з меню служб (у меню програми, тобто Finder → Послуги ).


Як потім передати ім'я папки поточної відкритої папки до скрипта applescript?
DudeOnRock

Є кілька способів. Ви можете спробувати Отримати вибрані елементи пошуку , але це буде працювати, лише якщо ви скористаєтеся переглядом списку або стовпців у Finder, і папка буде обрана (якщо у кореневій папці є вікно Finder, воно не вважається вибраним). Ви також можете використовувати Запитайте про елементи пошуку Дія, яка відкриває діалогове вікно вибору файлу / папки. Нарешті, ви можете використовувати дію Applescript, щоб отримати папку переднього вікна Finder.
robmathers

Дякуємо, ваш коментар допоміг отримати шлях до верхнього вікна, але тепер служба більше не відображається в розділі "Послуги". Дивіться моє відредаговане запитання. У вас є ідея, що може відбуватися?
DudeOnRock

Можливо, він був збережений як робочий процес, а не як служба (рядок заголовка має вказувати на робочий процес або службу), або що файл не входить до папки служби. Щоб перевірити це, утримуйте команду (⌘) і натисніть значок у рядку заголовка, щоб показати, де він збережений. Вона повинна бути ~/Library/Services. Нарешті, перевірте, чи немає в розділі попередніх пунктів клавіатурних скорочень, які ви пропустили. Служби згруповані за категоріями, і оскільки вхідних даних немає, ваш має відображатися в загальній категорії.
robmathers

Це послуга, і вона знаходиться в моїй папці Служби (яку я перетворив на символічну посилання, чи може це бути причиною? Інші послуги, які я створив, функціонують належним чином).
DudeOnRock
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.