Bardzo dużo czasu spędzam na edytowaniu tekstu w Xcode i chciałbym manewrować wokół tekstu w pozostałej części systemu tekstowego Cocoa, aby zapewnić identyczne wrażenia. Istnieją trzy wersje skrótów klawiaturowych kursora, których regularnie używam w Xcode (dla zwięzłości pokazuję tylko wersje do przodu, nie zmieniające wyboru):
- ⌃+ →Przesuń kursor o 1 słowo do przodu (^ camelCase -> camel ^ Case -> camelCase ^)
- ⌥ Option+ →Przesuń kursor o 1 słowo do przodu
- ⌘ Command+ →Przesuń kursor na koniec linii
Domyślne skróty klawiszowe OS X dotyczą 2 i 3, ale istnieje rozbieżność z 1. Poza Xcode, ⌃+ →zachowuje się jak ⌘ Command+ →. Nie stosuje się go strasznie często, ale za każdym razem, gdy ⌃+ →zabiera mnie do końca wiersza w Mail lub coś w tym stylu, przypomina to małą petardę w mojej głowie. To po prostu irytujące, że jestem skłonny zainwestować w jakikolwiek hacker, aby „naprawić” zachowanie raz na zawsze.
Aby uniknąć pokrycia starego terenu, już wiem o tym małym smakołyku i tej liście selektorów , ale nie znam żadnego interfejsu API w systemie tekstowym Cocoa do wybierania podsłów. Może gdzieś jest nieudokumentowane API?
Nie zawsze próbuję wybierać camelCase poza Xcode za pomocą skrótów klawiaturowych, ale kiedy chcę, chcę, żeby OS X był posłuszny.
Odpowiedzi:
Przepraszamy, ale to, czego chcesz, nie jest możliwe.
Możesz spróbować dodać skróty klawiszowe XCode, które to robią
do
~/Library/KeyBindings/DefaultKeyBindings.dict
pliku, ale jeśli aplikacja nie zostanie napisana w odpowiedzi na te metody, nie będzie działać. Jak już powiedziałeś, te metody nie są częścią standardowego systemu tekstowego, więc te połączenia w aplikacji pozostaną bez odpowiedzi lub usłyszysz sygnał dźwiękowy systemu.źródło
Do nawigacji po wielbłądach (czyli pod słowami) właściwe użycie
^+, [aby przesunąć słowo podrzędne w lewo
^+, ]aby przesunąć słowo podrzędne w prawo
Potwierdziłem to w OSX 10.10.1 z uruchomionym Xcode 6.1.1.
źródło