Z ogromnym napływem nowych użytkowników do Xcode, jestem pewien, że jest wiele wskazówek i sztuczek Xcode do udostępnienia.
Jakie są Twoje?
Z ogromnym napływem nowych użytkowników do Xcode, jestem pewien, że jest wiele wskazówek i sztuczek Xcode do udostępnienia.
Jakie są Twoje?
Odpowiedzi:
Option ⌥ Command ⌘ Up Arrow ↑
Widok > Przełącz na plik nagłówkowy / źródłowy
Przełącza między plikami .m
i .h
.
- W Xcode 4 to jest ctrl Command ⌘ Up Arrow ↑
⌘ Command+ Double-Click on a symbol
: Przejdź do definicji symbolu.
⌥ Option+ Double-Click on a symbol
: Znajdź tekst w dokumentacji symbolu. (Działa tylko, jeśli masz zainstalowany zestaw symboli tego dokumentu).
Pasek ulubionych jest taki sam jak w Safari do przechowywania - no cóż - ulubionych. Często używam go jako miejsca do przechowywania skrótów (które możesz zrobić przez przeciąganie) do plików, których używam teraz. Zasadniczo jest to bardziej przydatne, gdy pracuję z dużym lub nieznanym projektem.
Aby wyświetlić pasek ulubionych, wybierz następującą opcję menu:
View
> Layout
>Show Favorites Bar
Tab ⇥LUB Control ⌃ /: Wybierz następny argument automatycznego uzupełniania.
Shift ⇧ Tab ⇥LUB Shift ⇧ Control ⌃ /: Wybierz poprzedni argument automatycznego uzupełniania.
Escape ⎋: Wyświetla listę podręczną automatycznego uzupełniania.
Podczas próby cofnięcia po zapisaniu pojawi się następujący monit:
„Masz zamiar cofnąć się do momentu ostatniego zapisania tego pliku. Czy chcesz to zrobić?”
Aby pozbyć się tego ostrzeżenia, wpisz następujące polecenie w oknie terminala:
defaults write com.apple.Xcode XCShowUndoPastSaveWarning NO
Wklej to do aplikacji Terminal:
defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "Microsoft";}'
com.yourcompanyname
” we wszystkich szablonach:/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application
com.yourcompany
na wartość, którą zwykle używasz do zbudowania urządzenia. Po otwarciu całego katalogu skorzystałem z funkcji BBEdit „znajdź i zamień”. Powinieneś zastąpić wartość we wszystkich info.plist
plikach. Znalazłem 8 plików do zmiany. Liczba niepowodzeń kompilacji, ponieważ zapomniałem zmienić ten ciąg, jest absurdalna.
- Control ⌃ Option ⌥ Shift ⇧ + <Pierwsza litera nazwy grupy>
Jeśli przytrzymasz trzy powyższe klawisze, możesz szybko przejść do grup na lewej stronie (Grupy i pliki), naciskając pierwszą literę nazwy grupy. Na przykład, Control ⌃Option ⌥Shift ⇧Tmożna dostać się do Celów i Control ⌃Option ⌥Shift ⇧Sdo Źródła . Naciśnij ponownie, aby przejść do SCM. Czasami potrzeba kilku prób, aby to zadziałało (nie wiem dlaczego).
Control ⌃ .
Shift ⇧ Control ⌃ .: Cykle wstecz między opcjami autouzupełniania.
Control ⌃.(Okres kontrolny) po słowie automatycznie przyjmuje pierwszy wybór z menu autouzupełniania. Spróbuj więc wpisać, log
a Control ⌃. dostaniesz miłe NSLog
oświadczenie. Naciśnij ponownie, aby przechodzić między opcjami. Aby zobaczyć wszystkie możliwe do zmiany opcje, wpisz NSMu
wtedy Control ⌃..
Control ⌃ Command ⌘ ? (Gdy kursor znajduje się w symbolu, aby spojrzeć w górę)
Option ⌥ + <Kliknij dwukrotnie symbol>
Pomoc> Szybka pomoc
Aby przejść do dokumentacji z okna Szybkiej pomocy, kliknij ikonę książki w prawym górnym rogu.
- Command ⌘ Option ⌥ + <Kliknij dwukrotnie symbol>
Przechodzi od razu do pełnej dokumentacji.
- Command ⌘ Control ⌃ + <Kliknij dwukrotnie w edytorze>
Użyj powyższego skrótu, aby uzyskać dziwny sposób wybierania wielu słów. Możesz wybierać słowa w zupełnie różnych miejscach, a następnie usuwać je lub kopiować wszystkie naraz. Nie jestem pewien, czy jest to przydatne. To Xcode tylko o ile wiem.
Ta sztuczka działa we wszystkich aplikacjach Cocoa na komputerach Mac (TextEdit, Mail itp.) I jest prawdopodobnie jedną z najbardziej przydatnych rzeczy.
- Command ⌘ Left Arrowlub Command ⌘ Right ArrowPrzenosi Cię na początek i koniec linii.
- Control ^ ai Control ^ eZrób to samo
- Control ^ ni Control ^ pPrzesuń kursor w górę lub w dół o jedną linię.
- Control ^ fi Control ^ bPrzesuń kursor do tyłu lub do przodu o jedną spację
Naciśnięcie Shift ⇧dowolnego z nich powoduje zaznaczenie tekstu między punktami przesunięcia. Umieść kursor na środku linii i naciśnij Shift ⇧ Control ^ e, aby przejść do końca linii.
Naciśnięcie Option ⌥umożliwia nawigację po słowach za pomocą klawiatury. Option ⌥ Control ^ fprzeskakuje na koniec bieżącego słowa. Option ⌥ Control ^ bprzeskakuje na początek bieżącego słowa. Możesz także używać Option ⌥lewego i prawego klawisza strzałki, aby poruszać się o jedno słowo na raz.
Wypróbuj z NSMutableArray
. Możesz go szybko zmienić, NSArray
umieszczając kursor po NS
, naciskając Shift ⇧ Control ^ Right Arrownastępnie Delete.
Command ⌘ Shift ⇧ D
Plik > Otwórz szybko ...
Jestem wielkim fanem funkcji Open Quickly , która jest szczególnie dobra w Xcode 3.1 i późniejszych. Jeśli chcesz otworzyć plik lub definicję symbolu, który znajduje się w twoim projekcie lub w ramie, po prostu wciśnij skrót klawiaturowy, wpisz trochę nazwy pliku lub symbolu, użyj Up Arrow ↑i, Down Arrow ↓aby wybrać właściwy wynik (w razie potrzeby), a następnie naciśnij, Return ↩aby otworzyć plik lub przejść do definicji symbolu.
W Xcode 4:
- Command ⌘ Shift ⇧ o
Coś, czego nie wiedziałem o Xcode jeszcze dwie minuty temu (kiedy schwa zwrócił na to uwagę w komentarzu), to że jeśli tekst edytora znajduje się wewnątrz słowa po wywołaniu Open Quickly , to słowo zostanie użyte jako Otwórz Szybko wyszukaj termin.
Możesz użyć:
#pragma mark Foo
... jako sposób na uporządkowanie metod w plikach źródłowych. Podczas przeglądania symboli za pomocą menu podręcznego wszystko, co umieścisz, Foo
będzie pogrubione na liście.
Aby wyświetlić separator (tj. Linię poziomą), użyj:
#pragma mark -
Jest to bardzo przydatne, szczególnie do grupowania metod delegowania lub innych grup metod.
# TODO
wyciągi. Teraz, gdybym tylko go chwycił # XXX
, który jest powszechnie używany w bazie kodu, nad którym pracuję ...
Zawsze powinieneś mieć punkt przerwaniaobjc_exception_throw
.
Użyj następującego kodu:
NSZombieEnabled = YES;
NSDeallocateZombies = NO;
... aby debugować problemy z zachowaniem i usuwaniem. Aby uzyskać więcej informacji, zobacz sekcję „Znajdowanie wycieków pamięci” dokumentu Debugowanie aplikacji Apple .
Command ⌘+ Double-click
na obiekcie w oknie dokumentu Konstruktora interfejsów, aby przejść do tej klasy w Xcode. Jest to bardzo przydatne w przypadku właściciela pliku .
Przeciągnij dostosowany obiekt z powrotem do Biblioteki Konstruktora interfejsów w celu późniejszego wykorzystania.
Control ⌃ Shift ⇧+ Click
na obiekcie w Konstruktorze interfejsów, aby wyświetlić menu wszystkich obiektów pod myszą.
Ctrl+ 2: Dostęp do wyskakującej listy metod i symboli w bieżącym pliku.
Jest to bardzo przydatne, ponieważ za pomocą tego skrótu można poruszać się po pliku całkowicie za pomocą klawiatury. Po przejściu do listy zacznij pisać znaki, a na liście pojawi się tekst, którego szukasz.
Jeśli okno wyświetla zarówno widok szczegółów, jak i widok edytora, możesz powiększyć edytor, aby rozwinąć widok edytora do pełnej wysokości okna. (Jest to dość łatwe do znalezienia, ale wielu zdaje się to przeoczyć.)
Możesz to zrobić za pomocą jednej z następujących metod:
Command ⌘ Shift ⇧ E
Widok > Zoom Editor In
Przeciągnij rozdzielacz (między oknem edytora a listą plików nad nim) w górę.
Pobierz pełną listę skrótów klawiaturowych Xineta Colina Wheelera (dostępną w formacie PDF lub PNG). Wydrukuj i trzymaj w miejscu widocznym (mam go na ścianie obok ekranu).
edycja: Zaktualizowane wersje dla Xcode 3.2
edycja 2: Zaktualizowane wersje Xcode 4
Niewiele skrótów klawiaturowych, ale komentarze TODO w źródle pojawiają się w menu rozwijanym metody / funkcji u góry edytora.
Na przykład:
// TODO: Some task that needs to be done.
pojawia się na rozwijanej liście metod i funkcji, abyś mógł przejść do niej bezpośrednio.
Większość IDE Java pokazuje znacznik dla tych znaczników zadań na pasku przewijania, co jest ładniejsze, ale to również działa.
# XXX
i nie ma ich.
⌘- [i ⌘-], aby wciąć i cofnąć zaznaczony tekst. Znacznie ułatwia czyszczenie kodu źródłowego .
Kliknij dwukrotnie nawiasy kwadratowe lub nawiasy, aby uzyskać dopasowanie nawiasów i nawiasów.
Steruj edytorem tekstu Xcode z wiersza poleceń: xed
> xed -x # open a new untitled document
> xed -xc foo.txt # create foo.txt and open it
> xed -l 2000 foo.txt # open foo.txt and go to line 2000
# set Xcode to be your EDITOR for command line tools
# e.g. for subversion commit
> echo 'export EDITOR="xed -wcx"' >> ~/.profile
> man xed # there's a man page, too
xed was introduced in Mac OS X 10.5 with Xcode 3.0.
„Ctrl + strzałka w lewo / w prawo”, aby nawigować między słowami. Używam tej funkcji, aby przeskakiwać kursor z jednego „garbu wielbłąda” w zmiennej do następnego.
Xcode obsługuje makra tekstowe, które można wywoływać za pomocą menu Wstaw makro tekstu na końcu menu Edycja . Można je również wywoływać za pomocą Code Sense, technologii uzupełniania kodu Xcode.
Na przykład wpisanie sekwencji klawiszy p i m control-period
spowoduje wstawienie #import "file"
do kodu file
jako edytowalnego tokena, podobnie jak przy uzupełnianiu kodu.
Kliknij zmienną w funkcji prawym przyciskiem myszy i kliknij edytuj cały zakres. Często go używałem, odkąd się o tym dowiedziałem.
ctrl ⌘ T
Możesz poprosić Xcode, aby uruchomił preprocesor nad plikiem Info.plist:
<key> CFBundleShortVersionString </key> #ifdef DEBUG <string> 1.0 (debugowanie) </string> #jeszcze <string> 1.0 </entry> #endif
Szczegółowe informacje można znaleźć na stronie http://developer.apple.com/technotes/tn2007/tn2175.html .
Debugowanie - jak korzystać z GDB
Będąc nowym w tym względzie, zastawianie pułapek i identyfikowanie błędów jest raczej zniechęcającym zadaniem. Konsola, mimo że jest potężnym narzędziem, zwykle nie daje bardzo intuicyjnych rezultatów, a wiedza o tym, na co patrzysz w debuggerze, może być równie trudna do zrozumienia. Z pomocą niektórych z nich na Stack Overflow i dobrym artykule na temat debugowania, który można znaleźć w Cocoa With Love , staje się trochę bardziej przyjazny.
Poruszaj się po otwartych plikach tam iz powrotem:
⌥⌘ ←
⌥⌘ →
Technicznie wskazówka dla konstruktora interfejsów, ale są to pary dopasowane do książek, więc nie sądzę, że to nie jest temat ...
Shift + prawy przycisk myszy na jednym z elementów sterujących, a otrzymasz ładną listę wyboru hierarchii obiektów. Nigdy więcej kliknięcia, kliknięcia, kliknięcia, frustracji!
Z gładzikiem:
Testowane z Xcode 3.2.5.
Przeglądarka klas w Xcode! Osiągnięty przez naciśnięcie shift+ ⌘+c . Możesz zmniejszyć zakres, aby wyświetlać tylko aktywny projekt. Daje to mniej zaśmiecony widok, o ile chcesz tylko przeglądać hierarchię klas.
[
we właściwej lokalizacjiPochodzę z środowiska .NET, więc jestem przyzwyczajony do wpisywania symboli, a następnie do wpisywania nazw metod. Dlatego zawsze zapominam o dołączeniu [
przed rozpoczęciem wpisywania nazwy obiektu. Zazwyczaj oznaczało to, że musiałem przejść do początku linii i dodać [
ręcznie. Nie zdawałem sobie sprawy, że mogę po prostu nacisnąć ]bieżącą pozycję kursora i zostanie ona dodana automatycznie.
Są na to sposoby: albo po wpisaniu nazwy funkcji, albo tuż przed wpisaniem nazwy funkcji.
myObject testMethod
]
... staje się:
[myObject testMethod]
... z karetką ustawioną za ]
.
myObject
]
... staje się:
[myObject ]
... z karetki umieszczonym tuż przed]
.
Zaletą tego drugiego (2) jest to, że uzupełnianie kodu będzie filtrowało metody twojego obiektu. Natomiast w przypadku pierwszego (1), jeśli spróbujesz wywołać uzupełnianie kodu natychmiast po myObject
nim, nie będzie on filtrowany. Kolejną zaletą (2) jest to, że zachowuje się bardziej jak inne języki programowania, które używają notacji kropkowej. Wpisz nazwę obiektu, a następnie po prostu ]zamiast .uzyskać dostęp do metody.
Wybierz blok tekstu i wpisz cmd- /, aby go skomentować. Zrób to ponownie, aby usunąć znaki komentarzy.
Jest to szczególnie przydatne w połączeniu z dopasowaniem nawiasów poprzez dwukrotne kliknięcie na zrównoważone znaki (parens, nawiasy klamrowe, nawiasy klamrowe).
Będąc w stanie szybko zobaczyć wszystkie metody, które można zastąpić z superklasy. Na przykład przy rozszerzaniu UITableViewController po prostu wpisuję swoją implementację:
- ta
a następnie nacisnąłem ESC, aby zobaczyć wszystkie metody z mojej nadklasy, które zaczynają się od „ta”, np
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Działa to również podczas przyjmowania protokołów.
Command ⌘ alt ⌥ shift T : ujawnia aktualnie edytowany plik w drzewie projektu.
ctrl+ alt+ ⌘+, raby wyczyścić dziennik
Dokumentacja referencyjna API Apple'a nie pokazuje metod odziedziczonych z nadklasy. Czasem jednak. warto zobaczyć pełen zakres funkcji dostępnych dla danej klasy - w tym własną klasę niestandardową. Możesz użyć Przeglądarki klas (z menu Projekt), aby wyświetlić płaską lub hierarchiczną listę wszystkich klas związanych z bieżącym projektem. Górny panel po prawej stronie okna przeglądarki pokazuje listę metod powiązanych z obiektem wybranym w przeglądarce. Możesz użyć arkusza Konfiguruj opcje, aby wybrać „Pokaż członków odziedziczonych”, aby wyświetlić metody odziedziczone, a także metody zdefiniowane przez samą wybraną klasę. Klikasz symbol małej książki, aby przejść do odpowiedniej dokumentacji.