@codingame/monaco-editor-wrapper 3.5.3 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/COBOL.tmLanguage.js +22 -6
  2. package/dist/JavaScript.tmLanguage.js +2 -2
  3. package/dist/JavaScriptReact.tmLanguage.js +2 -2
  4. package/dist/TypeScript.tmLanguage.js +2 -2
  5. package/dist/TypeScriptReact.tmLanguage.js +2 -2
  6. package/dist/_monaco-editor_commonjs-external.js +8 -1
  7. package/dist/angular.js +6 -0
  8. package/dist/buildignore.r.js +5 -0
  9. package/dist/{COBOL.js → cobol.js} +2 -2
  10. package/dist/cobol2.js +71 -47
  11. package/dist/configuration/index.d.ts +2 -2
  12. package/dist/cpp.tmLanguage.js +808 -4380
  13. package/dist/cpptools.js +1896 -1867
  14. package/dist/css.tmLanguage.js +1 -1
  15. package/dist/css.worker.js +1 -1
  16. package/dist/d.js +3 -0
  17. package/dist/d3.js +369 -288
  18. package/dist/dart.js +37 -24
  19. package/dist/dart3.js +46 -6
  20. package/dist/features/extensionConfigurations.js +2 -1
  21. package/dist/features/jsonContribution.d.ts +1 -1
  22. package/dist/features/typescriptContribution.js +1 -1
  23. package/dist/go.mod.js +8 -0
  24. package/dist/go.mod.tmGrammar.js +182 -0
  25. package/dist/go.sum.tmGrammar.js +55 -0
  26. package/dist/go.work.js +8 -0
  27. package/dist/govulncheck.tmGrammar.js +138 -0
  28. package/dist/html.tmLanguage.js +4 -4
  29. package/dist/html.worker.js +1 -1
  30. package/dist/index2.js +89 -18
  31. package/dist/java2.js +80 -2
  32. package/dist/javascript.js +1 -1
  33. package/dist/javascriptreact.js +1 -1
  34. package/dist/json.worker.js +1 -1
  35. package/dist/lua.tmLanguage.js +104 -7
  36. package/dist/lua2.js +98 -26
  37. package/dist/main.js +144 -29
  38. package/dist/markdown-vue.js +1 -1
  39. package/dist/namespace.r.js +88 -0
  40. package/dist/ocaml3.js +8 -1
  41. package/dist/rbuildignore.js +39 -0
  42. package/dist/rnamespace.js +283 -0
  43. package/dist/scalameta.js +12 -5
  44. package/dist/shell-unix-bash.tmLanguage.js +1193 -528
  45. package/dist/solargraph.js +2 -2
  46. package/dist/sql.tmLanguage.js +134 -46
  47. package/dist/svelte.js +3 -1
  48. package/dist/svelte.svelte-vscode.js +11 -14
  49. package/dist/svlangserver.js +2 -2
  50. package/dist/tcl.tmlanguage.yaml.js +1 -1
  51. package/dist/theme-defaults~dark_plus_experimental.js +146 -0
  52. package/dist/theme-defaults~dark_vs.js +6 -2
  53. package/dist/theme-defaults~light_plus_experimental.js +159 -0
  54. package/dist/theme-defaults~light_vs.js +4 -2
  55. package/dist/tools/EditorOpenHandlerRegistry.d.ts +1 -1
  56. package/dist/typescript-language-features.js +48 -45
  57. package/dist/typescript.js +1 -1
  58. package/dist/typescriptreact.js +1 -1
  59. package/dist/volar-vue.js +51 -18
  60. package/dist/vscode-R.js +12 -1
  61. package/dist/vscode-go-go.js +276 -0
  62. package/dist/vscode-go.js +1604 -0
  63. package/dist/vscode-python.js +14 -9
  64. package/dist/vue-directives.js +1 -1
  65. package/dist/vue-interpolations.js +1 -1
  66. package/dist/vue-sfc-style-variable-injection.js +1 -1
  67. package/dist/vue.tmLanguage.js +44 -12
  68. package/dist/worker.d.ts +1 -1
  69. package/package.json +31 -31
  70. package/stats.html +2462 -329
  71. package/dist/COBOL Copybook.js +0 -6
  72. package/dist/cobol-snippets.js +0 -5
package/dist/d3.js CHANGED
@@ -1,16 +1,66 @@
1
1
  var d = [
2
2
  {
3
- "title": "D",
3
+ "title": "General",
4
4
  "type": "object",
5
5
  "properties": {
6
6
  "d.servedPath": {
7
7
  "type": "string",
8
8
  "scope": 6,
9
+ "title": "Serve-D LSP Path",
9
10
  "default": "serve-d",
10
- "description": "Path of the serve-d executable. Path can be omitted if in $PATH or installed using code-d"
11
+ "order": 0,
12
+ "markdownDescription": "Path of the serve-d executable, the used LSP server. Path can be omitted if in `$PATH` or auto-installed using code-d on startup."
13
+ },
14
+ "d.servedReleaseChannel": {
15
+ "type": "string",
16
+ "scope": 1,
17
+ "default": "stable",
18
+ "order": 1,
19
+ "enum": [
20
+ "stable",
21
+ "beta",
22
+ "nightly",
23
+ "frozen"
24
+ ],
25
+ "enumDescriptions": [
26
+ "Always fetch the latest pre-compiled stable release binaries from the serve-d GitHub repository",
27
+ "Always fetch the latest pre-compiled potentially unstable pre-release binaries from the serve-d GitHub repository",
28
+ "Always fetch the latest pre-compiled nightly binaries from the serve-d GitHub repository. These are being generated every night (UTC) if something changed and tests passed.",
29
+ "Don't do any update checks for serve-d (not recommended if you don't update serve-d outside code-d)"
30
+ ],
31
+ "markdownDescription": "Release channel (stable, beta, nightly) to automatically download serve-d binaries from. serve-d is the D language server used with code-d and provides all language functionality except syntax highlighting, which is provided by code-d."
32
+ },
33
+ "d.aggressiveUpdate": {
34
+ "type": "boolean",
35
+ "scope": 1,
36
+ "default": true,
37
+ "order": 2,
38
+ "markdownDescription": "Automatically update and install outdated or missing tools without user confirmation."
39
+ },
40
+ "d.showUpdateChangelogs": {
41
+ "type": "boolean",
42
+ "scope": 1,
43
+ "default": true,
44
+ "order": 3,
45
+ "markdownDescription": "Open `CHANGELOG.md` on every code-d update (which also includes serve-d updates) to see new features."
46
+ }
47
+ }
48
+ },
49
+ {
50
+ "title": "Auto-Completion",
51
+ "type": "object",
52
+ "properties": {
53
+ "d.enableAutoComplete": {
54
+ "order": 0,
55
+ "type": "boolean",
56
+ "scope": 4,
57
+ "default": true,
58
+ "markdownDescription": "Enable auto-completion in D files, mostly powered by DCD.\n\nIf you have a custom DCD setup, you can change the started dcd-server binary through the `#d.dcdServerPath#` setting."
11
59
  },
12
60
  "d.stdlibPath": {
13
61
  "scope": 6,
62
+ "title": "Standard Library (Phobos) Path",
63
+ "order": 1,
14
64
  "oneOf": [
15
65
  {
16
66
  "type": "array",
@@ -55,236 +105,181 @@ var d = [
55
105
  ]
56
106
  }
57
107
  ],
58
- "description": "Array of paths to phobos and D runtime for automatic inclusion for auto completion"
59
- },
60
- "d.dcdClientPath": {
61
- "title": "DCD Client Path",
62
- "type": "string",
63
- "scope": 6,
64
- "default": "dcd-client",
65
- "description": "Path of the dcd-client executable. Path can be omitted if in $PATH or installed using code-d"
108
+ "markdownDescription": "Array of paths to phobos and D runtime for automatic inclusion for auto completion"
66
109
  },
67
110
  "d.dcdServerPath": {
68
111
  "title": "DCD Server Path",
69
112
  "type": "string",
70
113
  "scope": 6,
71
114
  "default": "dcd-server",
72
- "description": "Path of the dcd-server executable. Path can be omitted if in $PATH or installed using code-d"
73
- },
74
- "d.dubPath": {
75
- "type": "string",
76
- "scope": 6,
77
- "default": "dub",
78
- "description": "Path of the dub executable. Path can be omitted if in $PATH or installed using code-d"
115
+ "order": 2,
116
+ "markdownDescription": "Path of the dcd-server executable. Path can be omitted if in `$PATH` or installed using code-d"
79
117
  },
80
- "d.dmdPath": {
118
+ "d.dcdClientPath": {
119
+ "title": "DCD Client Path",
81
120
  "type": "string",
82
121
  "scope": 6,
83
- "default": "dmd",
84
- "description": "Path of the dmd executable. Path can be omitted if in $PATH"
85
- },
86
- "d.enableLinting": {
87
- "type": "boolean",
88
- "scope": 4,
89
- "default": true,
90
- "description": "If code-d should watch for file saves and report static analysis. Might interfere with other lint plugins or settings."
91
- },
92
- "d.enableSDLLinting": {
93
- "type": "boolean",
94
- "scope": 4,
95
- "default": true,
96
- "description": "If code-d should report errors in your dub.sdl file."
97
- },
98
- "d.enableDubLinting": {
99
- "type": "boolean",
100
- "scope": 4,
101
- "default": true,
102
- "description": "If code-d should build on save to check for compile errors."
103
- },
104
- "d.enableStaticLinting": {
105
- "type": "boolean",
106
- "scope": 4,
107
- "default": true,
108
- "description": "If code-d should use DScanner to statically lint files."
109
- },
110
- "d.enableAutoComplete": {
111
- "type": "boolean",
112
- "scope": 4,
113
- "default": true,
114
- "description": "Start dcd-server at startup and complete using dcd-client."
122
+ "default": "dcd-client",
123
+ "order": 3,
124
+ "markdownDescription": "Path of the dcd-client executable. Path can be omitted if in `$PATH` or installed using code-d"
115
125
  },
116
- "d.enableFormatting": {
117
- "type": "boolean",
126
+ "d.projectImportPaths": {
127
+ "type": "array",
118
128
  "scope": 4,
119
- "default": true,
120
- "description": "If the default formatting keybind should call dfmt on D files."
129
+ "items": {
130
+ "type": "string"
131
+ },
132
+ "default": [],
133
+ "markdownDescription": "Sets the import paths in your workspace, only when not using DUB. This will replace other paths. Its recommended to set this in your workspace or folder settings instead of your user settings to keep it separate for each project. Note that these import paths will not be used if DUB is enabled and used in the project. See `#d.neverUseDub#` to disable DUB."
121
134
  },
122
- "d.enableDMDImportTiming": {
135
+ "d.argumentSnippets": {
123
136
  "type": "boolean",
124
137
  "scope": 4,
125
138
  "default": false,
126
- "description": "Add code lenses on import statements executing a dmd instance trying to compile that import statement to get the impact on compilation time by this import."
127
- },
128
- "d.enableCoverageDecoration": {
129
- "type": "boolean",
130
- "scope": 4,
131
- "default": true,
132
- "description": "Automatically highlight tested/untested coverage lines with light red/green backgrounds per line for *.lst files."
133
- },
134
- "d.enableGCProfilerDecorations": {
135
- "type": "boolean",
136
- "scope": 4,
137
- "default": true,
138
- "description": "Automatically embed code lenses for all GC allocations based on profilegc.log."
139
+ "markdownDescription": "Insert function signatures (function arguments) as snippets which can be navigated using tab when auto-completing functions."
139
140
  },
140
- "d.neverUseDub": {
141
+ "d.dietContextCompletion": {
141
142
  "type": "boolean",
142
143
  "scope": 4,
143
144
  "default": false,
144
- "description": "If this is true then a custom workspace where you manually provide the import paths will always be used instead of DUB. See d.projectImportPaths for setting import paths then. This is discouraged as it will remove most features like packages, building & compiler linting. If this is a standalone project with no external dependencies with a custom build system then this should be true."
145
- },
146
- "d.projectImportPaths": {
147
- "type": "array",
148
- "scope": 4,
149
- "items": {
150
- "type": "string"
151
- },
152
- "default": [],
153
- "description": "Setting for import paths in your workspace if not using DUB. This will replace other paths. Its recommended to set this in your workspace settings instead of your user settings to keep it separate for each project."
145
+ "markdownDescription": "Read `//-context=path/to/file.d` comments in diet files and act like the D code inside the diet file comes from there, to allow auto-completion of local symbols."
146
+ }
147
+ }
148
+ },
149
+ {
150
+ "title": "DUB",
151
+ "type": "object",
152
+ "properties": {
153
+ "d.dubPath": {
154
+ "type": "string",
155
+ "scope": 6,
156
+ "default": "dub",
157
+ "order": 4,
158
+ "markdownDescription": "Path of the dub executable. Path can be omitted if in `$PATH` or installed using code-d"
154
159
  },
155
160
  "d.dubConfiguration": {
156
161
  "type": "string",
157
162
  "scope": 4,
158
- "description": "Sets the default configuration to use when starting up"
163
+ "order": 5,
164
+ "markdownDescription": "Sets the default DUB configuration. Used in DUB linting, auto-completion import paths and DUB build tasks and debugging."
159
165
  },
160
166
  "d.dubArchType": {
161
167
  "type": "string",
162
168
  "scope": 4,
163
- "description": "Sets the default arch type to use when starting up"
169
+ "order": 6,
170
+ "markdownDescription": "Sets the default DUB architecture. Used in DUB linting, auto-completion import paths and DUB build tasks and debugging."
164
171
  },
165
172
  "d.dubBuildType": {
166
173
  "type": "string",
167
174
  "scope": 4,
168
- "description": "Sets the default build type to use when starting up"
175
+ "order": 7,
176
+ "markdownDescription": "Sets the default DUB build type. Used in DUB linting, auto-completion import paths and DUB build tasks and debugging."
169
177
  },
170
178
  "d.dubCompiler": {
171
179
  "type": "string",
172
- "scope": 4,
173
- "description": "Sets the default compiler to use when starting up"
180
+ "scope": 6,
181
+ "order": 8,
182
+ "markdownDescription": "Sets the default DUB compiler. Used in DUB linting, auto-completion import paths and DUB build tasks and debugging."
174
183
  },
175
- "d.overrideDfmtEditorconfig": {
184
+ "d.scanAllFolders": {
176
185
  "type": "boolean",
177
186
  "scope": 4,
178
187
  "default": true,
179
- "description": "Uses dfmt config options & vscode editor config instead of .editorconfig because of inconsistencies with the vscode editor settings."
188
+ "order": 9,
189
+ "markdownDescription": "Initialize isolated workspaces for every dub.sdl and dub.json file in all folders, avoiding mixing import paths in unrelated projects."
180
190
  },
181
- "d.aggressiveUpdate": {
182
- "type": "boolean",
183
- "scope": 1,
184
- "default": true,
185
- "description": "Update/install outdated & missing tools without confirmation"
186
- },
187
- "d.argumentSnippets": {
191
+ "d.neverUseDub": {
188
192
  "type": "boolean",
189
193
  "scope": 4,
190
194
  "default": false,
191
- "description": "When autocompleting functions automatically insert the signature as snippet which can be navigated using tab."
195
+ "markdownDescription": "Disable DUB integration and require manually provided import paths using `#d.projectImportPaths#`.\n\nThis is discouraged as it will remove most features like resolving dependencies, building and compiler linting. For standalone projects with no external dependencies with a custom build system then this can be useful."
192
196
  },
193
- "d.betaStream": {
197
+ "d.alwaysShowDubStatusButtons": {
194
198
  "type": "boolean",
195
- "scope": 1,
196
- "deprecationMessage": "This option has been replaced with \"d.servedReleaseChannel\":\"nightly\"",
199
+ "scope": 4,
197
200
  "default": false,
198
- "description": "Always get latest serve-d commit when starting vscode and an update is available."
201
+ "markdownDescription": "Always show DUB Configuration/Arch Type/Build Type/Compiler buttons in DUB projects, and not just when a D file is open."
199
202
  },
200
- "d.servedReleaseChannel": {
203
+ "d.dependencyClickBehavior": {
201
204
  "type": "string",
202
- "scope": 1,
203
- "default": "stable",
205
+ "scope": 3,
204
206
  "enum": [
205
- "stable",
206
- "beta",
207
- "nightly",
208
- "frozen"
207
+ "listDocumentsPreview",
208
+ "listDocumentsSource",
209
+ "listDocumentsBoth",
210
+ "openRecipe",
211
+ "openDpldocs",
212
+ "doNothing",
213
+ "openFileDialog"
214
+ ],
215
+ "enumItemLabels": [
216
+ "Preview Text Document",
217
+ "Open Text Document Source",
218
+ "Show Text Document Actions",
219
+ "Open Package Recipe",
220
+ "Open dpldocs.info",
221
+ "Do nothing",
222
+ "Open File Dialog"
209
223
  ],
210
224
  "enumDescriptions": [
211
- "Always fetch the latest pre-compiled stable release binaries from the serve-d GitHub repository",
212
- "Always fetch the latest pre-compiled potentially unstable pre-release binaries from the serve-d GitHub repository",
213
- "Always fetch the latest pre-compiled nightly binaries from the serve-d GitHub repository. These are being generated every night (UTC) if something changed and tests passed.",
214
- "Don't do any update checks for serve-d (not recommended if you don't update serve-d outside code-d)"
225
+ "Preview a readable document text file of the package",
226
+ "See source of a readable document text file of the package",
227
+ "Preview or view source of a readable document text file of the package",
228
+ "Open dub.json / dub.sdl file of the package",
229
+ "Open package on dpldocs.info in a web browser",
230
+ "Do nothing",
231
+ "Open a file dialog in the dependency folder"
215
232
  ],
216
- "description": "Release channel (stable, beta, nightly) to automatically download serve-d binaries from. serve-d is the D language server used with code-d and provides all language functionality except syntax highlighting, which is provided by code-d."
217
- },
218
- "d.smartServedUpdates": {
219
- "type": "boolean",
220
- "scope": 1,
221
- "default": true,
222
- "description": "Randomly omits serve-d update checks to save bandwidth, lower startup delay and minimize breakage on new releases with quick fixes. Also avoids to update when working on fridays."
223
- },
224
- "d.scanAllFolders": {
225
- "type": "boolean",
226
- "scope": 4,
227
- "default": true,
228
- "description": "Initialize an instance for every dub.sdl and dub.json file in all folders."
229
- },
230
- "d.disabledRootGlobs": {
231
- "type": "array",
232
- "scope": 4,
233
- "items": {
234
- "type": "string"
235
- },
236
- "default": [],
237
- "description": "Array of globs for disabling/preventing project instances by the d.scanAllFolders setting."
233
+ "default": "listDocumentsPreview",
234
+ "markdownDescription": "Configures what happens when you click a dependency in the DUB Dependency view. For the listDocuments actions if only a single file matches, it is immediately opened. See `#d.dependencyTextDocumentFilter#` setting to configure which files will be shown."
238
235
  },
239
- "d.extraRoots": {
236
+ "d.dependencyTextDocumentFilter": {
240
237
  "type": "array",
241
- "scope": 4,
238
+ "scope": 3,
242
239
  "items": {
243
240
  "type": "string"
244
241
  },
245
- "default": [],
246
- "description": "Array of workspace-relative (or absolute) folders to force start a project instance in."
247
- },
248
- "d.alwaysShowDubStatusButtons": {
242
+ "default": [
243
+ "^README",
244
+ "^CHANGES",
245
+ "^CHANGELOG",
246
+ "^LICENSE"
247
+ ],
248
+ "markdownDescription": "Filenames that are considered readable documents for when viewing documents of a DUB dependency. You can use regular expressions, but it only matches on the filename (including extension) not on the path, case-insensitive."
249
+ }
250
+ }
251
+ },
252
+ {
253
+ "title": "Linting",
254
+ "type": "object",
255
+ "properties": {
256
+ "d.enableLinting": {
257
+ "order": 0,
249
258
  "type": "boolean",
250
259
  "scope": 4,
251
- "default": false,
252
- "description": "Switch to always show DUB Configuration/Arch Type/Build Type/Compiler buttons in DUB projects and not just when a D file is open."
260
+ "default": true,
261
+ "markdownDescription": "Enable errors and warnings (squiggly lines) while editing source code.\n\nTurning this off disables all diagnostics coming from code-d.You can toggle\n\n- `#d.enableSDLLinting#`\n- `#d.enableDubLinting#`\n- `#d.enableStaticLinting#`\n\nfor finer control instead."
253
262
  },
254
- "d.alwaysShowCoverageStatus": {
263
+ "d.enableStaticLinting": {
264
+ "order": 1,
255
265
  "type": "boolean",
256
266
  "scope": 4,
257
- "default": false,
258
- "description": "Switch to always show coverage status when available through lst files and not just when a D file is open."
259
- },
260
- "d.manyProjectsAction": {
261
- "type": "string",
262
- "scope": 4,
263
- "default": "ask",
264
- "enum": [
265
- "ask",
266
- "skip",
267
- "load"
268
- ],
269
- "enumDescriptions": [
270
- "Open a dialog box each time there are too many projects. (recommended for user-settings)",
271
- "Never load any more projects than the d.manyProjectsThreshold setting specified. (this or \"load\" recommended only per-project)",
272
- "Load all projects even if there are more than the d.manyProjectsThreshold setting specified. (this or \"skip\" recommended only per-project; never recommended for user-settings or large projects with many DUB test projects)"
273
- ],
274
- "description": "What to do when there are too many project roots to load from. The deepest folder paths are skipped for skip."
267
+ "default": true,
268
+ "markdownDescription": "Check D file for errors and warnings, without being built, whenever typing.\n\nOnly has an effect if `#d.enableLinting#` is also turned on."
275
269
  },
276
- "d.manyProjectsThreshold": {
277
- "type": "number",
270
+ "d.enableDubLinting": {
271
+ "order": 2,
272
+ "type": "boolean",
278
273
  "scope": 4,
279
- "default": 4,
280
- "minimum": 0,
281
- "description": "For how many projects to start triggering the manyProjectsAction to load or not load further projects."
274
+ "default": true,
275
+ "markdownDescription": "Compile DUB projects on save to check for compile errors.\n\nThis is very similar to running `dub build` on the command line to see what actual errors occur, but does not output any executable or library.\n\nOnly has an effect if `#d.enableLinting#` is also turned on."
282
276
  },
283
- "d.ignoreDebugHints": {
277
+ "d.enableSDLLinting": {
278
+ "order": 3,
284
279
  "type": "boolean",
285
- "scope": 3,
286
- "default": false,
287
- "description": "If true, no hints will be shown when a project may be wrongly configured when trying to start debugging."
280
+ "scope": 4,
281
+ "default": true,
282
+ "markdownDescription": "Check `dub.sdl` files for errors and warnings.\n\nOnly has an effect if `#d.enableLinting#` is also turned on."
288
283
  },
289
284
  "d.lintOnFileOpen": {
290
285
  "type": "string",
@@ -296,73 +291,96 @@ var d = [
296
291
  "never"
297
292
  ],
298
293
  "enumDescriptions": [
299
- "D-Scanner runs on every file that is opened immediately, also for any internal cross-project or external dependencies.",
300
- "D-Scanner runs on every file only in the current project that is opened immediately. It then only starts on other files when changing something.",
301
- "D-Scanner never runs when opening a file and only starts running when changing something."
294
+ "Every opened file will be linted immediately, also for any internal cross-project or external dependencies.",
295
+ "Opened files in the current project will be linted immediately. Other files will be linted when editing.",
296
+ "Opening files will not lint and only start when editing them."
302
297
  ],
303
- "description": "Enables dscanner linting when opening a new file."
298
+ "markdownDescription": "Performs static linting already when opening a file, and not just when editing it. Needs `#d.enableStaticLinting#` to be enabled."
304
299
  },
305
- "d.dietContextCompletion": {
306
- "type": "boolean",
300
+ "dscanner.ignoredKeys": {
301
+ "type": "array",
307
302
  "scope": 4,
308
- "default": false,
309
- "description": "Enables parsing of //-context= in diet files to import local variables shared with the opened diet template."
310
- },
311
- "d.generateModuleNames": {
303
+ "items": {
304
+ "type": "string",
305
+ "enum": [
306
+ "dscanner.bugs.backwards_slices",
307
+ "dscanner.bugs.if_else_same",
308
+ "dscanner.bugs.logic_operator_operands",
309
+ "dscanner.bugs.self_assignment",
310
+ "dscanner.confusing.argument_parameter_mismatch",
311
+ "dscanner.confusing.brexp",
312
+ "dscanner.confusing.builtin_property_names",
313
+ "dscanner.confusing.constructor_args",
314
+ "dscanner.confusing.function_attributes",
315
+ "dscanner.confusing.lambda_returns_lambda",
316
+ "dscanner.confusing.logical_precedence",
317
+ "dscanner.confusing.struct_constructor_default_args",
318
+ "dscanner.deprecated.delete_keyword",
319
+ "dscanner.deprecated.floating_point_operators",
320
+ "dscanner.if_statement",
321
+ "dscanner.performance.enum_array_literal",
322
+ "dscanner.style.allman",
323
+ "dscanner.style.alias_syntax",
324
+ "dscanner.style.doc_missing_params",
325
+ "dscanner.style.doc_missing_returns",
326
+ "dscanner.style.doc_non_existing_params",
327
+ "dscanner.style.explicitly_annotated_unittest",
328
+ "dscanner.style.has_public_example",
329
+ "dscanner.style.imports_sortedness",
330
+ "dscanner.style.long_line",
331
+ "dscanner.style.number_literals",
332
+ "dscanner.style.phobos_naming_convention",
333
+ "dscanner.style.undocumented_declaration",
334
+ "dscanner.suspicious.auto_ref_assignment",
335
+ "dscanner.suspicious.catch_em_all",
336
+ "dscanner.suspicious.comma_expression",
337
+ "dscanner.suspicious.incomplete_operator_overloading",
338
+ "dscanner.suspicious.incorrect_infinite_range",
339
+ "dscanner.suspicious.label_var_same_name",
340
+ "dscanner.suspicious.length_subtraction",
341
+ "dscanner.suspicious.local_imports",
342
+ "dscanner.suspicious.missing_return",
343
+ "dscanner.suspicious.object_const",
344
+ "dscanner.suspicious.redundant_attributes",
345
+ "dscanner.suspicious.redundant_parens",
346
+ "dscanner.suspicious.static_if_else",
347
+ "dscanner.suspicious.unmodified",
348
+ "dscanner.suspicious.unused_label",
349
+ "dscanner.suspicious.unused_parameter",
350
+ "dscanner.suspicious.unused_variable",
351
+ "dscanner.suspicious.useless_assert",
352
+ "dscanner.unnecessary.duplicate_attribute",
353
+ "dscanner.useless.final",
354
+ "dscanner.useless-initializer",
355
+ "dscanner.vcall_ctor",
356
+ "dscanner.syntax"
357
+ ]
358
+ },
359
+ "markdownDescription": "DScanner warnings to ignore in this project.\n\nTo disable warnings also with standalone D-Scanner, inside CI or for other people, create a `dscanner.ini` file in the project root.\n\nYou can use the `Insert default dscanner.ini content` command from the VSCode command palette to fill it with defaults."
360
+ }
361
+ }
362
+ },
363
+ {
364
+ "title": "Formatting",
365
+ "type": "object",
366
+ "properties": {
367
+ "d.enableFormatting": {
312
368
  "type": "boolean",
313
369
  "scope": 4,
314
370
  "default": true,
315
- "description": "Automatically insert/replace the module name definition in the current file when creating or renaming a file."
371
+ "markdownDescription": "Apply standard VSCode Formatting behavior to D files. Formatting on save can be configured with `#editor.formatOnSave#`"
316
372
  },
317
- "d.showUpdateChangelogs": {
373
+ "d.overrideDfmtEditorconfig": {
318
374
  "type": "boolean",
319
- "scope": 1,
375
+ "scope": 4,
320
376
  "default": true,
321
- "description": "Open CHANGELOG.md on every code-d update (which also includes serve-d updates) to see new features."
322
- },
323
- "d.dependencyClickBehavior": {
324
- "type": "string",
325
- "scope": 3,
326
- "enum": [
327
- "listDocumentsPreview",
328
- "listDocumentsSource",
329
- "listDocumentsBoth",
330
- "openRecipe",
331
- "openDpldocs",
332
- "doNothing",
333
- "openFileDialog"
334
- ],
335
- "enumDescriptions": [
336
- "Preview a readable document text file of the package",
337
- "See source of a readable document text file of the package",
338
- "Preview or view source of a readable document text file of the package",
339
- "Open dub.json/dub.sdl file of the package",
340
- "Open package on dpldocs.info in a web browser",
341
- "Do nothing",
342
- "Open a file dialog in the dependency folder"
343
- ],
344
- "default": "listDocumentsPreview",
345
- "description": "Configures what happens when you click a dependency in the DUB Dependency view. For the listDocuments actions if only a single file matches, it is immediately opened. See 'd.dependencyTextDocumentFilter' setting to configure which files will be shown."
346
- },
347
- "d.dependencyTextDocumentFilter": {
348
- "type": "array",
349
- "scope": 3,
350
- "items": {
351
- "type": "string"
352
- },
353
- "default": [
354
- "^README",
355
- "^CHANGES",
356
- "^CHANGELOG",
357
- "^LICENSE"
358
- ],
359
- "description": "Filenames that are considered readable documents for when viewing documents of a DUB dependency. You can use regular expressions, but it only matches on the filename (including extension) not on the path, case-insensitive."
377
+ "markdownDescription": "Use the VSCode `dfmt.*` config options & editor settings instead of `.editorconfig` files. This avoids inconsistencies with the vscode editor settings, it's recommended to only turn this off when you have the EditorConfig extension for VSCode installed."
360
378
  },
361
379
  "dfmt.alignSwitchStatements": {
362
380
  "type": "boolean",
363
381
  "scope": 4,
364
382
  "default": true,
365
- "description": "Align labels, cases, and defaults with their enclosing switch."
383
+ "markdownDescription": "Align labels, cases, and defaults with their enclosing switch."
366
384
  },
367
385
  "dfmt.braceStyle": {
368
386
  "type": "string",
@@ -380,37 +398,37 @@ var d = [
380
398
  "Curly braces on the same line for everything except functions"
381
399
  ],
382
400
  "default": "allman",
383
- "description": "See Wikipedia https://en.wikipedia.org/wiki/Brace_style"
401
+ "markdownDescription": "See Wikipedia https://en.wikipedia.org/wiki/Brace_style"
384
402
  },
385
403
  "dfmt.outdentAttributes": {
386
404
  "type": "boolean",
387
405
  "scope": 4,
388
406
  "default": true,
389
- "description": "Not yet implemented (on dfmt side)"
407
+ "markdownDescription": "Not yet implemented (on dfmt side)"
390
408
  },
391
409
  "dfmt.spaceAfterCast": {
392
410
  "type": "boolean",
393
411
  "scope": 4,
394
412
  "default": true,
395
- "description": "Insert space after the closing paren of a cast expression."
413
+ "markdownDescription": "Insert space after the closing paren of a cast expression."
396
414
  },
397
415
  "dfmt.splitOperatorAtLineEnd": {
398
416
  "type": "boolean",
399
417
  "scope": 4,
400
418
  "default": false,
401
- "description": "Place operators on the end of the previous line when splitting lines."
419
+ "markdownDescription": "Place operators on the end of the previous line when splitting lines."
402
420
  },
403
421
  "dfmt.selectiveImportSpace": {
404
422
  "type": "boolean",
405
423
  "scope": 4,
406
424
  "default": true,
407
- "description": "Insert space after the module name and before the : for selective imports."
425
+ "markdownDescription": "Insert space after the module name and before the `:` for selective imports."
408
426
  },
409
427
  "dfmt.compactLabeledStatements": {
410
428
  "type": "boolean",
411
429
  "scope": 4,
412
430
  "default": true,
413
- "description": "Place labels on the same line as the labeled switch, for, foreach, or while statement."
431
+ "markdownDescription": "Place labels on the same line as the labeled `switch`, `for`, `foreach`, or `while` statement."
414
432
  },
415
433
  "dfmt.templateConstraintStyle": {
416
434
  "type": "string",
@@ -428,98 +446,161 @@ var d = [
428
446
  "always add newline and indent the constraint"
429
447
  ],
430
448
  "default": "conditional_newline_indent",
431
- "description": "Control the formatting of template constraints. See https://github.com/dlang-community/dfmt/issues/215"
449
+ "markdownDescription": "Control the formatting of template constraints. See https://github.com/dlang-community/dfmt/issues/215"
432
450
  },
433
451
  "dfmt.spaceBeforeFunctionParameters": {
434
452
  "type": "boolean",
435
453
  "scope": 4,
436
454
  "default": false,
437
- "description": "Insert space before the opening paren of a function parameter list."
455
+ "markdownDescription": "Insert space before the opening paren of a function parameter list."
438
456
  },
439
457
  "dfmt.singleTemplateConstraintIndent": {
440
458
  "type": "boolean",
441
459
  "scope": 4,
442
460
  "default": false,
443
- "description": "Set if the constraints are indented by a single tab instead of two. Has only an effect if the style set to `always_newline_indent` or `conditional_newline_indent`."
461
+ "markdownDescription": "Set if the constraints are indented by a single tab instead of two. Has only an effect if `#dfmt.templateConstraintStyle#` is set to `always_newline_indent` or `conditional_newline_indent`."
444
462
  },
445
463
  "dfmt.spaceBeforeAAColon": {
446
464
  "type": "boolean",
447
465
  "scope": 4,
448
466
  "default": false,
449
- "description": "Adds a space after an associative array key before the `:` like in older dfmt versions."
467
+ "markdownDescription": "Adds a space after an associative array key before the `:` like in older dfmt versions."
450
468
  },
451
469
  "dfmt.keepLineBreaks": {
452
470
  "type": "boolean",
453
471
  "scope": 4,
454
472
  "default": true,
455
- "description": "Keep existing line breaks if these don't violate other formatting rules."
473
+ "markdownDescription": "Keep existing line breaks if these don't violate other formatting rules."
456
474
  },
457
475
  "dfmt.singleIndent": {
458
476
  "type": "boolean",
459
477
  "scope": 4,
460
478
  "default": true,
461
- "description": "Set if the code in parens is indented by a single tab instead of two."
479
+ "markdownDescription": "Set if the code in parens is indented by a single tab instead of two."
480
+ }
481
+ }
482
+ },
483
+ {
484
+ "title": "Editing Features",
485
+ "type": "object",
486
+ "properties": {
487
+ "d.enableIndex": {
488
+ "order": 0,
489
+ "type": "boolean",
490
+ "scope": 4,
491
+ "default": true,
492
+ "markdownDescription": "Enable cached background indexing that is used for find references and auto-import suggestions in completion and code actions."
462
493
  },
463
- "dscanner.ignoredKeys": {
494
+ "d.enableDMDImportTiming": {
495
+ "type": "boolean",
496
+ "scope": 4,
497
+ "default": false,
498
+ "markdownDescription": "Add code lenses (gray text above source code) on import statements to show how long each import takes to compile on its own. Executes DMD, as set by `#d.dmdPath#`, to get the impact on compilation time by this import."
499
+ },
500
+ "d.enableCoverageDecoration": {
501
+ "type": "boolean",
502
+ "scope": 4,
503
+ "default": true,
504
+ "markdownDescription": "Automatically highlight tested/untested coverage inside source code with light red/green backgrounds from `*.lst` files. You can for example run `dub test --config=unittest-cov` to run unittests and collect coverage information."
505
+ },
506
+ "d.enableGCProfilerDecorations": {
507
+ "type": "boolean",
508
+ "scope": 4,
509
+ "default": true,
510
+ "markdownDescription": "Automatically embed code lenses (gray text above source code) for GC allocations based on `profilegc.log`. You can for example run `dub run --config=profile-gc` to run the project and see where the GC is actually used."
511
+ },
512
+ "d.alwaysShowCoverageStatus": {
513
+ "type": "boolean",
514
+ "scope": 4,
515
+ "default": false,
516
+ "markdownDescription": "Always show D code coverage status in status bar when available through `.lst` files, and not just when a D file is open."
517
+ },
518
+ "d.generateModuleNames": {
519
+ "type": "boolean",
520
+ "scope": 4,
521
+ "default": true,
522
+ "markdownDescription": "Automatically insert or replace the `module name;` when creating or renaming a file."
523
+ }
524
+ }
525
+ },
526
+ {
527
+ "title": "Advanced",
528
+ "type": "object",
529
+ "properties": {
530
+ "d.disabledRootGlobs": {
464
531
  "type": "array",
465
532
  "scope": 4,
466
533
  "items": {
467
- "type": "string",
468
- "enum": [
469
- "dscanner.bugs.backwards_slices",
470
- "dscanner.bugs.if_else_same",
471
- "dscanner.bugs.logic_operator_operands",
472
- "dscanner.bugs.self_assignment",
473
- "dscanner.confusing.argument_parameter_mismatch",
474
- "dscanner.confusing.brexp",
475
- "dscanner.confusing.builtin_property_names",
476
- "dscanner.confusing.constructor_args",
477
- "dscanner.confusing.function_attributes",
478
- "dscanner.confusing.lambda_returns_lambda",
479
- "dscanner.confusing.logical_precedence",
480
- "dscanner.confusing.struct_constructor_default_args",
481
- "dscanner.deprecated.delete_keyword",
482
- "dscanner.deprecated.floating_point_operators",
483
- "dscanner.if_statement",
484
- "dscanner.performance.enum_array_literal",
485
- "dscanner.style.allman",
486
- "dscanner.style.alias_syntax",
487
- "dscanner.style.doc_missing_params",
488
- "dscanner.style.doc_missing_returns",
489
- "dscanner.style.doc_non_existing_params",
490
- "dscanner.style.explicitly_annotated_unittest",
491
- "dscanner.style.has_public_example",
492
- "dscanner.style.imports_sortedness",
493
- "dscanner.style.long_line",
494
- "dscanner.style.number_literals",
495
- "dscanner.style.phobos_naming_convention",
496
- "dscanner.style.undocumented_declaration",
497
- "dscanner.suspicious.auto_ref_assignment",
498
- "dscanner.suspicious.catch_em_all",
499
- "dscanner.suspicious.comma_expression",
500
- "dscanner.suspicious.incomplete_operator_overloading",
501
- "dscanner.suspicious.incorrect_infinite_range",
502
- "dscanner.suspicious.label_var_same_name",
503
- "dscanner.suspicious.length_subtraction",
504
- "dscanner.suspicious.local_imports",
505
- "dscanner.suspicious.missing_return",
506
- "dscanner.suspicious.object_const",
507
- "dscanner.suspicious.redundant_attributes",
508
- "dscanner.suspicious.redundant_parens",
509
- "dscanner.suspicious.static_if_else",
510
- "dscanner.suspicious.unmodified",
511
- "dscanner.suspicious.unused_label",
512
- "dscanner.suspicious.unused_parameter",
513
- "dscanner.suspicious.unused_variable",
514
- "dscanner.suspicious.useless_assert",
515
- "dscanner.unnecessary.duplicate_attribute",
516
- "dscanner.useless.final",
517
- "dscanner.useless-initializer",
518
- "dscanner.vcall_ctor",
519
- "dscanner.syntax"
520
- ]
534
+ "type": "string"
535
+ },
536
+ "default": [],
537
+ "order": 0,
538
+ "markdownDescription": "Array of [globs](https://dlang.org/phobos/std_path.html#.globMatch) for preventing project instances in certain folders by the `#d.scanAllFolders#` setting. The globs should match the DUB project folders, e.g. the ones that contain a `dub.json` or `dub.sdl` file."
539
+ },
540
+ "d.extraRoots": {
541
+ "type": "array",
542
+ "scope": 4,
543
+ "items": {
544
+ "type": "string"
521
545
  },
522
- "description": "DScanner warnings to ignore in this project."
546
+ "default": [],
547
+ "order": 1,
548
+ "markdownDescription": "Array of workspace-relative (or absolute) folders to force start a project instance in."
549
+ },
550
+ "d.ccdbPath": {
551
+ "type": "string",
552
+ "scope": 4,
553
+ "default": null,
554
+ "description": "Path to a Clang compilation database (aka. CCDB, aka. `compile_commands.json`) to use to lint this project"
555
+ },
556
+ "d.dmdPath": {
557
+ "type": "string",
558
+ "scope": 6,
559
+ "default": "dmd",
560
+ "markdownDescription": "Path of the dmd executable. Path can be omitted if in `$PATH`. Used with the `#d.enableDMDImportTiming#` setting and to compile serve-d if there is no pre-compiled binary for the running platform."
561
+ },
562
+ "d.betaStream": {
563
+ "type": "boolean",
564
+ "scope": 1,
565
+ "markdownDeprecationMessage": "This option has been replaced by setting `#d.servedReleaseChannel#` to `\"nightly\"`.",
566
+ "default": false,
567
+ "description": "Always get latest serve-d commit when starting vscode and an update is available."
568
+ },
569
+ "d.smartServedUpdates": {
570
+ "title": "Smart Serve-D updates",
571
+ "type": "boolean",
572
+ "scope": 1,
573
+ "default": true,
574
+ "markdownDescription": "Randomly omit serve-d update checks to save bandwidth. Lowers startup delay and minimizes breakage on new releases with quick fixes. Also avoids to update when working on fridays."
575
+ },
576
+ "d.manyProjectsAction": {
577
+ "type": "string",
578
+ "scope": 4,
579
+ "default": "ask",
580
+ "enum": [
581
+ "ask",
582
+ "skip",
583
+ "load"
584
+ ],
585
+ "markdownEnumDescriptions": [
586
+ "Open a dialog box each time there are too many projects. (recommended inside the user settings)",
587
+ "Never load any more projects than the `#d.manyProjectsThreshold#` setting specified. (this or `\"load\"` recommended only per-project)",
588
+ "Load all projects even if there are more than the `#d.manyProjectsThreshold#` setting specified. (this or `\"skip\"` recommended only per-project; not recommended for user settings or large projects with many DUB test projects)"
589
+ ],
590
+ "markdownDescription": "What to do when there are too many project roots to load from. The deepest folder paths are skipped for skip."
591
+ },
592
+ "d.manyProjectsThreshold": {
593
+ "type": "number",
594
+ "scope": 4,
595
+ "default": 4,
596
+ "minimum": 0,
597
+ "markdownDescription": "After how many projects to start checking the `#d.manyProjectsAction#` to load or not load further projects."
598
+ },
599
+ "d.ignoreDebugHints": {
600
+ "type": "boolean",
601
+ "scope": 3,
602
+ "default": false,
603
+ "markdownDescription": "Don't show alerts when a project may be wrongly configured when trying to start debugging."
523
604
  }
524
605
  }
525
606
  }