Fonctionnalités cachées de Xcode 4

109

Maintenant que Xcode 4 est officiellement publié, il est temps de donner suite à ma question précédente: les fonctionnalités cachées de Xcode

Alors que sont-ils? Quels sont ces petits trucs et astuces cachés de Xcode 4 dont vous ne pouvez pas vous passer?

Veuillez limiter vos conseils à ceux qui sont nouveaux et spécifiques à Xcode 4!

Jeff Atwood
la source

Réponses:

42

Si vous aimez que votre code soit aussi beau qu'il s'exécute, vous l'avez sans aucun doute utilisé #pragma mark - et #pragma mark <name>pour fournir un joli regroupement visuel dans la liste déroulante de la classe Xcode. Xcode 4 les combine maintenant en un seul#pragma mark - <name> .

En savoir plus sur la marque pragma .

Marque Xcode pragma

Answerbot
la source
2
La version (légèrement plus portable) // MARK: -fonctionne-t-elle aussi?
Nikolai Ruhe
1
oui, les deux vont bien: // MARK: - <nom> ou // MARK: <nom> -
nschmidt
35
  • shift- cmd- optcliquer sur un symbole vous permet d'indiquer à Xcode exactement où dans l'interface utilisateur vous voulez que le fichier de navigation s'ouvre.

  • cmd- retfait disparaître l'éditeur / assistant de version (le volet de droite)

  • shift- cmd- Ypour masquer le débogueur

  • cmd- 0pour masquer le navigateur (volet gauche)

  • cmd- [1..n]basculer entre les navigateurs à gauche

  • cmd- opt- [1..n]basculer entre les utilitaires (chose généralement à droite)

  • ctrl- [1..n]basculer entre différents fichiers liés dans l'éditeur

Dans l'ensemble, Xcode 4 essaie de garder les choses cohérentes avec les touches de raccourci. Cmd est pour les commandes principales. L'ajout de modificateurs concerne des commandes analogues axées sur une sous-fonctionnalité particulière.

(Ce ne sont que les quatre qui me viennent à l'esprit comme étant les raccourcis les plus difficiles que j'utilise constamment! Je suis sûr que cela changera avec le temps au fur et à mesure que mon flux de travail sera refacturé dans la nouvelle tendance.)

bbum
la source
8
shift-cmd-opt-click ... Mind. Soufflé. Je vous remercie.
Danilo Campos
1
Oooh ... merci d'avoir édité ça, Dave. Je ne savais pas pour <kbd> ... </kbd>.
bbum
10
La chose ⇧⌘⌥-clic est une fusion de deux raccourcis: ⌘-cliquez sur n'importe quel symbole pour ouvrir le fichier qui le déclare, et ⇧⌥ pour faire apparaître le pop-over où l'ouvrir. Vous pouvez utiliser cette dernière augmentation de combinaison de touches sur plusieurs autres choses, comme je l'ai décrit dans l'une de mes réponses.
Peter Hosey
3
Aussi, pour ceux comme moi qui utilisaient les raccourcis ⌘- [1–6] d'Interface Builder pour les différents inspecteurs, ceux-ci sont devenus les ⌘⌥- [1–7] que vous avez mentionnés, lors de l'édition d'une pointe.
Peter Hosey
Existe-t-il un moyen d'utiliser ⇧⌘⌥-clic sans utiliser réellement de souris, mais plutôt avec le clavier (et lorsque le curseur est sur un symbole que vous souhaitez ouvrir)? ⌘⌥-, ouvre un nouvel éditeur adjacent, mais AFAICS seul le fichier actuel est pris en compte.
Piotr Byzia
18

Xcode 4 ajoute une nouvelle fonctionnalité «Extraits de code», accessible via Affichage> Utilitaires> Bibliothèque d'extraits de code. Pour ajouter un nouvel extrait de code, sélectionnez du texte dans la vue de l'éditeur et faites-le glisser dans la bibliothèque d'extraits de code. Vous pouvez soit faire glisser un extrait de code et le déposer dans votre code pour l'utiliser, soit, beaucoup plus facilement, lui attribuer un raccourci de complétion.

Lorsque vous tapez cette série de lettres, elle apparaîtra automatiquement dans le menu contextuel de saisie du code au fur et à mesure que vous tapez votre code. Par exemple, parmi beaucoup d'autres, j'ai un extrait de code configuré pour que la saisie de "svk" se développe en setValue:<#value#> forKey:<#key#>. Cela peut économiser beaucoup de saisie et / ou de pêche dans le menu de saisie semi-automatique pour les méthodes et autres expressions de code que vous utilisez le plus. Xcode est livré avec un tas d'extraits de code intégrés qui sont également très utiles.

Brian Webster
la source
15

Nouveau raccourci que j'utilise le plus souvent: glisser trois doigts (vers le haut ou vers le bas) pour échanger les homologues (entre l'interface et les fichiers d'implémentation). Fini les acrobaties à la main!

Merci à https://twitter.com/xctotd/status/48148271759241216

wdn
la source
1
@Dave DeLong, comment pouvez-vous faire cela sur le clavier? Je faisais l'option-commande-up pour passer de l'interface à l'implémentation dans XCode 3. Cela ne fonctionne plus dans 4. Quelle est la nouvelle méthode?
Dan Rosenstark
5
@yar control-cmd-up / down arrow
Dave DeLong
Merci comme toujours, @Dave DeLong.
Dan Rosenstark
Est-ce toujours le cas chez Lion? Cos in lion un glissement vertical à 3 doigts sur le trackpad active Mission Control. Je suppose que nous parlons de glisser le trackpad et non de la souris magique.
DonnaLea
Il ne semble pas qu'il existe une solution simple actuellement, même si vous passez Mission Control à un balayage à 4 doigts. Voir ce fil: stackoverflow.com/questions/6771057/…
wdn
13

shift-option -cliquez sur un fichier dans leListe des groupes et des fichiersNavigateur de projet, ou maintenez shift- optiontout en choisissant un fichier dans la barre de saut.

Vous obtiendrez un pop-over à partir duquel choisir où ouvrir le fichier. Onglet nouveau ou existant, éditeur de fractionnement (Assistant) nouveau ou existant, nouvelle fenêtre - toutes les options possibles sont là.

Peter Hosey
la source
4
Merci de l'avoir signalé. Très utile. Il fonctionne également sur le fichier sélectionné dans la boîte de dialogue «Ouvrir rapidement» (⇧⌘O).
Cris
2
J'adore le travail accompli dans un petit widget d'interface utilisateur que la plupart des gens ne verront jamais. :)
Simon Whitaker
13

Les onglets dans Xcode 4 sont géniaux. Chacun conserve sa propre disposition distincte, de sorte que vous pouvez avoir plusieurs onglets avec des éléments différents et que chacun d'entre eux soit disposé de manière appropriée.

J'ai configuré mes projets avec trois mises en page: une pour l'objet de projet, une pour chaque pointe (montrant les sources de la classe du propriétaire) et une pour chaque classe .

Il y a un bug ici: à partir de la version 4.0, Xcode réinitialisera l'état (désactivant tous les assistants) de l'onglet actif lorsque vous rouvrirez le projet. La solution de contournement consiste à basculer vers un onglet sans assistant pour Xcode à fermer avant de fermer le projet. Je l'ai classé sous le numéro Radar 9178441.

Peter Hosey
la source
10
  • ctrl-6 apparaît dans le segment de fichier de la barre de saut (active le saut contrôlé par le clavier vers les méthodes)

  • cmd- {/} sélectionner l'onglet précédent / suivant

  • cmd- Jaccédez à n'importe quel éditeur (mais pourquoi oh pourquoi TAB ne passe-t-il pas entre eux?)

Cris
la source
1
Notez également que les raccourcis clavier sont configurables. J'ai changé l'onglet précédent / suivant en ⌘⌥⇠ / ⇢ pour correspondre à Chrome.
Peter Hosey
7

Raccourcis de l'éditeur

  • Cmd+ Ctrl+ up/downAller entre les fichiers .h et .m.
  • Cmd+ Ctrl+ Left/RightSauter entre les fichiers édités précédents / les fichiers édités suivants.

Raccourcis de mise en page

  • Cmd+ 0 masquer ou afficher les navigateurs
  • Cmd + opt + 0 masquer ou afficher les inspecteurs
  • Cmd+ Shift+ Ymasquer ou afficher la console du débogueur.

Raccourcis des navigateurs

  • Cmd + 1 Projet
  • Cmd + 2 Symbole
  • Cmd + 3 Recherche
  • Cmd + 4 Problème
  • Cmd + 5 Déboguer
  • Cmd + 6 Point d'arrêt
  • Cmd+ 7 Journal

Changement et saut d'onglet

  • Cmd + { Onglet précédent
  • Cmd + } Onglet suivant
  • Cmd + j Sélectionnez l'emplacement pour sauter
  • Shift+ Option+ClickFile Sélectionnez l'emplacement pour ouvrir le fichier
  • Cmd+ Alt+ Option+ ClickSélectionnez l'emplacement pour ouvrir la méthode

Inspecteurs

  • Cmd+ Opt+1 Inspecteur de fichiers
  • Cmd+ Opt+2 Aide rapide
  • Cmd+ Opt+ 3Inspecteur d'identité
  • Cmd+ Opt+ 4Inspecteur d'attributs
  • Cmd+ Opt+ 5 Inspecteur de taille
  • Cmd+ Opt+ 6 Inspecteur de connexion

Relatif à la construction

  • Cmd+ B Construire
  • Cmd+ Shift+ K Nettoyer
  • Cmd+ . haut

Pliage de code

  • Cmd+ Alt+ LeftMinimiser la méthode / classe / interface actuelle
  • Cmd+ Alt+ Right Développer la méthode / classe / interface actuelle
  • Cmd+ Alt+ Shift+ LeftMinimiser toutes les méthodes / classes / interfaces
  • Cmd+ Alt+ Shift+ RightDévelopper tout Méthode / Classe / Interface
Spark
la source
ce ne sont pas des fonctionnalités cachées
Todd Hopkinson
@icnivad - de nombreuses fonctionnalités cachées sont accessibles à l'aide de raccourcis, comme sauter des fichiers, changer d'onglet, etc.
Sagar R. Kothari
6

Voici le premier. Onglets! Xcode 4 a remplacé la «barre de favoris» utile mais rarement utilisée de Xcode 3 par des onglets persistants . Cela signifie que vous pouvez conserver un ensemble de documents de travail couramment utilisés dans votre barre d'onglets.

Pas exactement une fonctionnalité cachée en tant que telle - mais le fait que les onglets soient persistants est peut-être facilement manqué.

schwa
la source
2
De plus, vous pouvez attribuer des noms personnalisés aux onglets, ce que je ne savais pas jusqu'à ce que Scott Stevenson le mentionne: twitter.com/scottstevenson/status/50270610038865921
Brad Larson
5
Oui, vous pouvez double-cliquer sur les onglets dans Xcode 4 pour les renommer, puis utiliser les onglets nommés dans Prefs> Behaviors (via @scottstevenson)
cocoapriest
3
Oh, c'est très pratique. Je peux donc configurer un onglet de débogage / console affichant uniquement ceux-ci, puis l'afficher pendant une exécution. C'est beaucoup plus agréable que de le faire monter et descendre tout le temps.
Danilo Campos
6

Si vous rencontrez des problèmes avec l'indexation de votre projet (par exemple, les symboles n'apparaissant pas lors de la saisie semi-automatique), ouvrez la fenêtre Organisateur, cliquez sur l'onglet Projets et utilisez le bouton "Supprimer" pour supprimer les données dérivées de votre projet . Cela forcera une reconstruction de l'index du projet, ainsi que le rejet de tous les produits construits.

Brian Webster
la source
6

Voici quelques raccourcis clavier utiles pour travailler sur des écrans plus petits:

  • cmd- shift- y- Masquer et afficher la console / zone de débogage

  • cmd- 0- Masquer et afficher la navigation dans les fichiers

aitskovi
la source
6

Vous pouvez désormais associer des groupes dans le navigateur de projet à des dossiers sur le disque. Cela m'a toujours dérangé avant que la vue du fichier Xcode 3 ne représente la structure réelle du projet sur le disque.

Créez un nouveau groupe, puis avec le nouveau groupe en surbrillance, ouvrez l'inspecteur de fichiers. Dans la section identité sur la droite juste en dessous du «Chemin» se trouve une petite icône, cliquez dessus pour ouvrir la boîte de dialogue du navigateur de fichiers vous permettant de sélectionner le répertoire pour ce groupe.

Inspecteur de fichiers

Patrick
la source
6
Quoi de neuf ici? Vous pouvez toujours lier des groupes à des répertoires (Xcode 3: Command-I sur le groupe)
Nikolai Ruhe
5

Si vous maintenez la touche FN, vous pouvez numériser votre document avec les curseurs, sans déplacer le curseur

Crapaud
la source
5

Barre de saut:

si votre fonction d'écriture en dehors:

// FIXME: A Bug
// TODO: Later
// ???: ???
// !!!: !!!
// MARK: This a mark

Aimera:

Vous pouvez également rechercher:

Cliquez avec Option(Avec Shiften même temps, vous pouvez choisir une autre fenêtre), vous pouvez voir une boîte de dialogue vous permettant de spécifier où le fichier doit s'ouvrir:

Contrôle de la source:

Si vous utilisez svn ou git, annuler les modifications est facile:

Constructeur d'interface

Dans xcode 4.2, vous pouvez accéder au générateur d'interface ici:

Cliquez sur un objet d'interface utilisateur avec Shift, il affichera une liste de tous les objets sous le point.

Essayez ceci: sélectionnez un objet d'interface utilisateur, maintenez la pression Option, puis déplacez la souris sur d'autres objets. Il aimera:

Autre

Raccourci clavier: Shift+Command+Oouvrir rapidement

Essayer:

#error message
#warning message

Et lisez: Ecrire et éditer le code source

BB9z
la source
4

Éditeur de texte :

  • Cmd-cliquant sur un nom de classe vous amènera au fichier d'implémentation (ou d'en-tête) de cette classe, cmd-cliquant sur un objet vous amènera à l'endroit où l'objet est déclaré.
  • Un clic Alt ouvrira une fenêtre contextuelle de documentation pour l'objet sur lequel vous avez cliqué.

Ajouter des frameworks : Vous ne pouvez pas simplement faire cela en cliquant avec le bouton droit sur le projet ou un groupe (comme dans Xcode 3). Vous devez aller dans la vue du projet, sélectionner votre cible et aller dans l'onglet "Build Phases". Les Frameworks peuvent être gérés dans la section "Link Binary with Libraries".

Définition des dépendances cibles : Similaire à ce qui précède, dans la section "Dépendances cibles" de l'onglet "Phases de construction".

Gardez vos archives en sécurité - avant d'installer Xcode 4 (à partir de 3). Vous les perdrez (très probablement) et avec eux, vous perdrez votre capacité à symboliser vos journaux de crash.

Action de suppression-ATTENTION : "Supprimer" (au lieu de "Supprimer la référence uniquement") efface directement le fichier de votre lecteur. Il ne va pas dans la corbeille, vous ne pouvez donc pas le récupérer.

Nick Toumpelis
la source
1
DELETE est horrible. Je ne peux pas le récupérer de TRASH :(
Sagar R. Kothari
4

cmd- Jsaute à l'éditeur, mais si vous avez plus d'un éditeur ouvert, vous obtenez une superposition contenant tous les éditeurs ouverts. vous pouvez utiliser cmd- et cmd- pour basculer entre les éditeurs ouverts.

De plus, si vous avez du mal à trouver une option ou une propriété pour quoi que ce soit, la fenêtre des utilitaires est probablement votre meilleur pari:

hide and show utilities: cmd- opt-0

Les choses qui sont généralement cachées ici qui ne sont pas intuitives:

  • propriétés d'entité de modèle de données.
  • propriétés du modèle de données
  • propriétés xib
Jon
la source
4
  • Vous n'avez pas besoin de déclarer les méthodes IBAction dans le fichier .h. & Vous pouvez le connecter directement dans Interface Builder.

Exemple:

-(IBAction)btnLogInTapped:(id)sender {
    // place following method in .m file of your code. save file. Open the
    // .xib file of viewController
    // click on files owner
    // click on connection-inspector.
    // you can view your methods under "received actions"
}
  • Vous n'avez pas besoin de déclarer des variables si vous créez une propriété pour cela.

Exemple:

// a property declared in .h File of your view controller.
@property (nonatomic, retain) LogInVCtr *nxtLogInVCtr;

// synthesize above property in .m File
@synthesize nxtLogInVCtr;
// or
@synthesize nxtLogInVCtr = _nxtLogInVCtr;
// and you are done, you don't need to declare variable for it.
Sagar R. Kothari
la source
3

L'un de mes favoris est la préférence de comportement "Ouvrir l'onglet". Si vous allez dans "Comportements" dans les Préférences, vous pouvez le configurer pour qu'il accède à un onglet spécifique chaque fois qu'une analyse démarre. Vous pouvez nommer l'onglet, quelque chose comme "Debug" et Xcode4 le créera pour vous s'il n'existe pas, et vous y emmènera lorsque vous commencerez le débogage. Vous pouvez configurer cet onglet comme vous le souhaitez pour les sessions de débogage, et il restera ainsi une fois que vous l'aurez fermé.Ainsi, chaque fois que vous exécuterez une exécution, Xcode4 sera configuré comme vous le souhaitez, dans un onglet séparé. Vous pouvez même déchirer cet onglet dans une fenêtre séparée, auquel cas Xcode4 ouvrira une nouvelle fenêtre «Débogage» spécialement configurée à chaque fois que vous démarrez une exécution! Cette fonctionnalité est excellente car elle garde votre onglet ou fenêtre d'édition de code ordinaire sans encombrement avec les volets du journal et du débogueur. Fermez simplement le "

Michael Gorbach
la source
Brillant! Cela me dérange depuis des lustres.
Imron
2

Dans XCode3, il y avait une option pour "Renommer le projet". Maintenant, il vous suffit de cliquer deux fois (deuxième clic lentement) pour renommer le projet et c'est fait.

Sagar R. Kothari
la source
2

Pour limiter le nombre d'opérations de construction simultanées

Il s'agit d'une préférence (quelque peu) cachée qui vous permet de définir le nombre de tâches de compilation simultanées:

defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 4

Pour désactiver l'indexation dans l'EDI

Celui-ci désactive l'indexation de sens du code, ce qui peut économiser beaucoup de ressources dans les grands projets:

defaults write com.apple.dt.XCode IDEIndexDisable 1

pour réactiver:

defaults delete com.apple.dt.XCode IDEIndexDisable

Notez que vous devez quitter Xcode, définir les valeurs de préférence comme vous le souhaitez, les modifications prennent effet lorsque vous redémarrez Xcode.

justin
la source
1

Si vous préférez utiliser vim / emacs fonctionnant sur, disons, Terminal, ou tout autre éditeur externe, vous pouvez simplement créer votre projet xcode, ajouter des fichiers et autres, puis passer à l'édition desdits fichiers en utilisant la modification qui vous convient le mieux; chaque fois que vous basculez le focus sur une fenêtre xcode4, les fichiers modifiés seront rechargés (c'était aussi le cas avec Xcode3) et vous pourrez créer / exécuter votre application.

markpapadakis
la source
1

Deux types de spécification d'emplacement de construction à l' aide des préférences XCode4.

  1. Emplacement spécifié par les cibles - Le répertoire 'Build' se trouve dans le répertoire de votre projet.
  2. Emplacement dans les données dérivées (recommandé par XCode, comme vous pouvez le voir dans la capture d'écran) - Le répertoire 'Build' est situé sous l'emplacement DerivedData spécifié (par exemple ici dans mon cas, /Users/digicorp/Library/Developer/XCode/DerivedData)

Veuillez regarder les captures d'écran suivantes.

entrez la description de l'image ici

entrez la description de l'image ici

Sagar R. Kothari
la source
0

AIDE RAPIDE

Ctrl+ Option/ Alt+f

Trouvez l'aide rapide. Par exemple,

@property (nonatomic, retain) NSString *strQuery;

Mon curseur de texte est sur NSString& si j'appuie sur Ctrl+ Option+,f il affichera une documentation rapide dans l'inspecteur / les utilitaires.

Spark
la source