web-dev-qa-db-fra.com

Fonctionnalités cachées de Xcode

Avec un énorme afflux de débutants dans Xcode, je suis sûr qu'il existe de nombreux trucs et astuces Xcode à partager.

Quels sont les vôtres?

338
schwa

Basculer en en-tête/fichier source

  • Option ⌥Command ⌘Up Arrow ↑

  • Affichage> Basculer vers l'en-tête/le fichier source

Bascule entre les fichiers .m et .h.

  • Dans Xcode 4 c'est ctrlCommand ⌘Up Arrow ↑
343
epatel

⌘ Command + Double-Click on a symbol: Aller à la définition d'un symbole.

⌥ Option + Double-Click on a symbol: Rechercher du texte dans la documentation d'un symbole. (Ne fonctionne que si le jeu de documents de ce symbole est installé.)

Barre de favoris:

La barre des favoris est comme dans Safari pour stocker - et bien - les favoris. Je l'utilise souvent comme emplacement pour stocker des raccourcis (que vous pouvez faire par glisser-déposer) vers les fichiers que j'utilise actuellement. Généralement, cela est plus utile lorsque je travaille sur un projet volumineux ou inconnu.

Pour afficher la barre des favoris, sélectionnez l’option de menu suivante:

  • View> Layout> Show Favorites Bar
158
schwa

Raccourcis clavier automatiques

Tab ⇥ OR Control ⌃/: Sélectionnez le prochain argument d'auto-complétion.

Shift ⇧Tab ⇥ OR Shift ⇧Control ⌃/: Sélectionnez l’argument de complétion automatique précédent.

Escape ⎋: Affiche la liste déroulante de complétion automatique.

127
mmalc

Désactiver l'avertissement "annuler le dernier point"

Lorsque vous essayez d'annuler après l'enregistrement, vous obtenez l'invite suivante:

"Vous êtes sur le point d'annuler le dernier point d'enregistrement du fichier. Voulez-vous le faire?"

Pour vous débarrasser de cet avertissement, entrez les informations suivantes dans une fenêtre de terminal:

defaults write com.Apple.Xcode XCShowUndoPastSaveWarning NO

Modifier le nom de la société dans les fichiers de modèle

Collez ceci dans l'application Terminal:

defaults write com.Apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "Microsoft";}'

Changez "com.yourcompanyname" dans tous vos modèles:

  1. Trouver le répertoire: /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application
  2. Utilisez votre outil de recherche et de remplacement multi-fichiers préféré pour remplacer com.yourcompany par la valeur que vous utilisez normalement pour créer un périphérique. J'ai utilisé le multi-recherche-remplacement de BBEdit après avoir ouvert tout le répertoire. Vous devriez remplacer la valeur dans tous les fichiers info.plist. J'ai trouvé 8 fichiers à changer. Le nombre de fois où une compilation a échoué parce que j'ai oublié de changer cette chaîne est ridicule.

Accéder rapidement à un groupe dans le volet Groupes et fichiers

  • Control ⌃Option ⌥Shift ⇧ + <Première lettre d'un nom de groupe>

Si vous maintenez les trois touches ci-dessus enfoncées, vous pouvez accéder rapidement aux groupes de la page de gauche (Groupes et fichiers) en appuyant sur la première lettre du nom du groupe. Par exemple, Control ⌃Option ⌥Shift ⇧T vous amène à Cibles et Control ⌃Option ⌥Shift ⇧S à Source. Appuyez de nouveau dessus pour passer à SCM. Parfois, il faut plusieurs essais pour que cela fonctionne (je ne sais pas pourquoi).


Cycle entre les choix d'auto-complétion

  • Control ⌃.

  • Shift ⇧Control ⌃.: Effectue un cycle arrière entre les choix d'auto-complétion.

Control ⌃. (Période de contrôle) après un mot accepte automatiquement le premier choix dans le menu d'auto-complétion. Essayez de taper log puis Control ⌃. et vous obtiendrez une déclaration Nice NSLog. Appuyez à nouveau pour faire défiler tous les choix. Pour voir tous les choix mutables, tapez NSMu puis Control ⌃..


Aide rapide

  • Control ⌃Command ⌘? (Tant que votre curseur est dans le symbole à regarder)

  • Option ⌥ + <Double-cliquez sur un symbole>

  • Aide> Aide rapide

Pour accéder à la documentation à partir de la fenêtre d’Aide rapide, cliquez sur l’icône du livre en haut à droite.


Voir la documentation pour un symbole

  • Command ⌘Option ⌥ + <Double-cliquez sur un symbole>

Vous emmène directement à la documentation complète.


Faire des sélections de texte non adjacentes

  • Command ⌘Control ⌃ + <Double-cliquez dans l'éditeur>

Utilisez le raccourci ci-dessus pour une façon étrange de sélectionner plusieurs mots. Vous pouvez sélectionner des mots à des endroits totalement différents, puis les supprimer ou les copier en une fois. Pas sûr que cela soit utile. C'est Xcode autant que je peux dire.


Utilisez les raccourcis clavier d'Emacs pour naviguer dans votre code

Cette astuce fonctionne dans toutes les applications Cocoa sur Mac (TextEdit, Mail, etc.) et constitue probablement l'une des choses les plus utiles à connaître.

  • Command ⌘Left Arrow ou Command ⌘Right Arrow Vous amène au début et à la fin d'une ligne.
  • Control ^a et Control ^e Faire la même chose
  • Control ^n et Control ^p Déplace le curseur d'une ligne vers le haut ou le bas.
  • Control ^f et Control ^b Déplace le curseur en arrière ou en avant d'une case

Pressage Shift ⇧ avec n'importe lequel de ces éléments, sélectionne le texte entre les points de déplacement. Placez le curseur au milieu d’une ligne et appuyez sur Shift ⇧Control ^e et vous pouvez sélectionner jusqu'à la fin de la ligne.

Pressage Option ⌥ vous permettra de naviguer entre les mots avec le clavier. Option ⌥Control ^f passe à la fin du mot actuel. Option ⌥Control ^b passe au début du mot actuel. Vous pouvez aussi utiliser Option ⌥ avec les touches fléchées gauche et droite pour déplacer un mot à la fois.

  • Control ^Left Arrow et Control ^Right Arrow déplace le curseur entre les parties camouflées d'un mot.

Essayez-le avec NSMutableArray. Vous pouvez rapidement le changer en NSArray en plaçant votre curseur après le NS, en appuyant sur Shift ⇧Control ^Right Arrow ensuite Delete.

119
nevan king

Ouvrez vite ...

  • Command ⌘Shift ⇧D

  • Fichier > Ouvrir rapidement ...

Je suis un grand fan de la fonctionnalité Ouvrir rapidement , particulièrement utile dans Xcode 3.1 et les versions ultérieures. Lorsque vous voulez ouvrir un fichier ou une définition de symbole qui se trouve dans votre projet ou dans une structure, appuyez simplement sur le raccourci clavier, tapez un morceau du nom du fichier ou du symbole, utilisez Up Arrow ↑ et Down Arrow ↓ sélectionner le bon résultat (si besoin est), puis appuyer sur Return ↩ pour ouvrir le fichier ou accéder à la définition du symbole.

Sur Xcode 4:

  • Command ⌘Shift ⇧o

Ouvrir rapidement utilise le mot actuel comme terme de recherche

En outre, quelque chose que je ne connaissais pas à propos de Xcode il y a deux minutes (lorsque schwa l'a souligné dans un commentaire) est que, si le curseur de texte de l'éditeur est à l'intérieur d'un mot, Ouvrir rapidement est appelé, ce mot sera utilisé comme terme de recherche Ouvrir rapidement .

99
Evan DiBiase

Utilisez #pragma pour l'organisation

Vous pouvez utiliser:

#pragma mark Foo

... pour organiser les méthodes dans vos fichiers source. Lorsque vous parcourez les symboles via le menu contextuel, tout ce que vous placez dans Foo apparaîtra en gras dans la liste.

Pour afficher un séparateur (ligne horizontale), utilisez:

#pragma mark -

C'est très utile, en particulier pour regrouper des méthodes déléguées ou d'autres groupes de méthodes.

78
Steve Streza

1. Point d'arrêt sur "objc_exception_throw"

Vous devriez toujours avoir un point d'arrêt sur objc_exception_throw .

2. Débogage des problèmes de conservation/libération avec les variables "Zombie"

Utilisez le code suivant:

NSZombieEnabled = YES;
NSDeallocateZombies = NO;

... pour déboguer les problèmes de conservation et de libération. Pour plus d'informations, reportez-vous à la section "Recherche de fuites de mémoire" de document "Applications de débogage d'Apple" .

3. Accéder à une classe dans Xcode à partir d'Interface Builder

Command ⌘ + Double-click sur un objet de la fenêtre de document d'Interface Builder pour accéder à cette classe dans Xcode. Ceci est très pratique avec le propriétaire du fichier .

4. Réutilisation d'objets personnalisés dans Interface Builder

Faites glisser un objet personnalisé vers la bibliothèque d'Interface Builder pour une réutilisation ultérieure.

5. Sélectionnez les éléments qui se chevauchent dans Interface Builder.

Control ⌃Shift ⇧ + Click sur un objet dans Interface Builder pour afficher un menu de tous les objets situés sous la souris.

6. Guide de gestes d'Interface Builder

Guide des gestes d'Interface Builder .

77
Jon Hess

Ctrl + 2: Accédez à la liste déroulante des méthodes et des symboles du fichier en cours.

C'est très utile car avec ce raccourci, vous pouvez naviguer dans un fichier entièrement à l'aide du clavier. Lorsque vous arrivez à la liste, commencez à taper des caractères et la liste dactylographiera en fonction du symbole que vous recherchez.

75
mgorbach

Éditeur de zoom dans

Si votre fenêtre affiche à la fois la vue de détail et la vue de l'éditeur, vous pouvez zoomer sur l'éditeur pour développer la vue de l'éditeur à la hauteur de la fenêtre. (Ceci est assez facile à trouver, mais beaucoup semblent l’ignorer.)

Vous pouvez le faire en utilisant l’une des méthodes suivantes:

  • Command ⌘Shift ⇧E

  • Affichage> Éditeur de zoom entrant

  • Faites glisser le séparateur (entre la fenêtre de l'éditeur et la liste de fichiers au-dessus) vers le haut.

74
mmalc

Obtenez Liste complète des raccourcis clavier Xcode de Colin Wheeler (disponible sous la forme PDF ou PNG). Imprimez-le et gardez-le à un endroit visible (je l'ai sur le mur à côté de mon écran).

edit: versions mises à jour pour Xcode 3.2

edit 2: versions mises à jour pour Xcode 4

67
Hagelin

Ce n’est pas vraiment un raccourci clavier, mais les commentaires TODO de la source apparaissent dans la liste déroulante méthode/fonction en haut de l’éditeur.

Donc par exemple:

// TODO: Some task that needs to be done.

s'affiche dans la liste déroulante des méthodes et fonctions afin que vous puissiez y accéder directement.

La plupart des Java IDE affichent un marqueur pour ces balises de tâche dans la barre de défilement, ce qui est plus agréable, mais cela fonctionne également.

52
comctrl6

⌘- [et ⌘-] pour mettre en retrait et annuler le texte sélectionné. Facilite le nettoyage du code source beaucoup.

51
Michel

Maintenez Option tout en scindant les fenêtres pour scinder verticalement plutôt qu'horizontalement.

43
Mike

Double-cliquez sur les crochets ou les parenthèses pour obtenir la correspondance crochet/parenthèse.

42
Julien Chastang

Contrôlez l'éditeur de texte Xcode à partir de la ligne de commande: 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
36
Nikolai Ruhe

"Ctrl + Flèche Gauche/Droite" pour faire la navigation de texte intra-Word. J'utilise cette fonctionnalité pour passer du curseur de "camel bosse" d'une variable à la suivante.

31
Matt Dillard

Faites un clic droit sur une variable de votre fonction et cliquez sur éditer tout dans l'étendue. Je l'utilise beaucoup depuis que j'ai découvert ça.

ctrlT

30
robottobor

Xcode prend en charge les macros de texte pouvant être appelées via le menu Insérer une macro de texte à la fin du menu Édition. Ils peuvent également être appelés à l'aide de Code Sense, la technologie de complétion de code de Xcode.

Par exemple, en tapant la séquence de touches p i m control-period, vous insérerez #import "file" dans votre code, avec file en tant que jeton éditable, comme pour la complétion de code.

30
Chris Hanson

Vous pouvez faire en sorte que Xcode exécute le préprocesseur sur votre fichier Info.plist:

 <key> CFBundleShortVersionString </ key> 
 #ifdef DEBUG 
 <string> 1.0 (débogage) </ string> 
 #else 
 < string> 1.0 </ string> 
 #endif 

Voir http://developer.Apple.com/technotes/tn2007/tn2175.html pour plus de détails.

28
Dewayne Christensen

Débogage - comment utiliser GDB

Etant nouveau dans ce domaine, je trouve que le piégeage et l'identification des fautes sont un travail plutôt décourageant. La console, bien qu’il s’agisse d’un outil puissant, ne donne généralement pas des résultats très intuitifs et il peut être tout aussi difficile de comprendre ce que vous regardez dans le débogueur. Avec l'aide de certains d'entre eux sur Stack Overflow et le bon article sur le débogage que l'on peut trouver sur Cocoa With Love , il devient un peu plus convivial.

27
Joe

Naviguez entre les fichiers ouverts:
⌥⌘ ←
⌥⌘ →

26

Techniquement, c'est un conseil d'Interface Builder, mais ce sont des livres identiques, donc je ne pense pas que cela soit hors sujet ...

Maj + Clic droit sur l'un de vos contrôles et vous obtenez une liste de sélection Nice de la hiérarchie des objets. Plus de clic, clic, clic, frustration!

25
blissapp

Avec Trackpad:

  • Balayez trois doigts vers le haut - Basculez entre l’en-tête et le fichier source, ce qui est plus facile que Cmd + Opt + Up;
  • Glissez trois doigts vers le bas - Basculez entre déclaration et définition lorsque vous sélectionnez une classe ou une méthode, ces deux types sont actuellement trouvés;
  • Faites glisser trois doigts vers la gauche - Retournez (Cmd + Opt + Left)
  • Faites glisser trois doigts vers la droite - Avancez (Cmd + Opt + Right)

Testé avec Xcode 3.2.5.

22
iwill

Le navigateur de classe dans Xcode! Atteint en appuyant sur shift +  + c. Vous pouvez réduire la portée pour afficher uniquement votre projet actif. Cela vous donne une vue moins encombrée tant que vous voulez seulement parcourir la hiérarchie des classes.

21
Schpaencoder

En utilisant ] insérer automatiquement [ à l'emplacement correct

Je viens d'un contexte .NET, je suis donc habitué à taper un symbole, puis l'un des noms de ses méthodes. Donc, j'oublie toujours d'inclure le [ avant de commencer à saisir le nom de l'objet. Habituellement, cela signifiait que je devais aller au début de la ligne et ajouter le [ manuellement. Je ne savais pas que je pouvais appuyer sur ] à la position actuelle du curseur, et il sera ajouté automatiquement.

Il y a moyen d'utiliser ceci: soit après avoir tapé le nom de la fonction, soit juste avant de saisir le nom de la fonction.

Méthode 1: après le nom de la fonction

myObject testMethod]

... devient:

[myObject testMethod]

... avec le curseur placé après le ].

Méthode 2: avant le nom de la fonction

myObject]

... devient:

[myObject ]

... avec le curseur placé à droite avant le ].

L'avantage de ce dernier (2) est que l'achèvement du code filtrera sur les méthodes de votre objet. Alors qu'avec l'ancien (1), si vous essayez d'appeler l'achèvement du code immédiatement après myObject, il ne sera pas filtré. Un autre avantage de (2) est qu'il se comporte davantage comme les autres langages de programmation utilisant la notation par points. Vous tapez le nom de l'objet puis simplement ] au lieu de . accéder à une méthode.

19
Senseful

Sélectionnez un bloc de texte et tapez cmd-/pour le commenter. Recommencez pour supprimer les caractères de commentaires.

Ceci est particulièrement utile lorsqu'il est associé à une correspondance d'accolade en double-cliquant sur des caractères équilibrés (parenthèses, accolades, parenthèses).

17
Frank Szczerba

Être capable de voir rapidement toutes les méthodes qui peuvent être remplacées par une super classe. Par exemple, lors de l'extension de UITableViewController, je tape simplement mon implémentation:

- ta

puis je frappe ESC pour voir toutes les méthodes de ma super-classe qui commencent par "ta" telles que

- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

Cela fonctionne également lors de l'adoption de protocoles.

16
nicktmro

Command ⌘alt ⌥shiftT : révéler le fichier en cours d'édition dans l'arborescence du projet.

14
VdesmedT

ctrl + alt +  + r effacer le journal

14
Nick Van Brunt

Utiliser le navigateur de classes pour afficher les méthodes héritées

La documentation de référence sur les API d'Apple n'indique pas les méthodes héritées d'une superclasse. Parfois, cependant. il est utile de pouvoir visualiser la gamme complète des fonctionnalités disponibles pour une classe, y compris une classe personnalisée. Vous pouvez utiliser le Navigateur de classes (dans le menu Projet) pour afficher une liste simple ou hiérarchique de toutes les classes associées à un projet en cours. Le volet supérieur situé dans la partie droite de la fenêtre du navigateur affiche une liste des méthodes associées à l'objet sélectionné dans le navigateur. Vous pouvez utiliser la feuille d'options de configuration pour sélectionner "Afficher les membres hérités" afin d'afficher les méthodes héritées ainsi que celles définies par la classe sélectionnée. Vous cliquez sur le symbole du petit livre pour accéder à la documentation correspondante.

13
mmalc

Lorsque vous utilisez Code Sense avec plusieurs claviers, utilisez control + , pour afficher la liste des finitions disponibles, control + . d'insérer l'achèvement le plus probable, et control + / Et shift + control + / pour passer d'un jeton à l'autre. Les touches sont toutes ensemble sur le clavier, juste sous la rangée de base, ce qui est bon pour la mémoire musculaire.

13
Chris Hanson

Cela va sans dire, mais si vous souhaitez utiliser la navigation intra-Word, veillez à modifier les préréglages de clé dans Spaces (dans le volet de préférences Expose & Spaces), si vous l'utilisez.

J'ai changé d'espaces pour utiliser Ctrl-Option Gauche/Droite.

Édition: pour définir les espaces sur Ctrl-Option Gauche/Droite, sélectionnez la fenêtre "Pour basculer entre les espaces:" et maintenez la touche Option enfoncée. Le premier élément passera des touches fléchées Ctrl aux touches fléchées Ctrl-Option.

12
Jablair

Imprimer Liste complète des raccourcis clavier Xcode et placez-le à côté de votre moniteur.

10
Nikita Zhuk

marque pragma

Exemple:

#pragma mark === Initialization ===

L’écriture de cette ligne avant toutes les méthodes d’initialisation générera un titre Nice dans le menu déroulant au-dessus de l’éditeur.

Ouvrir rapidement

Maj + cmd + D Commencez à saisir le nom du fichier que vous souhaitez ouvrir. Très cool si vous recherchez des en-têtes de cadre. Ils ont aussi de bons commentaires, parfois des informations supplémentaires à la documentation.

ESC

Par exemple, lorsque votre curseur de texte utilise un nom de méthode incomplet, appuyez sur ÉCHAP. Il va stocker tout ce qui pourrait s'y trouver et vous pouvez rapidement compléter de très grands noms de méthodes. C'est également utile si vous ne vous souvenez pas du nom exact d'une méthode. Appuyez simplement sur ESC.

Je pense que ce sont les meilleurs que je connaisse jusqu'à maintenant.

(Migration de la question supprimée par l'utilisateur du débordement de pile Merci.)

10
Jeff Atwood

Cmd-/pour insérer automatiquement "//" pour les commentaires. Techniquement, le même nombre de frappes, mais cela semble plus rapide ...

La structure de projet par défaut consiste également à placer les ressources et les fichiers de classe à des emplacements distincts. Pour des quantités de code plus importantes, créez des groupes logiques et rassemblez les fichiers de code et xib associés. Les groupes créés dans XCode ne sont que des structures logiques et ne modifient pas l'emplacement de vos fichiers sur le disque (vous pouvez cependant les configurer pour répliquer une structure de répertoires réelle si vous le souhaitez).

Utilisation ^T échanger les deux lettres précédentes

Cela fonctionne dans toutes les applications Cocoa, mais je l'aime particulièrement lors du codage. Utilisation ^T (Ctrl + T) pour échanger les deux lettres adjacentes au curseur, ou lorsque le curseur est à la fin, les deux lettres précédant le curseur. Par exemple:

fi^T

... devient:

if

... qui est une faute de frappe commune que je fais.

9
Johan Kool

Journalisation de débogage sans recompilation

cdespinosa la réponse de Stack Overflow Comment déboguer avec NSLog (@ “Inside of the iPhone Simulator”)? donne une méthode pour une technique de débogage via journalisation qui ne nécessite aucune recompilation de source. Un truc incroyable qui garde le code libre de tout débogage, a un revirement rapide et m'aurait évité d'innombrables maux de tête si je l'avais su plus tôt.

TODO commentaires

Préfixer un commentaire avec TODO: le fera apparaître dans le menu déroulant de la fonction "raccourci", comme suit:

int* p(0); // TODO: initialize me!
9
fbrereto

Cliquez avec le bouton droit sur n'importe quel mot et sélectionnez "Rechercher le texte sélectionné dans la référence d'API" pour rechercher dans l'API ce mot. Ceci est très utile si vous devez rechercher les propriétés et/ou les méthodes disponibles pour une classe. Au lieu d'aller sur Apple.com ou Google, vous obtiendrez une fenêtre contextuelle indiquant ce que vous cherchiez (ou ce qui avait été trouvé).

8
kdbdallas

Pour moi, ça a toujours été: Command ⌘ + :

Après le débogage, l'exécution ou autre chose, si vous quittez iPhone Simulator ou l'application de débogage, la fenêtre du débogueur vous reste.

Lorsque vous utilisez la "disposition à fenêtre unique", vous devez revenir à l’éditeur en effectuant un clic dans la barre d’outils, ce qui est gênant (vous devrez ensuite "supprimer le volet de détail").

Le raccourci ci-dessus le fait et vous laisse prêt à coder.

8
Martin Marconcini

Construire le bruit succès/échec; du terme:

defaults write com.Apple.Xcode PBXBuildSuccessSound ~/Library/Sounds/metal\ stamp.wav
defaults write com.Apple.Xcode PBXBuildFailureSound ~/Library/Sounds/Elephant
8
geowar

Dans PyObjC , vous pouvez utiliser l'équivalent de #pragma mark pour le menu déroulant des symboles:

#MARK: Foo

et

#MARK: -

8
Dan

⌘` pour formater (réindentir) correctement votre code

EDIT: La fonction de réindentation apparente (Édition> Format> Réindentation) n'a pas de raccourci par défaut. Je suppose que j'en ai assigné un (dans Préférences> Liaisons de touches) il y a longtemps et je ne m'en souviens même pas. Désolé de vous avoir induit en erreur.

8
Thomas

Cmd + Ctrl + up / down effondre toutes vos fonctions ou les décompose.

7
Johnny Mast
  1. Maintenez cette option enfoncée tout en sélectionnant du texte pour sélectionner des sections de texte non contiguës.
  2. Maintenez l'option enfoncée tout en cliquant sur la liste déroulante du nom du symbole pour trier par nom plutôt que par l'ordre dans lequel ils apparaissent dans le fichier.
7
Mike Akers

Être en mesure de scinder la fenêtre de l'éditeur en cours horizontalement, ce qui est idéal pour les moniteurs à écran large afin de pouvoir afficher côte à côte le fichier source et le fichier d'en-tête. Il existe deux méthodes différentes selon la version de Xcode que vous utilisez.

Dans Xcode 3.0, il se trouve sous Préférences, Liaisons de touches, Liaisons de texte, au bas de la liste.

Dans Xcode 2.5, il se trouve sous Préférences, raccourcis clavier, raccourcis clavier, menu Affichage.

7
Mark

Un de plus .... Sélecteur de couleur hexagonale ... il ajoute l'onglet hexadécimal au panneau de couleur de votre constructeur d'interface ... vous pouvez donc maintenant utiliser la couleur hexadécimale directement à partir d'Interface Builder ..

alt text

7
kthorat

enter image description here

  1. Pour ouvrir la fenêtre de débogage au démarrage du débogueur Modifiez les préférences de débogage affichées dans l'image.

  2. Pour effacer le journal de la console à chaque exécution de l'application, cochez la case Auto Clear Debug Console.

7
kthorat

A. Il va construire et analyser, ce qui signifie que Xcode vous avertira des fuites possibles.

7
tmadsen

Je viens de découvrir comment modifier le comportement d'indentation utilisé dans les macros de texte:

Par exemple, si vous êtes comme moi et n'aimez pas ceci:

if (cond) {
  code;
}

mais préférez ceci à la place:

if (cond)
{
  code;
}

vous pouvez ensuite changer cela globalement (pour toutes les langues) en définissant les valeurs par défaut suivantes dans le terminal:

defaults write com.Apple.Xcode XCCodeSenseFormattingOptions -dict-add BlockSeparator "\n"

Cela me dérange depuis des années, j'espère que cela intéressera également quelqu'un d'autre.

La documentation de cette fonctionnalité est disponible dans le Xcode User Default Reference

7
monsterkodi

Mettez en surbrillance des blocs de code (la sélection suit)

Activez l'option "Suivre la sélection" dans la vue -> Pliage du code -> La mise au point suit la sélection ou ControlOptionf.

Cela fonctionne également pour le code Python, mais les espaces en début de ligne le jetteront. Pour résoudre ce problème, installez plug-in Xcode de Google et activez l'option "Corriger les espaces blancs lors de l'enregistrement" dans les préférences qu'il installe. Cela effacera les espaces de fin chaque fois que vous enregistrez un fichier. Par conséquent, si la mise en surbrillance est gâchée, vous pouvez simplement enregistrer le fichier et il fonctionnera à nouveau. (Et voyez, c’est en fait deux astuces en une, parce que cette fonctionnalité du plugin est utile pour avoir seule).

Voici un exemple avec du code Python aléatoire que je viens d'écrire. J'utilise le thème de coloration de la syntaxe Midnight Xcode.

Some random Python code.

Ceci est vraiment utile pour les parties hautement imbriquées du code, pour garder une trace de ce qui est où. Remarquez également qu'à gauche, juste à droite des numéros de ligne, ces parties sont également colorées. C'est la barre de pliage du code. Si vous passez votre souris sur le côté, cela met en évidence la partie sous la souris. Et n'importe laquelle de ces barres colorées peut être pliée, autrement dit, les parties du code mises en surbrillance sont exactement les parties pouvant être pliées.

7
asmeurer

Le formatage du code Xcode ... est l’une des choses dont vous avez besoin pour rendre votre code lisible et beau.

Vous pouvez faire le formatage du code vous-même ou gagner du temps en utilisant des scripts.

Un bon moyen est de… utiliser ncrustify . Cela est expliqué dans Formatage de code dans Xcode.

6
kthorat

Si vous avez un Mac multi-touch capable - utilisez MultiClutch pour mapper certaines des frappes de touche décrites par les gestes de la souris.

J'utilise trois doigts en avant et en arrière pour aller de l'avant en arrière dans l'historique des fichiers (cmd-alt-.), Et pince pour basculer entre .h et .m.

6
TimM

Le menu User Scripts contient de nombreux avantages et il est relativement facile d'ajouter les vôtres. Par exemple, j'ai ajouté un raccourci et l'a lié à cmd-opt-- pour insérer un séparateur de commentaires et un #pragma mark dans mon code afin de décomposer rapidement un fichier.


  #!/bin/sh
  echo -n "//================....================
  #pragma mark "

Lorsque je tape cmd-opt--, ces lignes sont insérées dans mon code et le curseur est pré-positionné pour éditer le composant pragma mark, qui apparaît dans la fenêtre contextuelle du symbole.

6
Ben Gottlieb

Utilisez AppKiDo pour parcourir la documentation.

Utilisez Accessorizer pour un tas de tâches banales et répétitives dans Xcode.

6
James Moore

Pour afficher les options de complétion automatique actuelles dans un menu contextuel par défaut (sans avoir à appuyer sur ESC premier), tapez

defaults write com.Apple.Xcode XCCodeSenseAutoSuggestionStyle List

dans le terminal et redémarrez Xcode.

6
Ole Begemann

Une autre façon de définir le nom de votre société dans un modèle de projet consiste à:

  • Ajoutez un contact pour vous dans le carnet d'adresses
  • Modifiez le champ Société de votre contact en indiquant votre nom de société
  • Maintenant, sélectionnez votre contact puis allez au menu et sélectionnez Carte -> Créer cette carte
  • Votre carte de contact doit maintenant être en gras dans le carnet d'adresses pour le confirmer.

Cela devrait maintenant ajouter le nom de votre société à tous vos modèles de projet et fournir aux autres applications davantage d'informations de remplissage automatique!

6
Daniel Granger

Découvrez un screencast de Nice sur "devenir productif dans Xcode": devient-productif dans xcode

6

Lorsque vous utilisez la complétion de code sur une méthode et que celle-ci comporte plusieurs arguments, utilisez CTRL +/pour passer à l'argument suivant à renseigner.

6
crackity_jones

Pour lier un nouveau cadre

(Dans le volet Groupes et fichiers, ouvrez le triangle d'affichage des cibles pour afficher les cibles associées à votre projet.)

  1. Dans le volet Groupes et fichiers, double-cliquez sur la cible de votre projet actuel pour afficher le panneau Informations sur la cible.
  2. Dans le panneau Info, sélectionnez l'onglet Général. Le volet inférieur affiche les infrastructures actuellement liées.
  3. Ajoutez un nouveau cadre en appuyant sur le bouton + en bas à gauche du panneau et en sélectionnant dans la liste présentée dans la feuille qui apparaît. (Il est important de noter que la liste dans la feuille ne montre que les cadres pertinents pour la cible ...)

(Cela n'était pas disponible il y a deux ans, mais cela vaut néanmoins la peine d'être signalé comme un gain de temps considérable en trouvant le framework dans le système de fichiers et en le faisant glisser dans le projet ...)

5
mmalc

Liens clés aux actions Xcode

J'adore aussi le "re-indent". Certes, il n’existe aucun raccourci par défaut, mais vous pouvez en ajouter un à partir de l’onglet onglet Reliure clavier du panneau de préférences Liaisons de clavier.

Ce qui est un gain de temps tout seul. Il suffit de rechercher vos actions préférées et d'ajouter/modifier des raccourcis clavier!

Les réglages par défaut que je trouve utiles sont CMD + "et CMD + 'pour ajouter/supprimer des divisions verticales. Maintenez cette option enfoncée et vous avez maintenant la même chose pour l’horizontale. Mais si ces gestes ne fonctionnent pas pour vous, vous pouvez toujours change les.

5
Old McStopher

Lorsque vous tapez une méthode, appuyez sur Echap pour voir les options de complétion de code (cela a sans doute été mentionné auparavant). Je savais déjà cela, mais AUJOURD'HUI, j'ai découvert que si vous appuyez sur le bouton dans le coin inférieur droit de la fenêtre de complétion de code (ce sera soit un "A", soit un Pi), vous pouvez basculer entre le tri alphabétique et le suivant. semble être en train de trier par hiérarchie de classe.

Tout à coup cette fenêtre est utile!

5
kubi

Ctrl-gauche/Ctrl-droite pour naviguer dans les mots d'un nom de variable ou de méthode. Je ne peux pas vivre sans celui-ci.

5
John Gallagher

Ctrl + R pour exécuter le texte sélectionné en tant que script Shell qui retourne avec la sortie collée après la sélection!

5
humasect

Sélectionnez un bloc de texte et utilisez

Command + '/' 

Pour commenter le bloc de texte. Sélectionnez le bloc commenté et utilisez le même raccourci pour le supprimer.

5
gnuchu

Dans les phases de construction de Shell, vous pouvez écrire sur stderr en utilisant le format suivant:

<filename>:<linenumber>: error | warn | note : <message>\n

C'est le même format utilisé par gcc pour afficher les erreurs. Le nom de fichier: partie linumber peut être omis. En fonction du mode (erreur, avertir, note), Xcode affichera votre message avec un badge rouge ou jaune.

Si vous incluez un chemin de fichier absolu et un numéro de ligne (si l'erreur s'est produite dans un fichier), un double clic sur l'erreur dans le journal de construction permet à Xcode d'ouvrir le fichier et de passer directement à la ligne, même si elle ne fait pas partie du projet. Très utile.

5
Nikolai Ruhe

En ce qui concerne la fonctionnalité " Ouvrir rapidement " - c'est génial, mais j'ai toujours manqué le cmd-shift-t de TextMate pour parcourir les projets et les fichiers (symboles, méthodes, etc.).

C'est pourquoi j'ai publié un plugin Xcode qui fournit justement cela. Cela s'appelle Code Pilot et vous voudrez peut-être jeter un coup d'œil à celui-ci: http://macoscope.net/fr/mac/codepilot /

5
kodz

Vous pouvez apporter de nombreux ajustements à la manière dont Xcode traite le formatage de votre code, mais uniquement si vous modifiez les paramètres via la ligne de commande. J'ai concocté un petit programme qui vous permet de les ajuster à votre guise. Prendre plaisir :)

Options de formatage Xcode

4
Tyler

Cmd + ~ (tilde - semble bizarre sur le bouton ...)

Pour basculer entre toutes les fenêtres Xcode ouvertes, même lorsque plusieurs projets sont ouverts.

4
LK.

Reculer ou avancer un mot complet avec alt-. Reculer ou avancer un fichier de votre historique avec cmd-alt-. Basculez entre interface et implémentation avec cmd-alt-.

Passez à la prochaine erreur dans la liste des erreurs de construction avec cmd- =. Affichez le panneau de recherche multiple avec cmd-shift-f. Basculez la visibilité complète de l'éditeur avec cmd-shift-e.

Accédez à l'onglet Projet avec cmd-0, à l'onglet Construction avec cmd-shift-b et à l'onglet de débogage avec cmd-shift-y (les mêmes que les commandes clavier de l'action, avec décalage ajouté).

4
Jason Harris

J'ai créé mes propres modèles de fichiers pour NSObject, UIView et UIViewController de sorte que lorsque je crée de nouvelles classes, les fichiers sont tous configurés avec des sections privées et la journalisation de l'adresse de la classe dans init et dealloc.

Exemple (la classe dérivée NSObject nommée 'test' démarrera comme ceci):

//=====================================================
// Private Interface
//=====================================================

@interface test (private)
@end

//=====================================================
// Public Implementation
//=====================================================

@implementation test

- (void)dealloc {
    NSLog(@">>> Dealloc: test [0x%X]", self);
    [super dealloc];
    NSLog(@"<<< Dealloc: test");
}

- (id) init
{
    self = [super init];
    if(self) {
        NSLog(@">>> Alloc: test [0x%X]", self);
    }
    return self;
}

@end

//=====================================================
// Private Implementation
//=====================================================

@implementation test (private)
@end

Par exemple, de nombreuses ressources sont disponibles Cocoa dev: concevez vos propres modèles de projet Xcode.

4
LK.

Quelques astuces à trouver dans Astuces sur les outils Xcode.

4
Joe

Triez le contenu des groupes dans le volet Groupes et fichiers de Xcode en sélectionnant Groupe, puis Édition> Trier par> Nom.

Vous vous attendriez à trouver cela dans le menu contextuel du groupe, mais ce n'est pas là.

Crédit: Tri des fichiers dans Xcode.

4
Matt Andersen
  • Pour "définir l'instruction suivante", faites simplement glisser le pointeur d'instruction rouge sur la ligne suivante à exécuter. (source)
3
Chris R. Donnelly

Alt-Gauche et Droite pour aller à la fin/début de la ligne. Ceci avec les touches CTRL-Gauche et Droite pour passer à la lettre majuscule ou au saut de mot suivant. ces deux-là me font gagner beaucoup de temps

3
Aran Mulholland

Utilisez la ligne de commande xcodebuild pour effectuer une nouvelle génération sur la machine de construction partagée:

cd project_directory
xcodebuild -configuration Release -alltargets clean
xcodebuild -configuration Release -alltargets
3
billo

Si le hilighting est gâché, si vos ivars ne le sont pas ou autre chose, faites simplement ⌘-A ⌘-X ⌘-V, qui sélectionnera tout, coupera et collera et tout le hilight sera corrigé. Alors maintenez simplement et appuyez sur A puis X puis V.

3
mk12

Appuyez sur ⌥⇧⌘D pour activer "Open this Quickly", ce qui vous permet d'accéder au premier résultat de "Open Quickly" en utilisant le texte sélectionné. Si le texte sélectionné est au format <filename:lineNumber>, (avec ou sans <>) "Ouvrir rapidement ce fichier" vous renvoie au fichier plus le numéro de ligne.

Vous pouvez combiner cela avec le conseil suivant:

Vous pouvez écrire des journaux contenant le nom de fichier et le numéro de ligne de l'entrée de journal à l'aide de cette macro: (Assurez-vous de définir -DDEBUG = 1 sur les drapeaux C utilisés dans la configuration de débogage de votre cible.)

#ifdef DEBUG
#define DLog(fmt, ...) NSLog((@"%s <%@:%d> " fmt), __PRETTY_FUNCTION__, [[NSString stringWithFormat:@"%s", __FILE__ ] lastPathComponent] ,__LINE__, ##__VA_ARGS__)
#else
#define DLog(format, ...)
#endif

Dans votre sortie DLog (), double-cliquez sur le caractère "<" pour sélectionner le <filename:lineNumber> et appuyez sur ⌥⇧⌘D pour ouvrir la ligne où se trouve le journal dans le code source.

3
Juan Arzola

Mes favoris doivent être ces raccourcis d'éditeur général:

  •  +  vous ramène à votre éditeur à partir du mode débogage.
  •  + Shift + R vous fait passer du mode débogage à la vue éditeur (mode projet)
  •  + Shift + E "maximise" l'éditeur (très utile si vous avez des résultats de construction, etc. affichés au-dessus de votre éditeur et que vous voulez juste augmenter la taille de votre éditeur de source)
  • Ctrl + 2 affiche un aperçu de votre code actuel
  •  + Return lance l'application
  •  + Shift + Return termine l'application
3
PlagueHammer

Je n'aime pas vraiment la fonctionnalité de formatage/réindexage du code intégrée à xcode. J'ai donc trouvé très utile d'utiliser uncrustify comme formateur de code. Il peut être utilisé comme script utilisateur: http://hackertoys.com/2008/09/18/adding-a-code-beautifier-script-to-xcode/

3
cahlbin

Je trouve que l'utilisation des raccourcis pour construire/nettoyer et exécuter votre projet m'a vraiment fait gagner du temps:

  • Cmd-R: Build & Run
  • Cmd-Y: Build & Debug
  • Cmd-Shift-Enter: arrêter le projet en cours
  • Cmd-Shift-K: construction propre
2
NSSec

Afficher le sélecteur pour le symbole ouvert

+ ⌥ + ⇧ + clic sur un symbole

Montre

enter image description here

Vous pouvez choisir d'ouvrir le symbole dans:

  • l'onglet en cours
  • dans un onglet existant
  • dans un nouveau (avec le + dans le coin supérieur droit)
  • dans une scission verticale (avec le + à droite) ou
  • dans une nouvelle fenêtre (avec le + à gauche).
2
Bruno Berisso

Je ne sais pas si tout le monde le sait déjà, mais j'ai été ravi d'apprendre que je pouvais utiliser le "pliage de code" et masquer les fonctions imbriquées que je ne voulais pas regarder en cliquant sur la zone grise la plus proche du code que vous voulez. plier.

Difficile à expliquer . . .

2
Kevin Yap

Instantanés, Fichier> Créer un instantané, offre un moyen rapide d’enregistrer une révision de votre projet si vous n’utilisez pas un système de contrôle de version adéquat. Un excellent moyen d'expérimenter un changement important et potentiellement dommageable.

2
Chris Wagner

Le fait que je puisse utiliser Emacs en tant qu'éditeur et Xcode en tant que constructeur/débogueur ... Le meilleur des deux mondes, à mon humble avis.

2
Brian Postow

La liste complète des raccourcis se trouve ici: http://iphonehuston.blogspot.com/2009/08/shortcuts-for-xcode.html

2
amok

Renommez un fichier partagé par plusieurs projets:

  1. Ouvrez tous les projets.
  2. Renommez le fichier en un projet.
  3. Xcode ajuste automatiquement tous les projets ouverts pour refléter le nouveau nom du fichier.
2
Steven Fisher
1
stackr
  1. Cmd + Option + O pour ouvrir un fichier dans une fenêtre séparée.
  2. Peut configurer Tab pour indenter toujours. Je l'utilise fréquemment pour mettre en retrait un fichier entier.
  3. Ctrl + Touches fléchées pour passer d'un mot à l'autre. Si vous avez OneTwo, vous pouvez passer d'un à deux avec Ctrl + Flèche droite.
  4. Vous pouvez utiliser les liaisons emacs, il y a même un anneau d'arrêt! J'utilise les touches Ctrl + w et Cmd + C ensemble lorsque j'ai besoin de copier deux morceaux de texte différents.
  5. Dans le navigateur de documentation, vous pouvez limiter vos recherches à une bibliothèque particulière, par exemple uniquement la bibliothèque iOS 4.2. Cela m'aide à me concentrer sur des API disponibles uniquement sur une version iOS/Mac particulière du SDK.
  6. Cmd + Shift + A pour construire et analyser.
1
Plumenator