In order to get the diff to display whitespace similarly to git diff
set diffEditor.ignoreTrimWhitespace
to false. edit.renderWhitespace
is only marginally helpful.
// Controls if the diff editor shows changes in leading or trailing whitespace as diffs
"diffEditor.ignoreTrimWhitespace": false,
// Controls if the diff editor shows changes in leading or trailing whitespace as diffs
"diffEditor.ignoreTrimWhitespace": false,
To update the settings go to
File > Preferences > User Settings
Note for Mac users: The Preferences menu is under Code not File. For example, Code > Preferences > User Settings.
This opens up a file titled "Default Settings". Expand the area //Editor
. Now you can see where all these mysterious editor.*
settings are located. Search (CTRL + F) for renderWhitespace
. On my box I have:
// Controls how the editor should render whitespace characters, posibilties are 'none', 'boundary', and 'all'. The 'boundary' option does not render single spaces between words.
"editor.renderWhitespace": "none",
// Controls how the editor should render whitespace characters, posibilties are 'none', 'boundary', and 'all'. The 'boundary' option does not render single spaces between words.
"editor.renderWhitespace": "none",
To add to the confusion, the left window "Default Settings" is not editable. You need to override them using the right window titled "settings.json". You can copy paste settings from "Default Settings" to "settings.json":
// Place your settings in this file to overwrite default and user settings.
{
"editor.renderWhitespace": "all",
"diffEditor.ignoreTrimWhitespace": false
}
// Place your settings in this file to overwrite default and user settings.
{
"editor.renderWhitespace": "all",
"diffEditor.ignoreTrimWhitespace": false
}
I ended up turning off renderWhitespace
.