Eclipse: excluya paquetes específicos al completar automáticamente un nombre de clase

100

Al completar automáticamente un nombre de clase en Eclipse, por ejemplo, si escribe:

ListITab

Aparece un menú emergente que le ofrece nombres de clases coincidentes para completar (que puede seleccionar con el mouse o usando las teclas de flecha:

En este ejemplo, es casi seguro que quiero java.util.ListIteratory casi nunca quiero com.sun.xml.internal.bind.v2.runtime.reflect.ListIterator(o cualquier otra cosa de ese paquete).

Esta clase en particular aparecerá en la lista con frecuencia (cada vez que declaro a ListIterator). Me gustaría poder excluir los paquetes de las búsquedas de autocompletar, para que java.util.ListIteratorse autocomplete sin la necesidad de un menú emergente.

es posible?

finnw
fuente
1
Oh, sería genial si pudiera seleccionar el que no le gusta y presionar Eliminar como en otros programas. Pero no ...
Thorbjørn Ravn Andersen
2
Acabo de completar mi respuesta para abordar la java.awt.Listpregunta que mencionas en los comentarios.
VonC

Respuestas:

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

Debería poder especificar allí los paquetes que no desea ver.

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

Ver consejos y trucos de Java

Para excluir ciertos tipos de aparecer en la asistencia de contenido, use la función de filtro de tipo configurada en la Java > Appearance > Type Filterspágina de preferencias.
Los tipos que coincidan con uno de estos patrones de filtro no aparecerán en el cuadro de diálogo Tipo abierto y no estarán disponibles para ayudar al contenido, corregir rápidamente y organizar importaciones.
Estos patrones de filtro no afectan a las vistas de Jerarquía y Explorador de paquetes.


finnw (el OP) agrega en los comentarios:

Ahora, ¿cómo agrega una sola clase a esta lista? No estoy interesado en java.awt.List pero ocasionalmente quiero java.awt.Window o java.awt.Dimension. -

El "filtro de tipo" se basa en realidad en la coincidencia de patrones de clase , es decir, si agrega:

 java.awt.List

esa clase desaparecerá de las propuestas de asistencia al contenido.
Si sabe que todas las java.awt.Lxxxclases no son de interés, puede agregar

 java.awt.L*

Todas las demás clases de java.awtseguirían estando allí para la asistencia de contenido.
Con un eclipse reciente (ahora tengo un eclipse de 3.6Mx, pero esto también debería funcionar para 3.5.x), no está limitado al patrón de paquete solo en el Filtro de tipo.

VonC
fuente
4
También distingue entre mayúsculas y minúsculas, por lo que cuando probé "java.awt.list" no funcionó.
finnw
6
Es una pena que no pueda priorizar ciertas clases en lugar de eliminarlas de la lista ...
Andy
3
Gracias por la respuesta, tuve que buscar en Google para esto también, aunque había agregado algunos antes. Es una lástima que alguien realmente piense que esto pertenece a Apariencia en lugar de, oh, Java-> Editor-> ContentAssist ...
RJStanford
51
Window->Preferences->Java->Appearance->Type Filters
Jonathan Feinberg
fuente