User and Workspace Settings

It is easy to configure Visual Studio Code to your liking through its various settings. Nearly every part of VS Code’s editor, user interface, and functional behavior has options you can modify.

VS Code settings

VS Code provides two different scopes for settings:

  • User Settings - Settings that apply globally to any instance of VS Code you open.
  • Workspace Settings - Settings stored inside your workspace and only apply when the workspace is opened.

Workspace settings override user settings. Workspace settings are specific to a project and can be shared across developers on a project.

Note: A VS Code “workspace” is usually just your project root folder. Workspace settings as well as debugging and task configurations are stored at the root in a .vscode folder. You can also have more than one root folder in a VS Code workspace through a feature called Multi-root workspaces.

Creating User and Workspace Settings

To open your user and workspace settings, use the following VS Code menu command:

  • On Windows/Linux - File > Preferences > Settings
  • On macOS - Code > Preferences > Settings

You can also open the Settings editor from the Command Palette (kb(workbench.action.showCommands)) with Preferences: Open Settings or use the keyboard shortcut (kb(workbench.action.openSettings)).

In the example below, the color theme and the file icon theme have been changed.

Example Settings

Changes to settings are reloaded by VS Code as you change them. Modified settings are now indicated with a blue line similar to modified lines in the editor. The gear icon opens a context menu with options to reset the setting to its default value as well as copy setting as JSON.

Note: Workspace settings are useful for sharing project specific settings across a team.

Settings editor

When you open the settings editor, you can search and discover settings you are looking for. When you search using the Search bar, it will not only show and highlight the settings matching your criteria, but also filter out those which are not matching. This makes finding settings quick and easy.

Settings Search

Note: VS Code extensions can also add their own custom settings and they will be visible under an Extensions section.

Edit settings

Each setting can be edited by either a checkbox, an input or by a drop-down. Edit the text or select the option you want to change to the desired settings.

Edit a Setting

Settings groups

Default settings are represented in groups so that you can navigate them easily. It has a Commonly Used group at the top, which shows popular customizations.

Settings Groups

Below is a copy of the default settings that come with VS Code.

Settings file locations

By default VS Code shows the Settings editor, but you can still edit the underlying settings.json file by using the Open Settings (JSON) command or by changing your default settings editor with the workbench.settings.editor setting.

Depending on your platform, the user settings file is located here:

  • Windows %APPDATA%\Code\User\settings.json
  • macOS $HOME/Library/Application Support/Code/User/settings.json
  • Linux $HOME/.config/Code/User/settings.json

The workspace settings file is located under the .vscode folder in your root folder.

Note: In case of a Multi-root Workspace, workspace settings are located inside the workspace configuration file.

Language specific editor settings

To customize your editor by language, run the global command Preferences: Configure Language Specific Settings (command id: workbench.action.configureLanguageBasedSettings) from the Command Palette (kb(workbench.action.showCommands)) which opens the language picker. Selecting the language you want, opens the Settings editor with the language entry where you can add applicable settings.

Configure language specific settings command

Select language drop down

Add language specific setting

If you have a file open and you want to customize the editor for this file type, click on the Language Mode in the Status Bar to the bottom-right of the VS Code window. This opens the Language Mode picker with an option Configure ‘language_name’ language based settings. Selecting this opens the Settings editor with the language entry where you can add applicable settings.

You can also configure language based settings by directly opening settings.json. You can scope them to the workspace by placing them in the workspace settings just like other settings. If you have settings defined for a language in both user and workspace scopes, then they are merged by giving precedence to the ones defined in the workspace.

The following examples customize editor settings for language modes typescript and markdown.

  1. {
  2. "[typescript]": {
  3. "editor.formatOnSave": true,
  4. "editor.formatOnPaste": true
  5. },
  6. "[markdown]": {
  7. "editor.formatOnSave": true,
  8. "editor.wordWrap": "on",
  9. "editor.renderWhitespace": "all",
  10. "editor.acceptSuggestionOnEnter": "off"
  11. }
  12. }

You can use IntelliSense in Settings editor to help you find allowed language based settings. All editor settings and some non-editor settings are supported.

Settings and security

Some settings allow you to specify an executable that VS Code will run to perform certain operations. For example, you can choose which shell the Integrated Terminal should use. For enhanced security, such settings can only be defined in user settings and not at workspace scope.

Here is the list of settings not supported in workspace settings:

  • git.path
  • terminal.external.windowsExec
  • terminal.external.osxExec
  • terminal.external.linuxExec

The first time you open a workspace that defines any of these settings, VS Code will warn you and subsequently always ignore the values after that.

Default settings

Below are the Visual Studio Code default settings and their values. You can also view the default values in the Settings editor.

  1. {
  2. // Editor
  3. // When enabled, the diff editor ignores changes in leading or trailing whitespace.
  4. "diffEditor.ignoreTrimWhitespace": true,
  5. // Timeout in milliseconds after which diff computation is cancelled. Use 0 for no timeout.
  6. "diffEditor.maxComputationTime": 5000,
  7. // Controls whether the diff editor shows +/- indicators for added/removed changes.
  8. "diffEditor.renderIndicators": true,
  9. // Controls whether the diff editor shows the diff side by side or inline.
  10. "diffEditor.renderSideBySide": true,
  11. // Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character.
  12. "editor.acceptSuggestionOnCommitCharacter": true,
  13. // Controls whether suggestions should be accepted on `Enter`, in addition to `Tab`. Helps to avoid ambiguity between inserting new lines or accepting suggestions.
  14. // - on
  15. // - smart: Only accept a suggestion with `Enter` when it makes a textual change.
  16. // - off
  17. "editor.acceptSuggestionOnEnter": "on",
  18. // Controls the number of lines in the editor that can be read out by a screen reader. Warning: this has a performance implication for numbers larger than the default.
  19. "editor.accessibilityPageSize": 10,
  20. // Controls whether the editor should run in a mode where it is optimized for screen readers.
  21. // - auto: The editor will use platform APIs to detect when a Screen Reader is attached.
  22. // - on: The editor will be permanently optimized for usage with a Screen Reader.
  23. // - off: The editor will never be optimized for usage with a Screen Reader.
  24. "editor.accessibilitySupport": "auto",
  25. // Controls whether the editor should automatically close brackets after the user adds an opening bracket.
  26. // - always
  27. // - languageDefined: Use language configurations to determine when to autoclose brackets.
  28. // - beforeWhitespace: Autoclose brackets only when the cursor is to the left of whitespace.
  29. // - never
  30. "editor.autoClosingBrackets": "languageDefined",
  31. // Controls whether the editor should type over closing quotes or brackets.
  32. // - always
  33. // - auto: Type over closing quotes or brackets only if they were automatically inserted.
  34. // - never
  35. "editor.autoClosingOvertype": "auto",
  36. // Controls whether the editor should automatically close quotes after the user adds an opening quote.
  37. // - always
  38. // - languageDefined: Use language configurations to determine when to autoclose quotes.
  39. // - beforeWhitespace: Autoclose quotes only when the cursor is to the left of whitespace.
  40. // - never
  41. "editor.autoClosingQuotes": "languageDefined",
  42. // Controls whether the editor should automatically adjust the indentation when users type, paste, move or indent lines.
  43. // - none: The editor will not insert indentation automatically.
  44. // - keep: The editor will keep the current line's indentation.
  45. // - brackets: The editor will keep the current line's indentation and honor language defined brackets.
  46. // - advanced: The editor will keep the current line's indentation, honor language defined brackets and invoke special onEnterRules defined by languages.
  47. // - full: The editor will keep the current line's indentation, honor language defined brackets, invoke special onEnterRules defined by languages, and honor indentationRules defined by languages.
  48. "editor.autoIndent": "full",
  49. // Controls whether the editor should automatically surround selections.
  50. // - languageDefined: Use language configurations to determine when to automatically surround selections.
  51. // - quotes: Surround with quotes but not brackets.
  52. // - brackets: Surround with brackets but not quotes.
  53. // - never
  54. "editor.autoSurround": "languageDefined",
  55. // Code action kinds to be run on save.
  56. "editor.codeActionsOnSave": {},
  57. // Controls whether the editor shows CodeLens.
  58. "editor.codeLens": true,
  59. // Controls whether the editor should render the inline color decorators and color picker.
  60. "editor.colorDecorators": true,
  61. // Enable that the selection with the mouse and keys is doing column selection.
  62. "editor.columnSelection": false,
  63. // Controls whether a space character is inserted when commenting.
  64. "editor.comments.insertSpace": true,
  65. // Controls whether syntax highlighting should be copied into the clipboard.
  66. "editor.copyWithSyntaxHighlighting": true,
  67. // Control the cursor animation style.
  68. "editor.cursorBlinking": "blink",
  69. // Controls whether the smooth caret animation should be enabled.
  70. "editor.cursorSmoothCaretAnimation": false,
  71. // Controls the cursor style.
  72. "editor.cursorStyle": "line",
  73. // Controls the minimal number of visible leading and trailing lines surrounding the cursor. Known as 'scrollOff' or `scrollOffset` in some other editors.
  74. "editor.cursorSurroundingLines": 0,
  75. // Controls when `cursorSurroundingLines` should be enforced.
  76. // - default: `cursorSurroundingLines` is enforced only when triggered via the keyboard or API.
  77. // - all: `cursorSurroundingLines` is enforced always.
  78. "editor.cursorSurroundingLinesStyle": "default",
  79. // Controls the width of the cursor when `editor.cursorStyle` is set to `line`.
  80. "editor.cursorWidth": 0,
  81. // Defines a default formatter which takes precedence over all other formatter settings. Must be the identifier of an extension contributing a formatter.
  82. "editor.defaultFormatter": null,
  83. // Controls whether the Go to Definition mouse gesture always opens the peek widget.
  84. "editor.definitionLinkOpensInPeek": false,
  85. // Controls whether `editor.tabSize#` and `#editor.insertSpaces` will be automatically detected when a file is opened based on the file contents.
  86. "editor.detectIndentation": true,
  87. // Controls whether the editor should allow moving selections via drag and drop.
  88. "editor.dragAndDrop": true,
  89. // Controls whether copying without a selection copies the current line.
  90. "editor.emptySelectionClipboard": true,
  91. // Scrolling speed multiplier when pressing `Alt`.
  92. "editor.fastScrollSensitivity": 5,
  93. // Controls whether the Find Widget should add extra lines on top of the editor. When true, you can scroll beyond the first line when the Find Widget is visible.
  94. "editor.find.addExtraSpaceOnTop": true,
  95. // Controls whether the find operation is carried out on selected text or the entire file in the editor.
  96. // - never: Never turn on Find in selection automatically (default)
  97. // - always: Always turn on Find in selection automatically
  98. // - multiline: Turn on Find in selection automatically when multiple lines of content are selected.
  99. "editor.find.autoFindInSelection": "never",
  100. // Controls whether the Find Widget should read or modify the shared find clipboard on macOS.
  101. "editor.find.globalFindClipboard": false,
  102. // Controls whether the search automatically restarts from the beginning (or the end) when no further matches can be found.
  103. "editor.find.loop": true,
  104. // Controls whether the search string in the Find Widget is seeded from the editor selection.
  105. "editor.find.seedSearchStringFromSelection": true,
  106. // Controls whether the editor has code folding enabled.
  107. "editor.folding": true,
  108. // Controls whether the editor should highlight folded ranges.
  109. "editor.foldingHighlight": true,
  110. // Controls the strategy for computing folding ranges.
  111. // - auto: Use a language-specific folding strategy if available, else the indentation-based one.
  112. // - indentation: Use the indentation-based folding strategy.
  113. "editor.foldingStrategy": "auto",
  114. // Controls the font family.
  115. "editor.fontFamily": "Consolas, 'Courier New', monospace",
  116. // Configures font ligatures or font features.
  117. "editor.fontLigatures": false,
  118. // Controls the font size in pixels.
  119. "editor.fontSize": 14,
  120. // Controls the font weight.
  121. "editor.fontWeight": "normal",
  122. // Controls whether the editor should automatically format the pasted content. A formatter must be available and the formatter should be able to format a range in a document.
  123. "editor.formatOnPaste": false,
  124. // Format a file on save. A formatter must be available, the file must not be saved after delay, and the editor must not be shutting down.
  125. "editor.formatOnSave": false,
  126. // Controls whether the editor should automatically format the line after typing.
  127. "editor.formatOnType": false,
  128. // Controls whether the editor should render the vertical glyph margin. Glyph margin is mostly used for debugging.
  129. "editor.glyphMargin": true,
  130. // Alternative command id that is being executed when the result of 'Go to Declaration' is the current location.
  131. "editor.gotoLocation.alternativeDeclarationCommand": "editor.action.goToReferences",
  132. // Alternative command id that is being executed when the result of 'Go to Definition' is the current location.
  133. "editor.gotoLocation.alternativeDefinitionCommand": "editor.action.goToReferences",
  134. // Alternative command id that is being executed when the result of 'Go to Implementation' is the current location.
  135. "editor.gotoLocation.alternativeImplementationCommand": "",
  136. // Alternative command id that is being executed when the result of 'Go to Reference' is the current location.
  137. "editor.gotoLocation.alternativeReferenceCommand": "",
  138. // Alternative command id that is being executed when the result of 'Go to Type Definition' is the current location.
  139. "editor.gotoLocation.alternativeTypeDefinitionCommand": "editor.action.goToReferences",
  140. // Controls the behavior the 'Go to Declaration'-command when multiple target locations exist.
  141. // - peek: Show peek view of the results (default)
  142. // - gotoAndPeek: Go to the primary result and show a peek view
  143. // - goto: Go to the primary result and enable peek-less navigation to others
  144. "editor.gotoLocation.multipleDeclarations": "peek",
  145. // Controls the behavior the 'Go to Definition'-command when multiple target locations exist.
  146. // - peek: Show peek view of the results (default)
  147. // - gotoAndPeek: Go to the primary result and show a peek view
  148. // - goto: Go to the primary result and enable peek-less navigation to others
  149. "editor.gotoLocation.multipleDefinitions": "peek",
  150. // Controls the behavior the 'Go to Implementations'-command when multiple target locations exist.
  151. // - peek: Show peek view of the results (default)
  152. // - gotoAndPeek: Go to the primary result and show a peek view
  153. // - goto: Go to the primary result and enable peek-less navigation to others
  154. "editor.gotoLocation.multipleImplementations": "peek",
  155. // Controls the behavior the 'Go to References'-command when multiple target locations exist.
  156. // - peek: Show peek view of the results (default)
  157. // - gotoAndPeek: Go to the primary result and show a peek view
  158. // - goto: Go to the primary result and enable peek-less navigation to others
  159. "editor.gotoLocation.multipleReferences": "peek",
  160. // Controls the behavior the 'Go to Type Definition'-command when multiple target locations exist.
  161. // - peek: Show peek view of the results (default)
  162. // - gotoAndPeek: Go to the primary result and show a peek view
  163. // - goto: Go to the primary result and enable peek-less navigation to others
  164. "editor.gotoLocation.multipleTypeDefinitions": "peek",
  165. // Controls whether the cursor should be hidden in the overview ruler.
  166. "editor.hideCursorInOverviewRuler": false,
  167. // Controls whether the editor should highlight the active indent guide.
  168. "editor.highlightActiveIndentGuide": true,
  169. // Controls the delay in milliseconds after which the hover is shown.
  170. "editor.hover.delay": 300,
  171. // Controls whether the hover is shown.
  172. "editor.hover.enabled": true,
  173. // Controls whether the hover should remain visible when mouse is moved over it.
  174. "editor.hover.sticky": true,
  175. // Insert spaces when pressing `Tab`. This setting is overridden based on the file contents when `editor.detectIndentation` is on.
  176. "editor.insertSpaces": true,
  177. // Controls the letter spacing in pixels.
  178. "editor.letterSpacing": 0,
  179. // Enables the code action lightbulb in the editor.
  180. "editor.lightbulb.enabled": true,
  181. // Controls the line height. Use 0 to compute the line height from the font size.
  182. "editor.lineHeight": 0,
  183. // Controls the display of line numbers.
  184. // - off: Line numbers are not rendered.
  185. // - on: Line numbers are rendered as absolute number.
  186. // - relative: Line numbers are rendered as distance in lines to cursor position.
  187. // - interval: Line numbers are rendered every 10 lines.
  188. "editor.lineNumbers": "on",
  189. // Controls whether the editor should detect links and make them clickable.
  190. "editor.links": true,
  191. // Highlight matching brackets.
  192. "editor.matchBrackets": "always",
  193. // Controls whether the minimap is shown.
  194. "editor.minimap.enabled": true,
  195. // Limit the width of the minimap to render at most a certain number of columns.
  196. "editor.minimap.maxColumn": 120,
  197. // Render the actual characters on a line as opposed to color blocks.
  198. "editor.minimap.renderCharacters": true,
  199. // Scale of content drawn in the minimap: 1, 2 or 3.
  200. "editor.minimap.scale": 1,
  201. // Controls when the minimap slider is shown.
  202. "editor.minimap.showSlider": "mouseover",
  203. // Controls the side where to render the minimap.
  204. "editor.minimap.side": "right",
  205. // Controls the size of the minimap.
  206. // - proportional: The minimap has the same size as the editor contents (and might scroll).
  207. // - fill: The minimap will stretch or shrink as necessary to fill the height of the editor (no scrolling).
  208. // - fit: The minimap will shrink as necessary to never be larger than the editor (no scrolling).
  209. "editor.minimap.size": "proportional",
  210. // A multiplier to be used on the `deltaX` and `deltaY` of mouse wheel scroll events.
  211. "editor.mouseWheelScrollSensitivity": 1,
  212. // Zoom the font of the editor when using mouse wheel and holding `Ctrl`.
  213. "editor.mouseWheelZoom": false,
  214. // The modifier to be used to add multiple cursors with the mouse. The Go To Definition and Open Link mouse gestures will adapt such that they do not conflict with the multicursor modifier. [Read more](https://code.visualstudio.com/docs/editor/codebasics#_multicursor-modifier).
  215. // - ctrlCmd: Maps to `Control` on Windows and Linux and to `Command` on macOS.
  216. // - alt: Maps to `Alt` on Windows and Linux and to `Option` on macOS.
  217. "editor.multiCursorModifier": "alt",
  218. // Controls pasting when the line count of the pasted text matches the cursor count.
  219. // - spread: Each cursor pastes a single line of the text.
  220. // - full: Each cursor pastes the full text.
  221. "editor.multiCursorPaste": "spread",
  222. // Controls whether the editor should highlight semantic symbol occurrences.
  223. "editor.occurrencesHighlight": true,
  224. // Controls whether a border should be drawn around the overview ruler.
  225. "editor.overviewRulerBorder": true,
  226. // Controls the amount of space between the bottom edge of the editor and the last line.
  227. "editor.padding.bottom": 0,
  228. // Controls the amount of space between the top edge of the editor and the first line.
  229. "editor.padding.top": 0,
  230. // Controls whether the parameter hints menu cycles or closes when reaching the end of the list.
  231. "editor.parameterHints.cycle": false,
  232. // Enables a pop-up that shows parameter documentation and type information as you type.
  233. "editor.parameterHints.enabled": true,
  234. // Controls whether to focus the inline editor or the tree in the peek widget.
  235. // - tree: Focus the tree when opening peek
  236. // - editor: Focus the editor when opening peek
  237. "editor.peekWidgetDefaultFocus": "tree",
  238. // Controls whether suggestions should automatically show up while typing.
  239. "editor.quickSuggestions": {
  240. "other": true,
  241. "comments": false,
  242. "strings": false
  243. },
  244. // Controls the delay in milliseconds after which quick suggestions will show up.
  245. "editor.quickSuggestionsDelay": 10,
  246. // Enable/disable the ability to preview changes before renaming
  247. "editor.rename.enablePreview": true,
  248. // Controls whether the editor auto renames on type.
  249. "editor.renameOnType": false,
  250. // Controls whether the editor should render control characters.
  251. "editor.renderControlCharacters": false,
  252. // Render last line number when the file ends with a newline.
  253. "editor.renderFinalNewline": true,
  254. // Controls whether the editor should render indent guides.
  255. "editor.renderIndentGuides": true,
  256. // Controls how the editor should render the current line highlight.
  257. // - none
  258. // - gutter
  259. // - line
  260. // - all: Highlights both the gutter and the current line.
  261. "editor.renderLineHighlight": "line",
  262. // Controls if the editor should render the current line highlight only when the editor is focused
  263. "editor.renderLineHighlightOnlyWhenFocus": false,
  264. // Controls how the editor should render whitespace characters.
  265. // - none
  266. // - boundary: Render whitespace characters except for single spaces between words.
  267. // - selection: Render whitespace characters only on selected text.
  268. // - all
  269. "editor.renderWhitespace": "selection",
  270. // Controls whether selections should have rounded corners.
  271. "editor.roundedSelection": true,
  272. // Render vertical rulers after a certain number of monospace characters. Use multiple values for multiple rulers. No rulers are drawn if array is empty.
  273. "editor.rulers": [],
  274. // Controls the number of extra characters beyond which the editor will scroll horizontally.
  275. "editor.scrollBeyondLastColumn": 5,
  276. // Controls whether the editor will scroll beyond the last line.
  277. "editor.scrollBeyondLastLine": true,
  278. // Controls whether the Linux primary clipboard should be supported.
  279. "editor.selectionClipboard": true,
  280. // Scroll only along the predominant axis when scrolling both vertically and horizontally at the same time. Prevents horizontal drift when scrolling vertically on a trackpad.
  281. "editor.scrollPredominantAxis": true,
  282. // Controls whether the editor should highlight matches similar to the selection.
  283. "editor.selectionHighlight": true,
  284. // Controls whether the semanticHighlighting is shown for the languages that support it.
  285. "editor.semanticHighlighting.enabled": true,
  286. // Overrides editor semantic token color and styles from the currently selected color theme.
  287. "editor.semanticTokenColorCustomizations": {},
  288. // Controls when the folding controls on the gutter are shown.
  289. // - always: Always show the folding controls.
  290. // - mouseover: Only show the folding controls when the mouse is over the gutter.
  291. "editor.showFoldingControls": "mouseover",
  292. // Controls fading out of unused code.
  293. "editor.showUnused": true,
  294. // Controls whether the editor will scroll using an animation.
  295. "editor.smoothScrolling": false,
  296. // Controls whether snippets are shown with other suggestions and how they are sorted.
  297. // - top: Show snippet suggestions on top of other suggestions.
  298. // - bottom: Show snippet suggestions below other suggestions.
  299. // - inline: Show snippets suggestions with other suggestions.
  300. // - none: Do not show snippet suggestions.
  301. "editor.snippetSuggestions": "inline",
  302. // Keep peek editors open even when double clicking their content or when hitting `Escape`.
  303. "editor.stablePeek": false,
  304. // Controls whether filtering and sorting suggestions accounts for small typos.
  305. "editor.suggest.filterGraceful": true,
  306. // Controls whether words are overwritten when accepting completions. Note that this depends on extensions opting into this feature.
  307. // - insert: Insert suggestion without overwriting text right of the cursor.
  308. // - replace: Insert suggestion and overwrite text right of the cursor.
  309. "editor.suggest.insertMode": "insert",
  310. // Controls whether sorting favours words that appear close to the cursor.
  311. "editor.suggest.localityBonus": false,
  312. // Controls how many suggestions IntelliSense will show before showing a scrollbar (maximum 15).
  313. "editor.suggest.maxVisibleSuggestions": 12,
  314. // Controls whether remembered suggestion selections are shared between multiple workspaces and windows (needs `editor.suggestSelection`).
  315. "editor.suggest.shareSuggestSelections": false,
  316. // When enabled IntelliSense shows `class`-suggestions.
  317. "editor.suggest.showClasses": true,
  318. // When enabled IntelliSense shows `color`-suggestions.
  319. "editor.suggest.showColors": true,
  320. // When enabled IntelliSense shows `constant`-suggestions.
  321. "editor.suggest.showConstants": true,
  322. // When enabled IntelliSense shows `constructor`-suggestions.
  323. "editor.suggest.showConstructors": true,
  324. // When enabled IntelliSense shows `customcolor`-suggestions.
  325. "editor.suggest.showCustomcolors": true,
  326. // When enabled IntelliSense shows `enumMember`-suggestions.
  327. "editor.suggest.showEnumMembers": true,
  328. // When enabled IntelliSense shows `enum`-suggestions.
  329. "editor.suggest.showEnums": true,
  330. // When enabled IntelliSense shows `event`-suggestions.
  331. "editor.suggest.showEvents": true,
  332. // When enabled IntelliSense shows `field`-suggestions.
  333. "editor.suggest.showFields": true,
  334. // When enabled IntelliSense shows `file`-suggestions.
  335. "editor.suggest.showFiles": true,
  336. // When enabled IntelliSense shows `folder`-suggestions.
  337. "editor.suggest.showFolders": true,
  338. // When enabled IntelliSense shows `function`-suggestions.
  339. "editor.suggest.showFunctions": true,
  340. // Controls whether to show or hide icons in suggestions.
  341. "editor.suggest.showIcons": true,
  342. // When enabled IntelliSense shows `interface`-suggestions.
  343. "editor.suggest.showInterfaces": true,
  344. // When enabled IntelliSense shows `issues`-suggestions.
  345. "editor.suggest.showIssues": true,
  346. // When enabled IntelliSense shows `keyword`-suggestions.
  347. "editor.suggest.showKeywords": true,
  348. // When enabled IntelliSense shows `method`-suggestions.
  349. "editor.suggest.showMethods": true,
  350. // When enabled IntelliSense shows `module`-suggestions.
  351. "editor.suggest.showModules": true,
  352. // When enabled IntelliSense shows `operator`-suggestions.
  353. "editor.suggest.showOperators": true,
  354. // When enabled IntelliSense shows `property`-suggestions.
  355. "editor.suggest.showProperties": true,
  356. // When enabled IntelliSense shows `reference`-suggestions.
  357. "editor.suggest.showReferences": true,
  358. // When enabled IntelliSense shows `snippet`-suggestions.
  359. "editor.suggest.showSnippets": true,
  360. // When enabled IntelliSense shows `struct`-suggestions.
  361. "editor.suggest.showStructs": true,
  362. // When enabled IntelliSense shows `typeParameter`-suggestions.
  363. "editor.suggest.showTypeParameters": true,
  364. // When enabled IntelliSense shows `unit`-suggestions.
  365. "editor.suggest.showUnits": true,
  366. // When enabled IntelliSense shows `user`-suggestions.
  367. "editor.suggest.showUsers": true,
  368. // When enabled IntelliSense shows `value`-suggestions.
  369. "editor.suggest.showValues": true,
  370. // When enabled IntelliSense shows `variable`-suggestions.
  371. "editor.suggest.showVariables": true,
  372. // When enabled IntelliSense shows `text`-suggestions.
  373. "editor.suggest.showWords": true,
  374. // Controls whether an active snippet prevents quick suggestions.
  375. "editor.suggest.snippetsPreventQuickSuggestions": true,
  376. // Font size for the suggest widget. When set to `0`, the value of `editor.fontSize` is used.
  377. "editor.suggestFontSize": 0,
  378. // Line height for the suggest widget. When set to `0`, the value of `editor.lineHeight` is used.
  379. "editor.suggestLineHeight": 0,
  380. // Controls whether suggestions should automatically show up when typing trigger characters.
  381. "editor.suggestOnTriggerCharacters": true,
  382. // Controls how suggestions are pre-selected when showing the suggest list.
  383. // - first: Always select the first suggestion.
  384. // - recentlyUsed: Select recent suggestions unless further typing selects one, e.g. `console.| -> console.log` because `log` has been completed recently.
  385. // - recentlyUsedByPrefix: Select suggestions based on previous prefixes that have completed those suggestions, e.g. `co -> console` and `con -> const`.
  386. "editor.suggestSelection": "recentlyUsed",
  387. // Enables tab completions.
  388. // - on: Tab complete will insert the best matching suggestion when pressing tab.
  389. // - off: Disable tab completions.
  390. // - onlySnippets: Tab complete snippets when their prefix match. Works best when 'quickSuggestions' aren't enabled.
  391. "editor.tabCompletion": "off",
  392. // The number of spaces a tab is equal to. This setting is overridden based on the file contents when `editor.detectIndentation` is on.
  393. "editor.tabSize": 4,
  394. // Overrides editor syntax colors and font style from the currently selected color theme.
  395. "editor.tokenColorCustomizations": {},
  396. // Remove trailing auto inserted whitespace.
  397. "editor.trimAutoWhitespace": true,
  398. // Controls whether clicking on the empty content after a folded line will unfold the line.
  399. "editor.unfoldOnClickAfterEndOfLine": false,
  400. // Remove unusual line terminators that might cause problems.
  401. // - off: Unusual line terminators are ignored.
  402. // - prompt: Unusual line terminators prompt to be removed.
  403. // - auto: Unusual line terminators are automatically removed.
  404. "editor.unusualLineTerminators": "prompt",
  405. // Inserting and deleting whitespace follows tab stops.
  406. "editor.useTabStops": true,
  407. // Controls whether completions should be computed based on words in the document.
  408. "editor.wordBasedSuggestions": true,
  409. // Characters that will be used as word separators when doing word related navigations or operations.
  410. "editor.wordSeparators": "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?",
  411. // Controls how lines should wrap.
  412. // - off: Lines will never wrap.
  413. // - on: Lines will wrap at the viewport width.
  414. // - wordWrapColumn: Lines will wrap at `editor.wordWrapColumn`.
  415. // - bounded: Lines will wrap at the minimum of viewport and `editor.wordWrapColumn`.
  416. "editor.wordWrap": "off",
  417. // Controls the wrapping column of the editor when `editor.wordWrap` is `wordWrapColumn` or `bounded`.
  418. "editor.wordWrapColumn": 80,
  419. // Controls the indentation of wrapped lines.
  420. // - none: No indentation. Wrapped lines begin at column 1.
  421. // - same: Wrapped lines get the same indentation as the parent.
  422. // - indent: Wrapped lines get +1 indentation toward the parent.
  423. // - deepIndent: Wrapped lines get +2 indentation toward the parent.
  424. "editor.wrappingIndent": "same",
  425. // Controls the algorithm that computes wrapping points.
  426. // - simple: Assumes that all characters are of the same width. This is a fast algorithm that works correctly for monospace fonts and certain scripts (like Latin characters) where glyphs are of equal width.
  427. // - advanced: Delegates wrapping points computation to the browser. This is a slow algorithm, that might cause freezes for large files, but it works correctly in all cases.
  428. "editor.wrappingStrategy": "simple",
  429. // SCM
  430. // Controls whether inline actions are always visible in the Source Control view.
  431. "scm.alwaysShowActions": false,
  432. // Controls whether to show the Source Control Provider section even when there's only one Provider registered.
  433. "scm.alwaysShowProviders": false,
  434. // Controls whether the SCM view should automatically reveal and select files when opening them.
  435. "scm.autoReveal": true,
  436. // Controls the Source Control count badge.
  437. // - all: Show the sum of all Source Control Providers count badges.
  438. // - focused: Show the count badge of the focused Source Control Provider.
  439. // - off: Disable the Source Control count badge.
  440. "scm.countBadge": "all",
  441. // Controls the default Source Control repository view mode.
  442. // - tree: Show the repository changes as a tree.
  443. // - list: Show the repository changes as a list.
  444. "scm.defaultViewMode": "list",
  445. // Controls diff decorations in the editor.
  446. // - all: Show the diff decorations in all available locations.
  447. // - gutter: Show the diff decorations only in the editor gutter.
  448. // - overview: Show the diff decorations only in the overview ruler.
  449. // - minimap: Show the diff decorations only in the minimap.
  450. // - none: Do not show the diff decorations.
  451. "scm.diffDecorations": "all",
  452. // Controls the visibility of the Source Control diff decorator in the gutter.
  453. // - always: Show the diff decorator in the gutter at all times.
  454. // - hover: Show the diff decorator in the gutter only on hover.
  455. "scm.diffDecorationsGutterVisibility": "always",
  456. // Controls the width(px) of diff decorations in gutter (added & modified).
  457. "scm.diffDecorationsGutterWidth": 3,
  458. // Controls the font for the input message. Use `default` for the workbench user interface font family, `editor` for the `editor.fontFamily`'s value, or a custom font family.
  459. "scm.inputFontFamily": "default",
  460. // Controls how many providers are visible in the Source Control Provider section. Set to `0` to be able to manually resize the view.
  461. "scm.providers.visible": 10,
  462. // If set, automatically switch to the preferred color theme based on the OS appearance.
  463. "window.autoDetectColorScheme": false,
  464. // Workbench
  465. // Controls the visibility of the activity bar in the workbench.
  466. "workbench.activityBar.visible": true,
  467. // Overrides colors from the currently selected color theme.
  468. "workbench.colorCustomizations": {},
  469. // Specifies the color theme used in the workbench.
  470. "workbench.colorTheme": "Default Dark+",
  471. // Controls the number of recently used commands to keep in history for the command palette. Set to 0 to disable command history.
  472. "workbench.commandPalette.history": 50,
  473. // Controls whether the last typed input to the command palette should be restored when opening it the next time.
  474. "workbench.commandPalette.preserveInput": false,
  475. // Controls if the centered layout should automatically resize to maximum width when more than one group is open. Once only one group is open it will resize back to the original centered width.
  476. "workbench.editor.centeredLayoutAutoResize": true,
  477. // Controls the behavior of empty editor groups when the last tab in the group is closed. When enabled, empty groups will automatically close. When disabled, empty groups will remain part of the grid.
  478. "workbench.editor.closeEmptyGroups": true,
  479. // Controls whether editors showing a file that was opened during the session should close automatically when getting deleted or renamed by some other process. Disabling this will keep the editor open on such an event. Note that deleting from within the application will always close the editor and that dirty files will never close to preserve your data.
  480. "workbench.editor.closeOnFileDelete": false,
  481. // Controls whether opened editors show as preview. Preview editors are reused until they are explicitly set to be kept open (e.g. via double click or editing) and show up with an italic font style.
  482. "workbench.editor.enablePreview": true,
  483. // Controls whether editors opened from Quick Open show as preview. Preview editors are reused until they are explicitly set to be kept open (e.g. via double click or editing).
  484. "workbench.editor.enablePreviewFromQuickOpen": true,
  485. // Controls whether tabs are closed in most recently used order or from left to right.
  486. "workbench.editor.focusRecentEditorAfterClose": true,
  487. // Controls whether a top border is drawn on modified (dirty) editor tabs or not.
  488. "workbench.editor.highlightModifiedTabs": false,
  489. // Controls the format of the label for an editor.
  490. // - default: Show the name of the file. When tabs are enabled and two files have the same name in one group the distinguishing sections of each file's path are added. When tabs are disabled, the path relative to the workspace folder is shown if the editor is active.
  491. // - short: Show the name of the file followed by its directory name.
  492. // - medium: Show the name of the file followed by its path relative to the workspace folder.
  493. // - long: Show the name of the file followed by its absolute path.
  494. "workbench.editor.labelFormat": "default",
  495. // Controls if the number of opened editors should be limited or not. When enabled, less recently used editors that are not dirty will close to make space for newly opening editors.
  496. "workbench.editor.limit.enabled": false,
  497. // Controls if the limit of maximum opened editors should apply per editor group or across all editor groups.
  498. "workbench.editor.limit.perEditorGroup": false,
  499. // Controls the maximum number of opened editors. Use the `workbench.editor.limit.perEditorGroup` setting to control this limit per editor group or across all groups.
  500. "workbench.editor.limit.value": 10,
  501. // Navigate between open files using mouse buttons four and five if provided.
  502. "workbench.editor.mouseBackForwardToNavigate": true,
  503. // Controls where editors open. Select `left` or `right` to open editors to the left or right of the currently active one. Select `first` or `last` to open editors independently from the currently active one.
  504. "workbench.editor.openPositioning": "right",
  505. // Controls the default direction of editors that are opened side by side (e.g. from the explorer). By default, editors will open on the right hand side of the currently active one. If changed to `down`, the editors will open below the currently active one.
  506. "workbench.editor.openSideBySideDirection": "right",
  507. // Restores the last view state (e.g. scroll position) when re-opening files after they have been closed.
  508. "workbench.editor.restoreViewState": true,
  509. // Controls whether an editor is revealed in any of the visible groups if opened. If disabled, an editor will prefer to open in the currently active editor group. If enabled, an already opened editor will be revealed instead of opened again in the currently active editor group. Note that there are some cases where this setting is ignored, e.g. when forcing an editor to open in a specific group or to the side of the currently active group.
  510. "workbench.editor.revealIfOpen": false,
  511. // Controls whether scrolling over tabs will open them or not. By default tabs will only reveal upon scrolling, but not open. You can press and hold the Shift-key while scrolling to change this behaviour for that duration.
  512. "workbench.editor.scrollToSwitchTabs": false,
  513. // Controls whether opened editors should show with an icon or not. This requires a file icon theme to be enabled as well.
  514. "workbench.editor.showIcons": true,
  515. // Controls whether opened editors should show in tabs or not.
  516. "workbench.editor.showTabs": true,
  517. // Controls the sizing of editor groups when splitting them.
  518. // - distribute: Splits all the editor groups to equal parts.
  519. // - split: Splits the active editor group to equal parts.
  520. "workbench.editor.splitSizing": "distribute",
  521. // Controls the position of the editor's tabs close buttons, or disables them when set to 'off'.
  522. "workbench.editor.tabCloseButton": "right",
  523. // Controls the sizing of editor tabs.
  524. // - fit: Always keep tabs large enough to show the full editor label.
  525. // - shrink: Allow tabs to get smaller when the available space is not enough to show all tabs at once.
  526. "workbench.editor.tabSizing": "fit",
  527. // Controls font aliasing method in the workbench.
  528. // - default: Sub-pixel font smoothing. On most non-retina displays this will give the sharpest text.
  529. // - antialiased: Smooth the font on the level of the pixel, as opposed to the subpixel. Can make the font appear lighter overall.
  530. // - none: Disables font smoothing. Text will show with jagged sharp edges.
  531. // - auto: Applies `default` or `antialiased` automatically based on the DPI of displays.
  532. "workbench.fontAliasing": "default",
  533. // Controls the height of the scrollbars used for tabs and breadcrumbs in the editor title area.
  534. // - default: The default size.
  535. // - large: Increases the size, so it can be grabed more easily with the mouse
  536. "workbench.editor.titleScrollbarSizing": "default",
  537. // Controls the format of the label for an untitled editor.
  538. // - content: The name of the untitled file is derived from the contents of its first line unless it has an associated file path. It will fallback to the name in case the line is empty or contains no word characters.
  539. // - name: The name of the untitled file is not derived from the contents of the file.
  540. "workbench.editor.untitled.labelFormat": "content",
  541. // Configure which editor to use for specific file types.
  542. "workbench.editorAssociations": [],
  543. // Specifies the file icon theme used in the workbench or 'null' to not show any file icons.
  544. // - null: No file icons
  545. // - vs-minimal
  546. // - vs-seti
  547. "workbench.iconTheme": "vs-seti",
  548. // Controls whether keyboard navigation in lists and trees is automatically triggered simply by typing. If set to `false`, keyboard navigation is only triggered when executing the `list.toggleKeyboardNavigation` command, for which you can assign a keyboard shortcut.
  549. "workbench.list.automaticKeyboardNavigation": true,
  550. // Controls whether lists and trees support horizontal scrolling in the workbench. Warning: turning on this setting has a performance implication.
  551. "workbench.list.horizontalScrolling": false,
  552. // Controls the keyboard navigation style for lists and trees in the workbench. Can be simple, highlight and filter.
  553. // - simple: Simple keyboard navigation focuses elements which match the keyboard input. Matching is done only on prefixes.
  554. // - highlight: Highlight keyboard navigation highlights elements which match the keyboard input. Further up and down navigation will traverse only the highlighted elements.
  555. // - filter: Filter keyboard navigation will filter out and hide all the elements which do not match the keyboard input.
  556. "workbench.list.keyboardNavigation": "highlight",
  557. // The modifier to be used to add an item in trees and lists to a multi-selection with the mouse (for example in the explorer, open editors and scm view). The 'Open to Side' mouse gestures - if supported - will adapt such that they do not conflict with the multiselect modifier.
  558. // - ctrlCmd: Maps to `Control` on Windows and Linux and to `Command` on macOS.
  559. // - alt: Maps to `Alt` on Windows and Linux and to `Option` on macOS.
  560. "workbench.list.multiSelectModifier": "ctrlCmd",
  561. // Controls how to open items in trees and lists using the mouse (if supported). For parents with children in trees, this setting will control if a single click expands the parent or a double click. Note that some trees and lists might choose to ignore this setting if it is not applicable.
  562. "workbench.list.openMode": "singleClick",
  563. // Controls the default location of the panel (terminal, debug console, output, problems). It can either show at the bottom, right, or left of the workbench.
  564. "workbench.panel.defaultLocation": "bottom",
  565. // Specifies the preferred color theme for dark OS appearance when 'window.autoDetectColorScheme' is enabled.
  566. "workbench.preferredDarkColorTheme": "Default Dark+",
  567. // Specifies the preferred color theme used in high contrast mode when 'window.autoDetectHighContrast' is enabled.
  568. "workbench.preferredHighContrastColorTheme": "Default High Contrast",
  569. // Specifies the preferred color theme for light OS appearance when 'window.autoDetectColorScheme' is enabled.
  570. "workbench.preferredLightColorTheme": "Default Light+",
  571. // Specifies the product icon theme used.
  572. // - Default: Default
  573. "workbench.productIconTheme": "Default",
  574. // Controls whether Quick Open should close automatically once it loses focus.
  575. "workbench.quickOpen.closeOnFocusLost": true,
  576. // Controls whether the last typed input to Quick Open should be restored when opening it the next time.
  577. "workbench.quickOpen.preserveInput": false,
  578. // Controls the feedback area size in pixels of the dragging area in between views/editors. Set it to a larger value if you feel it's hard to resize views using the mouse.
  579. "workbench.sash.size": 4,
  580. // Determines which settings editor to use by default.
  581. // - ui: Use the settings UI editor.
  582. // - json: Use the JSON file editor.
  583. "workbench.settings.editor": "ui",
  584. // Controls whether to enable the natural language search mode for settings. The natural language search is provided by a Microsoft online service.
  585. "workbench.settings.enableNaturalLanguageSearch": true,
  586. // Controls whether opening keybinding settings also opens an editor showing all default keybindings.
  587. "workbench.settings.openDefaultKeybindings": false,
  588. // Controls whether opening settings also opens an editor showing all default settings.
  589. "workbench.settings.openDefaultSettings": false,
  590. // Controls the behavior of the settings editor Table of Contents while searching.
  591. // - hide: Hide the Table of Contents while searching.
  592. // - filter: Filter the Table of Contents to just categories that have matching settings. Clicking a category will filter the results to that category.
  593. "workbench.settings.settingsSearchTocBehavior": "filter",
  594. // Controls whether to use the split JSON editor when editing settings as JSON.
  595. "workbench.settings.useSplitJSON": false,
  596. // Controls the location of the sidebar and activity bar. They can either show on the left or right of the workbench.
  597. "workbench.sideBar.location": "left",
  598. // Controls which editor is shown at startup, if none are restored from the previous session.
  599. // - none: Start without an editor.
  600. // - welcomePage: Open the Welcome page (default).
  601. // - readme: Open the README when opening a folder that contains one, fallback to 'welcomePage' otherwise.
  602. // - newUntitledFile: Open a new untitled file (only applies when opening an empty workspace).
  603. // - welcomePageInEmptyWorkbench: Open the Welcome page when opening an empty workbench.
  604. "workbench.startupEditor": "welcomePage",
  605. // Controls the visibility of the status bar at the bottom of the workbench.
  606. "workbench.statusBar.visible": true,
  607. // When enabled, will show the watermark tips when no editor is open.
  608. "workbench.tips.enabled": true,
  609. // Controls tree indentation in pixels.
  610. "workbench.tree.indent": 8,
  611. // Controls whether the tree should render indent guides.
  612. "workbench.tree.renderIndentGuides": "onHover",
  613. // Controls the visibility of view header actions. View header actions may either be always visible, or only visible when that view is focused or hovered over.
  614. "workbench.view.alwaysShowHeaderActions": false,
  615. // Window
  616. // If enabled, will automatically change to high contrast theme if Windows is using a high contrast theme, and to dark theme when switching away from a Windows high contrast theme.
  617. "window.autoDetectHighContrast": true,
  618. // If enabled, clicking on an inactive window will both activate the window and trigger the element under the mouse if it is clickable. If disabled, clicking anywhere on an inactive window will activate it only and a second click is required on the element.
  619. "window.clickThroughInactive": true,
  620. // Controls whether closing the last editor should also close the window. This setting only applies for windows that do not show folders.
  621. "window.closeWhenEmpty": false,
  622. // Controls whether the menu bar will be focused by pressing the Alt-key. This setting has no effect on toggling the menu bar with the Alt-key.
  623. "window.customMenuBarAltFocus": true,
  624. // If enabled, double clicking the application icon in the title bar will close the window and the window cannot be dragged by the icon. This setting only has an effect when `window.titleBarStyle` is set to `custom`.
  625. "window.doubleClickIconToClose": false,
  626. // Controls if native full-screen should be used on macOS. Disable this option to prevent macOS from creating a new space when going full-screen.
  627. "window.nativeFullScreen": true,
  628. // Enables macOS Sierra window tabs. Note that changes require a full restart to apply and that native tabs will disable a custom title bar style if configured.
  629. "window.nativeTabs": false,
  630. // Controls whether the main menus can be opened via Alt-key shortcuts. Disabling mnemonics allows to bind these Alt-key shortcuts to editor commands instead.
  631. "window.enableMenuBarMnemonics": true,
  632. // Control the visibility of the menu bar. A setting of 'toggle' means that the menu bar is hidden and a single press of the Alt key will show it. By default, the menu bar will be visible, unless the window is full screen.
  633. // - default: Menu is only hidden in full screen mode.
  634. // - visible: Menu is always visible even in full screen mode.
  635. // - toggle: Menu is hidden but can be displayed via Alt key.
  636. // - hidden: Menu is always hidden.
  637. // - compact: Menu is displayed as a compact button in the sidebar. This value is ignored when 'window.titleBarStyle' is 'native'.
  638. "window.menuBarVisibility": "default",
  639. // Controls the dimensions of opening a new window when at least one window is already opened. Note that this setting does not have an impact on the first window that is opened. The first window will always restore the size and location as you left it before closing.
  640. // - default: Open new windows in the center of the screen.
  641. // - inherit: Open new windows with same dimension as last active one.
  642. // - offset: Open new windows with same dimension as last active one with an offset position.
  643. // - maximized: Open new windows maximized.
  644. // - fullscreen: Open new windows in full screen mode.
  645. "window.newWindowDimensions": "default",
  646. // Controls whether files should open in a new window.
  647. // Note that there can still be cases where this setting is ignored (e.g. when using the `--new-window` or `--reuse-window` command line option).
  648. // - on: Files will open in a new window.
  649. // - off: Files will open in the window with the files' folder open or the last active window.
  650. // - default: Files will open in a new window unless picked from within the application (e.g. via the File menu).
  651. "window.openFilesInNewWindow": "off",
  652. // Controls whether folders should open in a new window or replace the last active window.
  653. // Note that there can still be cases where this setting is ignored (e.g. when using the `--new-window` or `--reuse-window` command line option).
  654. // - on: Folders will open in a new window.
  655. // - off: Folders will replace the last active window.
  656. // - default: Folders will open in a new window unless a folder is picked from within the application (e.g. via the File menu).
  657. "window.openFoldersInNewWindow": "default",
  658. // Controls whether a new empty window should open when starting a second instance without arguments or if the last running instance should get focus.
  659. // Note that there can still be cases where this setting is ignored (e.g. when using the `--new-window` or `--reuse-window` command line option).
  660. // - on: Open a new empty window.
  661. // - off: Focus the last active running instance.
  662. "window.openWithoutArgumentsInNewWindow": "on",
  663. // Controls whether a window should restore to full screen mode if it was exited in full screen mode.
  664. "window.restoreFullscreen": false,
  665. // Controls how windows are being reopened after a restart.
  666. // - all: Reopen all windows.
  667. // - folders: Reopen all folders. Empty workspaces will not be restored.
  668. // - one: Reopen the last active window.
  669. // - none: Never reopen a window. Always start with an empty one.
  670. "window.restoreWindows": "all",
  671. // Controls the window title based on the active editor. Variables are substituted based on the context:
  672. // - `${activeEditorShort}`: the file name (e.g. myFile.txt).
  673. // - `${activeEditorMedium}`: the path of the file relative to the workspace folder (e.g. myFolder/myFileFolder/myFile.txt).
  674. // - `${activeEditorLong}`: the full path of the file (e.g. /Users/Development/myFolder/myFileFolder/myFile.txt).
  675. // - `${activeFolderShort}`: the name of the folder the file is contained in (e.g. myFileFolder).
  676. // - `${activeFolderMedium}`: the path of the folder the file is contained in, relative to the workspace folder (e.g. myFolder/myFileFolder).
  677. // - `${activeFolderLong}`: the full path of the folder the file is contained in (e.g. /Users/Development/myFolder/myFileFolder).
  678. // - `${folderName}`: name of the workspace folder the file is contained in (e.g. myFolder).
  679. // - `${folderPath}`: file path of the workspace folder the file is contained in (e.g. /Users/Development/myFolder).
  680. // - `${rootName}`: name of the workspace (e.g. myFolder or myWorkspace).
  681. // - `${rootPath}`: file path of the workspace (e.g. /Users/Development/myWorkspace).
  682. // - `${appName}`: e.g. VS Code.
  683. // - `${remoteName}`: e.g. SSH
  684. // - `${dirty}`: a dirty indicator if the active editor is dirty.
  685. // - `${separator}`: a conditional separator (" - ") that only shows when surrounded by variables with values or static text.
  686. "window.title": "${dirty}${activeEditorShort}${separator}${rootName}${separator}${appName}",
  687. // Adjust the appearance of the window title bar. On Linux and Windows, this setting also affects the application and context menu appearances. Changes require a full restart to apply.
  688. "window.titleBarStyle": "custom",
  689. // Separator used by `window.title`.
  690. "window.titleSeparator": " - ",
  691. // Adjust the zoom level of the window. The original size is 0 and each increment above (e.g. 1) or below (e.g. -1) represents zooming 20% larger or smaller. You can also enter decimals to adjust the zoom level with a finer granularity.
  692. "window.zoomLevel": 0,
  693. // Files
  694. // Configure file associations to languages (e.g. `"*.extension": "html"`). These have precedence over the default associations of the languages installed.
  695. "files.associations": {},
  696. // When enabled, the editor will attempt to guess the character set encoding when opening files. This setting can also be configured per language.
  697. "files.autoGuessEncoding": false,
  698. // Controls auto save of dirty editors. Read more about autosave [here](https://code.visualstudio.com/docs/editor/codebasics#_save-auto-save).
  699. // - off: A dirty editor is never automatically saved.
  700. // - afterDelay: A dirty editor is automatically saved after the configured `files.autoSaveDelay`.
  701. // - onFocusChange: A dirty editor is automatically saved when the editor loses focus.
  702. // - onWindowChange: A dirty editor is automatically saved when the window loses focus.
  703. "files.autoSave": "off",
  704. // Controls the delay in ms after which a dirty editor is saved automatically. Only applies when `files.autoSave` is set to `afterDelay`.
  705. "files.autoSaveDelay": 1000,
  706. // The default language mode that is assigned to new files. If configured to `${activeEditorLanguage}`, will use the language mode of the currently active text editor if any.
  707. "files.defaultLanguage": "",
  708. // Moves files/folders to the OS trash (recycle bin on Windows) when deleting. Disabling this will delete files/folders permanently.
  709. "files.enableTrash": true,
  710. // The default character set encoding to use when reading and writing files. This setting can also be configured per language.
  711. "files.encoding": "utf8",
  712. // The default end of line character.
  713. // - \n: LF
  714. // - \r\n: CRLF
  715. // - auto: Uses operating system specific end of line character.
  716. "files.eol": "auto",
  717. // Configure glob patterns for excluding files and folders. For example, the file Explorer decides which files and folders to show or hide based on this setting. Refer to the `search.exclude` setting to define search specific excludes. Read more about glob patterns [here](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options).
  718. "files.exclude": {
  719. "**/.git": true,
  720. "**/.svn": true,
  721. "**/.hg": true,
  722. "**/CVS": true,
  723. "**/.DS_Store": true
  724. },
  725. // Controls whether unsaved files are remembered between sessions, allowing the save prompt when exiting the editor to be skipped.
  726. // - off: Disable hot exit. A prompt will show when attempting to close a window with dirty files.
  727. // - onExit: Hot exit will be triggered when the last window is closed on Windows/Linux or when the `workbench.action.quit` command is triggered (command palette, keybinding, menu). All windows without folders opened will be restored upon next launch. A list of workspaces with unsaved files can be accessed via `File > Open Recent > More...`
  728. // - onExitAndWindowClose: Hot exit will be triggered when the last window is closed on Windows/Linux or when the `workbench.action.quit` command is triggered (command palette, keybinding, menu), and also for any window with a folder opened regardless of whether it's the last window. All windows without folders opened will be restored upon next launch. A list of workspaces with unsaved files can be accessed via `File > Open Recent > More...`
  729. "files.hotExit": "onExit",
  730. // When enabled, insert a final new line at the end of the file when saving it.
  731. "files.insertFinalNewline": false,
  732. // Controls the memory available to VS Code after restart when trying to open large files. Same effect as specifying `--max-memory=NEWSIZE` on the command line.
  733. "files.maxMemoryForLargeFilesMB": 4096,
  734. // Timeout in milliseconds after which file participants for create, rename, and delete are cancelled. Use `0` to disable participants.
  735. "files.participants.timeout": 5000,
  736. // Restore the undo stack when a file is reopened.
  737. "files.restoreUndoStack": true,
  738. // A save conflict can occur when a file is saved to disk that was changed by another program in the meantime. To prevent data loss, the user is asked to compare the changes in the editor with the version on disk. This setting should only be changed if you frequently encounter save conflict errors and may result in data loss if used without caution.
  739. // - askUser: Will refuse to save and ask for resolving the save conflict manually.
  740. // - overwriteFileOnDisk: Will resolve the save conflict by overwriting the file on disk with the changes in the editor.
  741. "files.saveConflictResolution": "askUser",
  742. // When enabled, will trim all new lines after the final new line at the end of the file when saving it.
  743. "files.trimFinalNewlines": false,
  744. // When enabled, will trim trailing whitespace when saving a file.
  745. "files.trimTrailingWhitespace": false,
  746. // Configure glob patterns of file paths to exclude from file watching. Patterns must match on absolute paths (i.e. prefix with ** or the full path to match properly). Changing this setting requires a restart. When you experience Code consuming lots of CPU time on startup, you can exclude large folders to reduce the initial load.
  747. "files.watcherExclude": {
  748. "**/.git/objects/**": true,
  749. "**/.git/subtree-cache/**": true,
  750. "**/node_modules/*/**": true,
  751. "**/.hg/store/**": true
  752. },
  753. // Screencast Mode
  754. // Controls the font size (in pixels) of the screencast mode keyboard.
  755. "screencastMode.fontSize": 56,
  756. // Only show keyboard shortcuts in Screencast Mode.
  757. "screencastMode.onlyKeyboardShortcuts": false,
  758. // Controls the vertical offset of the screencast mode overlay from the bottom as a percentage of the workbench height.
  759. "screencastMode.verticalOffset": 20,
  760. // Zen Mode
  761. // Controls whether turning on Zen Mode also centers the layout.
  762. "zenMode.centerLayout": true,
  763. // Controls whether turning on Zen Mode also puts the workbench into full screen mode.
  764. "zenMode.fullScreen": true,
  765. // Controls whether turning on Zen Mode also hides the activity bar at the left of the workbench.
  766. "zenMode.hideActivityBar": true,
  767. // Controls whether turning on Zen Mode also hides the editor line numbers.
  768. "zenMode.hideLineNumbers": true,
  769. // Controls whether turning on Zen Mode also hides the status bar at the bottom of the workbench.
  770. "zenMode.hideStatusBar": true,
  771. // Controls whether turning on Zen Mode also hides workbench tabs.
  772. "zenMode.hideTabs": true,
  773. // Controls whether a window should restore to zen mode if it was exited in zen mode.
  774. "zenMode.restore": false,
  775. // Controls whether notifications are shown while in zen mode. If true, only error notifications will pop out.
  776. "zenMode.silentNotifications": true,
  777. // File Explorer
  778. // Controls whether the explorer should automatically reveal and select files when opening them.
  779. // - true: Files will be revealed and selected.
  780. // - false: Files will not be revealed and selected.
  781. // - focusNoScroll: Files will not be scrolled into view, but will still be focused.
  782. "explorer.autoReveal": true,
  783. // Controls whether the explorer should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element. Useful for Java package structures, for example.
  784. "explorer.compactFolders": true,
  785. // Controls whether the explorer should ask for confirmation when deleting a file via the trash.
  786. "explorer.confirmDelete": true,
  787. // Controls whether the explorer should ask for confirmation to move files and folders via drag and drop.
  788. "explorer.confirmDragAndDrop": true,
  789. // Controls whether file decorations should use badges.
  790. "explorer.decorations.badges": true,
  791. // Controls whether file decorations should use colors.
  792. "explorer.decorations.colors": true,
  793. // Controls whether the explorer should allow to move files and folders via drag and drop.
  794. "explorer.enableDragAndDrop": true,
  795. // Controls what naming strategy to use when a giving a new name to a duplicated explorer item on paste.
  796. // - simple: Appends the word "copy" at the end of the duplicated name potentially followed by a number
  797. // - smart: Adds a number at the end of the duplicated name. If some number is already part of the name, tries to increase that number
  798. "explorer.incrementalNaming": "simple",
  799. // Number of editors shown in the Open Editors pane.
  800. "explorer.openEditors.visible": 9,
  801. // Controls sorting order of files and folders in the explorer.
  802. // - default: Files and folders are sorted by their names, in alphabetical order. Folders are displayed before files.
  803. // - mixed: Files and folders are sorted by their names, in alphabetical order. Files are interwoven with folders.
  804. // - filesFirst: Files and folders are sorted by their names, in alphabetical order. Files are displayed before folders.
  805. // - type: Files and folders are sorted by their extensions, in alphabetical order. Folders are displayed before files.
  806. // - modified: Files and folders are sorted by last modified date, in descending order. Folders are displayed before files.
  807. "explorer.sortOrder": "default",
  808. // Search
  809. // Controls the positioning of the actionbar on rows in the search view.
  810. // - auto: Position the actionbar to the right when the search view is narrow, and immediately after the content when the search view is wide.
  811. // - right: Always position the actionbar to the right.
  812. "search.actionsPosition": "auto",
  813. // Controls whether the search results will be collapsed or expanded.
  814. // - auto: Files with less than 10 results are expanded. Others are collapsed.
  815. // - alwaysCollapse
  816. // - alwaysExpand
  817. "search.collapseResults": "alwaysExpand",
  818. // Configure glob patterns for excluding files and folders in fulltext searches and quick open. Inherits all glob patterns from the `files.exclude` setting.
  819. "search.exclude": {
  820. "**/node_modules": true,
  821. "**/bower_components": true,
  822. "**/*.code-search": true
  823. },
  824. // Controls whether to follow symlinks while searching.
  825. "search.followSymlinks": true,
  826. // Controls whether the search view should read or modify the shared find clipboard on macOS.
  827. "search.globalFindClipboard": false,
  828. // Controls sorting order of editor history in quick open when filtering.
  829. // - default: History entries are sorted by relevance based on the filter value used. More relevant entries appear first.
  830. // - recency: History entries are sorted by recency. More recently opened entries appear first.
  831. "search.quickOpen.history.filterSortOrder": "default",
  832. // Whether to include results from recently opened files in the file results for Quick Open.
  833. "search.quickOpen.includeHistory": true,
  834. // Whether to include results from a global symbol search in the file results for Quick Open.
  835. "search.quickOpen.includeSymbols": false,
  836. // The default number of surrounding context lines to use when creating new Search Editors with `Search Editor: Open new Search Editor` and `Search Editor: Open new Search Editor to the Side`. If defined, this overrides `search.searchEditor.reusePriorSearchConfiguration`.
  837. "search.searchEditor.defaultNumberOfContextLines": null,
  838. // Configure effect of double clicking a result in a search editor.
  839. // - selectWord: Double clicking selects the word under the cursor.
  840. // - goToLocation: Double clicking opens the result in the active editor group.
  841. // - openLocationToSide: Double clicking opens the result in the editor group to the side, creating one if it does not yet exist.
  842. "search.searchEditor.doubleClickBehaviour": "goToLocation",
  843. // When enabled, new Search Editors will reuse the includes, excludes, and flags of the previously opened Search Editor.
  844. "search.searchEditor.reusePriorSearchConfiguration": false,
  845. // Search all files as you type.
  846. "search.searchOnType": true,
  847. // When `search.searchOnType` is enabled, controls the timeout in milliseconds between a character being typed and the search starting. Has no effect when `search.searchOnType` is disabled.
  848. "search.searchOnTypeDebouncePeriod": 300,
  849. // Update workspace search query to the editor's selected text when focusing the search view. This happens either on click or when triggering the `workbench.views.search.focus` command.
  850. "search.seedOnFocus": false,
  851. // Enable seeding search from the word nearest the cursor when the active editor has no selection.
  852. "search.seedWithNearestWord": false,
  853. // Controls whether to show line numbers for search results.
  854. "search.showLineNumbers": false,
  855. // Search case-insensitively if the pattern is all lowercase, otherwise, search case-sensitively.
  856. "search.smartCase": false,
  857. // Controls sorting order of search results.
  858. // - default: Results are sorted by folder and file names, in alphabetical order.
  859. // - fileNames: Results are sorted by file names ignoring folder order, in alphabetical order.
  860. // - type: Results are sorted by file extensions, in alphabetical order.
  861. // - modified: Results are sorted by file last modified date, in descending order.
  862. // - countDescending: Results are sorted by count per file, in descending order.
  863. // - countAscending: Results are sorted by count per file, in ascending order.
  864. "search.sortOrder": "default",
  865. // Controls whether to use global `.gitignore` and `.ignore` files when searching for files.
  866. "search.useGlobalIgnoreFiles": false,
  867. // Controls whether to use `.gitignore` and `.ignore` files when searching for files.
  868. "search.useIgnoreFiles": true,
  869. // Controls whether to open Replace Preview when selecting or replacing a match.
  870. "search.useReplacePreview": true,
  871. // HTTP
  872. // The proxy setting to use. If not set, will be inherited from the `http_proxy` and `https_proxy` environment variables.
  873. "http.proxy": "",
  874. // The value to send as the `Proxy-Authorization` header for every network request.
  875. "http.proxyAuthorization": null,
  876. // Controls whether the proxy server certificate should be verified against the list of supplied CAs.
  877. "http.proxyStrictSSL": true,
  878. // Use the proxy support for extensions.
  879. // - off: Disable proxy support for extensions.
  880. // - on: Enable proxy support for extensions.
  881. // - override: Enable proxy support for extensions, override request options.
  882. "http.proxySupport": "override",
  883. // Controls whether CA certificates should be loaded from the OS. (On Windows and macOS a reload of the window is required after turning this off.)
  884. "http.systemCertificates": true,
  885. // Keyboard
  886. // Controls the dispatching logic for key presses to use either `code` (recommended) or `keyCode`.
  887. "keyboard.dispatch": "code",
  888. // Enables the macOS touchbar buttons on the keyboard if available.
  889. "keyboard.touchbar.enabled": true,
  890. // A set of identifiers for entries in the touchbar that should not show up (for example `workbench.action.navigateBack`.
  891. "keyboard.touchbar.ignored": [],
  892. // Update
  893. // Enable to download and install new VS Code Versions in the background on Windows
  894. "update.enableWindowsBackgroundUpdates": true,
  895. // Configure whether you receive automatic updates. Requires a restart after change. The updates are fetched from a Microsoft online service.
  896. // - none: Disable updates.
  897. // - manual: Disable automatic background update checks. Updates will be available if you manually check for updates.
  898. // - start: Check for updates only on startup. Disable automatic background update checks.
  899. // - default: Enable automatic update checks. Code will check for updates automatically and periodically.
  900. "update.mode": "default",
  901. // Show Release Notes after an update. The Release Notes are fetched from a Microsoft online service.
  902. "update.showReleaseNotes": true,
  903. // Debug
  904. // Allow setting breakpoints in any file.
  905. "debug.allowBreakpointsEverywhere": false,
  906. // Controls if the debug console should be automatically closed when the debug session ends.
  907. "debug.console.closeOnEnd": false,
  908. // Controls the font family in the debug console.
  909. "debug.console.fontFamily": "default",
  910. // Controls the font size in pixels in the debug console.
  911. "debug.console.fontSize": 14,
  912. // Controls if the debug console should suggest previously typed input.
  913. "debug.console.historySuggestions": true,
  914. // Controls the line height in pixels in the debug console. Use 0 to compute the line height from the font size.
  915. "debug.console.lineHeight": 0,
  916. // Controls if the lines should wrap in the debug console.
  917. "debug.console.wordWrap": true,
  918. // Controls whether the workbench window should be focused when the debugger breaks.
  919. "debug.focusWindowOnBreak": true,
  920. // Show variable values inline in editor while debugging.
  921. "debug.inlineValues": false,
  922. // Controls when the internal debug console should open.
  923. "debug.internalConsoleOptions": "openOnFirstSessionStart",
  924. // Controls what to do when errors are encountered after running a preLaunchTask.
  925. // - debugAnyway: Ignore task errors and start debugging.
  926. // - showErrors: Show the Problems view and do not start debugging.
  927. // - prompt: Prompt user.
  928. // - abort: Cancel debugging.
  929. "debug.onTaskErrors": "prompt",
  930. // Controls when the debug view should open.
  931. "debug.openDebug": "openOnSessionStart",
  932. // Automatically open the explorer view at the end of a debug session.
  933. "debug.openExplorerOnEnd": false,
  934. // Controls whether breakpoints should be shown in the overview ruler.
  935. "debug.showBreakpointsInOverviewRuler": false,
  936. // Controls whether inline breakpoints candidate decorations should be shown in the editor while debugging.
  937. "debug.showInlineBreakpointCandidates": true,
  938. // Controls when the debug status bar should be visible.
  939. // - never: Never show debug in status bar
  940. // - always: Always show debug in status bar
  941. // - onFirstSessionStart: Show debug in status bar only after debug was started for the first time
  942. "debug.showInStatusBar": "onFirstSessionStart",
  943. // Controls whether the debug sub-sessions are shown in the debug tool bar. When this setting is false the stop command on a sub-session will also stop the parent session.
  944. "debug.showSubSessionsInToolBar": false,
  945. // Controls the location of the debug toolbar. Either `floating` in all views, `docked` in the debug view, or `hidden`.
  946. "debug.toolBarLocation": "floating",
  947. // Global debug launch configuration. Should be used as an alternative to 'launch.json' that is shared across workspaces.
  948. "launch": {
  949. "configurations": [],
  950. "compounds": []
  951. },
  952. // HTML
  953. // Enable/disable autoclosing of HTML tags.
  954. "html.autoClosingTags": true,
  955. // A list of relative file paths pointing to JSON files following the custom data format.
  956. // VS Code loads custom data on startup to enhance its HTML support for the custom HTML tags, attributes and attribute values you specify in the JSON files.
  957. // The file paths are relative to workspace and only workspace folder settings are considered.
  958. "html.customData": [],
  959. // List of tags, comma separated, where the content shouldn't be reformatted. `null` defaults to the `pre` tag.
  960. "html.format.contentUnformatted": "pre,code,textarea",
  961. // Enable/disable default HTML formatter.
  962. "html.format.enable": true,
  963. // End with a newline.
  964. "html.format.endWithNewline": false,
  965. // List of tags, comma separated, that should have an extra newline before them. `null` defaults to `"head, body, /html"`.
  966. "html.format.extraLiners": "head, body, /html",
  967. // Format and indent `{{#foo}}` and `{{/foo}}`.
  968. "html.format.indentHandlebars": false,
  969. // Indent `<head>` and `<body>` sections.
  970. "html.format.indentInnerHtml": false,
  971. // Maximum number of line breaks to be preserved in one chunk. Use `null` for unlimited.
  972. "html.format.maxPreserveNewLines": null,
  973. // Controls whether existing line breaks before elements should be preserved. Only works before elements, not inside tags or for text.
  974. "html.format.preserveNewLines": true,
  975. // List of tags, comma separated, that shouldn't be reformatted. `null` defaults to all tags listed at https://www.w3.org/TR/html5/dom.html#phrasing-content.
  976. "html.format.unformatted": "wbr",
  977. // Wrap attributes.
  978. // - auto: Wrap attributes only when line length is exceeded.
  979. // - force: Wrap each attribute except first.
  980. // - force-aligned: Wrap each attribute except first and keep aligned.
  981. // - force-expand-multiline: Wrap each attribute.
  982. // - aligned-multiple: Wrap when line length is exceeded, align attributes vertically.
  983. // - preserve: Preserve wrapping of attributes
  984. // - preserve-aligned: Preserve wrapping of attributes but align.
  985. "html.format.wrapAttributes": "auto",
  986. // Maximum amount of characters per line (0 = disable).
  987. "html.format.wrapLineLength": 120,
  988. // Controls whether the built-in HTML language support suggests HTML5 tags, properties and values.
  989. "html.suggest.html5": true,
  990. // Traces the communication between VS Code and the HTML language server.
  991. "html.trace.server": "off",
  992. // Controls whether the built-in HTML language support validates embedded scripts.
  993. "html.validate.scripts": true,
  994. // Controls whether the built-in HTML language support validates embedded styles.
  995. "html.validate.styles": true,
  996. // JSON
  997. // Enable/disable default JSON formatter
  998. "json.format.enable": true,
  999. // The maximum number of outline symbols and folding regions computed (limited for performance reasons).
  1000. "json.maxItemsComputed": 5000,
  1001. // When enabled, JSON schemas can be fetched from http and https locations.
  1002. "json.schemaDownload.enable": true,
  1003. // Associate schemas to JSON files in the current project
  1004. "json.schemas": [],
  1005. // Traces the communication between VS Code and the JSON language server.
  1006. "json.trace.server": "off",
  1007. // Markdown
  1008. // Controls where links in markdown files should be opened.
  1009. // - currentGroup: Open links in the active editor group.
  1010. // - beside: Open links beside the active editor.
  1011. "markdown.links.openLocation": "currentGroup",
  1012. // Sets how line-breaks are rendered in the markdown preview. Setting it to 'true' creates a <br> for newlines inside paragraphs.
  1013. "markdown.preview.breaks": false,
  1014. // Double click in the markdown preview to switch to the editor.
  1015. "markdown.preview.doubleClickToSwitchToEditor": true,
  1016. // Controls the font family used in the markdown preview.
  1017. "markdown.preview.fontFamily": "system-ui, -apple-system, BlinkMacSystemFont, 'Segoe WPC', 'Segoe UI', 'Ubuntu', 'Droid Sans', sans-serif",
  1018. // Controls the font size in pixels used in the markdown preview.
  1019. "markdown.preview.fontSize": 14,
  1020. // Controls the line height used in the markdown preview. This number is relative to the font size.
  1021. "markdown.preview.lineHeight": 1.6,
  1022. // Enable or disable conversion of URL-like text to links in the markdown preview.
  1023. "markdown.preview.linkify": true,
  1024. // Mark the current editor selection in the markdown preview.
  1025. "markdown.preview.markEditorSelection": true,
  1026. // Controls how links to other markdown files in the markdown preview should be opened.
  1027. // - inPreview: Try to open links in the markdown preview
  1028. // - inEditor: Try to open links in the editor
  1029. "markdown.preview.openMarkdownLinks": "inPreview",
  1030. // When a markdown preview is scrolled, update the view of the editor.
  1031. "markdown.preview.scrollEditorWithPreview": true,
  1032. // When a markdown editor is scrolled, update the view of the preview.
  1033. "markdown.preview.scrollPreviewWithEditor": true,
  1034. // A list of URLs or local paths to CSS style sheets to use from the markdown preview. Relative paths are interpreted relative to the folder open in the explorer. If there is no open folder, they are interpreted relative to the location of the markdown file. All '\' need to be written as '\\'.
  1035. "markdown.styles": [],
  1036. // Enable debug logging for the markdown extension.
  1037. "markdown.trace": "off",
  1038. // PHP
  1039. // Controls whether the built-in PHP language suggestions are enabled. The support suggests PHP globals and variables.
  1040. "php.suggest.basic": true,
  1041. // Enable/disable built-in PHP validation.
  1042. "php.validate.enable": true,
  1043. // Points to the PHP executable.
  1044. "php.validate.executablePath": null,
  1045. // Whether the linter is run on save or on type.
  1046. "php.validate.run": "onSave",
  1047. // TypeScript
  1048. // Enable/disable automatic closing of JSX tags. Requires using TypeScript 3.0 or newer in the workspace.
  1049. "javascript.autoClosingTags": true,
  1050. // Enable/disable default JavaScript formatter.
  1051. "javascript.format.enable": true,
  1052. // Defines space handling after a comma delimiter.
  1053. "javascript.format.insertSpaceAfterCommaDelimiter": true,
  1054. // Defines space handling after the constructor keyword. Requires using TypeScript 2.3.0 or newer in the workspace.
  1055. "javascript.format.insertSpaceAfterConstructor": false,
  1056. // Defines space handling after function keyword for anonymous functions.
  1057. "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
  1058. // Defines space handling after keywords in a control flow statement.
  1059. "javascript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
  1060. // Defines space handling after opening and before closing JSX expression braces.
  1061. "javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": false,
  1062. // Defines space handling after opening and before closing non-empty braces. Requires using TypeScript 2.3.0 or newer in the workspace.
  1063. "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": true,
  1064. // Defines space handling after opening and before closing non-empty brackets.
  1065. "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
  1066. // Defines space handling after opening and before closing non-empty parenthesis.
  1067. "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
  1068. // Defines space handling after opening and before closing template string braces.
  1069. "javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": false,
  1070. // Defines space handling after a semicolon in a for statement.
  1071. "javascript.format.insertSpaceAfterSemicolonInForStatements": true,
  1072. // Defines space handling after a binary operator.
  1073. "javascript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
  1074. // Defines space handling before function argument parentheses.
  1075. "javascript.format.insertSpaceBeforeFunctionParenthesis": false,
  1076. // Defines whether an open brace is put onto a new line for control blocks or not.
  1077. "javascript.format.placeOpenBraceOnNewLineForControlBlocks": false,
  1078. // Defines whether an open brace is put onto a new line for functions or not.
  1079. "javascript.format.placeOpenBraceOnNewLineForFunctions": false,
  1080. // Defines handling of optional semicolons. Requires using TypeScript 3.7 or newer in the workspace.
  1081. // - ignore: Don't insert or remove any semicolons.
  1082. // - insert: Insert semicolons at statement ends.
  1083. // - remove: Remove unnecessary semicolons.
  1084. "javascript.format.semicolons": "ignore",
  1085. // Enable/disable semantic checking of JavaScript files. Existing jsconfig.json or tsconfig.json files override this setting. Requires using TypeScript 2.3.1 or newer in the workspace.
  1086. "javascript.implicitProjectConfig.checkJs": false,
  1087. // Preferred path style for auto imports.
  1088. // - auto: Automatically select import path style. Prefers using a relative import if `baseUrl` is configured and the relative path has fewer segments than the non-relative import.
  1089. // - relative: Relative to the file location.
  1090. // - non-relative: Based on the `baseUrl` configured in your `jsconfig.json` / `tsconfig.json`.
  1091. "javascript.preferences.importModuleSpecifier": "auto",
  1092. // Preferred path ending for auto imports.
  1093. // - auto: Use project settings to select a default.
  1094. // - minimal: Shorten `./component/index.js` to `./component`.
  1095. // - index: Shorten `./component/index.js` to `./component/index`
  1096. // - js: Do not shorten path endings; include the `.js` extension.
  1097. "javascript.preferences.importModuleSpecifierEnding": "auto",
  1098. // Preferred quote style to use for quick fixes: `single` quotes, `double` quotes, or `auto` infer quote type from existing imports. Requires using TypeScript 2.9 or newer in the workspace.
  1099. "javascript.preferences.quoteStyle": "auto",
  1100. // Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace.
  1101. "javascript.preferences.useAliasesForRenames": true,
  1102. // Enable/disable references CodeLens in JavaScript files.
  1103. "javascript.referencesCodeLens.enabled": false,
  1104. // Enable/disable references CodeLens on all functions in JavaScript files.
  1105. "javascript.referencesCodeLens.showOnAllFunctions": false,
  1106. // Enable/disable auto import suggestions. Requires using TypeScript 2.6.1 or newer in the workspace.
  1107. "javascript.suggest.autoImports": true,
  1108. // Complete functions with their parameter signature.
  1109. "javascript.suggest.completeFunctionCalls": false,
  1110. // Enable/disable suggestion to complete JSDoc comments.
  1111. "javascript.suggest.completeJSDocs": true,
  1112. // Enabled/disable autocomplete suggestions.
  1113. "javascript.suggest.enabled": true,
  1114. // Enable/disable showing completions on potentially undefined values that insert an optional chain call. Requires TS 3.7+ and strict null checks to be enabled.
  1115. "javascript.suggest.includeAutomaticOptionalChainCompletions": true,
  1116. // Enable/disable including unique names from the file in JavaScript suggestions. Note that name suggestions are always disabled in JavaScript code that is semantically checked using `@ts-check` or `checkJs`.
  1117. "javascript.suggest.names": true,
  1118. // Enable/disable suggestions for paths in import statements and require calls.
  1119. "javascript.suggest.paths": true,
  1120. // Enable/disable suggestion diagnostics for JavaScript files in the editor. Requires using TypeScript 2.8 or newer in the workspace.
  1121. "javascript.suggestionActions.enabled": true,
  1122. // Enable/disable automatic updating of import paths when you rename or move a file in VS Code. Requires using TypeScript 2.9 or newer in the workspace.
  1123. // - prompt: Prompt on each rename.
  1124. // - always: Always update paths automatically.
  1125. // - never: Never rename paths and don't prompt.
  1126. "javascript.updateImportsOnFileMove.enabled": "prompt",
  1127. // Enable/disable JavaScript validation.
  1128. "javascript.validate.enable": true,
  1129. // Enable/disable automatic closing of JSX tags. Requires using TypeScript 3.0 or newer in the workspace.
  1130. "typescript.autoClosingTags": true,
  1131. // Check if npm is installed for Automatic Type Acquisition.
  1132. "typescript.check.npmIsInstalled": true,
  1133. // Disables automatic type acquisition. Automatic type acquisition fetches `@types` packages from npm to improve IntelliSense for external libraries.
  1134. "typescript.disableAutomaticTypeAcquisition": false,
  1135. // Enables prompting of users to use the TypeScript version configured in the workspace for Intellisense.
  1136. "typescript.enablePromptUseWorkspaceTsdk": false,
  1137. // Enable/disable default TypeScript formatter.
  1138. "typescript.format.enable": true,
  1139. // Defines space handling after a comma delimiter.
  1140. "typescript.format.insertSpaceAfterCommaDelimiter": true,
  1141. // Defines space handling after the constructor keyword. Requires using TypeScript 2.3.0 or newer in the workspace.
  1142. "typescript.format.insertSpaceAfterConstructor": false,
  1143. // Defines space handling after function keyword for anonymous functions.
  1144. "typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": true,
  1145. // Defines space handling after keywords in a control flow statement.
  1146. "typescript.format.insertSpaceAfterKeywordsInControlFlowStatements": true,
  1147. // Defines space handling after opening and before closing JSX expression braces.
  1148. "typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": false,
  1149. // Defines space handling after opening and before closing non-empty braces. Requires using TypeScript 2.3.0 or newer in the workspace.
  1150. "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": true,
  1151. // Defines space handling after opening and before closing non-empty brackets.
  1152. "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": false,
  1153. // Defines space handling after opening and before closing non-empty parenthesis.
  1154. "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": false,
  1155. // Defines space handling after opening and before closing template string braces.
  1156. "typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": false,
  1157. // Defines space handling after a semicolon in a for statement.
  1158. "typescript.format.insertSpaceAfterSemicolonInForStatements": true,
  1159. // Defines space handling after type assertions in TypeScript. Requires using TypeScript 2.4 or newer in the workspace.
  1160. "typescript.format.insertSpaceAfterTypeAssertion": false,
  1161. // Defines space handling after a binary operator.
  1162. "typescript.format.insertSpaceBeforeAndAfterBinaryOperators": true,
  1163. // Defines space handling before function argument parentheses.
  1164. "typescript.format.insertSpaceBeforeFunctionParenthesis": false,
  1165. // Defines whether an open brace is put onto a new line for control blocks or not.
  1166. "typescript.format.placeOpenBraceOnNewLineForControlBlocks": false,
  1167. // Defines whether an open brace is put onto a new line for functions or not.
  1168. "typescript.format.placeOpenBraceOnNewLineForFunctions": false,
  1169. // Defines handling of optional semicolons. Requires using TypeScript 3.7 or newer in the workspace.
  1170. // - ignore: Don't insert or remove any semicolons.
  1171. // - insert: Insert semicolons at statement ends.
  1172. // - remove: Remove unnecessary semicolons.
  1173. "typescript.format.semicolons": "ignore",
  1174. // Enable/disable implementations CodeLens. This CodeLens shows the implementers of an interface.
  1175. "typescript.implementationsCodeLens.enabled": false,
  1176. // Sets the locale used to report JavaScript and TypeScript errors. Requires using TypeScript 2.6.0 or newer in the workspace. Default of `null` uses VS Code's locale.
  1177. "typescript.locale": null,
  1178. // Specifies the path to the npm executable used for Automatic Type Acquisition. Requires using TypeScript 2.3.4 or newer in the workspace.
  1179. "typescript.npm": null,
  1180. // Preferred path style for auto imports.
  1181. // - auto: Automatically select import path style. Prefers using a relative import if `baseUrl` is configured and the relative path has fewer segments than the non-relative import.
  1182. // - relative: Relative to the file location.
  1183. // - non-relative: Based on the `baseUrl` configured in your `jsconfig.json` / `tsconfig.json`.
  1184. "typescript.preferences.importModuleSpecifier": "auto",
  1185. // Preferred path ending for auto imports.
  1186. // - auto: Use project settings to select a default.
  1187. // - minimal: Shorten `./component/index.js` to `./component`.
  1188. // - index: Shorten `./component/index.js` to `./component/index`
  1189. // - js: Do not shorten path endings; include the `.js` extension.
  1190. "typescript.preferences.importModuleSpecifierEnding": "auto",
  1191. // Preferred quote style to use for quick fixes: `single` quotes, `double` quotes, or `auto` infer quote type from existing imports. Requires using TypeScript 2.9 or newer in the workspace.
  1192. "typescript.preferences.quoteStyle": "auto",
  1193. // Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace.
  1194. "typescript.preferences.useAliasesForRenames": true,
  1195. // Enable/disable references CodeLens in TypeScript files.
  1196. "typescript.referencesCodeLens.enabled": false,
  1197. // Enable/disable references CodeLens on all functions in TypeScript files.
  1198. "typescript.referencesCodeLens.showOnAllFunctions": false,
  1199. // Report style checks as warnings.
  1200. "typescript.reportStyleChecksAsWarnings": true,
  1201. // Enable/disable auto import suggestions. Requires using TypeScript 2.6.1 or newer in the workspace.
  1202. "typescript.suggest.autoImports": true,
  1203. // Complete functions with their parameter signature.
  1204. "typescript.suggest.completeFunctionCalls": false,
  1205. // Enable/disable suggestion to complete JSDoc comments.
  1206. "typescript.suggest.completeJSDocs": true,
  1207. // Enabled/disable autocomplete suggestions.
  1208. "typescript.suggest.enabled": true,
  1209. // Enable/disable showing completions on potentially undefined values that insert an optional chain call. Requires TS 3.7+ and strict null checks to be enabled.
  1210. "typescript.suggest.includeAutomaticOptionalChainCompletions": true,
  1211. // Enable/disable suggestions for paths in import statements and require calls.
  1212. "typescript.suggest.paths": true,
  1213. // Enable/disable suggestion diagnostics for TypeScript files in the editor. Requires using TypeScript 2.8 or newer in the workspace.
  1214. "typescript.suggestionActions.enabled": true,
  1215. // Controls auto detection of tsc tasks.
  1216. // - on: Create both build and watch tasks.
  1217. // - off: Disable this feature.
  1218. // - build: Only create single run compile tasks.
  1219. // - watch: Only create compile and watch tasks.
  1220. "typescript.tsc.autoDetect": "on",
  1221. // Specifies the folder path to the tsserver and lib*.d.ts files under a TypeScript install to use for IntelliSense, for example: `./node_modules/typescript/lib`.
  1222. // - When specified as a user setting, the TypeScript version from `typescript.tsdk` automatically replaces the built-in TypeScript version.
  1223. // - When specified as a workspace setting, `typescript.tsdk` allows you to switch to use that workspace version of TypeScript for IntelliSense with the `TypeScript: Select TypeScript version` command.
  1224. "typescript.tsdk": null,
  1225. // Enables logging of the TS server to a file. This log can be used to diagnose TS Server issues. The log may contain file paths, source code, and other potentially sensitive information from your project.
  1226. "typescript.tsserver.log": "off",
  1227. // Set the maximum amount of memory (in MB) to allocate to the TypeScript server process
  1228. "typescript.tsserver.maxTsServerMemory": 3072,
  1229. // Additional paths to discover TypeScript Language Service plugins. Requires using TypeScript 2.3.0 or newer in the workspace.
  1230. "typescript.tsserver.pluginPaths": [],
  1231. // Enables tracing of messages sent to the TS server. This trace can be used to diagnose TS Server issues. The trace may contain file paths, source code, and other potentially sensitive information from your project.
  1232. "typescript.tsserver.trace": "off",
  1233. // Enable/disable spawning a separate TypeScript server that can more quickly respond to syntax related operations, such as calculating folding or computing document symbols. Requires using TypeScript 3.4.0 or newer in the workspace.
  1234. "typescript.tsserver.useSeparateSyntaxServer": true,
  1235. // Configure which watching strategies should be used to keep track of files and directories. Requires using TypeScript 3.8+ in the workspace.
  1236. "typescript.tsserver.watchOptions": {},
  1237. // Enable/disable automatic updating of import paths when you rename or move a file in VS Code. Requires using TypeScript 2.9 or newer in the workspace.
  1238. // - prompt: Prompt on each rename.
  1239. // - always: Always update paths automatically.
  1240. // - never: Never rename paths and don't prompt.
  1241. "typescript.updateImportsOnFileMove.enabled": "prompt",
  1242. // Enable/disable TypeScript validation.
  1243. "typescript.validate.enable": true,
  1244. // Controls which files are searched by go to symbol in workspace.
  1245. // - allOpenProjects: Search all open JavaScript or TypeScript projects for symbols. Requires using TypeScript 3.9 or newer in the workspace.
  1246. // - currentProject: Only search for symbols in the current JavaScript or TypeScript project.
  1247. "typescript.workspaceSymbols.scope": "allOpenProjects",
  1248. // CSS
  1249. // Insert semicolon at end of line when completing CSS properties
  1250. "css.completion.completePropertyWithSemicolon": true,
  1251. // By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.
  1252. "css.completion.triggerPropertyValueCompletion": true,
  1253. // A list of relative file paths pointing to JSON files following the custom data format.
  1254. // VS Code loads custom data on startup to enhance its CSS support for the custom CSS properties, at directives, pseudo classes and pseudo elements you specify in the JSON files.
  1255. // The file paths are relative to workspace and only workspace folder settings are considered.
  1256. "css.customData": [],
  1257. // Invalid number of parameters.
  1258. "css.lint.argumentsInColorFunction": "error",
  1259. // Do not use `width` or `height` when using `padding` or `border`.
  1260. "css.lint.boxModel": "ignore",
  1261. // When using a vendor-specific prefix make sure to also include all other vendor-specific properties.
  1262. "css.lint.compatibleVendorPrefixes": "ignore",
  1263. // Do not use duplicate style definitions.
  1264. "css.lint.duplicateProperties": "ignore",
  1265. // Do not use empty rulesets.
  1266. "css.lint.emptyRules": "warning",
  1267. // Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
  1268. "css.lint.float": "ignore",
  1269. // `@font-face` rule must define `src` and `font-family` properties.
  1270. "css.lint.fontFaceProperties": "warning",
  1271. // Hex colors must consist of three or six hex numbers.
  1272. "css.lint.hexColorLength": "error",
  1273. // Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
  1274. "css.lint.idSelector": "ignore",
  1275. // IE hacks are only necessary when supporting IE7 and older.
  1276. "css.lint.ieHack": "ignore",
  1277. // Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
  1278. "css.lint.important": "ignore",
  1279. // Import statements do not load in parallel.
  1280. "css.lint.importStatement": "ignore",
  1281. // Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.
  1282. "css.lint.propertyIgnoredDueToDisplay": "warning",
  1283. // The universal selector (`*`) is known to be slow.
  1284. "css.lint.universalSelector": "ignore",
  1285. // Unknown at-rule.
  1286. "css.lint.unknownAtRules": "warning",
  1287. // Unknown property.
  1288. "css.lint.unknownProperties": "warning",
  1289. // Unknown vendor specific property.
  1290. "css.lint.unknownVendorSpecificProperties": "ignore",
  1291. // A list of properties that are not validated against the `unknownProperties` rule.
  1292. "css.lint.validProperties": [],
  1293. // When using a vendor-specific prefix, also include the standard property.
  1294. "css.lint.vendorPrefix": "warning",
  1295. // No unit for zero needed.
  1296. "css.lint.zeroUnits": "ignore",
  1297. // Traces the communication between VS Code and the CSS language server.
  1298. "css.trace.server": "off",
  1299. // Enables or disables all validations.
  1300. "css.validate": true,
  1301. // LESS
  1302. // Insert semicolon at end of line when completing CSS properties
  1303. "less.completion.completePropertyWithSemicolon": true,
  1304. // By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.
  1305. "less.completion.triggerPropertyValueCompletion": true,
  1306. // Invalid number of parameters.
  1307. "less.lint.argumentsInColorFunction": "error",
  1308. // Do not use `width` or `height` when using `padding` or `border`.
  1309. "less.lint.boxModel": "ignore",
  1310. // When using a vendor-specific prefix make sure to also include all other vendor-specific properties.
  1311. "less.lint.compatibleVendorPrefixes": "ignore",
  1312. // Do not use duplicate style definitions.
  1313. "less.lint.duplicateProperties": "ignore",
  1314. // Do not use empty rulesets.
  1315. "less.lint.emptyRules": "warning",
  1316. // Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
  1317. "less.lint.float": "ignore",
  1318. // `@font-face` rule must define `src` and `font-family` properties.
  1319. "less.lint.fontFaceProperties": "warning",
  1320. // Hex colors must consist of three or six hex numbers.
  1321. "less.lint.hexColorLength": "error",
  1322. // Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
  1323. "less.lint.idSelector": "ignore",
  1324. // IE hacks are only necessary when supporting IE7 and older.
  1325. "less.lint.ieHack": "ignore",
  1326. // Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
  1327. "less.lint.important": "ignore",
  1328. // Import statements do not load in parallel.
  1329. "less.lint.importStatement": "ignore",
  1330. // Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.
  1331. "less.lint.propertyIgnoredDueToDisplay": "warning",
  1332. // The universal selector (`*`) is known to be slow.
  1333. "less.lint.universalSelector": "ignore",
  1334. // Unknown at-rule.
  1335. "less.lint.unknownAtRules": "warning",
  1336. // Unknown property.
  1337. "less.lint.unknownProperties": "warning",
  1338. // Unknown vendor specific property.
  1339. "less.lint.unknownVendorSpecificProperties": "ignore",
  1340. // A list of properties that are not validated against the `unknownProperties` rule.
  1341. "less.lint.validProperties": [],
  1342. // When using a vendor-specific prefix, also include the standard property.
  1343. "less.lint.vendorPrefix": "warning",
  1344. // No unit for zero needed.
  1345. "less.lint.zeroUnits": "ignore",
  1346. // Enables or disables all validations.
  1347. "less.validate": true,
  1348. // SCSS (Sass)
  1349. // Insert semicolon at end of line when completing CSS properties
  1350. "scss.completion.completePropertyWithSemicolon": true,
  1351. // By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.
  1352. "scss.completion.triggerPropertyValueCompletion": true,
  1353. // Invalid number of parameters.
  1354. "scss.lint.argumentsInColorFunction": "error",
  1355. // Do not use `width` or `height` when using `padding` or `border`.
  1356. "scss.lint.boxModel": "ignore",
  1357. // When using a vendor-specific prefix make sure to also include all other vendor-specific properties.
  1358. "scss.lint.compatibleVendorPrefixes": "ignore",
  1359. // Do not use duplicate style definitions.
  1360. "scss.lint.duplicateProperties": "ignore",
  1361. // Do not use empty rulesets.
  1362. "scss.lint.emptyRules": "warning",
  1363. // Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.
  1364. "scss.lint.float": "ignore",
  1365. // `@font-face` rule must define `src` and `font-family` properties.
  1366. "scss.lint.fontFaceProperties": "warning",
  1367. // Hex colors must consist of three or six hex numbers.
  1368. "scss.lint.hexColorLength": "error",
  1369. // Selectors should not contain IDs because these rules are too tightly coupled with the HTML.
  1370. "scss.lint.idSelector": "ignore",
  1371. // IE hacks are only necessary when supporting IE7 and older.
  1372. "scss.lint.ieHack": "ignore",
  1373. // Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.
  1374. "scss.lint.important": "ignore",
  1375. // Import statements do not load in parallel.
  1376. "scss.lint.importStatement": "ignore",
  1377. // Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.
  1378. "scss.lint.propertyIgnoredDueToDisplay": "warning",
  1379. // The universal selector (`*`) is known to be slow.
  1380. "scss.lint.universalSelector": "ignore",
  1381. // Unknown at-rule.
  1382. "scss.lint.unknownAtRules": "warning",
  1383. // Unknown property.
  1384. "scss.lint.unknownProperties": "warning",
  1385. // Unknown vendor specific property.
  1386. "scss.lint.unknownVendorSpecificProperties": "ignore",
  1387. // A list of properties that are not validated against the `unknownProperties` rule.
  1388. "scss.lint.validProperties": [],
  1389. // When using a vendor-specific prefix, also include the standard property.
  1390. "scss.lint.vendorPrefix": "warning",
  1391. // No unit for zero needed.
  1392. "scss.lint.zeroUnits": "ignore",
  1393. // Enables or disables all validations.
  1394. "scss.validate": true,
  1395. // Extensions
  1396. // When enabled, automatically checks extensions for updates. If an extension has an update, it is marked as outdated in the Extensions view. The updates are fetched from a Microsoft online service.
  1397. "extensions.autoCheckUpdates": true,
  1398. // When enabled, automatically installs updates for extensions. The updates are fetched from a Microsoft online service.
  1399. "extensions.autoUpdate": true,
  1400. // When enabled, editors with extension details will be automatically closed upon navigating away from the Extensions View.
  1401. "extensions.closeExtensionDetailsOnViewChange": false,
  1402. // When an extension is listed here, a confirmation prompt will not be shown when that extension handles a URI.
  1403. "extensions.confirmedUriHandlerExtensionIds": [],
  1404. // When enabled, the notifications for extension recommendations will not be shown.
  1405. "extensions.ignoreRecommendations": false,
  1406. // When enabled, recommendations will not be fetched or shown unless specifically requested by the user. Some recommendations are fetched from a Microsoft online service.
  1407. "extensions.showRecommendationsOnlyOnDemand": false,
  1408. // Output
  1409. // Enable/disable the ability of smart scrolling in the output view. Smart scrolling allows you to lock scrolling automatically when you click in the output view and unlocks when you click in the last line.
  1410. "output.smartScroll.enabled": true,
  1411. // Terminal
  1412. // Customizes what kind of terminal to launch.
  1413. // - integrated: Use VS Code's integrated terminal.
  1414. // - external: Use the configured external terminal.
  1415. "terminal.explorerKind": "integrated",
  1416. // External Terminal
  1417. // Customizes which terminal to run on Linux.
  1418. "terminal.external.linuxExec": "xterm",
  1419. // Customizes which terminal application to run on macOS.
  1420. "terminal.external.osxExec": "Terminal.app",
  1421. // Customizes which terminal to run on Windows.
  1422. "terminal.external.windowsExec": "C:\\WINDOWS\\System32\\cmd.exe",
  1423. // Integrated Terminal
  1424. // Whether or not to allow chord keybindings in the terminal. Note that when this is true and the keystroke results in a chord it will bypass `terminal.integrated.commandsToSkipShell`, setting this to false is particularly useful when you want ctrl+k to go to your shell (not VS Code).
  1425. "terminal.integrated.allowChords": true,
  1426. // Whether to allow menubar mnemonics (eg. alt+f) to trigger the open the menubar. Note that this will cause all alt keystrokes will skip the shell when true. This does nothing on macOS.
  1427. "terminal.integrated.allowMnemonics": false,
  1428. // A path that when set will override `terminal.integrated.shell.linux` and ignore `shellArgs` values for automation-related terminal usage like tasks and debug.
  1429. "terminal.integrated.automationShell.linux": null,
  1430. // A path that when set will override `terminal.integrated.shell.osx` and ignore `shellArgs` values for automation-related terminal usage like tasks and debug.
  1431. "terminal.integrated.automationShell.osx": null,
  1432. // A path that when set will override `terminal.integrated.shell.windows` and ignore `shellArgs` values for automation-related terminal usage like tasks and debug.
  1433. "terminal.integrated.automationShell.windows": null,
  1434. // A set of command IDs whose keybindings will not be sent to the shell and instead always be handled by Code. This allows the use of keybindings that would normally be consumed by the shell to act the same as when the terminal is not focused, for example ctrl+p to launch Quick Open.
  1435. "terminal.integrated.commandsToSkipShell": [],
  1436. // Controls whether to confirm on exit if there are active terminal sessions.
  1437. "terminal.integrated.confirmOnExit": false,
  1438. // Controls whether text selected in the terminal will be copied to the clipboard.
  1439. "terminal.integrated.copyOnSelection": false,
  1440. // Controls whether the terminal cursor blinks.
  1441. "terminal.integrated.cursorBlinking": false,
  1442. // Controls the style of terminal cursor.
  1443. "terminal.integrated.cursorStyle": "block",
  1444. // Controls the width of the cursor when `terminal.integrated.cursorStyle` is set to `line`.
  1445. "terminal.integrated.cursorWidth": 1,
  1446. // An explicit start path where the terminal will be launched, this is used as the current working directory (cwd) for the shell process. This may be particularly useful in workspace settings if the root directory is not a convenient cwd.
  1447. "terminal.integrated.cwd": "",
  1448. // Controls whether to detect and set the `$LANG` environment variable to a UTF-8 compliant option since VS Code's terminal only supports UTF-8 encoded data coming from the shell.
  1449. // - auto: Set the `$LANG` environment variable if the existing variable does not exist or it does not end in `'.UTF-8'`.
  1450. // - off: Do not set the `$LANG` environment variable.
  1451. // - on: Always set the `$LANG` environment variable.
  1452. "terminal.integrated.detectLocale": "auto",
  1453. // Controls whether bold text in the terminal will always use the "bright" ANSI color variant.
  1454. "terminal.integrated.drawBoldTextInBrightColors": true,
  1455. // Controls whether the terminal bell is enabled.
  1456. "terminal.integrated.enableBell": false,
  1457. // Whether to enable file links in the terminal. Links can be slow when working on a network drive in particular because each file link is verified against the file system. Changing this will take effect only in new terminals.
  1458. "terminal.integrated.enableFileLinks": true,
  1459. // Object with environment variables that will be added to the VS Code process to be used by the terminal on Linux. Set to `null` to delete the environment variable.
  1460. "terminal.integrated.env.linux": {},
  1461. // Object with environment variables that will be added to the VS Code process to be used by the terminal on macOS. Set to `null` to delete the environment variable.
  1462. "terminal.integrated.env.osx": {},
  1463. // Object with environment variables that will be added to the VS Code process to be used by the terminal on Windows. Set to `null` to delete the environment variable.
  1464. "terminal.integrated.env.windows": {},
  1465. // Whether to display the environment changes indicator on each terminal which explains whether extensions have made, or want to make changes to the terminal's environment.
  1466. // - off: Disable the indicator.
  1467. // - on: Enable the indicator.
  1468. // - warnonly: Only show the warning indicator when a terminal's environment is 'stale', not the information indicator that shows a terminal has had its environment modified by an extension.
  1469. "terminal.integrated.environmentChangesIndicator": "warnonly",
  1470. // Scrolling speed multiplier when pressing `Alt`.
  1471. "terminal.integrated.fastScrollSensitivity": 5,
  1472. // Controls the font family of the terminal, this defaults to `editor.fontFamily`'s value.
  1473. "terminal.integrated.fontFamily": "",
  1474. // Controls the font size in pixels of the terminal.
  1475. "terminal.integrated.fontSize": 14,
  1476. // The font weight to use within the terminal for non-bold text.
  1477. "terminal.integrated.fontWeight": "normal",
  1478. // The font weight to use within the terminal for bold text.
  1479. "terminal.integrated.fontWeightBold": "bold",
  1480. // Whether new shells should inherit their environment from VS Code. This is not supported on Windows.
  1481. "terminal.integrated.inheritEnv": true,
  1482. // Controls the letter spacing of the terminal, this is an integer value which represents the amount of additional pixels to add between characters.
  1483. "terminal.integrated.letterSpacing": 0,
  1484. // Controls the line height of the terminal, this number is multiplied by the terminal font size to get the actual line-height in pixels.
  1485. "terminal.integrated.lineHeight": 1,
  1486. // Controls whether to force selection when using Option+click on macOS. This will force a regular (line) selection and disallow the use of column selection mode. This enables copying and pasting using the regular terminal selection, for example, when mouse mode is enabled in tmux.
  1487. "terminal.integrated.macOptionClickForcesSelection": false,
  1488. // Controls whether to treat the option key as the meta key in the terminal on macOS.
  1489. "terminal.integrated.macOptionIsMeta": false,
  1490. // When set the foreground color of each cell will change to try meet the contrast ratio specified. Example values:
  1491. //
  1492. // - 1: The default, do nothing.
  1493. // - 4.5: WCAG AA compliance (minimum).
  1494. // - 7: WCAG AAA compliance (enhanced).
  1495. // - 21: White on black or black on white.
  1496. "terminal.integrated.minimumContrastRatio": 1,
  1497. // A multiplier to be used on the `deltaY` of mouse wheel scroll events.
  1498. "terminal.integrated.mouseWheelScrollSensitivity": 1,
  1499. // Controls how the terminal is rendered.
  1500. // - auto: Let VS Code guess which renderer to use.
  1501. // - canvas: Use the standard GPU/canvas-based renderer.
  1502. // - dom: Use the fallback DOM-based renderer.
  1503. "terminal.integrated.rendererType": "auto",
  1504. // Controls how terminal reacts to right click.
  1505. // - default: Show the context menu.
  1506. // - copyPaste: Copy when there is a selection, otherwise paste.
  1507. // - paste: Paste on right click.
  1508. // - selectWord: Select the word under the cursor and show the context menu.
  1509. "terminal.integrated.rightClickBehavior": "copyPaste",
  1510. // Controls the maximum amount of lines the terminal keeps in its buffer.
  1511. "terminal.integrated.scrollback": 1000,
  1512. // The path of the shell that the terminal uses on Linux (default: /bin/bash).
  1513. "terminal.integrated.shell.linux": null,
  1514. // The path of the shell that the terminal uses on macOS (default: /bin/bash).
  1515. "terminal.integrated.shell.osx": null,
  1516. // The path of the shell that the terminal uses on Windows (default: C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe).
  1517. "terminal.integrated.shell.windows": null,
  1518. // The command line arguments to use when on the Linux terminal.
  1519. "terminal.integrated.shellArgs.linux": [],
  1520. // The command line arguments to use when on the macOS terminal.
  1521. "terminal.integrated.shellArgs.osx": [
  1522. "-l"
  1523. ],
  1524. // The command line arguments to use when on the Windows terminal.
  1525. "terminal.integrated.shellArgs.windows": [],
  1526. // Controls whether to show the alert "The terminal process terminated with exit code" when exit code is non-zero.
  1527. "terminal.integrated.showExitAlert": true,
  1528. // Controls the working directory a split terminal starts with.
  1529. // - workspaceRoot: A new split terminal will use the workspace root as the working directory. In a multi-root workspace a choice for which root folder to use is offered.
  1530. // - initial: A new split terminal will use the working directory that the parent terminal started with.
  1531. // - inherited: On macOS and Linux, a new split terminal will use the working directory of the parent terminal. On Windows, this behaves the same as initial.
  1532. "terminal.integrated.splitCwd": "inherited",
  1533. // Controls what version of unicode to use when evaluating the width of characters in the terminal. If you experience emoji or other wide characters not taking up the right amount of space or backspace either deleting too much or too little then you may want to try tweaking this setting.
  1534. // - 6: Version 6 of unicode, this is an older version which should work better on older systems.
  1535. // - 11: Version 11 of unicode, this version provides better support on modern systems that use modern versions of unicode.
  1536. "terminal.integrated.unicodeVersion": "11",
  1537. // Whether to use ConPTY for Windows terminal process communication (requires Windows 10 build number 18309+). Winpty will be used if this is false.
  1538. "terminal.integrated.windowsEnableConpty": true,
  1539. // A string containing all characters to be considered word separators by the double click to select word feature.
  1540. "terminal.integrated.wordSeparators": " ()[]{}',\"`─",
  1541. // Tasks
  1542. // Controls enablement of `provideTasks` for all task provider extension. If the Tasks: Run Task command is slow, disabling auto detect for task providers may help. Individual extensions may also provide settings that disable auto detection.
  1543. "task.autoDetect": "on",
  1544. // Configures whether to show the problem matcher prompt when running a task. Set to `true` to never prompt, or use a dictionary of task types to turn off prompting only for specific task types.
  1545. "task.problemMatchers.neverPrompt": false,
  1546. // Controls whether to show the task detail for task that have a detail in the Run Task quick pick.
  1547. "task.quickOpen.detail": true,
  1548. // Controls the number of recent items tracked in task quick open dialog.
  1549. "task.quickOpen.history": 30,
  1550. // Causes the Tasks: Run Task command to use the slower "show all" behavior instead of the faster two level picker where tasks are grouped by provider.
  1551. "task.quickOpen.showAll": false,
  1552. // Controls whether the task quick pick is skipped when there is only one task to pick from.
  1553. "task.quickOpen.skip": false,
  1554. // Save all dirty editors before running a task.
  1555. // - always: Always saves all editors before running.
  1556. // - never: Never saves editors before running.
  1557. // - prompt: Prompts whether to save editors before running.
  1558. "task.saveBeforeRun": "always",
  1559. // Configures whether a warning is shown when a provider is slow
  1560. "task.slowProviderWarning": true,
  1561. // Problems
  1562. // Controls whether Problems view should automatically reveal files when opening them.
  1563. "problems.autoReveal": true,
  1564. // Show Errors & Warnings on files and folder.
  1565. "problems.decorations.enabled": true,
  1566. // When enabled shows the current problem in the status bar.
  1567. "problems.showCurrentInStatus": false,
  1568. // Breadcrumb Navigation
  1569. // Enable/disable navigation breadcrumbs.
  1570. "breadcrumbs.enabled": true,
  1571. // Controls whether and how file paths are shown in the breadcrumbs view.
  1572. // - on: Show the file path in the breadcrumbs view.
  1573. // - off: Do not show the file path in the breadcrumbs view.
  1574. // - last: Only show the last element of the file path in the breadcrumbs view.
  1575. "breadcrumbs.filePath": "on",
  1576. // Render breadcrumb items with icons.
  1577. "breadcrumbs.icons": true,
  1578. // When enabled breadcrumbs show `array`-symbols.
  1579. "breadcrumbs.showArrays": true,
  1580. // When enabled breadcrumbs show `boolean`-symbols.
  1581. "breadcrumbs.showBooleans": true,
  1582. // When enabled breadcrumbs show `class`-symbols.
  1583. "breadcrumbs.showClasses": true,
  1584. // When enabled breadcrumbs show `constant`-symbols.
  1585. "breadcrumbs.showConstants": true,
  1586. // When enabled breadcrumbs show `constructor`-symbols.
  1587. "breadcrumbs.showConstructors": true,
  1588. // When enabled breadcrumbs show `enumMember`-symbols.
  1589. "breadcrumbs.showEnumMembers": true,
  1590. // When enabled breadcrumbs show `enum`-symbols.
  1591. "breadcrumbs.showEnums": true,
  1592. // When enabled breadcrumbs show `event`-symbols.
  1593. "breadcrumbs.showEvents": true,
  1594. // When enabled breadcrumbs show `field`-symbols.
  1595. "breadcrumbs.showFields": true,
  1596. // When enabled breadcrumbs show `file`-symbols.
  1597. "breadcrumbs.showFiles": true,
  1598. // When enabled breadcrumbs show `function`-symbols.
  1599. "breadcrumbs.showFunctions": true,
  1600. // When enabled breadcrumbs show `interface`-symbols.
  1601. "breadcrumbs.showInterfaces": true,
  1602. // When enabled breadcrumbs show `key`-symbols.
  1603. "breadcrumbs.showKeys": true,
  1604. // When enabled breadcrumbs show `method`-symbols.
  1605. "breadcrumbs.showMethods": true,
  1606. // When enabled breadcrumbs show `module`-symbols.
  1607. "breadcrumbs.showModules": true,
  1608. // When enabled breadcrumbs show `namespace`-symbols.
  1609. "breadcrumbs.showNamespaces": true,
  1610. // When enabled breadcrumbs show `null`-symbols.
  1611. "breadcrumbs.showNull": true,
  1612. // When enabled breadcrumbs show `number`-symbols.
  1613. "breadcrumbs.showNumbers": true,
  1614. // When enabled breadcrumbs show `object`-symbols.
  1615. "breadcrumbs.showObjects": true,
  1616. // When enabled breadcrumbs show `operator`-symbols.
  1617. "breadcrumbs.showOperators": true,
  1618. // When enabled breadcrumbs show `package`-symbols.
  1619. "breadcrumbs.showPackages": true,
  1620. // When enabled breadcrumbs show `property`-symbols.
  1621. "breadcrumbs.showProperties": true,
  1622. // When enabled breadcrumbs show `string`-symbols.
  1623. "breadcrumbs.showStrings": true,
  1624. // When enabled breadcrumbs show `struct`-symbols.
  1625. "breadcrumbs.showStructs": true,
  1626. // When enabled breadcrumbs show `typeParameter`-symbols.
  1627. "breadcrumbs.showTypeParameters": true,
  1628. // When enabled breadcrumbs show `variable`-symbols.
  1629. "breadcrumbs.showVariables": true,
  1630. // Controls whether and how symbols are shown in the breadcrumbs view.
  1631. // - on: Show all symbols in the breadcrumbs view.
  1632. // - off: Do not show symbols in the breadcrumbs view.
  1633. // - last: Only show the current symbol in the breadcrumbs view.
  1634. "breadcrumbs.symbolPath": "on",
  1635. // Controls how symbols are sorted in the breadcrumbs outline view.
  1636. // - position: Show symbol outline in file position order.
  1637. // - name: Show symbol outline in alphabetical order.
  1638. // - type: Show symbol outline in symbol type order.
  1639. "breadcrumbs.symbolSortOrder": "position",
  1640. // Telemetry
  1641. // Enable crash reports to be sent to a Microsoft online service.
  1642. // This option requires restart to take effect.
  1643. "telemetry.enableCrashReporter": true,
  1644. // Enable usage data and errors to be sent to a Microsoft online service.
  1645. "telemetry.enableTelemetry": true,
  1646. // Outline
  1647. // Render Outline Elements with Icons.
  1648. "outline.icons": true,
  1649. // Use badges for Errors & Warnings.
  1650. "outline.problems.badges": true,
  1651. // Use colors for Errors & Warnings.
  1652. "outline.problems.colors": true,
  1653. // Show Errors & Warnings on Outline Elements.
  1654. "outline.problems.enabled": true,
  1655. // When enabled outline shows `array`-symbols.
  1656. "outline.showArrays": true,
  1657. // When enabled outline shows `boolean`-symbols.
  1658. "outline.showBooleans": true,
  1659. // When enabled outline shows `class`-symbols.
  1660. "outline.showClasses": true,
  1661. // When enabled outline shows `constant`-symbols.
  1662. "outline.showConstants": true,
  1663. // When enabled outline shows `constructor`-symbols.
  1664. "outline.showConstructors": true,
  1665. // When enabled outline shows `enumMember`-symbols.
  1666. "outline.showEnumMembers": true,
  1667. // When enabled outline shows `enum`-symbols.
  1668. "outline.showEnums": true,
  1669. // When enabled outline shows `event`-symbols.
  1670. "outline.showEvents": true,
  1671. // When enabled outline shows `field`-symbols.
  1672. "outline.showFields": true,
  1673. // When enabled outline shows `file`-symbols.
  1674. "outline.showFiles": true,
  1675. // When enabled outline shows `function`-symbols.
  1676. "outline.showFunctions": true,
  1677. // When enabled outline shows `interface`-symbols.
  1678. "outline.showInterfaces": true,
  1679. // When enabled outline shows `key`-symbols.
  1680. "outline.showKeys": true,
  1681. // When enabled outline shows `method`-symbols.
  1682. "outline.showMethods": true,
  1683. // When enabled outline shows `module`-symbols.
  1684. "outline.showModules": true,
  1685. // When enabled outline shows `namespace`-symbols.
  1686. "outline.showNamespaces": true,
  1687. // When enabled outline shows `null`-symbols.
  1688. "outline.showNull": true,
  1689. // When enabled outline shows `number`-symbols.
  1690. "outline.showNumbers": true,
  1691. // When enabled outline shows `object`-symbols.
  1692. "outline.showObjects": true,
  1693. // When enabled outline shows `operator`-symbols.
  1694. "outline.showOperators": true,
  1695. // When enabled outline shows `package`-symbols.
  1696. "outline.showPackages": true,
  1697. // When enabled outline shows `property`-symbols.
  1698. "outline.showProperties": true,
  1699. // When enabled outline shows `string`-symbols.
  1700. "outline.showStrings": true,
  1701. // When enabled outline shows `struct`-symbols.
  1702. "outline.showStructs": true,
  1703. // When enabled outline shows `typeParameter`-symbols.
  1704. "outline.showTypeParameters": true,
  1705. // When enabled outline shows `variable`-symbols.
  1706. "outline.showVariables": true,
  1707. // Timeline
  1708. // An array of Timeline sources that should be excluded from the Timeline view
  1709. "timeline.excludeSources": null,
  1710. // The number of items to show in the Timeline view by default and when loading more items. Setting to `null` (the default) will automatically choose a page size based on the visible area of the Timeline view
  1711. "timeline.pageSize": null,
  1712. // Default Configuration Overrides
  1713. // Configure editor settings to be overridden for [css] language.
  1714. "[css]": {
  1715. "editor.suggest.insertMode": "replace"
  1716. },
  1717. // Configure editor settings to be overridden for [dockerfile] language.
  1718. "[dockerfile]": {
  1719. "editor.quickSuggestions": {
  1720. "strings": true
  1721. }
  1722. },
  1723. // Configure editor settings to be overridden for [git-commit] language.
  1724. "[git-commit]": {
  1725. "editor.rulers": [
  1726. 72
  1727. ]
  1728. },
  1729. // Configure editor settings to be overridden for [go] language.
  1730. "[go]": {
  1731. "editor.insertSpaces": false
  1732. },
  1733. // Configure editor settings to be overridden for [handlebars] language.
  1734. "[handlebars]": {
  1735. "editor.suggest.insertMode": "replace"
  1736. },
  1737. // Configure editor settings to be overridden for [html] language.
  1738. "[html]": {
  1739. "editor.suggest.insertMode": "replace"
  1740. },
  1741. // Configure editor settings to be overridden for [json] language.
  1742. "[json]": {
  1743. "editor.quickSuggestions": {
  1744. "strings": true
  1745. },
  1746. "editor.suggest.insertMode": "replace"
  1747. },
  1748. // Configure editor settings to be overridden for [jsonc] language.
  1749. "[jsonc]": {
  1750. "editor.quickSuggestions": {
  1751. "strings": true
  1752. },
  1753. "editor.suggest.insertMode": "replace"
  1754. },
  1755. // Configure editor settings to be overridden for [less] language.
  1756. "[less]": {
  1757. "editor.suggest.insertMode": "replace"
  1758. },
  1759. // Configure editor settings to be overridden for [makefile] language.
  1760. "[makefile]": {
  1761. "editor.insertSpaces": false
  1762. },
  1763. // Configure editor settings to be overridden for [markdown] language.
  1764. "[markdown]": {
  1765. "editor.wordWrap": "on",
  1766. "editor.quickSuggestions": false
  1767. },
  1768. // Configure editor settings to be overridden for [scss] language.
  1769. "[scss]": {
  1770. "editor.suggest.insertMode": "replace"
  1771. },
  1772. // Configure editor settings to be overridden for [search-result] language.
  1773. "[search-result]": {
  1774. "editor.lineNumbers": "off"
  1775. },
  1776. // Configure editor settings to be overridden for [yaml] language.
  1777. "[yaml]": {
  1778. "editor.insertSpaces": true,
  1779. "editor.tabSize": 2,
  1780. "editor.autoIndent": "advanced"
  1781. },
  1782. // Remote
  1783. // When enabled extensions are downloaded locally and installed on remote.
  1784. "remote.downloadExtensionsLocally": false,
  1785. // Override the kind of an extension. `ui` extensions are installed and run on the local machine while `workspace` extensions are run on the remote. By overriding an extension's default kind using this setting, you specify if that extension should be installed and enabled locally or remotely.
  1786. "remote.extensionKind": {
  1787. "pub.name": [
  1788. "ui"
  1789. ]
  1790. },
  1791. // Restores the ports you forwarded in a workspace.
  1792. "remote.restoreForwardedPorts": false,
  1793. // Node debug
  1794. // Automatically attach node debugger when node.js was launched in debug mode from integrated terminal.
  1795. // - disabled: Auto attach is disabled and not shown in status bar.
  1796. // - on: Auto attach is active.
  1797. // - off: Auto attach is inactive.
  1798. "debug.node.autoAttach": "disabled",
  1799. // Controls whether to show a warning when the 'useWSL' attribute is used.
  1800. "debug.node.showUseWslIsDeprecatedWarning": true,
  1801. //Emmet
  1802. // An array of languages where Emmet abbreviations should not be expanded.
  1803. "emmet.excludeLanguages": [
  1804. "markdown"
  1805. ],
  1806. // Path to a folder containing Emmet profiles and snippets.
  1807. "emmet.extensionsPath": null,
  1808. // Enable Emmet abbreviations in languages that are not supported by default. Add a mapping here between the language and emmet supported language.
  1809. // E.g.: `{"vue-html": "html", "javascript": "javascriptreact"}`
  1810. "emmet.includeLanguages": {},
  1811. // When set to `false`, the whole file is parsed to determine if current position is valid for expanding Emmet abbreviations. When set to `true`, only the content around the current position in css/scss/less files is parsed.
  1812. "emmet.optimizeStylesheetParsing": true,
  1813. // Preferences used to modify behavior of some actions and resolvers of Emmet.
  1814. "emmet.preferences": {},
  1815. // Shows possible Emmet abbreviations as suggestions. Not applicable in stylesheets or when emmet.showExpandedAbbreviation is set to `"never"`.
  1816. "emmet.showAbbreviationSuggestions": true,
  1817. // Shows expanded Emmet abbreviations as suggestions.
  1818. // The option `"inMarkupAndStylesheetFilesOnly"` applies to html, haml, jade, slim, xml, xsl, css, scss, sass, less and stylus.
  1819. // The option `"always"` applies to all parts of the file regardless of markup/css.
  1820. "emmet.showExpandedAbbreviation": "always",
  1821. // If `true`, then Emmet suggestions will show up as snippets allowing you to order them as per `editor.snippetSuggestions` setting.
  1822. "emmet.showSuggestionsAsSnippets": false,
  1823. // Define profile for specified syntax or use your own profile with specific rules.
  1824. "emmet.syntaxProfiles": {},
  1825. // When enabled, Emmet abbreviations are expanded when pressing TAB.
  1826. "emmet.triggerExpansionOnTab": false,
  1827. // Variables to be used in Emmet snippets
  1828. "emmet.variables": {},
  1829. // Git
  1830. // Controls whether force push (with or without lease) is enabled.
  1831. "git.allowForcePush": false,
  1832. // Always show the Staged Changes resource group.
  1833. "git.alwaysShowStagedChangesResourceGroup": false,
  1834. // Controls the signoff flag for all commits.
  1835. "git.alwaysSignOff": false,
  1836. // When enabled, commits will automatically be fetched from the default remote of the current Git repository.
  1837. "git.autofetch": false,
  1838. // Duration in seconds between each automatic git fetch, when `git.autofetch` is enabled.
  1839. "git.autofetchPeriod": 180,
  1840. // Whether auto refreshing is enabled.
  1841. "git.autorefresh": true,
  1842. // Configures when repositories should be automatically detected.
  1843. // - true: Scan for both subfolders of the current opened folder and parent folders of open files.
  1844. // - false: Disable automatic repository scanning.
  1845. // - subFolders: Scan for subfolders of the currently opened folder.
  1846. // - openEditors: Scan for parent folders of open files.
  1847. "git.autoRepositoryDetection": true,
  1848. // Stash any changes before pulling and restore them after successful pull.
  1849. "git.autoStash": false,
  1850. // Controls the sort order for branches.
  1851. "git.branchSortOrder": "committerdate",
  1852. // A regular expression to validate new branch names.
  1853. "git.branchValidationRegex": "",
  1854. // The character to replace whitespace in new branch names.
  1855. "git.branchWhitespaceChar": "-",
  1856. // Controls what type of branches are listed when running `Checkout to...`.
  1857. // - all: Show all references.
  1858. // - local: Show only local branches.
  1859. // - tags: Show only tags.
  1860. // - remote: Show only remote branches.
  1861. "git.checkoutType": "all",
  1862. // Always confirm the creation of empty commits for the 'Git: Commit Empty' command.
  1863. "git.confirmEmptyCommits": true,
  1864. // Controls whether to ask for confirmation before force-pushing.
  1865. "git.confirmForcePush": true,
  1866. // Confirm before synchronizing git repositories.
  1867. "git.confirmSync": true,
  1868. // Controls the Git count badge.
  1869. // - all: Count all changes.
  1870. // - tracked: Count only tracked changes.
  1871. // - off: Turn off counter.
  1872. "git.countBadge": "all",
  1873. // Controls whether Git contributes colors and badges to the explorer and the open editors view.
  1874. "git.decorations.enabled": true,
  1875. // The default location to clone a git repository.
  1876. "git.defaultCloneDirectory": null,
  1877. // Controls whether to automatically detect git submodules.
  1878. "git.detectSubmodules": true,
  1879. // Controls the limit of git submodules detected.
  1880. "git.detectSubmodulesLimit": 10,
  1881. // Enables commit signing with GPG.
  1882. "git.enableCommitSigning": false,
  1883. // Whether git is enabled.
  1884. "git.enabled": true,
  1885. // Commit all changes when there are no staged changes.
  1886. "git.enableSmartCommit": false,
  1887. // Controls whether the Git Sync command appears in the status bar.
  1888. "git.enableStatusBarSync": true,
  1889. // When enabled, fetch all branches when pulling. Otherwise, fetch just the current one.
  1890. "git.fetchOnPull": false,
  1891. // List of git repositories to ignore.
  1892. "git.ignoredRepositories": [],
  1893. // Ignores the legacy Git warning.
  1894. "git.ignoreLegacyWarning": false,
  1895. // Ignores the warning when there are too many changes in a repository.
  1896. "git.ignoreLimitWarning": false,
  1897. // Ignores the warning when Git is missing.
  1898. "git.ignoreMissingGitWarning": false,
  1899. // Controls when to show commit message input validation.
  1900. "git.inputValidation": "warn",
  1901. // Controls the commit message length threshold for showing a warning.
  1902. "git.inputValidationLength": 72,
  1903. // Controls the commit message subject length threshold for showing a warning. Unset it to inherit the value of `config.inputValidationLength`.
  1904. "git.inputValidationSubjectLength": 50,
  1905. // Controls whether the diff editor should be opened when clicking a change. Otherwise the regular editor will be opened.
  1906. "git.openDiffOnClick": true,
  1907. // Path and filename of the git executable, e.g. `C:\Program Files\Git\bin\git.exe` (Windows).
  1908. "git.path": null,
  1909. // Runs a git command after a successful commit.
  1910. // - none: Don't run any command after a commit.
  1911. // - push: Run 'Git Push' after a successful commit.
  1912. // - sync: Run 'Git Sync' after a successful commit.
  1913. "git.postCommitCommand": "none",
  1914. // Controls whether Git should check for unsaved files before committing.
  1915. // - always: Check for any unsaved files.
  1916. // - staged: Check only for unsaved staged files.
  1917. // - never: Disable this check.
  1918. "git.promptToSaveFilesBeforeCommit": "always",
  1919. // Fetch all tags when pulling.
  1920. "git.pullTags": true,
  1921. // Force git to use rebase when running the sync command.
  1922. "git.rebaseWhenSync": false,
  1923. // List of paths to search for git repositories in.
  1924. "git.scanRepositories": [],
  1925. // Controls whether to show the commit input in the Git source control panel.
  1926. "git.showCommitInput": true,
  1927. // Controls whether to show an inline Open File action in the Git changes view.
  1928. "git.showInlineOpenFileAction": true,
  1929. // Controls whether git actions should show progress.
  1930. "git.showProgress": true,
  1931. // Controls whether to show a notification when a push is successful.
  1932. "git.showPushSuccessNotification": false,
  1933. // Control which changes are automatically staged by Smart Commit.
  1934. // - all: Automatically stage all changes.
  1935. // - tracked: Automatically stage tracked changes only.
  1936. "git.smartCommitChanges": "all",
  1937. // Suggests to enable smart commit (commit all changes when there are no staged changes).
  1938. "git.suggestSmartCommit": true,
  1939. // Controls whether a notification comes up when running the Sync action, which allows the user to cancel the operation.
  1940. "git.supportCancellation": false,
  1941. // Controls whether to enable VS Code to be the authentication handler for git processes spawned in the integrated terminal. Note: terminals need to be restarted to pick up a change in this setting.
  1942. "git.terminalAuthentication": true,
  1943. // Controls how untracked changes behave.
  1944. // - mixed: All changes, tracked and untracked, appear together and behave equally.
  1945. // - separate: Untracked changes appear separately in the Source Control view. They are also excluded from several actions.
  1946. // - hidden: Untracked changes are hidden and excluded from several actions.
  1947. "git.untrackedChanges": "mixed",
  1948. // Controls whether force pushing uses the safer force-with-lease variant.
  1949. "git.useForcePushWithLease": true,
  1950. // Controls whether to enable automatic GitHub authentication for git commands within VS Code.
  1951. "github.gitAuthentication": true,
  1952. // Grunt
  1953. // Controls whether auto detection of Grunt tasks is on or off. Default is on.
  1954. "grunt.autoDetect": "on",
  1955. // Gulp
  1956. // Controls whether auto detection of Gulp tasks is on or off. Default is on.
  1957. "gulp.autoDetect": "on",
  1958. // Jake
  1959. // Controls whether auto detection of Jake tasks is on or off. Default is on.
  1960. "jake.autoDetect": "on",
  1961. // Merge Conflict
  1962. // Whether to automatically navigate to the next merge conflict after resolving a merge conflict.
  1963. "merge-conflict.autoNavigateNextConflict.enabled": false,
  1964. // Create a CodeLens for merge conflict blocks within editor.
  1965. "merge-conflict.codeLens.enabled": true,
  1966. // Create decorators for merge conflict blocks within editor.
  1967. "merge-conflict.decorators.enabled": true,
  1968. // Controls where the diff view should be opened when comparing changes in merge conflicts.
  1969. // - Current: Open the diff view in the current editor group.
  1970. // - Beside: Open the diff view next to the current editor group.
  1971. // - Below: Open the diff view below the current editor group.
  1972. "merge-conflict.diffViewPosition": "Current",
  1973. // References Search View
  1974. // Controls whether 'Peek References' or 'Find References' is invoked when selecting code lens references
  1975. // - peek: Show references in peek editor.
  1976. // - view: Show references in separate view.
  1977. "references.preferredLocation": "peek",
  1978. // Npm
  1979. // Controls whether npm scripts should be automatically detected.
  1980. "npm.autoDetect": "on",
  1981. // Enable running npm scripts contained in a folder from the Explorer context menu.
  1982. "npm.enableRunFromFolder": false,
  1983. // Enable an explorer view for npm scripts when there is no top-level 'package.json' file.
  1984. "npm.enableScriptExplorer": false,
  1985. // Configure glob patterns for folders that should be excluded from automatic script detection.
  1986. "npm.exclude": "",
  1987. // Fetch data from https://registry.npmjs.org and https://registry.bower.io to provide auto-completion and information on hover features on npm dependencies.
  1988. "npm.fetchOnlinePackageInfo": true,
  1989. // The package manager used to run scripts.
  1990. "npm.packageManager": "npm",
  1991. // Run npm commands with the `--silent` option.
  1992. "npm.runSilent": false,
  1993. // The default click action used in the npm scripts explorer: `open` or `run`, the default is `open`.
  1994. "npm.scriptExplorerAction": "open"
  1995. }

Common questions

VS Code says “Unable to write settings.”

If you try to change a setting (for example turning on Auto Save or selecting a new Color Theme) and you see “Unable to write settings. Please open User Settings to correct errors/warnings in the file and try again.”, it means your settings.json file is ill-formed or has errors. The errors can be as simple as a missing comma or setting value. Open the Settings editor File > Preferences > Settings (Code > Preferences > Settings on macOS) (kb(workbench.action.openSettings)) and you should see the error highlighted with red squiggles.

How can I reset my user settings?

The easiest way to reset VS Code back to the default settings is to clear your user settings.json file contents in the Settings editor. Delete everything between the two curly braces, save the file, and VS Code will go back to using the default values.

When does it make sense to use workspace settings?

If you’re using a workspace that needs custom settings but you don’t want to apply them to your other VS Code projects. A good example is language-specific linting rules.