2013-04-25 9 views
32

Ho usato le tabulazioni per i rientri e gli spazi per l'allineamento. In questo modo (le frecce mostrano tabulazioni e punti indicano gli spazi).Come ottenere schede intelligenti (comportamento "rientro con schede, allineamento con spazi") in Xcode?

enter image description here

In QtCreator è possibile impostare tale stile di codifica nelle preferenze standard. Non riesco a trovare il modo di raggiungere lo stesso obiettivo in Xcode. Potresti dirmi se è possibile? Potrebbe esserci un plugin per questo?

UPDATE: Ecco come può essere raggiunto in QtCreator: enter image description here

P.S. Per favore, non cercare di convincermi che usare solo spazi/tabulazioni è meglio, altrimenti questa domanda si trasformerà in un'altra holywar :)

Ancora una volta su quello che sto cercando di ottenere: Indent with tabs, align with spaces. Vim Tips Wiki.

UPDATE 2: Ho appena inviato una segnalazione di bug di Apple Radar (miglioramento) rdar: // 22285639. Eccolo sul open radar.

UPDATE 3: Ho ricevuto una risposta da Apple. Il mio bug è un duplicato di rdar: // 8165023.

+0

Sto cercando di ottenere la stessa cosa. Hai per caso trovato una soluzione? – user1264176

+0

@ user1264176, sfortunatamente, no. Xcode 6 non è ancora in grado di tale formattazione. Ho dovuto passare agli spazi mentre lavoravo in Xcode. Un'opzione è usare AppCode di JetBrains, ma non è gratuito e richiede ancora Xcode per alcune azioni. Quindi spero ancora che Apple lo implementerà un giorno, perché le schede, nel modo in cui sono implementate ora, sono inutilizzabili. – FreeNickname

+0

Grazie per la pronta risposta. Ho dovuto passare anche agli spazi. Va bene se lavori con le schede in Xcode ma tutti gli altri editor o browser rovinano la formattazione. – user1264176

risposta

64

in Xcode> Preferenze (,):

> Text Editing > Indentation

Se ho capito bene la tua domanda, questo dovrebbe farlo per voi.

+1

Grazie! Ma il problema è che in questo modo utilizza gli spazi ovunque. Voglio che utilizzi le schede per il rientro e gli spazi per l'allineamento. Mi piacciono le schede, perché sono più flessibili. Ma non puoi usarli per il rientro, perché se hai modificato la dimensione della scheda, ad esempio, da 4 a 2, il tuo rientro sarebbe rovinato. Ad esempio, arg2 e arg3 non sarebbero sulla stessa colonna con arg1. E mi sembra che non ci sia modo di farlo in XCode. Pubblicherò uno screenshot da QtCreator ora per illustrare come appare lì. – FreeNickname

+2

Beh, la tua risposta è ovviamente la migliore :) Ci dispiace, ma non posso accettarla poiché non risponde completamente alla mia domanda (cosa succede se qualcun altro verrà visualizzato). Ma la taglia e un risparmio sono tue :) Grazie per l'attenzione! – FreeNickname

1

Se si vuole rimappare lo standard di Xcode + [ a TAB, è possibile effettuare le seguenti operazioni:

  1. installare un programma chiamato "Karabiner".

  2. andare in Preferenze ~> "Varie and Uninstall"

  3. in "Impostazione personalizzata" sezione clicca su "Apri privato.xml" tasto

  4. Aprire il file e sostituire il suo contenuto con il seguente codice:

    <?xml version="1.0"?> 
    <root> 
        <item> 
         <name>Tab instead of Command+[</name> 
         <identifier>private.swap_tab_and_cmnd+[</identifier> 
         <autogen> 
          __KeyToKey__ 
          KeyCode::TAB, ModifierFlag::NONE, 
          KeyCode::BRACKET_RIGHT, ModifierFlag::COMMAND_L | ModifierFlag::NONE 
         </autogen> 
        </item> 
    </root> 
    
  5. Vai a Preferenze ~> "chiave Change" ~> cliccare su "Reload XML pulsante"

  6. Mettere un segno di spunta nella casella di controllo che si chiama "Tab al posto di comando + ["

  7. Godetevi

enter image description here

PS: Si prega di notare che questa impostazione funziona a livello globale sulla vostra macchina, non solo in Xcode. Tuttavia, sono sicuro che google potrebbe aiutarti a trovare una soluzione su come personalizzarla ulteriormente, applicando le modifiche solo a Xcode.

+0

Non è quello che stavo cercando, ma grazie) Sei collegato a Karabiner per caso? Hai copiato questo testo in più risposte) – FreeNickname

+0

No, non mi riferisco affatto a Karabiner. Hai provato a guardare "clang-format" o "uncrustify"? Forse impostare quelli correttamente potrebbe aiutare? (vedi esempio qui - http://blog.manbolo.com/2015/05/14/code-beautifier-in-xcode) – OlDor

+0

questo potrebbe funzionare, grazie, avrà un look! – FreeNickname