2012-01-02 28 views
6

Al escribir en Eclipse (Java), a menudo tengo el problema de que cuando comienzo a escribir los descriptores de acceso, el cursor desciende al principio de la definición del constructor. Así que en un documento como este:El cursor de Eclipse salta al constructor mientras se escribe

private int mSomeInt; 

public 

in|public MyClass(){ 
} 

me gustaría escribir manualmente el descriptor de acceso (captador/definidor) para mSomeInt, pero cuando pulso espacio después de 'público' más arriba, el cursor salta al comienzo de ' MiClase pública '.

A menudo escribo líneas completas para buscar y encontrar mis métodos mezclados con el constructor (como en el ejemplo anterior).

No he podido encontrar ninguna pregunta similar en SO (no sé qué buscar exactamente).

Cualquier ayuda sería apreciada.

Nota: esto no es solo con los descriptores de acceso sino más bien con los modificadores de acceso que defino antes del constructor u otro método.

Editar

Después de intentar sin éxito la solución de Deco a continuación, he logrado reducirlo un poco más lejos.

El problema solo ocurre si tengo todos los bloques en el archivo en un estado colapsado (ctrl + shift + numPadDivide). Puedo ver que el problema ahora es que el nuevo modificador de acceso que escribo se colapsa (rápidamente) en el siguiente método. es decir, Eclipse está tomando el primer modificador de acceso y contrae todo a partir de allí, aunque mi intención es escribir un nuevo método.

La única solución que he podido encontrar es solo editar la fuente con todos los elementos 'fold' desplegados.

+0

Esto ha sido una molestia mía durante años; ¿Qué terminaste haciendo para resolverlo? –

+0

Lamentablemente no lo he resuelto. Como mencioné anteriormente, descubrí las condiciones bajo las cuales sucede y desde entonces he estado trabajando en torno a eso (es decir, ya no mantengo toda la clase doblada). Por supuesto, el problema aún ocurre, pero ya no lo noto. –

Respuesta

0

Desafortunadamente, este problema todavía existe para mí en la última versión de Elcipse (Kepler). Como el problema solo ocurre cuando el documento está 'doblado', el trabajo al respecto es deshabilitar doblar en el editor o deshabilitar doblar en 'Miembros' de:

Preferencias -> Java -> Editor -> Plegable

2

En Window -> Preferences -> <Language> (e.g. Java) -> Editor hay una opción de menú de Ayuda de contenido en la que puede configurar la finalización automática y la colocación del símbolo de intercalación, así como la activación automática y la demora que utiliza.

Editar:

Después de la actualización a la pregunta original que era capaz de replicar este éxito en Eclipse Indigo. Cuando tiene todos los bloques de código colapsados, parece que Eclipse supone que el código que está escribiendo debe estar en ese bloque (en lugar de como una declaración de variable). No estoy seguro de si este comportamiento es esperado o no, pero la única forma de solucionarlo que he encontrado es editar el código con el bloque principal abierto, y luego cerrarlo después del hecho, o doblar por completo.

Por lo que puedo decir hay varios complementos de plegado/complementos que puede obtener para Eclipse que anulan el comportamiento predeterminado y pueden funcionar mejor? Una búsqueda rápida Google podrá obtener una lista de ellos rápidamente.

Probablemente también sugiero publicar esto como un problema en el sitio de soporte de Eclipse para su respuesta oficial.

+0

Gracias por la sugerencia, pero desafortunadamente no funcionó. He editado mi pregunta un poco para proporcionar más información sobre lo que está sucediendo. –

+0

Pude replicar el problema y parece que el problema es cómo funciona el plegado en Eclipse, lo siento; ( – Deco

+0

) Aprecio el esfuerzo, gracias –

Cuestiones relacionadas