2009-10-01 12 views
11

Sto lavorando con XCode 3.2 (su "Snow Leopard") che ha (ancora) questa funzione di completamento automatico "Macro testo" (ad es. digitare if si espanderà a if (<#condition#>) { <#statements#> }). Queste macro sono anche disponibili tramite "Modifica-> Inserisci macro di testo".XCode 3.2: Modifica della rientranza e degli spazi bianchi predefiniti "Code Sense"

Sfortunatamente, i modelli predefiniti non corrispondono al mio indentazione e allo stile di spazio preferito, quindi mi piacerebbe modificarli.

Secondo this slightly outdated StackOverflow thread le definizioni corrispondenti devono trovarsi a /Developer/Library/Xcode/Specifications/{C,HTML}.xctxtmacro ma non riesco a trovare nulla utilizzando Snow Leopard e XCode 3.2 (non sono sicuro quale sia il responsabile).

Qualcuno ha notato dove si trovano le macro di testo definite da Apple al giorno d'oggi?

risposta

21

Gli unici file ** .xctxtmacro * sul mio sistema erano all'interno del pacchetto XCode.app. Dopo aver dato una rapida occhiata alle definizioni, ho trovato un modo completamente diverso di adattare la formattazione di tutte le macro predefinite:

È possibile semplicemente impostare i valori predefiniti dell'utente XCCodeSenseFormattingOptions per modificare le nuove righe predefinite e altri spazi bianchi all'interno di tutte le macro!

Per esempio la macro "if-else" assomiglia a questo di default:

if (<#condition#>) { 
    <#statements#> 
} else { 
    <#statements#> 
} 

Dopo l'esecuzione del comando

defaults write com.apple.Xcode XCCodeSenseFormattingOptions 
-dict PreExpressionsSpacing "" BlockSeparator "\n" PostBlockSeparator "\n" 

sembra che questo (che io preferisco):

if(<#condition#>) 
{ 
    <#statements#> 
} 
else 
{ 
    <#statements#> 
} 
0

Credo che "defaults write com.apple.Xcode" non funzioni sulle ultime versioni di Xcode.

La soluzione alternativa consiste nel modificare i frammenti di codice predefiniti.

Tuttavia, Xcode non consente di modificare i frammenti di codice predefiniti.

Al fine di modificarle, è possibile scaricare un programma "Snippet Modifica" dal here

Problemi correlati