2012-11-15 8 views
6

Je suis nouveau à Xcode et a trouvé quelque chose de frustrant. Je sélectionne quelques lignes de code et les commente. par ex.Xcode commentaire commentaire commentaire

//  NSString* u = __txtUsername.text; 
//  NSString* p = __txtPassword.text; 

alors je réindenter le code et le code commenté va comme ci-dessous

 //  NSString* u = __txtUsername.text; 
     //  NSString* p = __txtPassword.text; 

maintenant si j'essaie de décommenter le Xcode code commenté produit quelque chose comme ci-dessous

//  //  NSString* u = __txtUsername.text; 
//  //  NSString* p = __txtPassword.text; 

en fait, au lieu de supprimer //, il ajoute plus // au début et la suppression // du code re-indenté commentaires est vraiment frustrant.

Y at-il une solution à cela ou j'ai fait quelque chose ridiculement?

Répondre

11

Vous avez raison, Xcode est stupide. Si vous êtes dans cette situation, continuez à appuyer sur cmd- [pour amener le texte jusqu'au début de la ligne, puis décommentez et cela devrait marcher. Pourquoi Xcode ne supprime pas simplement la première instance de // sur une ligne qui me dépasse?

+1

Merci! Vous avez raison, je pense que les bonnes étapes sont (** 1 **) en sélectionnant le code commenté (** 2 **) 'cmd + [' (** 3 **) 'cmd + /' (** 4 **) 'ctrl + i'. – anonim

+0

ce comportement était dans la version ultérieure de xCode, initialement il a utilisé pour fonctionner comme prévu qui me conduit à penser que cela pourrait être une option quelque part dans l'océan de paramètres xCode. – carbonr

+1

+1 pour Xcode est stupide –

1

Laissez simplement le // complètement à gauche, sinon la fonctionnalité de suppression de commentaire ne fonctionnera pas.

Si vous avez besoin de commentaire multiligne, votre meilleur pari peut-être utiliser cette syntaxe:

/* 
    NSString* u = __txtUsername.text; 
    NSString* p = __txtPassword.text; 
*/ 

Ensuite, vous devez supprimer /* et */ décommenter le bloc de code.

+1

À moins bien sûr qu'il y ait déjà un '/ * comment * /' sur l'une de ces lignes ... – trojanfoe

+0

Cela est vrai. Dans ce cas, ma préférence est d'utiliser 'command' +'/'et de laisser tout le chemin vers la gauche. – woz

1

Si je dois en commentaire une quantité non négligeable de code que j'utilise:

#if 0 

code 
code 
code 

#endif // 0 

Si c'est une quantité négligeable de code que je le fais manuellement. C'est à peine du travail manuel comparé à certains emplois, donc cela ne me dérange pas.

Je n'ai jamais utilisé la commande (un) comment sur n'importe quel IDE.

4

Editor-> Structure-> Uncomment Sélection

l'option ne sera pas affiché si les lignes SANS COMMENTAIRES inclus dans la sélection

commentaires doivent apparaître AU POSTE PREMIER à être considérés comme tels

1

Tant que vous ne mettez en évidence que les lignes exactes qui sont commentées, la fonction "décommenter" devrait fonctionner correctement. Si vous mettez en surbrillance le code commenté au-delà des limites du code non commenté, il le traite comme si vous "ajoutez" au code déjà commenté. Ce qui, comme vous le savez, redéfinit et re-commente le code déjà commenté, si cela a du sens. Il ne devrait pas être nécessaire de jouer avec l'indentation ... Xcode devrait tout remettre au bon endroit. J'aime le concept "/ * ... * /" de woz though. Je l'aimerais plus s'il y avait un raccourci clavier qui rendrait cette méthode un peu plus rapide. Mise en surbrillance rapidement n'importe où w/dans la rangée, puis en appuyant sur la touche "cmd /" semble un peu moins précis et plus rapide pour moi.

Je ne sais pas si cela a été corrigé sur Xcode depuis cette publication, mais j'ai pensé que je le commenterais.

Bonne chance à tous.