vimsettingsnewline

How to stop vim from adding a newline at end of file?


So I work in a PHP shop, and we all use different editors, and we all have to work on Windows. I use vim, and everyone in the shop keeps complaining that whenever I edit a file there is a newline at the bottom. I've searched around and found that this is a documented behavior of vi & vim... but I was wondering if there was some way to disable this feature. (It would be best if I could disable it for specific file extensions).

If anyone knows about this, that would be great!


Solution

  • And for vim 7.4+ you can use either of these (preferably on your .vimrc) (thanks to 罗泽轩 for that last bit of news!):

    :set nofixeol
    :set nofixendofline
    

    Now regarding older versions of vim.

    Even if the file was already saved with new lines at the end:

    vim -b file and once in vim:

    :set noeol
    :wq
    

    done.

    alternatively you can open files in vim with :e ++bin file

    Yet another alternative:

    :set binary
    :set noeol
    :wq
    

    see more details at Why do I need vim in binary mode for 'noeol' to work?