2010-01-15 5 views
83

Quando si completa automaticamente un nome di classe in Eclipse, ad es. se si digita:Eclipse: esclude pacchetti specifici durante il completamento automatico di un nome di classe

ListITab

un menu a comparsa che vi offre corrispondenti nomi di classe per il completamento (che è possibile selezionare con il mouse o utilizzando i tasti freccia:

In questo esempio, io quasi certamente voglio java.util.ListIterator e ho quasi mai voglia com.sun.xml.internal.bind.v2.runtime.reflect.ListIterator (o qualsiasi altra cosa da quel pacchetto).

Questa particolare classe verrà visualizzato nella lista frequentemente (ogni volta dichiaro una ListIterator) . Vorrei poter escludere pacchetti dalle ricerche di completamento automatico, in modo che java.util.ListIterator venga completato automaticamente senza la necessità di un menu a comparsa.

È possibile?

+1

Oh, sarebbe bello se potessi semplicemente selezionare quello che non ti piace e premere Elimina come in altri programmi. Ma no ... –

+2

Ho appena completato la mia risposta per rispondere alla domanda 'java.awt.List' che hai citato nei commenti. – VonC

risposta

118
Window->Preferences->Java->Appearance->Type Filters 

Si dovrebbe essere in grado di specificare lì i pacchetti che non si desidera vedere.

http://help.eclipse.org/galileo/topic/org.eclipse.jdt.doc.user/tips/images/type-filter.png

Vedi Java Tips and Tricks

per escludere determinati tipi di apparire nei contenuti assistere, utilizzare la funzione di filtro tipo configurato nella pagina Java > Appearance > Type Filters preferenze.
I tipi corrispondenti a uno di questi modelli di filtro non verranno visualizzati nella finestra di dialogo Tipo di apertura e non saranno disponibili per l'assistenza ai contenuti, la correzione rapida e l'organizzazione delle importazioni.
Questi schemi di filtro non influiscono sulle viste Esplora pacchetti e Gerarchia.


finnw (PO) aggiunge nei commenti:

Ora, come si fa ad aggiungere una singola classe a questa lista? Non sono interessato a java.awt.List ma occasionalmente voglio java.awt.Window o java.awt.Dimension. -

"filtro tipo" è in realtà basata su classe pattern matching, cioè se si aggiunge:

java.awt.List 

quella classe scompare dal contenuto assistere proposizioni.
Se si conosce tutti java.awt.Lxxx classi sono di alcun interesse, si potrebbe aggiungere

java.awt.L* 

Tutte le altre classi da java.awt sarebbe ancora lì per il contenuto assist.
Con una eclissi recente (ho ora un eclissi 3.6Mx, ma questo dovrebbe funzionare anche per 3.5.x), non sei limitato al modello solo nel filtro di tipo.

+4

È anche case sensitive, motivo per cui quando ho provato "java.awt.list" non ha funzionato. – finnw

+3

È un peccato non poter semplicemente dare la priorità ad alcune classi invece di rimuoverle dall'elenco ... – Andy

+1

Grazie per la risposta - ho dovuto cercare su Google anche questo, anche se ne avevo aggiunti alcuni prima. È vergognoso che qualcuno pensi davvero che questo appartenga ad Aspear invece di, oh, Java-> Editor-> ContentAssist ... – RJStanford

48
Window->Preferences->Java->Appearance->Type Filters 
Problemi correlati