Недавно у меня наконец-то дошли руки оформить в USB-карман, вытащенный из моего MBP 13″, 500 гигабайтный жесткий диск, оставшийся после апгрейда. На этот шаг меня подтолкнула нехватка места на SSD, с которой рано или поздно сталкиваются все пользователи накопителей менее 512 ГБ (у меня всего лишь 120 ГБ). Отбросив в сторону неудобство лишних проводов и таскания еще одной коробочки (с собой не ношу, живет дома на столе), я столкнулся с проблемой которая меня очень сильно раздражала — необходимость извлечения диска перед его отключением. По уму, это нужно делать и с флэшками, но я далеко не всегда придерживаюсь этого правила, а вот с «хардом» решил не рисковать — честно ходил в Finder и извлекал. За две недели нечастого использования моего USB-диска, мне это порядком надоело и я начал подумывать о каком нибудь изящном решении. В один из таких моментов, мой взгляд упал на клавишу ⏏, удобно расположенную в углу клавиатуры и в моей голове начал созревать грандиозный план…


Да-да, я решил найти способ задействовать клавишу ⏏ для этих целей. План был достаточно прост и вот как я себе его представлял:

  • пишем простенький скрипт, извлекающий все диски;
  • создаем для него службу Automator;
  • вешаем службу на какой-нибудь шорткат;
  • переназначаем клавишу ⏏ на выбранный шорткат;
  • profit!

Не буду вдаваться в подробности моих изысканий, ведь главное результат, которого я все-таки достиг, так что сразу переходим к пошаговой инструкции, как это все реализовать.

Нам понадобится

  1. клавиша ⏏ (если у вас современный Mac без оной клавиши, можете использовать любую другую клавишу или сочетание клавиш);
  2. утилита KeyRemap4Macbook;
  3. Automator (входит в комплект OS X);
  4. файлик Eject_all_MacRadar.workflow (если не хотите сами возится в Automator’е);
  5. прямые руки и 10-15 минут свободного времени;

 

Шаг 1. Создаем службу

Снимок экрана 2014-03-17 в 21.37.481. Открываем Automator и выбираем Тип документа — Служба.

Снимок экрана 2014-03-17 в 21.38.022. В верхней части окна для Служба получает: указываем — нет данных и в любой программе.

Снимок экрана 2014-03-17 в 21.39.413. В боковом меню слева выбираем категорию Утилиты, находим в ней элемент Запустить Apple Script и перетаскиваем его основную область окна.

  1. Вставляем в код скрипта вместо (* Your script goes here *) вот эту строчку:

tell application "Finder" to eject every disk

Снимок экрана 2014-03-17 в 21.45.135. Здесь же (в категории Утилиты) находим элемент Показать уведомление и перетаскиваем его, делая вторым в нашей цепочк действий.

  1. Вбиваем текст в поля Заголовок, Сообщение и оформляем баннер уведомлений как вам больше нравится, мой вариант вы видите на скриншоте.

  2. Осталось проверить работу нашей службы, перед тем как ее сохранить. Жмем соответствующую кнопку в правом верхнем углу и наблюдаем три зеленых галочки в Журнале (если вы все сделали правильно).

7.1. Если вам лень создавать службу, можете воспользоваться готовым файликом, просто скачайте его по этой ссылке и откройте в системе, Automator предложит установить службу, согласитесь с этим и все будет готово.

 

Шаг 2. Назначаем горячую клавишу для нашей службы

  1. Запускаем системные настройки и идем в раздел Клавиатура.

Снимок экрана 2014-03-17 в 22.16.092. Переходим на вкладку Сочетание клавиш и переключаемся в боковом меню на пункт Службы.

  1. Находим в разделе Основные нашу службу, ставим напротив нее галочку и задаем желаемый шорткат.

Всё. С этого момента нажатие указанной горячей клавиши будет извлекать все ваши диски, неважно будь то USB-флэшки, -диски или смонтированные образы. Если вашей целью не является привязка этой службы к клавише ⏏ (или какой-либо другой) — на этом можно остановится. Если же вы все-таки хотите сделать тру-извлечение дисков и забиндить для этих целей специально созданную Джонни Айвом клавишу — идем дальше.

Важно! Если вы хотите использовать для извлечения клавишу ⏏ — нужно задать для нашей службы шорткат E (Ctrl+Option+Shift+Command+E). Такое хитрое сочетание необходимо для работы KeyRemap4Macbook.

 

Шаг 3. Устанавливаем KeyRemap4Macbook и переназначаем клавишу

  1. Скачиваем утилиту по этой ссылке и устанавливаем ее.

Снимок экрана 2014-03-17 в 22.33.172. Открываем KeyRemap4Macbook через иконку в строке меню или Launchpad и переходим на вкладку Change key.

Снимок экрана 2014-03-17 в 22.33.013. Здесь нам нужно выбрать клавишу. По нашей задумке выбираем Change Eject key и ставим галочку напротив пункта Eject to Command+Control+Option+Shift+E.

  1. Всё. Можно закрывать окно с настройками KeyRemap4Macbook.

Наконец-то мы с вами достигли цели — нажатие клавиши ⏏ на клавиатуре извлекает все диски, при этом выводится уведомление, сигнализирующее о том, что диск можно безопасно отключить. Здорово, правда?

 

Примечания

  • Должен предупредить вас, что клавиши ⏏ имеет особенность — она срабатывает с небольшой задержкой. Поэтому, следует нажимать ее обычным нажатием — быстрое нажатие, подобное тому, как мы печатаем текст, может не сработать. Но это ничуть не мешает и вы возможно даже не обратите на это внимания.
  • Служба извлечения, привязанная к клавише ⏏, работает в любом приложении, причем также доступна и через стандартное меню Службы.
  • Если вы обладатель Mac’а на котором отсутствует клавиша ⏏, но часто работаете со съемными USB-дисками и хотите использовать эту службу — можете выбрать в KeyRemap4Macbook другую клавишу или использовать обычный шорткат.

Вот такой вот несложный, но очень полезный лайфхак. Я выполнил поставленную перед собой задачу и с удовольствием использую такое решение. Думаю это будет полезно и вам, уважаемые читатели.

Остались вопросы, замечания или предложения? Добро пожаловать в комментарии — я всегда рад пообщаться и помочь. Оставайтесь с нами, впереди еще много интересного!