Я немного исследовал ваш вопрос. Исходно кажется, что нет способа указать несколько ярлыков для одной и той же функции - я пытался открыть ~/Library/Prefences/com.apple.dt.Xcode.plist
файл и вручную отредактировать NSUserKeyEquivalents
добавление дублирующего элемента для Step Over
, но при запуске Xcode дублирующийся элемент был автоматически удален (это имеет смысл, так как элемент обертки назван <dict>
).
Я нашел грубый способ установить второй ярлык, вдохновленный этой статьей . Инструкции для OS X 10.8:
- в
System Preferences
, при Accessibility
включении Enable access for assistive devices
;
- загрузите и установите Quicksilver , бесплатный лаунчер для OS X;
сохраните следующую папку AppleScript в папке «Документы» (например, с именем StepOver.scpt
) - обязательно скопируйте также ¬
символы. Этот сценарий активирует XCode и выбирает Step Over
функцию.
tell application "Xcode"
activate
end tell
tell application "System Events" ¬
to tell process "Xcode" ¬
to click menu item "Step Over" ¬
of menu "Debug" of menu item "Debug" ¬
of menu "Product" of menu bar item "Product" ¬
of menu bar 1
запустите QuickSilver и перейдите в «Настройки» -> «Триггеры» -> «Пользовательские триггеры».
- создайте новый триггер, в котором вы откроете
StepOver.scpt
скрипт, используя нужную горячую клавишу (на скриншоте, который я использовал F10). На вкладке Scope вы можете указать, что триггер работает только в Xcode.
- на этом этапе дополнительный ярлык должен работать, я построил базовое консольное приложение C ++ в XCode, и я мог бы перешагнуть через использование F6(как «стандартный» ярлык) и F10(как дополнительный ярлык, настроенный с QuickSilver).
В заключение, вы также можете оценить программное обеспечение для создания макросов, таких как Keyboard Maestro - оно коммерческое, и я не пробовал его.
tell application "System Events" to tell process "Xcode" to click menu item "Step Over" of menu "Debug" of menu item "Debug" of menu "Product" of menu bar item "Product" of menu bar 1
работать так же хорошо без дополнительного кода настройки.