2014-04-14 7 views
9

Qualcuno sa come configurare il formato clang per mantenere enum su singole righe?opzioni di stile in formato clang per le enumerazioni

cioè

enum { 
    ONE, 
    TOW, 
    THREE 
}; 

vs.

enum {ONE, TWO, THREE}; 

EDIT:

Qui ci sono le opzioni di stile che uso per abbinare guida di stile Objective-C di Apple.

http://pastebin.com/0cTEhvBv

+0

Ho appena provato tutti gli stili di clang predefiniti e tutte le enumerazioni di riga singola (il tuo secondo esempio) nell'espressione di riga interrotta (il tuo primo esempio). Non è quello che vuoi? – jlmendezbonini

+1

Sì, gli stili predefiniti LLVM, CPP, ecc. Li infrangono, questo è corretto e lo voglio, ma sto usando un file di configurazione che imposta una serie di opzioni di stile che corrispondono alla guida di stile Objective-C di Apple e una di esse Non so quale), cambia il comportamento e disfa le linee e mette enum in una sola riga. Ho modificato l'OP per includere le mie opzioni di stile. – pixbroker

+0

Non riesco a riprodurre questo comportamento. Sto usando il tuo file di configurazione e sto ancora ricevendo enumerazioni di linee spezzate. – jlmendezbonini

risposta

15

Questo è stato intenzionalmente introdotto ad un certo punto (quindi se non si riesce a riprodurre il comportamento, è probabile che una versione precedente).

clang in formato clang contratti su una singola riga se tutti gli elementi si adattano su una riga. Ciò consente di risparmiare spazio e di solito non riduce la leggibilità. Non v'è alcuna opzione di stile, ma è possibile ignorare questo sia l'aggiunta di una riga di commento da qualche parte o con l'aggiunta di una virgola finale dopo l'ultima enumeratore, ad esempio:

enum { 
    ONE, 
    TOW, 
    THREE, 
}; 

o

enum { 
    ONE, // This means ... 
    TOW, 
    THREE 
}; 
+1

Funziona come un fascino! – orkenstein

+0

non lo sai, come ottenere lo stesso per i blocchi? – orkenstein

+3

È più una soluzione alternativa che una soluzione –

0

Per this answer, impostando Anche ColumnLimit a 0 raggiungerà questo comportamento.