Xcode: кілька прив'язок клавіш на функцію


13

У Xcode мені хотілося б можливість встановити кілька ключових прив’язок для тієї ж функції. Наприклад, я хотів би, щоб step overфункція була відображена в обох F6і F16. Я не бачу способу зробити це з самого Xcode.

Хтось знає спосіб це зробити? (Я використовую Xcode 4.2.1)

Відповіді:


4

Я трохи дослідив ваше запитання. Народом здається, що немає можливості вказати кілька ярликів для однієї і тієї ж функції - я намагався відкрити ~/Library/Prefences/com.apple.dt.Xcode.plistфайл і вручну відредагувати NSUserKeyEquivalentsдодавання дублікату для елемента Step Over, але при запуску Xcode дублікат був автоматично видалений (це має сенс, оскільки елемент обгортки названий <dict>).

Я знайшов приблизний спосіб встановити другий ярлик, натхненний цією статтею . Інструкції для ОС X 10.8:

  1. в System Preferences, під Accessibilityвключення Enable access for assistive devices;
  2. завантажте та встановіть Quicksilver , безкоштовний запуск для OS X;
  3. збережіть наступну папку 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
    
  4. запустіть QuickSilver та перейдіть до Налаштування -> Тригери -> Спеціальні тригери

  5. створити новий тригер, в якому ви відкриєте StepOver.scptскрипт, використовуючи потрібну гарячу клавішу (на використаному скріншоті F10). На вкладці "Область застосування" можна вказати, що тригер працює лише в Xcode. приклад тригера
  6. на даний момент додаткова ярлика повинна працювати, я створив базовий додаток консолі C ++ у Xcode, і я міг перейти, використовуючи F6(як "стандартний" ярлик) та F10(як додатковий ярлик, налаштований за допомогою QuickSilver).

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


1
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працювати так само без додаткового коду настройки.
Даніель Бек

Дякую @DanielBeck, я не знайомий з AppleScript. Я відредагував свою відповідь і спростив цю частину, використовуючи вашу пропозицію - тепер код є більш читабельним.
edymtt

Це працює! Налаштування трохи складне, але це зайняло лише 2 хвилини. Я думаю, що мені подобається Quicksilver як інструмент, який я міг би використати для кількох інших речей. Дякуємо, що з’ясували це!
joseph.hainline

0

Для цього процесу можна скористатися картографом швидких клавіш, див. Додане зображення.

введіть тут опис зображення

Я сподіваюся, що це вам допоможе


Я так сподівався, що це спрацює! Коли я спробував це, працювала лише комбінація клавіш F16, і F6 більше не працював зсередини XCode (він просто видав помилку, а не робив нічого). Відображення на системному рівні, схоже, замінює відображення на рівні додатків. Я використовую XCode 4.5.2 та OSX 10.8.2. Це працювало для вас, і які версії ви використовуєте?
joseph.hainline

Привіт, вибачте, що це не було повним; y правильне використання ctrl + f6, це буде працювати поряд з f16, це найкраще, я думаю, ви можете отримати свої вибачення.
Джастін Ерсуелл

Дякую за спробу, але, мабуть, те, що я шукаю, просто неможливо. Ctrl + F6 - інша команда, ніж F6. Коли я відображаю карту на системному рівні, вона просто перевищує рівень програми. Я дійсно намагаюся отримати два ключі, відображені одночасно на одну і ту ж функцію.
joseph.hainline

0

Я роблю це за допомогою клавіатури Maestro. Ви можете призначити команду одному або декільком програмам або глобальним. Це фантастичне програмне забезпечення, без якого я не можу жити. Це найкраща програма, яку я коли-небудь купував. Ви були б шоковані, побачивши, скільки у мене ключових прив'язок.

Додано зображення, на якому я маю швидку клавішу на пункт меню. Ігноруйте сіру дію на зображенні. Він починається з "Виконати макрос". Вибір меню - це потрібна дія

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.