Por alguna razón, cuando abro archivos de un servidor Unix en mi máquina Windows, ocasionalmente tienen conversión Macintosh EOL, y cuando los edito / guardo de nuevo, no funcionan correctamente en el servidor Unix. Solo uso notepad ++ para editar archivos de este servidor Unix, entonces, ¿hay alguna manera de crear una macro que convierta automáticamente EOL a formato Unix cada vez que abro un archivo?
113
Binary
para mantener los finales de línea preservados. Por lo tanto, es posible que pueda reconfigurar su programa FTP / SCP / etc. para transferir los archivos de una manera diferente.Respuestas:
Esa funcionalidad ya está integrada en Notepad ++. En el menú "Editar", seleccione "Conversión EOL" -> "Formato UNIX / OSX".
captura de pantalla de la opción para una búsqueda aún más rápida (o versiones en diferentes idiomas)
También puede establecer el EOL predeterminado en notepad ++ a través de "Configuración" -> "Preferencias" -> "Nuevo documento / Directorio predeterminado" y luego seleccione "Unix / OSX" en el cuadro Formato.
fuente
En Notepad ++, use reemplazar todo con expresión regular. Esto tiene una ventaja sobre el comando de conversión en el menú que puede operar en toda la carpeta sin tener que abrir cada archivo o arrastrar y soltar (en varios cientos de archivos se volverá notablemente más lento) además de que también puede configurar el filtro comodín de nombre de archivo.
a
Esto coincidirá con todos los patrones finales de línea posibles (único \ r, \ n o \ r \ n) de nuevo a \ n. (O \ r \ n si está convirtiendo al estilo de Windows)
Para operar en varios archivos, ya sea:
fuente
Abro archivos "directamente" desde WinSCP que abre los archivos en Notepad ++ Tenía archivos php en mi servidor linux que siempre se abrían en formato Mac sin importar lo que hice :-(
Si descargué el archivo y luego lo abrí desde local (Windows), estaba abierto como Dos / Windows ... hmmm
La solución fue convertir EOL el archivo local a "Formato UNIX / OSX", guardarlo y luego cargarlo.
Ahora, cuando abro el archivo directamente desde el servidor, está abierto como "Dos / Windows" :-)
fuente
Dependiendo de su proyecto, es posible que desee considerar el uso de EditorConfig ( https://editorconfig.org/ ). Hay un complemento Notepad ++ que cargará un .editorconfig donde puede especificar "lf" como el final de línea obligatorio.
Solo comencé a usarlo, pero hasta ahora es bueno, y los proyectos de código abierto en los que he trabajado han incluido archivos .editorconfig durante años. La configuración de "Conversión EOL" no se cambia, por lo que puede ser un poco confuso, pero si "Ver> Mostrar símbolo> Mostrar final de línea", puede ver que está agregando LF en lugar de CRLF, incluso cuando "Conversión EOL "y la esquina inferior inferior muestra algo más (por ejemplo, Windows (CR LF)).
fuente