These 25 VS Code settings are practical starting points for reducing repeated actions, adjusting visual density, and making common editor tasks easier to follow. They are built-in, reversible settings with current IDs, not universal defaults.
Search each ID in the Settings editor before changing it, or add the shown value to the correct user or workspace scope. The official settings guide explains how VS Code settings scopes and language-specific overrides interact.
| Area | Settings | Useful when |
|---|---|---|
| Editor behavior | 1 to 10 | You want different save, formatting, cursor, or navigation behavior |
| File management | 11 to 14 | You want clearer search results and safer Explorer actions |
| Workbench and layout | 15 to 18 | You want to adjust visual density and scrolling |
| Terminal and workflow | 19 to 25 | You want predictable terminals, tabs, titles, and themes |
Editor behavior
These options change how editing, saving, and in-file navigation behave. Formatter-dependent settings only work when the active language has a formatter.
1. Auto save on focus change
Set files.autoSave to onFocusChange to save when focus leaves the dirty editor. If you prefer a timed trigger, use afterDelay and adjust files.autoSaveDelay.
2. Format on save
Set editor.formatOnSave to true to run the active formatter whenever the file is saved. It has no effect when the file's language has no formatter.
3. Format on paste
Set editor.formatOnPaste to true to format pasted content when the active formatter supports range formatting. Leave it off if pasted code should keep its original layout.
4. Smooth cursor animation
Set editor.cursorSmoothCaretAnimation to on if you prefer the cursor to animate between positions. Turn it off if motion is distracting.
5. Cursor blinking
Set editor.cursorBlinking to phase for a smooth fade cycle. Other supported styles appear in the setting's dropdown, so choose the one that is easiest for you to track.
6. Render whitespace
Set editor.renderWhitespace to boundary to show most tabs and non-single spaces without marking every ordinary space. Use selection if you only want whitespace markers in selected text.
7. Word wrap
Set editor.wordWrap to on to wrap long lines at the editor width. Toggle wrapping temporarily with Alt+Z on Windows, macOS, or Linux.
8. Linked editing
Set editor.linkedEditing to true to edit linked ranges together when the active language support provides them. Built-in HTML support can update matching tags, while other languages may depend on an extension.
9. Bracket pair colorization
Set editor.bracketPairColorization.enabled to true to color matching bracket pairs. Keep it off if the additional colors make code harder for you to read.
10. Code lens
Set editor.codeLens to true to allow built-in language support and extensions to show actions or reference information above code. The available lenses depend on the active language and installed extensions.
File management
These settings affect editor tabs, Search, and Explorer actions. Review exclusion patterns before sharing them with a team.
11. Close the tab when its file is deleted
Set workbench.editor.closeOnFileDelete to true to close an editor after its file is deleted outside VS Code. Leave it off if you want the dirty editor to remain available for review or recovery.
12. Exclude node_modules from search
{
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/dist": true,
"**/.next": true
}
}This keeps matching dependency and build folders out of Search results. Remove patterns for folders whose generated output you sometimes need to inspect.
13. Compact folders in Explorer
Set explorer.compactFolders to false to show every folder level in the Explorer instead of compressing single-child folder chains.
14. Confirm drag and drop
Set explorer.confirmDragAndDrop to true to request confirmation for Explorer drag-and-drop operations. The confirmation adds a step but can prevent unintended moves.
Workbench and layout
These visual settings are preference-driven. Keep the defaults when they already fit your screen size and accessibility needs.
15. Hide the minimap
Set editor.minimap.enabled to false if you do not use the minimap and want more horizontal editor space.
16. Show breadcrumbs
Set breadcrumbs.enabled to true to show file and symbol navigation above the editor. Select a segment to move through the current path or symbol hierarchy.
17. Sticky scroll
Set editor.stickyScroll.enabled to true to keep supported scope headers visible at the top of the editor while you scroll.
18. Smooth scrolling
Set editor.smoothScrolling to true if you prefer animated editor scrolling. Leave it off if immediate movement or reduced motion is more comfortable.
Terminal
Terminal values depend on the operating system, installed shells, font, and personal visibility needs.
19. Default terminal profile
Run Terminal: Select Default Profile and choose an installed shell. VS Code writes the matching platform key: terminal.integrated.defaultProfile.windows, terminal.integrated.defaultProfile.linux, or terminal.integrated.defaultProfile.osx. The profile name must match one available on that machine.
20. Terminal cursor blinking
Set terminal.integrated.cursorBlinking to true if a blinking terminal cursor is easier for you to locate. Keep it off if blinking is distracting.
21. Terminal font size
Set terminal.integrated.fontSize to a readable number for your display, such as 13. Increase it rather than reducing it if terminal text is difficult to read.
Workflow
These final settings change how editors, groups, window titles, and themes behave. Test each one before keeping it.
22. Open files from Quick Open in a new tab
Set workbench.editor.enablePreview to false if you want opened files to remain as regular tabs instead of reusing a preview editor. This can create more open tabs.
23. Close empty groups
Set workbench.editor.closeEmptyGroups to true to remove an editor group after its last editor closes. Set it to false if you intentionally keep empty groups as layout placeholders.
24. Window title
Add this complete value to show the active file, workspace root, and profile in the window title:
{
"window.title": "${dirty} ${activeEditorShort}${separator}${rootName}${separator}${profileName}"
}The displayed title can still depend on the operating system and title-bar style.
25. Color theme
Use Ctrl+K Ctrl+T on Windows or Linux, or Cmd+K Cmd+T on macOS, to preview available themes. VS Code stores the chosen theme in workbench.colorTheme; choose based on readability and contrast rather than assuming one theme suits everyone.
Choose what you need
You do not need to apply all 25. Start with the five VS Code settings that address your most frequent annoyances:
- Sick of manual saves? Enable auto save (#1).
- Code formatting inconsistent? Turn on format on save (#2).
- Can't find your cursor? Enable smooth caret animation (#4) and terminal cursor blink (#20).
- Search results full of noise? Add the search exclusions (#12).
- Losing track of where you are in a file? Turn on sticky scroll (#17) and breadcrumbs (#16).
Add more over time as you notice friction points.
Next steps
Now that you have a solid VS Code settings foundation, learn how to open and edit settings.json directly. To apply these settings to a specific project instead of globally, read about user vs workspace settings.
Rune AI
Key Insights
- Choose an Auto Save trigger that fits when your tools should react to file writes.
- Format on Save requires an active formatter for the file's language.
- Breadcrumbs and Sticky Scroll can make large files easier to navigate.
- Cursor animation and blinking are preferences, not universal productivity improvements.
- Disable the minimap only if the extra editor width is more useful to you.
Frequently Asked Questions
Do I need to restart VS Code after changing these settings?
Can I apply these settings to only one project?
Should I enable all 25 settings?
Conclusion
These 25 settings cover editor behavior, file handling, terminal preferences, and workflow choices. Apply only the values that solve a specific problem, verify the result, and keep project-wide preferences in workspace settings only when the team agrees.
More in this topic
How to Use VS Code with WSL 2 on Windows
Run VS Code connected to Windows Subsystem for Linux so you can develop in a full Linux environment with native tools, terminals, and debugging, all from Windows.
20 Best VS Code Extensions for Web Developers in 2026
Twenty carefully chosen VS Code extensions every web developer should know. Covers formatting, linting, frameworks, debugging, Git, and developer experience.
How to Install, Disable, Update, and Uninstall VS Code Extensions
Learn how to install, disable, update, and uninstall VS Code extensions from the Marketplace and the command line. Step-by-step instructions for every action.