Как добавить пользовательское сочетание клавиш для вложенного пункта меню?


33

Это беспокоило меня уже пару лет. Таким образом, в Mac OS X вы можете назначать свои собственные сочетания клавиш (в « Системных настройках»> «Клавиатура»> «Сочетания клавиш» ), вводя точное имя пункта меню, к которому вы хотите привязать нажатия клавиш. Итак, что вы должны напечатать, если:

  • меню вложенное? или
  • Есть два пункта меню с одинаковыми именами, которые делают разные вещи?

Меня не волнуют особые случаи, такие как Firefox. Пожалуйста, не упоминайте особые случаи, если только это не особый случай, когда Apple провалила это.


  • Пример с Терминалом : Shell> Новая вкладка> Pro и Shell> Новое окно> Pro . Я использовал это в качестве примера. Я не могу представить, что Terminal - единственное приложение с этим недостатком дизайна.

  • Другой пример из Pages : File> Duplicate and Edit> Duplicate . Если вы хотите сделать Command-Dдубликат, он установит его для меню редактирования, но когда этот документ заблокирован, только пункт меню «Файл» имеет опцию дублирования, меню редактирования недоступно, а ярлык заблокирован для недоступного.


а) Вложенные меню обычно работают нормально.
Верный

1
Если вы не хотите переопределять ⌘N, я не нашел решения. Этот вопрос задавался ранее: superuser.com/questions/118364/…

@ Nano8Blazex вложенные работы, но как насчет неуникальных вложенных?

@ Mankoff это вопрос! Я прокомментировал, прежде чем я понял это. И это своего рода дубликат.
Верный

Ответы:


7

Здесь есть два ответа, в зависимости от того, какой именно ваш вопрос:

  • Если то, что вы хотите сделать, это то, что говорит ваш пример, попробуйте это:

    • Запустите терминал и откройте его настройки ⌘,.
    • На панели настроек «Настройки» выберите «Pro» в левом столбце.
    • В самом конце левого столбца нажмите кнопку «По умолчанию».

    В этот момент вы обнаружите, что ⌘Nтеперь открывается новое окно в выбранном вами стиле и ⌘Tвыполняется то же самое для новой вкладки.

  • Если ваш пример был просто примером, и это какое-то другое приложение, в которое вы хотите добавить сочетание клавиш, вы должны сделать это через Системные настройки → Клавиатура → Сочетания клавиш → Сочетания клавиш приложения + +.

    Как сказал @ Nano8Blazex, вы можете просто ввести имя вложенного ярлыка, и он будет работать нормально.


Итак, неужели неуникальным пунктам меню нельзя назначить ярлык?
Джим

Это зависит - и, конечно же, хорошо работающие Mac-подобные приложения не имеют повторяющихся элементов подменю. Когда я попробовал это с MS Entourage, он применил сочетание клавиш к обоим пунктам меню. Нажатие на ярлык вызвало срабатывание самых правых, самых нижних пунктов меню (что, разумеется, может или не может быть тем, что вы хотите). Создание подобного сочетания клавиш для терминала, однако, ничего не сделало.
Дори

33

Вы можете указать ярлыки как Format->Indentation->Increaseв 10.8 (спасибо @JohanKaving), так и >Format>Indentation>Increaseв 10.7.

Другой вариант - назначить ярлык сценарию следующим образом:

tell application "System Events" to tell process "Terminal" to click menu item "Pro" of menu "New Window" of menu item 1 of menu "Shell" of menu bar 1


1) Спасибо за подсказку! 2) Работало ли это когда-нибудь с 10.6? Я все еще использую 10.6.8 и пробовал его с вашим синтаксисом и некоторыми модификациями - «>» в ​​начале или нет, разделители с пробелами или нет «>» и т. Д.), Но ни один из них не работал. :-(
porg

Я думаю, что это было добавлено в Lion, но удалено в Mountain Lion. Была ошибка, из-за которой вы не могли назначить ярлыки для пунктов меню, которые содержались >.
Lri

Так что нет шансов на эту функциональность в 10.6.8?
porg

6
Мне кажется, что эта функция не была удалена в Mountain Lion - но она изменилась. Это работает для меня, если я Format->Indentation->Increase
укажу

Я могу подтвердить, что Format->Indentation->Increaseвсе еще работает в v10.11. И что это за грандиозное благо.
TransferOrbit
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.