Automator: размер значков — с клавиатуры

Основным средством регулировки размера пиктограмм в окне Finder до недавних пор был ползунок в инспекторе настройки режима отображения файлов. Только в «Снежном барсе» аналогичный регулятор появился в строке состояния «Файндера». Однако клавиатурных команд для быстрого увеличения и уменьшения значков до сих пор не появилось. Эту небольшую оплошность со стороны разработчиков Apple можно запросто решить с помощью Automator и AppleScript.

Меню служб Finder.
Вот так будет выглядеть меню служб Finder после того, как вы выполните все рекомендации.

Сразу объясню, зачем нам понадобился еще и AppleScript. Все просто — в наборе команд «Автоматора» не нашлось такой, которая отвечает за настройку размера иконок в выбранном окне Finder. В самом же AppleScript (который, кстати является основой всех команд Automator) есть средства, при помощи которых можно обратиться к файловому менеджеру Mac OS X и установить в активном окне конкретный размер значков.

Нам понадобятся две команды: одна — для увеличения, другая — для уменьшения значков. Поскольку они практически идентичны по алгоритму, рассмотрим подробно первую, а вторую я приведу уже в готовом виде, без дополнительных пояснений.

Создание служб

Сначала следует создать новую службу Automator — исключительно для Finder и без приема входящих данных. Одним-единственным действием в этой службе должно быть Запустить AppleScript (Run AppleScript), в тело которого нужно будет ввести небольшой код.

Итак, каков алгоритм обращения к «Файндеру» и увеличения размера значков. Прежде всего нужно соблюсти два условия. Во-первых, размер значков не должен быть больше 512×512 точек — чтобы не было ошибки выполнения сценария. Во-вторых, иконки должны отображаться в режиме… иконок 🙂 (icon view) — в других режимах числовым значением размер значков задать не получится.

А дальше все просто. Сперва получаем ссылку на активное окно «Файндера», в котором следует увеличить значки файлов и папок. После этого записываем в переменную текущее значение размера пиктограмм. А дальше — при соблюдении вышеуказанных условий! — увеличиваем переменную размера иконок на заданную величину и задаем полученное значение в свойства отображения файлов окна Finder. Если же хоть одно условие не соблюдается, ничего не делаем — только воспроизводим стандартный звуковой сигнал Mac OS X, который даст нам понять, что либо значки уже предельно велики, либо в «Файндере» выбран другой режим отображения файлов и папок.

Все вышесказанное записывается в такой компактный сценарий:

on run
set incrementValue to 16 —Значение шага увеличения размера иконок
set maxSize to 512 —Максимально допустимое значение размера иконок
tell application «Finder»
set currentWindow to window 1 —так мы обращаемся к активному окну Finder
set iconSize to icon size of icon view options of currentWindow —берем текущее значение размера иконок
if (current view of currentWindow is icon view) and (iconSizemaxSizeincrementValue) then
set iconSize to iconSize + incrementValue
set icon size of icon view options of currentWindow to iconSize
else
beep —простая сигнализация на тот случай, когда одно из вышеуказанных условий не соблюденоend if
end tell
end run

Аналогично строится и алгоритм уменьшения значков, с той лишь разницей, что вместо максимального размера иконок нам понадобится их минимальный размер — 16×16 точек, меньше которого значение задавать нельзя. Сценарий этого алгоритма выглядит так:

on run
set decrementValue to 16 —Значение шага уменьшения размера иконок
set minSize to 16 —Миниально допустимое значение размера иконок
tell application «Finder»
set currentWindow to window 1 —так мы обращаемся к активному окну Finder
set iconSize to icon size of icon view options of currentWindow —берем текущее значение размера иконок
if (current view of currentWindow is icon view) and (iconSizedecrementValue > minSize) then
set iconSize to iconSizedecrementValue
set icon size of icon view options of currentWindow to iconSize
else
beep —простая сигнализация на тот случай, когда одно из вышеуказанных условий не соблюденоend if
end tell
end run

Служба увеличения размера значков.
Служба уменьшения размера значков.
Примерно так должны выглядеть в «Автоматоре» службы с указанными сценариями AppleScript: соответственно для увеличения и уменьшения размера пиктограмм в окне Finder.

Обе службы сохраните, задав им названия — скажем, Увеличить значки и Уменьшить значки, соответственно.

Назначение клавиатурных сокращений

Назначение службам клавиатурных сокращений.
Через настройки клавиатуры своим можно назначить желаемые клавиатурные сокращения. Главное, чтобы требуемое сочетание клавиш уже не было занято другими командами.

После того как вы сохранили службы, в главном меню Finder, в подменю Службы (Services) выберите пункт Настройки служб (Services Preferences). Откроется окно настройки клавиатуры. Здесь выберите категорию Службы (Services), и в списке справа, в разделе Основные (General), найдите только что созданные службы. Для пункта Увеличить значки выберите клавиатурное сокращение [command]+[=], а для Уменьшить значки[command]+[-].

Все. Откройте в «Файндере» любую папку и опробуйте клавиатурные сокращения. Следует только предупредить, что первый вызов любой из служб происходит с заметной задержкой — повторно созданные вами команды будут выполняться более расторопно. Вопросы?


Редакция пока не поставила оценку
1 Star2 Stars3 Stars4 Stars5 Stars6 Stars7 Stars8 Stars9 Stars10 Stars (проголосовали 2, рейтинг: 3,00)
Загрузка...
Рейтинг читателей:3,0



Автор:
Маководом Саша стал семь лет назад, и с тех пор ни разу об этом не пожалел. Одно из его хобби — копаться в Мак-программах и искать простые решения повседневных задач маковода. О самом интересном он регулярно рассказывает на страницах «ПростоМАКа».

Комментарии

  1. Fil Dunsky говорит:

    Большое спасибо, разобрался.

  2. a43 говорит:

    Все так хорошо и подробно расписано, чувствую себя полным ламером, не могу найти как включить исключительно для Finder (у меня есть только пункт any application и other, выбрав который найти файндер я не могу) и как потом Запустить AppleScript (Run AppleScript) тоже непонятно.
    Хьюстон, хелп!

  3. Athirn Eleidan говорит:

    «Файндер» находится в папке /System/Library/CoreServices. Но можно воспользоваться небольшой хитростью — вы сначала выбирайте Finder во втором выпадающем списке, а потом — no input в первом. Тогда вам не придется забираться вглубь системных файлов.

    А действие Run AppleScript находится в категории Utilities — пользуйтесь поисковой строкой над коллекцией действий «Автоматора».

  4. Athirn Eleidan говорит:

    На здоровье, приходите еще 🙂

  5. Алексей говорит:

    Эту хитрость возможно реализовать только в версиях 10.6.*?

  6. Athirn Eleidan говорит:

    Нет, в 10.5 это тоже работает. Разница заключается лишь в том, что созданные алгоритмы нужно сохранять, как плагины для Finder (Файл > Сохранить как плагин, в диалоге задаете имя и в списке выбираете пункт Finder). Ваши команды появятся в контекстном меню Дополнительно > Automator. Единственное, чего не могу точно сказать, будут ли работать клавиатурные сокращения, которые вы назначите в системных настройках.

  7. Алексей говорит:

    Ваш скрипт по какой-то причине не выполнялся, но нашелся немного иной метод.
    http://mymans.org/2007/12/13/307

    Сочетания на плагины вешаются, но по нажатию комбинации ничего не происходит.
    http://img526.imageshack.us/img526/9613/scre.jpg

    Кажется все-таки пора переходить на барса. 😉

    Спасибо.

Оставьте комментарий к Fil Dunsky Отменить комментарий

© 2011 Программы для Mac OS, iPhone и iPad