2015-06-25 14 views
12

Mi sono appena trasferito da Eclipse Kepler per eclissare Mars e il mio formattatore Java sembra non comportarsi più allo stesso modo.Come forzare il formatter di Eclipse Mars 4.5 a non unire linee già avvolte?

ho usato per essere in grado di effettuare le seguenti operazioni:

object 
    .method1() 
    .method2() 
    .method3(); 

Il formattatore avrebbe mantenuto il mio codice del genere. Tuttavia da quando ho cambiato in eclipse, tutto è avvolto su una riga.

Ho verificato il formattatore e ho ancora l'opzione "Non unire mai linee già avvolte" selezionata. Il mio progetto non usa impostazioni specifiche per il formattatore di eclissi. Ho provato a ricreare un formattatore da zero e il risultato è lo stesso.

Come posso forzare eclipse a non unire quelle linee?

Grazie

+0

Hai provato la nuova versione 4.5.2? Sembra essere l'ultima major release per Mars e la prossima release sarà 4.6 Neon. I bug menzionati da @ojap sono corretti. –

risposta

7

ho trovato la soluzione: Ho selezionato tutti gli elementi specifici (Annotazioni, classe dichiarazioni, ...) e definito Wrap where necessary invece del mio solito Do not wrap. Quindi ho impostato il valore maximum line width su un valore elevato in modo che Wrap when necessary non esegua mai alcun tipo di blocco. Questo sembra essere sufficiente per non unire le linee già avvolte e mantenere il comportamento predefinito del formattatore su "non avvolgere".

EDIT: Anche se questa è una soluzione per il problema in questione, ho affrontato molti più problemi con il formatter di Eclipse Mars che mi ha fatto tornare a Kepler. Ho provato Luna e sembra non avere gli stessi problemi. Probabilmente passerò a Luna.

EDIT: sono passato a Luna e tutto funziona bene

EDIT: ho provato il nuovo Mars.1 e anche se non ho la stessa formattazione esatto, un sacco di bug sono stati corretti e mi è bastato iniziare a usarlo per alcuni progetti. Probabilmente trasferirò tutti i miei progetti lì a tempo debito.

+1

Ho anche notato che Marte funziona in modo diverso con un formattatore che ho usato in Luna. Sembra che il formattatore abbia avuto molte modifiche (https://bugs.eclipse.org/bugs/show_bug.cgi?id=303519) con Marte. Tornando alla Luna per ora. – ojap

+0

Desidero continuare a utilizzare Mars, ma ci sono molti problemi con il formattatore. Sembra ignorare regole come il ritorno a capo delle dichiarazioni delle costanti enum. Se impostato su "Wrap tutti gli elementi, ogni elemento su una nuova riga", non si avvolge e tutte le costanti rimangono su una riga ... –

+0

Ho anche questo problema con Marte, specialmente intorno al rientro di avvolgimento di lanci su un nuovo linea. – b1nd

1

Aggiungi questa linea al tuo profile.xml o imposta la proprietà a false se già esiste.

<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="false"/> 

Il campione xml può essere trovato here.

Problemi correlati