W Xcode chciałbym mieć możliwość skonfigurowania kilku powiązań klawiszy dla tej samej funkcji. Na przykład chciałbym, aby step overfunkcja była odwzorowana zarówno na, jak F6i na F16. Nie widzę sposobu, aby to zrobić z samego Xcode.
Badałem trochę twoje pytanie. Natywnie wydaje się, że nie ma możliwości określenia wielu skrótów dla tej samej funkcji - próbowałem otworzyć ~/Library/Prefences/com.apple.dt.Xcode.plistplik i ręcznie edytować NSUserKeyEquivalentsdodawanie duplikatu elementu Step Over, ale po uruchomieniu Xcode duplikat został automatycznie usunięty (ma to sens, ponieważ element zawijający ma nazwę <dict>).
Znalazłem z grubsza sposób, aby ustawić drugi skrót, zainspirowany tym artykułem . Instrukcje dotyczą OS X 10.8:
w System Preferences, pod Accessibilitywłącz Enable access for assistive devices;
pobierz i zainstaluj Quicksilver , darmowy program uruchamiający dla OS X;
zapisz następujący AppleScript w folderze Dokumenty (na przykład z nazwą StepOver.scpt) - pamiętaj, aby skopiować również ¬znaki. Skrypty aktywują Xcode i wybierają Step Overfunkcję.
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
uruchom QuickSilver i przejdź do Preferencje -> Wyzwalacze -> Wyzwalacze niestandardowe
utwórz nowy wyzwalacz, w którym otworzysz StepOver.scptskrypt za pomocą żądanego skrótu (na zrzucie ekranu, którego użyłem F10). Na karcie Zakres można określić, że wyzwalacz działa tylko w Xcode.
w tym momencie dodatkowy skrót powinien działać, zbudowałem podstawową aplikację konsoli C ++ w Xcode i mogłem przejść dalej, używając F6(jako „standardowego” skrótu) i F10(jako dodatkowego skrótu skonfigurowanego w QuickSilver).
Na koniec możesz także ocenić oprogramowanie do tworzenia makr, takich jak Keyboard Maestro - jest komercyjny i jeszcze go nie wypróbowałem.
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 1działa równie dobrze bez dodatkowego kodu konfiguracji.
Daniel Beck
Dzięki @DanielBeck, nie znam AppleScript. Zredagowałem swoją odpowiedź i uprościłem tę część za pomocą Twojej sugestii - teraz kod jest bardziej czytelny.
edymtt,
To działa! Konfiguracja jest trochę skomplikowana, ale zajęła tylko około 2 minut. Myślę, że podoba mi się Quicksilver jako narzędzie, którego mogę użyć do kilku innych rzeczy. Dzięki za zrozumienie tego!
joseph.hainline
0
Możesz użyć mapera skrótów klawiaturowych dla tego procesu, patrz załączony obraz.
Miałem nadzieję, że to zadziała! Kiedy próbowałem, działał tylko skrót klawiaturowy F16, a F6 nie działał już z XCode (po prostu wydawał dźwięk błędu zamiast robić cokolwiek). Mapowania na poziomie systemu wydają się zastępować mapowania na poziomie aplikacji. Używam XCode 4.5.2 i OSX 10.8.2. Czy to działało dla Ciebie i jakich wersji używasz?
joseph.hainline
Cześć, przepraszam, że nie zostało ukończone; y poprawnie użyj Ctrl + F6, to będzie działać razem z F16, to jest najlepsze, co myślę, że możesz dostać moje przeprosiny.
Justin Erswell,
Dzięki za próbę, ale myślę, że to, czego szukam, jest po prostu niemożliwe. Ctrl + F6 to inne polecenie niż F6. Kiedy mapuję na poziomie systemu, po prostu zastępuje poziom aplikacji. Naprawdę próbuję zmapować dwa klucze jednocześnie do tej samej funkcji.
joseph.hainline
0
Robię to za pomocą Keyboard Maestro. Możesz przypisać polecenie do jednej lub więcej aplikacji lub globalnie. To fantastyczne oprogramowanie, bez którego nie mogę żyć. To najlepsze oprogramowanie, jakie kiedykolwiek kupiłem. Byłbyś zszokowany, widząc, ile mam powiązań klawiszy.
Załączony jest obraz, na którym mapuję skrót do pozycji menu. Zignoruj akcję wyszarzoną na obrazie. Zaczyna się od „Wykonaj makro”.
Wybór menu to żądana czynność
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
działa równie dobrze bez dodatkowego kodu konfiguracji.Możesz użyć mapera skrótów klawiaturowych dla tego procesu, patrz załączony obraz.
mam nadzieję, że to Ci pomoże
źródło
Robię to za pomocą Keyboard Maestro. Możesz przypisać polecenie do jednej lub więcej aplikacji lub globalnie. To fantastyczne oprogramowanie, bez którego nie mogę żyć. To najlepsze oprogramowanie, jakie kiedykolwiek kupiłem. Byłbyś zszokowany, widząc, ile mam powiązań klawiszy.
Załączony jest obraz, na którym mapuję skrót do pozycji menu. Zignoruj akcję wyszarzoną na obrazie. Zaczyna się od „Wykonaj makro”. Wybór menu to żądana czynność
źródło