Search
Write a publication
Pull to refresh

Автоматизируем переключение звука на хакинтоше

Reading time2 min
Views1.7K
У маков есть особенность, логичная и осмысленная на родном железе, но раздражающая при использовании нестандартных конфигураций: звук идет или в колонки или в наушники.
Разъем 3.5 только один: воткнул наушники — смолкли колонки, выдернул — звук вернулся.
Это правильно и удобно. Если только системник не стоит под столом и у звуковой карты не гораздо больше выходов.
Чтобы каждый раз не запускать вручную «Системные настройки» и копаться в них, я написал небольшой эппл-скрипт:

tell application "System Preferences"
activate
set current pane to pane "com.apple.preference.sound"
end tell

tell application "System Events"
tell application process "System Preferences"
tell tab group 1 of window "Звук"
click radio button "Выход"
if (selected of row 2 of table 1 of scroll area 1) then
set selected of row 1 of table 1 of scroll area 1 to true
else
set selected of row 2 of table 1 of scroll area 1 to true
end if
end tell
end tell
end tell

tell application "System Preferences" to quit


Готовый скрипт, упакованный в формате программы (удобно держать в доке) можно скачать здесь.

Вероятнее всего, выходы аудиокарты, к которым у вас подключены колонки и наушники, будут отличаться от моих.
Эту проблему легко решить так:
  1. Правой кнопкой мыши на иконке программы → Показать содержимое пакета
  2. Открыть файл Contents/Resources/Scripts/main.scrt
  3. Поменять строки «row 2» и «row 1» на те, которые нужны. (Можно открыть «Системные настройки» и посмотреть, в каких по счету строках находятся нужные пункты меню)
  4. Сохранить получившийся файл и начать пользоваться

настройка свитчера
Как видно из названий пунктов меню, он работает в русской локализации Леопарда. Если вы хотите его научить любому другому языку — перепишите слова «Звук» и «Выход» на те, что используются в локализации.

Штука примитивная, но неплохо экономит нервы и время.
Tags:
Hubs:
Total votes 8: ↑6 and ↓2+4
Comments5

Articles