2012-11-13 15 views
6

ho il problema che se Formattazione automatica di un file XHTML (JSF 1.2) in Eclipse con i tasti CTRL + SHIFT + f, l'uscita sembra davvero male e non è più leggibile.Eclipse sta facendo bella codice JSF cercando (XHTML) illeggibile da autoformating

Il mio codice formattato:

<span class="label viertel alignright"> 
    <h:outputLabel for="itLine5" value="E-Mail:" /> 
</span> 

Diventa questo:

<span class="label viertel alignright"> <h:outputLabel 
     for="itLine5" value="E-Mail:" /> </span> 

In questo piccolo esempio, è ancora leggibile - ma in codice più lungo è solo il caos!

Come faccio ad accertarmi che il mio codice XHTML sia formattato in modo leggibile?

Io uso questa versione di Eclipse Helios:

  • Eclipse IDE Java EE per gli sviluppatori web.
  • Versione: Helios Service Release 1 - Costruire ID: 20100917-0705

io uso questi JBoss Tools:

  • JBoss Tools 3.2.0 Archies
  • JBoss Tools 3.2.1 RichFaces
  • JBossASTools 2.2.0
  • Strumenti Hibernate 3.40.0
  • JBoss Seam Strumenti: 3.2.1
+1

Buona domanda, mi piacerebbe se qualcuno avesse una risposta per questo. :) Tendo a non eseguire automaticamente il mio codice xhtml. – Magnilex

+1

Sono sicuro che c'è un modello cood checkstyle per quello, spero che qualcuno ne abbia preso uno! – Joerg

+1

spero che il bounty aiuti a risolvere questo problema! – Joerg

risposta

7

Penso di avere una soluzione che funzioni abbastanza bene (Eclipse Juno). Un sacco di tag/elementi sono specificati come in linea causando la formattazione di Wierd. <span> per esempio è in quella lista. Potresti provare a rimuovere la lista di elementi in linea (non preoccuparti, puoi sempre selezionare "Ripristina impostazioni predefinite"). Mentre ci sei, cambia la larghezza in qualcosa di più utile del default (72 nel mio caso). Le preferenze si trovano in Finestra> Preferenze> Web> HTML File> Editor:

HTML file settings

ho rimosso tutti gli elementi inline della lista e formattato un file grande xhtml con un buon risultato. Ho impostato la larghezza della linea a 120, che è quello che uso per Java. Naturalmente, questa modifica interesserà anche i normali file HTML.

dal vostro esempio, questo codice:

<span class="label viertel alignright"> <h:outputLabel 
     for="itLine5" value="E-Mail:" /> 
</span> 

stata formattata a:

<span class="label viertel alignright"> 
    <h:outputLabel for="itLine5" value="E-Mail:" /> 
</span> 

È questo abbastanza per te?

+0

questo suona bene, ma io posso Trovo questo punto in Helios, quindi non mi sta davvero aiutando con il mio problema – Joerg

+1

Che peccato ... Aggiornamento a Juno? :) – Magnilex

+1

infine, abbiamo fatto un aggiorna ... il tuo trucco funziona perfettamente, ti meriti la taglia, grazie !!!! – Joerg

5

Non faccio uso di CTRL +SHIFT +F per formattare il codice, ma solo CTRL +ho per il rientro. Questa funzione funziona bene solo se si seleziona tutto il codice della pagina, per cui uso CTRL +A per selezionare tutto e CTRL +ho a rientrare.

La funzione di rientro mantiene le interruzioni di riga e fa rientrare solo il codice. Sto usando Juno, spero che funzioni anche su Helios!

+0

hmmm non aiuta molto, se il codice è già danneggiato dal mio 'CTRL + MAIUSC + f';) e se ho un nuovo file xhtml, lo fa sembrare più bello, ma ci sono anche alcuni effetti collaterali sul tabbing che lo lasciano male. – Joerg

+0

Sì, hai ragione. Ci sono alcuni effetti collaterali negativi quando il tag non è vuoto. Lo uso come una soluzione rapida mentre scrivo xhtml. –