La pregunta tiene dos partes, una de las cuales ya tengo la respuesta.
- ¿Cómo eliminar automáticamente los espacios en blanco finales del archivo completo que se está editando ? -> Respuesta: use el complemento AnyEdit , que se puede configurar para hacerlo en cualquier guardado en el archivo.
- ¿Cómo eliminar automáticamente los espacios en blanco finales solo de las líneas que cambié ? -> Esto no lo sé y agradecería cualquier ayuda.
eclipse
whitespace
Jan Żankowski
fuente
fuente
Respuestas:
Preferences-> Java-> Editors-> Save Actions-> verificar Perform the selected actions on save-> verificar Additional actions-> hacer clic Configure..-> ir a la Code organizingpestaña -> verificar Remove trailing whitespace-> seleccionar All lines.
Preferences-> Java-> Editor-> Save Actions-> verificar " Perform the selected actions on save-> verificar Format source code-> seleccionar Format edited lines.
Tenga en cuenta que no es necesario hacer clic Configure the formatter settings on the Formatter page: todos los estilos de código incluyen automáticamente la eliminación del espacio en blanco al final. Al menos no pude encontrar una configuración para esto en la configuración del formateador, y funcionó de forma predeterminada para las convenciones Java incorporadas, Eclipse, los estilos Eclipse 2.1 y GoogleStyle .
Al utilizar esta configuración, obviamente también debe desactivar la solución para la parte 1 de la pregunta.
fuente
Supongo que sus preguntas son con respecto al código Java. Si ese es el caso, en realidad no necesita ningún complemento adicional para lograr 1). Puede ir a Preferencias -> Java -> Editor -> Guardar acciones y configurarlo para eliminar los espacios en blanco finales .
Por lo que parece, también desea hacer de este un entorno de todo el equipo, ¿verdad? Para facilitar la vida y evitar tener que recordar configurarlo cada vez que tenga un nuevo espacio de trabajo, puede configurar la acción de guardar como una preferencia específica del proyecto que se almacena en su SCM junto con el código.
Para hacer eso, haga clic derecho en su proyecto y vaya a Propiedades -> Editor de Java -> Guardar acciones . Desde allí, puede habilitar configuraciones específicas del proyecto y configurarlo para eliminar los espacios en blanco finales (entre otras cosas útiles).
NB : esta opción se ha eliminado en Eclipse Kepler (4.3) y versiones posteriores.
NB # 2: La opción parece estar de vuelta en Eclipse Luna -
Luna Service Release 1a (4.4.1)
fuente
No necesita ningún complemento para hacerlo. Por ejemplo, si codifica JAVA, puede borrar espacios en blanco finales configurando acciones de guardado:
Eclipse 3.6
Preferences-> Java-> Editors-> Save Actions-> Verificar Perform the selected actions on save-> Verificar Additional actions-> Haga clic en el Configure..botón.
En la Code organizingpestaña, marqueRemove trailing whitespace
fuente
PyDev puede hacerlo con Ctrl+ Shift+ Fsi tiene configurada la opción de formateador de código, o con during saving:
Eclipse-> Window-> Preferences-> PyDev-> Editor-> Code Style-> Code Formatter:
Yo uso al menos estos:
fuente
Haz lo siguiente:
Preferences-> Java-> Editor->Save Actions
fuente
Puede asignar una clave en Eclipse para eliminar manualmente los espacios en blanco finales en todo el archivo, pero solo a pedido en lugar de automáticamente al guardar. (Preferencia / Teclas y luego asigne un conjunto de teclas a Archivo / Eliminar espacio en blanco al final) Esto puede ser útil si desea desinfectar todos los archivos nuevos, pero sin modificar el código heredado.
Otra estrategia es activar la visualización del espacio en blanco, para que al menos sepa cuándo agregará un espacio en blanco al final. Hasta donde sé, no hay forma de mostrar solo los espacios en blanco al final, pero me alegrará que se demuestre que estoy equivocado.
fuente
En un apuro, para aquellos editores que no admiten la eliminación del espacio en blanco final (por ejemplo, el editor XML), puede eliminarlo de todas las líneas haciendo una búsqueda y reemplazo, habilitando expresiones regulares y luego buscando "[\ t] + $ "y reemplazándolo con" "(en blanco). Probablemente haya una mejor expresión regular para hacerlo, pero funciona para mí sin necesidad de instalar AnyEdit.
fuente
Yo diría AnyEdit también. No proporciona estas funcionalidades específicas. Sin embargo, si usted y su equipo usan las funciones AnyEdit en cada acción de guardar, cuando abre un archivo, no debe tener ningún espacio en blanco al final.
Por lo tanto, si modifica este archivo y agrega nuevos espacios finales, entonces, durante la operación de guardar, AnyEdit eliminará solo estos espacios nuevos, ya que son los únicos espacios finales en este archivo.
Si, por alguna razón, necesita mantener los espacios finales en las líneas que no fueron modificadas por usted, entonces no tengo respuesta para usted, y no estoy seguro de que este tipo de característica exista en ningún complemento de Eclipse ...
fuente
Es imposible hacerlo en Eclipse de forma genérica en este momento, pero se puede cambiar dado con conocimientos básicos de Java y algo de tiempo libre para agregar soporte básico para este https://bugs.eclipse.org/bugs/show_bug.cgi? id = 180349
El problema dependiente: https://bugs.eclipse.org/bugs/show_bug.cgi?id=311173
fuente
Para php también hay una opción:
fuente
Hay una manera realmente fácil de hacer esto con sed, la herramienta de línea de comandos de Unix. Probablemente podría crear una macro en Eclipse para ejecutar esto:
fuente
Como dijo @Malvineous, no es profesional, sino una solución alternativa usar el método Buscar / Reemplazar para eliminar el espacio final (a continuación, que incluye la pestaña U + 0009 y el espacio en blanco U + 0020).
Simplemente presione Ctrl + F (o comando + F)
[\t ][\t ]*$
extra:
Para eliminar el espacio inicial, busque en
^[\t ][\t ]*
lugar de[\t ][\t ]*$
Para eliminar líneas en blanco, busque
^\s*$\r?\n
fuente
[\t ]+$
lugar de[\t ][\t ]*$
?No conozco ninguna solución para la segunda parte de su pregunta. La razón es que no está claro cómo definir que cambié . Cambiado cuando? Solo entre 2 salvamentos o entre confirmaciones ... Básicamente, olvídalo.
Supongo que le gustaría seguir algunas pautas, pero no toque el resto del código. Pero la directriz debe usarse en general, y no para picaduras y piezas. Entonces, mi sugerencia es: cambie todo el código a la directriz: es una operación única, pero asegúrese de que todos sus desarrolladores tengan el mismo complemento (AnyEdit) con la misma configuración para el proyecto.
fuente
Usé este comando para git:
git config --global core.whitespace cr-at-eol
Elimina los
^M
caracteres que están detrás.fuente