trucos seleccionadas pestaña para lineas linea indentar descomentar como comentar comando codigo cambiar alinear eclipse formatting eclipse-cdt

seleccionadas - indentar codigo eclipse



El formateador Eclipse C++ coloca una nueva línea antes que los identificadores de métodos (2)

Me encontré con un problema con el formateador Eclipse. No formateará mi código correctamente cuando declare métodos dentro de una declaración de clase. Pone una nueva línea después del tipo de retorno del método.

Ya exporté el archivo xml de estilo y examiné la configuración en él, pero ninguna de las configuraciones tiene una conexión aparente con este problema, y ​​el editor de configuración en Eclipse no mostró el mismo problema que ocurre en su código de muestra para las declaraciones de métodos.

Aquí hay un ejemplo de código para lo que quiero que suceda:

class MyClass { public: MyClass(); void myMethod(); };

Sin embargo, esto es lo que obtengo:

class MyClass { public: MyClass(); void myMethod(); };

Nuevamente, en el editor de estilos, el código no tiene este problema y tiene el aspecto que yo quiero, pero en el código real, la historia es diferente.

Estoy usando la versión 3.8.0. Cualquier ayuda es apreciada.

Edición: eliminé los archivos de origen que se formatearon incorrectamente (después de formatear el código varias veces sin éxito) y los reemplazé con archivos "idénticos" con los mismos métodos, la misma estructura, etc. Esta vez formaté el código y funcionó. Probablemente este sea un error, pero lo dejo solo en caso de que alguien más encuentre un problema similar o tenga una solución para evitar este problema en primer lugar.


Edité manualmente dos archivos en el directorio principal de proyectos de eclipse

.metadata/.plugins/org.eclipse.core.runtime/.settings

Los dos archivos:

file 1: org.eclipse.cdt.core.prefs, change this line from "insert" to "do not insert" org.eclipse.cdt.core.formatter.insert_new_line_before_identifier_in_function_declaration=do not insert file 2: org.eclipse.cdt.ui.prefs, scan this file for "insert_new_line_before_identifier_in_function_declaration" and make a similar change from insert to do not insert next to it, should be obvious

Tenga en cuenta que he visto este problema en índigo y juno, la solución descrita anteriormente fue en juno.


Si tiene una configuración de formateador personalizada, expórtela primero (configuración> C / C ++ General> Formateador> Editar> Exportar). Luego cambie la siguiente línea a "no insertar". Guarde el XML.

<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_identifier_in_function_declaration" value="do not insert"/>

Borre la configuración actual e importe la que cambió.