Visual Studio Code — Insert New Line at the End of Files
When saving files using Visual Studio Code, I noticed that a new line is not automatically added to the end of files, causing all sorts of potential issues.
How does one insert a new line automatically in Visual Studio Code?
There are two easy methods to make Visual Studio Code insert a new line at the end of files:
Method I
Open Visual Studio Code and go to File (Code if using a Mac) -> Preferences -> Settings; you should now be viewing a settings page
Enter 'insert final newline' in to the search bar
Select the checkbox under the heading 'Files: Insert Final Newline' in the 'Workspace Settings' and/or 'User Settings' tab(s) as required
Method II
Open Visual Studio Code and go to File (Code if using a Mac) -> Preferences -> Settings; you should now be viewing a settings page
Open the JSON settings page by clicking the {} icon at the top right of the page
Enter 'files.insertFinalNewline' in to the search bar of the JSON settings page
-
Either
- Click on the white 'edit pen' on the left hand side of the line containing the
files.insertFinalNewline
JSON key and selectTrue
or
- Copy the line containing the
files.insertFinalNewline
JSON key, paste it into the right hand side JSON file under the 'User Settings' and/or 'Workspace Settings' tab(s) as required, and set its value totrue
- Click on the white 'edit pen' on the left hand side of the line containing the
Final Result
In either your User Settings or Workspace Settings JSON file, you should have a line reading "files.insertFinalNewline": true
, within the provided curly braces ({ }). Additionally, in the Settings page, the checkbox under the heading 'Files: Insert Final Newline' will be selected.
Visual Studio Code will now add an empty line to the end of files when being saved, if there isn't already one.
I have placed a screen capture below showing how to make Visual Studio Code insert a newline at the end of files. This will also serve as a useful place to link to in code reviews when saying "You need to do this and resubmit".
While editing PHP files, something was deleting the newline at the end of the file. In my case it turned out to be the HTML format (html.format.endWithNewline), I believe because of the Emmet extension. (see attached images)