O Vim sempre adiciona uma nova linha no final dos meus arquivos ao salvar e está causando erros nos meus scripts PHP.
Como posso fazer com que o vim não adicione essa nova linha ao salvar?
O Vim sempre adiciona uma nova linha no final dos meus arquivos ao salvar e está causando erros nos meus scripts PHP.
Como posso fazer com que o vim não adicione essa nova linha ao salvar?
Respostas:
Esta não é uma linha vazia completa, apenas uma nova linha final no final da última linha. As ferramentas Unix (como a herança do Vim) insistem em adicionar isso, enquanto o sistema operacional Windows não é tão rigoroso. Você pode ler mais sobre isso em Por que os arquivos devem terminar com uma nova linha?
Infelizmente, é bastante complexo impedir que o Vim escreva a nova linha final. Meu plugin PreserveNoEOL pode fazer isso. Para uma discussão sobre abordagens, consulte também Desativar nova linha automática do VIM no final do arquivo .
Nas novas versões do Vim, finalmente há uma opção para isso
O Vim 7.4.785 adiciona a opção 'fixeol' que pode ser desativada para preservar automaticamente qualquer EOL ausente no final do arquivo.
(consulte a página da wiki: http://vim.wikia.com/wiki/Do_not_auto-add_a_newline_at_EOF )
No seu ~/.vimrc
adicione esta linha:
set nofixeol
Reinicie vim
, agora não deve adicionar a nova linha no final do arquivo.
(funciona apenas desde a versão vim 7.4.785)
?>
saída do PHP para o navegador (causando o erro "cabeçalhos já enviados")? Você não precisa de uma trilha?>
, e geralmente é recomendável deixá-la de fora para evitar exatamente esse problema.