Correction de l'indentation du code dans Xcode

106

Une fois que j'ai commencé à éditer mon code et à ajouter des boucles for ou if then, mon indentation de code est coupée car le code précédent conserve son ancienne indentation au lieu de s'ajuster automatiquement.

Dans Visual Studio, vous pouvez mettre en évidence le code et sélectionner «sélection de format» pour résoudre ces problèmes - y a-t-il quelque chose de similaire dans Xcode?

Slee
la source
voici la meilleure solution
swiftBoy
Copie

Réponses:

221

Avant Xcode 9 (pour Xcode 9, voir le raccourci par défaut ci-dessous)

  1. sélectionnez le texte
  2. clic-droit
  3. il y a un élément "Ré-indenter la sélection" dans le menu contextuel

Dans XCode 4, il y a encore une étape:

  1. sélectionnez le texte
  2. clic-droit
  3. Cliquez sur "Structure"
  4. il y a une "sélection de ré-indentation" et d'autres options dans le menu contextuel

Ou en utilisant le raccourci par défaut:

  1. sélectionnez le texte
  2. appuyez sur ctrl+i
Vladimir
la source
1
Cela ne fonctionne apparemment pas avec ObjC ++ dans Xcode 5, l'option "Re-indent selection" ne fait tout simplement rien
Juan Campa
4
À partir de Xcode 9, l'option de clic droit n'est plus présente. ctrl + i fonctionne toujours cependant.
Ali Beadle
1
ctrl + i ... Thats it
Hos Mercury
1
LOL J'ai mal lu et essayé la commande + i, et il a reconstruit mon projet et m'a demandé de sélectionner un modèle de profilage.
Dronz
ctrl+ ic'est en effet, j'étais confus que ce soit "i" ou "I" ou "|", il est clair "i", merci
Windo
69
  1. sélectionnez le texte
  2. appuyez sur Control-I(le raccourci clavier par défaut)
Josh Brown
la source
1
J'ai passé trop de temps à traîner dans d'autres IDE ces derniers temps et mon cerveau a pensé que cela valait la peine d'être effacé.
Fernando Mazzon
1
Control-I ne fait rien pour moi depuis XCode 11. N'y a-t-il vraiment aucune option de menu pour cela?
Paul Slocum
2
@PaulSlocum Control-I fonctionne toujours pour moi dans Xcode 11. C'est aussi dans le menu Editeur> Structure> Re-Indent.
Josh Brown
12

Dans Xcode 4.6.3, choisissez Editor> Structure> Re-Indent.

Raccourci: Control + I (c'est 'i', pour 'indent')

Cela fonctionne sur la sélection actuelle. Si aucun texte n'est sélectionné, choisissez Edit> Select All(⌘ + A), puis effectuez la ré-indentation.

(Je reformule plus clairement les autres réponses)

Basil Bourque
la source
8

Vous pouvez le faire automatiquement dans Xcode 11

tétrajen
la source
c'est GENIUS! Je vous remercie!
radu122
Bonne chance! 👍🏻
tetrajen
Je recherche cette réponse. merci, mon frère.
Bijender Singh Shekhawat le
5

Ces solutions ré-indentent le texte aux comportements xCode par défaut. Pour modifier ces comportements, accédez à xCode (v.4)> Préférences> Edition de texte. Puis à l'onglet Indentation.

TheGeezer
la source
3
Exactement ce que je cherchais ... et pourtant pas ... J'espérais pouvoir dire à Xcode de faire des choses comme indent private: et public: à l'intérieur d'une classe C ++ ... au lieu de cela, il les aligne sous le mot-clé class, mais Je ne vois pas une telle option.
ArtOfWarfare
5

Xcode 9.2:

Vous pouvez sélectionner du texte et appuyer sur ctrl+ ipour ré-indenter le code.

Contre Bulaquena
la source
2

Pour ré-indenter rapidement l'ensemble du fichier:

+a

+x

+v

Edit : ne fonctionne plus dans Xcode 11

Blago
la source
1
Est-ce différent de cmd + a, ctrl + i?
Declan McKenna
1
Cela fonctionnera après la solution @tetrajen: Préférence Xcode> Edition de texte> Indentation> marquez le "Ré-indentation lors du collage".
Elad
1

Vous pouvez essayer mon extension Swimat https://github.com/Jintin/Swimat

Il prend en charge le format lors de la sélection.

Installation simple par brew cask install swimat

Jintin
la source
1

Vous pouvez le faire de différentes manières, mais ces deux sont les plus simples

  • sélectionner le texte ( + a):
  1. Utilisation du raccourci -> (contrôle) ^+i

  2. Cliquez sur "Editeur" -> Cliquez sur "Structure" -> Cliquez sur "Re-indent"

Chris
la source