Por alguma razão, quando eu abro arquivos de um servidor unix em minha máquina Windows, eles ocasionalmente têm conversão EOL do Macintosh, e quando eu edito / salvo novamente eles não funcionam corretamente no servidor unix. Eu só uso o notepad ++ para editar arquivos deste servidor unix, então há uma maneira de criar uma macro que converte automaticamente o EOL para o formato Unix sempre que eu abro um arquivo?
113
Binary
para manter as terminações de linha preservadas. Portanto, você pode reconfigurar seu programa FTP / SCP / etc para transferir os arquivos de uma maneira diferente.Respostas:
Essa funcionalidade já está incorporada ao Notepad ++. No menu "Editar", selecione "Conversão EOL" -> "Formato UNIX / OSX".
captura de tela da opção para uma localização ainda mais rápida (ou versões em diferentes idiomas)
Você também pode definir o EOL padrão no notepad ++ através de "Configurações" -> "Preferências" -> "Novo Documento / Diretório Padrão" e selecione "Unix / OSX" na caixa Formato.
fonte
No Notepad ++, use substituir tudo por expressão regular. Isso tem vantagem sobre o comando de conversão no menu, pois você pode operar em uma pasta inteira sem ter que abrir cada arquivo ou arrastar e soltar (em várias centenas de arquivos ele se tornará visivelmente mais lento) e você também pode definir o filtro curinga do nome do arquivo.
para
Isso corresponderá a todos os padrões de finalização de linha possíveis (único \ r, \ n ou \ r \ n) de volta para \ n. (Ou \ r \ n se você estiver convertendo para o estilo Windows)
Para operar em vários arquivos:
fonte
Eu abro arquivos "diretamente" do WinSCP que abre os arquivos no Notepad ++. Eu tinha um arquivo php no meu servidor Linux que sempre abria no formato Mac independentemente do que eu fizesse :-(
Se eu baixei o arquivo e o abri no local (Windows), ele foi aberto como DOS / Windows .... hmmm
A solução foi converter o arquivo local para o "Formato UNIX / OSX" no EOL, salvá-lo e fazer o upload.
Agora, quando abro o arquivo diretamente do servidor, ele é aberto como "Dos / Windows" :-)
fonte
Dependendo do seu projeto, você pode querer considerar o uso do EditorConfig ( https://editorconfig.org/ ). Existe um plugin Notepad ++ que carregará um .editorconfig onde você pode especificar "lf" como o final obrigatório da linha.
Eu só comecei a usá-lo, mas é bom até agora, e os projetos de código aberto em que trabalhei incluíram arquivos .editorconfig por anos. A configuração "Conversão EOL" não foi alterada, por isso pode ser um pouco confuso, mas se você "Exibir> Mostrar símbolo> Mostrar fim de linha", poderá ver que está adicionando LF em vez de CRLF, mesmo quando "Conversão EOL "e o canto inferior inferior mostra outra coisa (por exemplo, Windows (CR LF)).
fonte