1{
2 "allOf": [
3 {
4 "if": {
5 "properties": {
6 "type": {
7 "enum": [
8 "pwa-node"
9 ]
10 },
11 "request": {
12 "enum": [
13 "launch"
14 ]
15 }
16 },
17 "required": [
18 "type",
19 "request"
20 ]
21 },
22 "then": {
23 "properties": {
24 "args": {
25 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
26 "type": [
27 "array",
28 "string"
29 ],
30 "default": [],
31 "items": {
32 "type": "string"
33 },
34 "tags": [
35 "setup"
36 ]
37 },
38 "attachSimplePort": {
39 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
40 "default": 9229,
41 "oneOf": [
42 {
43 "type": "integer"
44 },
45 {
46 "type": "string",
47 "pattern": "^\\${.*}$"
48 }
49 ]
50 },
51 "autoAttachChildProcesses": {
52 "description": "Attach debugger to new child processes automatically.",
53 "type": "boolean",
54 "default": true
55 },
56 "cascadeTerminateToConfigurations": {
57 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
58 "type": "array",
59 "default": [],
60 "items": {
61 "type": "string",
62 "uniqueItems": true
63 }
64 },
65 "console": {
66 "description": "Where to launch the debug target.",
67 "type": "string",
68 "default": "internalConsole",
69 "enum": [
70 "internalConsole",
71 "integratedTerminal",
72 "externalTerminal"
73 ],
74 "enumDescriptions": [
75 "VS Code Debug Console (which doesn't support to read input from a program)",
76 "VS Code's integrated terminal",
77 "External terminal that can be configured via user settings"
78 ]
79 },
80 "customDescriptionGenerator": {
81 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
82 "type": "string"
83 },
84 "customPropertiesGenerator": {
85 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
86 "type": "string",
87 "deprecated": true
88 },
89 "cwd": {
90 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
91 "type": "string",
92 "default": "${ZED_WORKTREE_ROOT}",
93 "tags": [
94 "setup"
95 ]
96 },
97 "enableContentValidation": {
98 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
99 "type": "boolean",
100 "default": true
101 },
102 "enableDWARF": {
103 "type": "boolean",
104 "default": true,
105 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
106 },
107 "env": {
108 "type": "object",
109 "additionalProperties": {
110 "type": [
111 "string",
112 "null"
113 ]
114 },
115 "default": {},
116 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
117 "tags": [
118 "setup"
119 ]
120 },
121 "envFile": {
122 "description": "Absolute path to a file containing environment variable definitions.",
123 "type": "string",
124 "default": "${ZED_WORKTREE_ROOT}/.env"
125 },
126 "experimentalNetworking": {
127 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
128 "type": "string",
129 "default": "auto",
130 "enum": [
131 "auto",
132 "on",
133 "off"
134 ]
135 },
136 "killBehavior": {
137 "type": "string",
138 "default": "forceful",
139 "enum": [
140 "forceful",
141 "polite",
142 "none"
143 ],
144 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
145 },
146 "localRoot": {
147 "description": "Path to the local directory containing the program.",
148 "type": [
149 "string",
150 "null"
151 ],
152 "default": null
153 },
154 "nodeVersionHint": {
155 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
156 "type": "number",
157 "default": 12,
158 "minimum": 8
159 },
160 "outFiles": {
161 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
162 "type": [
163 "array"
164 ],
165 "default": [
166 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
167 "!**/node_modules/**"
168 ],
169 "items": {
170 "type": "string"
171 },
172 "tags": [
173 "setup"
174 ]
175 },
176 "outputCapture": {
177 "default": "console",
178 "enum": [
179 "console",
180 "std"
181 ],
182 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
183 },
184 "pauseForSourceMap": {
185 "type": "boolean",
186 "default": false,
187 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
188 },
189 "profileStartup": {
190 "description": "If true, will start profiling as soon as the process launches",
191 "type": "boolean",
192 "default": true
193 },
194 "program": {
195 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
196 "type": "string",
197 "default": "",
198 "tags": [
199 "setup"
200 ]
201 },
202 "remoteRoot": {
203 "description": "Absolute path to the remote directory containing the program.",
204 "type": [
205 "string",
206 "null"
207 ],
208 "default": null
209 },
210 "resolveSourceMapLocations": {
211 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
212 "type": [
213 "array",
214 "null"
215 ],
216 "default": [
217 "${ZED_WORKTREE_ROOT}/**",
218 "!**/node_modules/**"
219 ],
220 "items": {
221 "type": "string"
222 }
223 },
224 "restart": {
225 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
226 "default": true,
227 "oneOf": [
228 {
229 "type": "boolean"
230 },
231 {
232 "type": "object",
233 "properties": {
234 "delay": {
235 "type": "number",
236 "default": 1000,
237 "minimum": 0
238 },
239 "maxAttempts": {
240 "type": "number",
241 "default": 10,
242 "minimum": 0
243 }
244 }
245 }
246 ]
247 },
248 "runtimeArgs": {
249 "description": "Optional arguments passed to the runtime executable.",
250 "type": "array",
251 "default": [],
252 "items": {
253 "type": "string"
254 },
255 "tags": [
256 "setup"
257 ]
258 },
259 "runtimeExecutable": {
260 "type": [
261 "string",
262 "null"
263 ],
264 "default": "node",
265 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
266 },
267 "runtimeSourcemapPausePatterns": {
268 "type": "array",
269 "default": [],
270 "items": {
271 "type": "string"
272 },
273 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
274 },
275 "runtimeVersion": {
276 "type": "string",
277 "default": "default",
278 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
279 },
280 "showAsyncStacks": {
281 "description": "Show the async calls that led to the current call stack.",
282 "default": true,
283 "oneOf": [
284 {
285 "type": "boolean"
286 },
287 {
288 "type": "object",
289 "properties": {
290 "onAttach": {
291 "type": "number",
292 "default": 32
293 }
294 },
295 "required": [
296 "onAttach"
297 ]
298 },
299 {
300 "type": "object",
301 "properties": {
302 "onceBreakpointResolved": {
303 "type": "number",
304 "default": 32
305 }
306 },
307 "required": [
308 "onceBreakpointResolved"
309 ]
310 }
311 ]
312 },
313 "skipFiles": {
314 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
315 "type": "array",
316 "default": [
317 "${/**"
318 ]
319 },
320 "smartStep": {
321 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
322 "type": "boolean",
323 "default": true
324 },
325 "sourceMapPathOverrides": {
326 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
327 "type": "object",
328 "default": {
329 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
330 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
331 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
332 }
333 },
334 "sourceMapRenames": {
335 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
336 "type": "boolean",
337 "default": true
338 },
339 "sourceMaps": {
340 "description": "Use JavaScript source maps (if they exist).",
341 "type": "boolean",
342 "default": true
343 },
344 "stopOnEntry": {
345 "description": "Automatically stop program after launch.",
346 "type": [
347 "boolean",
348 "string"
349 ],
350 "default": true
351 },
352 "timeout": {
353 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
354 "type": "number",
355 "default": 10000
356 },
357 "timeouts": {
358 "description": "Timeouts for several debugger operations.",
359 "type": "object",
360 "properties": {
361 "hoverEvaluation": {
362 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
363 "type": "number",
364 "default": 500
365 },
366 "sourceMapCumulativePause": {
367 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
368 "type": "number",
369 "default": 1000
370 },
371 "sourceMapMinPause": {
372 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
373 "type": "number",
374 "default": 1000
375 }
376 },
377 "additionalProperties": false,
378 "default": {},
379 "markdownDescription": "Timeouts for several debugger operations."
380 },
381 "trace": {
382 "description": "Configures what diagnostic output is produced.",
383 "default": true,
384 "oneOf": [
385 {
386 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
387 "type": "boolean"
388 },
389 {
390 "type": "object",
391 "properties": {
392 "logFile": {
393 "description": "Configures where on disk logs are written.",
394 "type": [
395 "string",
396 "null"
397 ]
398 },
399 "stdio": {
400 "description": "Whether to return trace data from the launched application or browser.",
401 "type": "boolean"
402 }
403 },
404 "additionalProperties": false
405 }
406 ]
407 }
408 }
409 }
410 },
411 {
412 "if": {
413 "properties": {
414 "type": {
415 "enum": [
416 "pwa-node"
417 ]
418 },
419 "request": {
420 "enum": [
421 "attach"
422 ]
423 }
424 },
425 "required": [
426 "type",
427 "request"
428 ]
429 },
430 "then": {
431 "properties": {
432 "address": {
433 "description": "TCP/IP address of process to be debugged. Default is 'localhost'.",
434 "type": "string",
435 "default": "localhost"
436 },
437 "attachExistingChildren": {
438 "description": "Whether to attempt to attach to already-spawned child processes.",
439 "type": "boolean",
440 "default": false
441 },
442 "autoAttachChildProcesses": {
443 "description": "Attach debugger to new child processes automatically.",
444 "type": "boolean",
445 "default": true
446 },
447 "cascadeTerminateToConfigurations": {
448 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
449 "type": "array",
450 "default": [],
451 "items": {
452 "type": "string",
453 "uniqueItems": true
454 }
455 },
456 "continueOnAttach": {
457 "type": "boolean",
458 "default": true,
459 "markdownDescription": "If true, we'll automatically resume programs launched and waiting on `--inspect-brk`"
460 },
461 "customDescriptionGenerator": {
462 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
463 "type": "string"
464 },
465 "customPropertiesGenerator": {
466 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
467 "type": "string",
468 "deprecated": true
469 },
470 "cwd": {
471 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
472 "type": "string",
473 "default": "${ZED_WORKTREE_ROOT}",
474 "tags": [
475 "setup"
476 ]
477 },
478 "enableContentValidation": {
479 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
480 "type": "boolean",
481 "default": true
482 },
483 "enableDWARF": {
484 "type": "boolean",
485 "default": true,
486 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
487 },
488 "env": {
489 "type": "object",
490 "additionalProperties": {
491 "type": [
492 "string",
493 "null"
494 ]
495 },
496 "default": {},
497 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
498 "tags": [
499 "setup"
500 ]
501 },
502 "envFile": {
503 "description": "Absolute path to a file containing environment variable definitions.",
504 "type": "string",
505 "default": "${ZED_WORKTREE_ROOT}/.env"
506 },
507 "localRoot": {
508 "description": "Path to the local directory containing the program.",
509 "type": [
510 "string",
511 "null"
512 ],
513 "default": null
514 },
515 "nodeVersionHint": {
516 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
517 "type": "number",
518 "default": 12,
519 "minimum": 8
520 },
521 "outFiles": {
522 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
523 "type": [
524 "array"
525 ],
526 "default": [
527 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
528 "!**/node_modules/**"
529 ],
530 "items": {
531 "type": "string"
532 },
533 "tags": [
534 "setup"
535 ]
536 },
537 "outputCapture": {
538 "default": "console",
539 "enum": [
540 "console",
541 "std"
542 ],
543 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
544 },
545 "pauseForSourceMap": {
546 "type": "boolean",
547 "default": false,
548 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
549 },
550 "port": {
551 "description": "Debug port to attach to. Default is 9229.",
552 "default": 9229,
553 "oneOf": [
554 {
555 "type": "integer"
556 },
557 {
558 "type": "string",
559 "pattern": "^\\${.*}$"
560 }
561 ],
562 "tags": [
563 "setup"
564 ]
565 },
566 "processId": {
567 "description": "ID of process to attach to.",
568 "type": "string",
569 "default": "${command:PickProcess}"
570 },
571 "remoteHostHeader": {
572 "description": "Explicit Host header to use when connecting to the websocket of inspector. If unspecified, the host header will be set to 'localhost'. This is useful when the inspector is running behind a proxy that only accept particular Host header.",
573 "type": "string"
574 },
575 "remoteRoot": {
576 "description": "Absolute path to the remote directory containing the program.",
577 "type": [
578 "string",
579 "null"
580 ],
581 "default": null
582 },
583 "resolveSourceMapLocations": {
584 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
585 "type": [
586 "array",
587 "null"
588 ],
589 "default": [
590 "${ZED_WORKTREE_ROOT}/**",
591 "!**/node_modules/**"
592 ],
593 "items": {
594 "type": "string"
595 }
596 },
597 "restart": {
598 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
599 "default": true,
600 "oneOf": [
601 {
602 "type": "boolean"
603 },
604 {
605 "type": "object",
606 "properties": {
607 "delay": {
608 "type": "number",
609 "default": 1000,
610 "minimum": 0
611 },
612 "maxAttempts": {
613 "type": "number",
614 "default": 10,
615 "minimum": 0
616 }
617 }
618 }
619 ]
620 },
621 "runtimeSourcemapPausePatterns": {
622 "type": "array",
623 "default": [],
624 "items": {
625 "type": "string"
626 },
627 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
628 },
629 "showAsyncStacks": {
630 "description": "Show the async calls that led to the current call stack.",
631 "default": true,
632 "oneOf": [
633 {
634 "type": "boolean"
635 },
636 {
637 "type": "object",
638 "properties": {
639 "onAttach": {
640 "type": "number",
641 "default": 32
642 }
643 },
644 "required": [
645 "onAttach"
646 ]
647 },
648 {
649 "type": "object",
650 "properties": {
651 "onceBreakpointResolved": {
652 "type": "number",
653 "default": 32
654 }
655 },
656 "required": [
657 "onceBreakpointResolved"
658 ]
659 }
660 ]
661 },
662 "skipFiles": {
663 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
664 "type": "array",
665 "default": [
666 "${/**"
667 ]
668 },
669 "smartStep": {
670 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
671 "type": "boolean",
672 "default": true
673 },
674 "sourceMapPathOverrides": {
675 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
676 "type": "object",
677 "default": {
678 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
679 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
680 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
681 }
682 },
683 "sourceMapRenames": {
684 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
685 "type": "boolean",
686 "default": true
687 },
688 "sourceMaps": {
689 "description": "Use JavaScript source maps (if they exist).",
690 "type": "boolean",
691 "default": true
692 },
693 "timeout": {
694 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
695 "type": "number",
696 "default": 10000
697 },
698 "timeouts": {
699 "description": "Timeouts for several debugger operations.",
700 "type": "object",
701 "properties": {
702 "hoverEvaluation": {
703 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
704 "type": "number",
705 "default": 500
706 },
707 "sourceMapCumulativePause": {
708 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
709 "type": "number",
710 "default": 1000
711 },
712 "sourceMapMinPause": {
713 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
714 "type": "number",
715 "default": 1000
716 }
717 },
718 "additionalProperties": false,
719 "default": {},
720 "markdownDescription": "Timeouts for several debugger operations."
721 },
722 "trace": {
723 "description": "Configures what diagnostic output is produced.",
724 "default": true,
725 "oneOf": [
726 {
727 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
728 "type": "boolean"
729 },
730 {
731 "type": "object",
732 "properties": {
733 "logFile": {
734 "description": "Configures where on disk logs are written.",
735 "type": [
736 "string",
737 "null"
738 ]
739 },
740 "stdio": {
741 "description": "Whether to return trace data from the launched application or browser.",
742 "type": "boolean"
743 }
744 },
745 "additionalProperties": false
746 }
747 ]
748 },
749 "websocketAddress": {
750 "description": "Exact websocket address to attach to. If unspecified, it will be discovered from the address and port.",
751 "type": "string"
752 }
753 }
754 }
755 },
756 {
757 "if": {
758 "properties": {
759 "type": {
760 "enum": [
761 "node"
762 ]
763 },
764 "request": {
765 "enum": [
766 "launch"
767 ]
768 }
769 },
770 "required": [
771 "type",
772 "request"
773 ]
774 },
775 "then": {
776 "properties": {
777 "args": {
778 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
779 "type": [
780 "array",
781 "string"
782 ],
783 "default": [],
784 "items": {
785 "type": "string"
786 },
787 "tags": [
788 "setup"
789 ]
790 },
791 "attachSimplePort": {
792 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
793 "default": 9229,
794 "oneOf": [
795 {
796 "type": "integer"
797 },
798 {
799 "type": "string",
800 "pattern": "^\\${.*}$"
801 }
802 ]
803 },
804 "autoAttachChildProcesses": {
805 "description": "Attach debugger to new child processes automatically.",
806 "type": "boolean",
807 "default": true
808 },
809 "cascadeTerminateToConfigurations": {
810 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
811 "type": "array",
812 "default": [],
813 "items": {
814 "type": "string",
815 "uniqueItems": true
816 }
817 },
818 "console": {
819 "description": "Where to launch the debug target.",
820 "type": "string",
821 "default": "internalConsole",
822 "enum": [
823 "internalConsole",
824 "integratedTerminal",
825 "externalTerminal"
826 ],
827 "enumDescriptions": [
828 "VS Code Debug Console (which doesn't support to read input from a program)",
829 "VS Code's integrated terminal",
830 "External terminal that can be configured via user settings"
831 ]
832 },
833 "customDescriptionGenerator": {
834 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
835 "type": "string"
836 },
837 "customPropertiesGenerator": {
838 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
839 "type": "string",
840 "deprecated": true
841 },
842 "cwd": {
843 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
844 "type": "string",
845 "default": "${ZED_WORKTREE_ROOT}",
846 "tags": [
847 "setup"
848 ]
849 },
850 "enableContentValidation": {
851 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
852 "type": "boolean",
853 "default": true
854 },
855 "enableDWARF": {
856 "type": "boolean",
857 "default": true,
858 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
859 },
860 "env": {
861 "type": "object",
862 "additionalProperties": {
863 "type": [
864 "string",
865 "null"
866 ]
867 },
868 "default": {},
869 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
870 "tags": [
871 "setup"
872 ]
873 },
874 "envFile": {
875 "description": "Absolute path to a file containing environment variable definitions.",
876 "type": "string",
877 "default": "${ZED_WORKTREE_ROOT}/.env"
878 },
879 "experimentalNetworking": {
880 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
881 "type": "string",
882 "default": "auto",
883 "enum": [
884 "auto",
885 "on",
886 "off"
887 ]
888 },
889 "killBehavior": {
890 "type": "string",
891 "default": "forceful",
892 "enum": [
893 "forceful",
894 "polite",
895 "none"
896 ],
897 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
898 },
899 "localRoot": {
900 "description": "Path to the local directory containing the program.",
901 "type": [
902 "string",
903 "null"
904 ],
905 "default": null
906 },
907 "nodeVersionHint": {
908 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
909 "type": "number",
910 "default": 12,
911 "minimum": 8
912 },
913 "outFiles": {
914 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
915 "type": [
916 "array"
917 ],
918 "default": [
919 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
920 "!**/node_modules/**"
921 ],
922 "items": {
923 "type": "string"
924 },
925 "tags": [
926 "setup"
927 ]
928 },
929 "outputCapture": {
930 "default": "console",
931 "enum": [
932 "console",
933 "std"
934 ],
935 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
936 },
937 "pauseForSourceMap": {
938 "type": "boolean",
939 "default": false,
940 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
941 },
942 "profileStartup": {
943 "description": "If true, will start profiling as soon as the process launches",
944 "type": "boolean",
945 "default": true
946 },
947 "program": {
948 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
949 "type": "string",
950 "default": "",
951 "tags": [
952 "setup"
953 ]
954 },
955 "remoteRoot": {
956 "description": "Absolute path to the remote directory containing the program.",
957 "type": [
958 "string",
959 "null"
960 ],
961 "default": null
962 },
963 "resolveSourceMapLocations": {
964 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
965 "type": [
966 "array",
967 "null"
968 ],
969 "default": [
970 "${ZED_WORKTREE_ROOT}/**",
971 "!**/node_modules/**"
972 ],
973 "items": {
974 "type": "string"
975 }
976 },
977 "restart": {
978 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
979 "default": true,
980 "oneOf": [
981 {
982 "type": "boolean"
983 },
984 {
985 "type": "object",
986 "properties": {
987 "delay": {
988 "type": "number",
989 "default": 1000,
990 "minimum": 0
991 },
992 "maxAttempts": {
993 "type": "number",
994 "default": 10,
995 "minimum": 0
996 }
997 }
998 }
999 ]
1000 },
1001 "runtimeArgs": {
1002 "description": "Optional arguments passed to the runtime executable.",
1003 "type": "array",
1004 "default": [],
1005 "items": {
1006 "type": "string"
1007 },
1008 "tags": [
1009 "setup"
1010 ]
1011 },
1012 "runtimeExecutable": {
1013 "type": [
1014 "string",
1015 "null"
1016 ],
1017 "default": "node",
1018 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
1019 },
1020 "runtimeSourcemapPausePatterns": {
1021 "type": "array",
1022 "default": [],
1023 "items": {
1024 "type": "string"
1025 },
1026 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
1027 },
1028 "runtimeVersion": {
1029 "type": "string",
1030 "default": "default",
1031 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
1032 },
1033 "showAsyncStacks": {
1034 "description": "Show the async calls that led to the current call stack.",
1035 "default": true,
1036 "oneOf": [
1037 {
1038 "type": "boolean"
1039 },
1040 {
1041 "type": "object",
1042 "properties": {
1043 "onAttach": {
1044 "type": "number",
1045 "default": 32
1046 }
1047 },
1048 "required": [
1049 "onAttach"
1050 ]
1051 },
1052 {
1053 "type": "object",
1054 "properties": {
1055 "onceBreakpointResolved": {
1056 "type": "number",
1057 "default": 32
1058 }
1059 },
1060 "required": [
1061 "onceBreakpointResolved"
1062 ]
1063 }
1064 ]
1065 },
1066 "skipFiles": {
1067 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
1068 "type": "array",
1069 "default": [
1070 "${/**"
1071 ]
1072 },
1073 "smartStep": {
1074 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
1075 "type": "boolean",
1076 "default": true
1077 },
1078 "sourceMapPathOverrides": {
1079 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
1080 "type": "object",
1081 "default": {
1082 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
1083 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
1084 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
1085 }
1086 },
1087 "sourceMapRenames": {
1088 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
1089 "type": "boolean",
1090 "default": true
1091 },
1092 "sourceMaps": {
1093 "description": "Use JavaScript source maps (if they exist).",
1094 "type": "boolean",
1095 "default": true
1096 },
1097 "stopOnEntry": {
1098 "description": "Automatically stop program after launch.",
1099 "type": [
1100 "boolean",
1101 "string"
1102 ],
1103 "default": true
1104 },
1105 "timeout": {
1106 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
1107 "type": "number",
1108 "default": 10000
1109 },
1110 "timeouts": {
1111 "description": "Timeouts for several debugger operations.",
1112 "type": "object",
1113 "properties": {
1114 "hoverEvaluation": {
1115 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
1116 "type": "number",
1117 "default": 500
1118 },
1119 "sourceMapCumulativePause": {
1120 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
1121 "type": "number",
1122 "default": 1000
1123 },
1124 "sourceMapMinPause": {
1125 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
1126 "type": "number",
1127 "default": 1000
1128 }
1129 },
1130 "additionalProperties": false,
1131 "default": {},
1132 "markdownDescription": "Timeouts for several debugger operations."
1133 },
1134 "trace": {
1135 "description": "Configures what diagnostic output is produced.",
1136 "default": true,
1137 "oneOf": [
1138 {
1139 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
1140 "type": "boolean"
1141 },
1142 {
1143 "type": "object",
1144 "properties": {
1145 "logFile": {
1146 "description": "Configures where on disk logs are written.",
1147 "type": [
1148 "string",
1149 "null"
1150 ]
1151 },
1152 "stdio": {
1153 "description": "Whether to return trace data from the launched application or browser.",
1154 "type": "boolean"
1155 }
1156 },
1157 "additionalProperties": false
1158 }
1159 ]
1160 }
1161 }
1162 }
1163 },
1164 {
1165 "if": {
1166 "properties": {
1167 "type": {
1168 "enum": [
1169 "node"
1170 ]
1171 },
1172 "request": {
1173 "enum": [
1174 "attach"
1175 ]
1176 }
1177 },
1178 "required": [
1179 "type",
1180 "request"
1181 ]
1182 },
1183 "then": {
1184 "properties": {
1185 "address": {
1186 "description": "TCP/IP address of process to be debugged. Default is 'localhost'.",
1187 "type": "string",
1188 "default": "localhost"
1189 },
1190 "attachExistingChildren": {
1191 "description": "Whether to attempt to attach to already-spawned child processes.",
1192 "type": "boolean",
1193 "default": false
1194 },
1195 "autoAttachChildProcesses": {
1196 "description": "Attach debugger to new child processes automatically.",
1197 "type": "boolean",
1198 "default": true
1199 },
1200 "cascadeTerminateToConfigurations": {
1201 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
1202 "type": "array",
1203 "default": [],
1204 "items": {
1205 "type": "string",
1206 "uniqueItems": true
1207 }
1208 },
1209 "continueOnAttach": {
1210 "type": "boolean",
1211 "default": true,
1212 "markdownDescription": "If true, we'll automatically resume programs launched and waiting on `--inspect-brk`"
1213 },
1214 "customDescriptionGenerator": {
1215 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
1216 "type": "string"
1217 },
1218 "customPropertiesGenerator": {
1219 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
1220 "type": "string",
1221 "deprecated": true
1222 },
1223 "cwd": {
1224 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
1225 "type": "string",
1226 "default": "${ZED_WORKTREE_ROOT}",
1227 "tags": [
1228 "setup"
1229 ]
1230 },
1231 "enableContentValidation": {
1232 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
1233 "type": "boolean",
1234 "default": true
1235 },
1236 "enableDWARF": {
1237 "type": "boolean",
1238 "default": true,
1239 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
1240 },
1241 "env": {
1242 "type": "object",
1243 "additionalProperties": {
1244 "type": [
1245 "string",
1246 "null"
1247 ]
1248 },
1249 "default": {},
1250 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
1251 "tags": [
1252 "setup"
1253 ]
1254 },
1255 "envFile": {
1256 "description": "Absolute path to a file containing environment variable definitions.",
1257 "type": "string",
1258 "default": "${ZED_WORKTREE_ROOT}/.env"
1259 },
1260 "localRoot": {
1261 "description": "Path to the local directory containing the program.",
1262 "type": [
1263 "string",
1264 "null"
1265 ],
1266 "default": null
1267 },
1268 "nodeVersionHint": {
1269 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
1270 "type": "number",
1271 "default": 12,
1272 "minimum": 8
1273 },
1274 "outFiles": {
1275 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
1276 "type": [
1277 "array"
1278 ],
1279 "default": [
1280 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
1281 "!**/node_modules/**"
1282 ],
1283 "items": {
1284 "type": "string"
1285 },
1286 "tags": [
1287 "setup"
1288 ]
1289 },
1290 "outputCapture": {
1291 "default": "console",
1292 "enum": [
1293 "console",
1294 "std"
1295 ],
1296 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
1297 },
1298 "pauseForSourceMap": {
1299 "type": "boolean",
1300 "default": false,
1301 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
1302 },
1303 "port": {
1304 "description": "Debug port to attach to. Default is 9229.",
1305 "default": 9229,
1306 "oneOf": [
1307 {
1308 "type": "integer"
1309 },
1310 {
1311 "type": "string",
1312 "pattern": "^\\${.*}$"
1313 }
1314 ],
1315 "tags": [
1316 "setup"
1317 ]
1318 },
1319 "processId": {
1320 "description": "ID of process to attach to.",
1321 "type": "string",
1322 "default": "${command:PickProcess}"
1323 },
1324 "remoteHostHeader": {
1325 "description": "Explicit Host header to use when connecting to the websocket of inspector. If unspecified, the host header will be set to 'localhost'. This is useful when the inspector is running behind a proxy that only accept particular Host header.",
1326 "type": "string"
1327 },
1328 "remoteRoot": {
1329 "description": "Absolute path to the remote directory containing the program.",
1330 "type": [
1331 "string",
1332 "null"
1333 ],
1334 "default": null
1335 },
1336 "resolveSourceMapLocations": {
1337 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
1338 "type": [
1339 "array",
1340 "null"
1341 ],
1342 "default": [
1343 "${ZED_WORKTREE_ROOT}/**",
1344 "!**/node_modules/**"
1345 ],
1346 "items": {
1347 "type": "string"
1348 }
1349 },
1350 "restart": {
1351 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
1352 "default": true,
1353 "oneOf": [
1354 {
1355 "type": "boolean"
1356 },
1357 {
1358 "type": "object",
1359 "properties": {
1360 "delay": {
1361 "type": "number",
1362 "default": 1000,
1363 "minimum": 0
1364 },
1365 "maxAttempts": {
1366 "type": "number",
1367 "default": 10,
1368 "minimum": 0
1369 }
1370 }
1371 }
1372 ]
1373 },
1374 "runtimeSourcemapPausePatterns": {
1375 "type": "array",
1376 "default": [],
1377 "items": {
1378 "type": "string"
1379 },
1380 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
1381 },
1382 "showAsyncStacks": {
1383 "description": "Show the async calls that led to the current call stack.",
1384 "default": true,
1385 "oneOf": [
1386 {
1387 "type": "boolean"
1388 },
1389 {
1390 "type": "object",
1391 "properties": {
1392 "onAttach": {
1393 "type": "number",
1394 "default": 32
1395 }
1396 },
1397 "required": [
1398 "onAttach"
1399 ]
1400 },
1401 {
1402 "type": "object",
1403 "properties": {
1404 "onceBreakpointResolved": {
1405 "type": "number",
1406 "default": 32
1407 }
1408 },
1409 "required": [
1410 "onceBreakpointResolved"
1411 ]
1412 }
1413 ]
1414 },
1415 "skipFiles": {
1416 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
1417 "type": "array",
1418 "default": [
1419 "${/**"
1420 ]
1421 },
1422 "smartStep": {
1423 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
1424 "type": "boolean",
1425 "default": true
1426 },
1427 "sourceMapPathOverrides": {
1428 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
1429 "type": "object",
1430 "default": {
1431 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
1432 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
1433 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
1434 }
1435 },
1436 "sourceMapRenames": {
1437 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
1438 "type": "boolean",
1439 "default": true
1440 },
1441 "sourceMaps": {
1442 "description": "Use JavaScript source maps (if they exist).",
1443 "type": "boolean",
1444 "default": true
1445 },
1446 "timeout": {
1447 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
1448 "type": "number",
1449 "default": 10000
1450 },
1451 "timeouts": {
1452 "description": "Timeouts for several debugger operations.",
1453 "type": "object",
1454 "properties": {
1455 "hoverEvaluation": {
1456 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
1457 "type": "number",
1458 "default": 500
1459 },
1460 "sourceMapCumulativePause": {
1461 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
1462 "type": "number",
1463 "default": 1000
1464 },
1465 "sourceMapMinPause": {
1466 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
1467 "type": "number",
1468 "default": 1000
1469 }
1470 },
1471 "additionalProperties": false,
1472 "default": {},
1473 "markdownDescription": "Timeouts for several debugger operations."
1474 },
1475 "trace": {
1476 "description": "Configures what diagnostic output is produced.",
1477 "default": true,
1478 "oneOf": [
1479 {
1480 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
1481 "type": "boolean"
1482 },
1483 {
1484 "type": "object",
1485 "properties": {
1486 "logFile": {
1487 "description": "Configures where on disk logs are written.",
1488 "type": [
1489 "string",
1490 "null"
1491 ]
1492 },
1493 "stdio": {
1494 "description": "Whether to return trace data from the launched application or browser.",
1495 "type": "boolean"
1496 }
1497 },
1498 "additionalProperties": false
1499 }
1500 ]
1501 },
1502 "websocketAddress": {
1503 "description": "Exact websocket address to attach to. If unspecified, it will be discovered from the address and port.",
1504 "type": "string"
1505 }
1506 }
1507 }
1508 },
1509 {
1510 "if": {
1511 "properties": {
1512 "type": {
1513 "enum": [
1514 "node-terminal"
1515 ]
1516 },
1517 "request": {
1518 "enum": [
1519 "launch"
1520 ]
1521 }
1522 },
1523 "required": [
1524 "type",
1525 "request"
1526 ]
1527 },
1528 "then": {
1529 "properties": {
1530 "autoAttachChildProcesses": {
1531 "description": "Attach debugger to new child processes automatically.",
1532 "type": "boolean",
1533 "default": true
1534 },
1535 "cascadeTerminateToConfigurations": {
1536 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
1537 "type": "array",
1538 "default": [],
1539 "items": {
1540 "type": "string",
1541 "uniqueItems": true
1542 }
1543 },
1544 "command": {
1545 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
1546 "type": [
1547 "string",
1548 "null"
1549 ],
1550 "default": "npm start",
1551 "tags": [
1552 "setup"
1553 ]
1554 },
1555 "customDescriptionGenerator": {
1556 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
1557 "type": "string"
1558 },
1559 "customPropertiesGenerator": {
1560 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
1561 "type": "string",
1562 "deprecated": true
1563 },
1564 "cwd": {
1565 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
1566 "type": "string",
1567 "default": "${ZED_WORKTREE_ROOT}",
1568 "tags": [
1569 "setup"
1570 ]
1571 },
1572 "enableContentValidation": {
1573 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
1574 "type": "boolean",
1575 "default": true
1576 },
1577 "enableDWARF": {
1578 "type": "boolean",
1579 "default": true,
1580 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
1581 },
1582 "env": {
1583 "type": "object",
1584 "additionalProperties": {
1585 "type": [
1586 "string",
1587 "null"
1588 ]
1589 },
1590 "default": {},
1591 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
1592 "tags": [
1593 "setup"
1594 ]
1595 },
1596 "envFile": {
1597 "description": "Absolute path to a file containing environment variable definitions.",
1598 "type": "string",
1599 "default": "${ZED_WORKTREE_ROOT}/.env"
1600 },
1601 "localRoot": {
1602 "description": "Path to the local directory containing the program.",
1603 "type": [
1604 "string",
1605 "null"
1606 ],
1607 "default": null
1608 },
1609 "nodeVersionHint": {
1610 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
1611 "type": "number",
1612 "default": 12,
1613 "minimum": 8
1614 },
1615 "outFiles": {
1616 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
1617 "type": [
1618 "array"
1619 ],
1620 "default": [
1621 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
1622 "!**/node_modules/**"
1623 ],
1624 "items": {
1625 "type": "string"
1626 },
1627 "tags": [
1628 "setup"
1629 ]
1630 },
1631 "outputCapture": {
1632 "default": "console",
1633 "enum": [
1634 "console",
1635 "std"
1636 ],
1637 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
1638 },
1639 "pauseForSourceMap": {
1640 "type": "boolean",
1641 "default": false,
1642 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
1643 },
1644 "remoteRoot": {
1645 "description": "Absolute path to the remote directory containing the program.",
1646 "type": [
1647 "string",
1648 "null"
1649 ],
1650 "default": null
1651 },
1652 "resolveSourceMapLocations": {
1653 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
1654 "type": [
1655 "array",
1656 "null"
1657 ],
1658 "default": [
1659 "${ZED_WORKTREE_ROOT}/**",
1660 "!**/node_modules/**"
1661 ],
1662 "items": {
1663 "type": "string"
1664 }
1665 },
1666 "runtimeSourcemapPausePatterns": {
1667 "type": "array",
1668 "default": [],
1669 "items": {
1670 "type": "string"
1671 },
1672 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
1673 },
1674 "showAsyncStacks": {
1675 "description": "Show the async calls that led to the current call stack.",
1676 "default": true,
1677 "oneOf": [
1678 {
1679 "type": "boolean"
1680 },
1681 {
1682 "type": "object",
1683 "properties": {
1684 "onAttach": {
1685 "type": "number",
1686 "default": 32
1687 }
1688 },
1689 "required": [
1690 "onAttach"
1691 ]
1692 },
1693 {
1694 "type": "object",
1695 "properties": {
1696 "onceBreakpointResolved": {
1697 "type": "number",
1698 "default": 32
1699 }
1700 },
1701 "required": [
1702 "onceBreakpointResolved"
1703 ]
1704 }
1705 ]
1706 },
1707 "skipFiles": {
1708 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
1709 "type": "array",
1710 "default": [
1711 "${/**"
1712 ]
1713 },
1714 "smartStep": {
1715 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
1716 "type": "boolean",
1717 "default": true
1718 },
1719 "sourceMapPathOverrides": {
1720 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
1721 "type": "object",
1722 "default": {
1723 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
1724 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
1725 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
1726 }
1727 },
1728 "sourceMapRenames": {
1729 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
1730 "type": "boolean",
1731 "default": true
1732 },
1733 "sourceMaps": {
1734 "description": "Use JavaScript source maps (if they exist).",
1735 "type": "boolean",
1736 "default": true
1737 },
1738 "timeout": {
1739 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
1740 "type": "number",
1741 "default": 10000
1742 },
1743 "timeouts": {
1744 "description": "Timeouts for several debugger operations.",
1745 "type": "object",
1746 "properties": {
1747 "hoverEvaluation": {
1748 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
1749 "type": "number",
1750 "default": 500
1751 },
1752 "sourceMapCumulativePause": {
1753 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
1754 "type": "number",
1755 "default": 1000
1756 },
1757 "sourceMapMinPause": {
1758 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
1759 "type": "number",
1760 "default": 1000
1761 }
1762 },
1763 "additionalProperties": false,
1764 "default": {},
1765 "markdownDescription": "Timeouts for several debugger operations."
1766 },
1767 "trace": {
1768 "description": "Configures what diagnostic output is produced.",
1769 "default": true,
1770 "oneOf": [
1771 {
1772 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
1773 "type": "boolean"
1774 },
1775 {
1776 "type": "object",
1777 "properties": {
1778 "logFile": {
1779 "description": "Configures where on disk logs are written.",
1780 "type": [
1781 "string",
1782 "null"
1783 ]
1784 },
1785 "stdio": {
1786 "description": "Whether to return trace data from the launched application or browser.",
1787 "type": "boolean"
1788 }
1789 },
1790 "additionalProperties": false
1791 }
1792 ]
1793 }
1794 }
1795 }
1796 },
1797 {
1798 "if": {
1799 "properties": {
1800 "type": {
1801 "enum": [
1802 "pwa-extensionHost"
1803 ]
1804 },
1805 "request": {
1806 "enum": [
1807 "launch"
1808 ]
1809 }
1810 },
1811 "required": [
1812 "type",
1813 "request"
1814 ]
1815 },
1816 "then": {
1817 "properties": {
1818 "args": {
1819 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
1820 "type": "array",
1821 "default": [
1822 "--extensionDevelopmentPath=${ZED_WORKTREE_ROOT}"
1823 ],
1824 "items": {
1825 "type": "string"
1826 },
1827 "tags": [
1828 "setup"
1829 ]
1830 },
1831 "autoAttachChildProcesses": {
1832 "description": "Attach debugger to new child processes automatically.",
1833 "type": "boolean",
1834 "default": true
1835 },
1836 "cascadeTerminateToConfigurations": {
1837 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
1838 "type": "array",
1839 "default": [],
1840 "items": {
1841 "type": "string",
1842 "uniqueItems": true
1843 }
1844 },
1845 "customDescriptionGenerator": {
1846 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
1847 "type": "string"
1848 },
1849 "customPropertiesGenerator": {
1850 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
1851 "type": "string",
1852 "deprecated": true
1853 },
1854 "cwd": {
1855 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
1856 "type": "string",
1857 "default": "${ZED_WORKTREE_ROOT}",
1858 "tags": [
1859 "setup"
1860 ]
1861 },
1862 "debugWebWorkerHost": {
1863 "type": [
1864 "boolean"
1865 ],
1866 "default": true,
1867 "markdownDescription": "Configures whether we should try to attach to the web worker extension host."
1868 },
1869 "debugWebviews": {
1870 "type": [
1871 "boolean"
1872 ],
1873 "default": true,
1874 "markdownDescription": "Configures whether we should try to attach to webviews in the launched VS Code instance. This will only work in desktop VS Code."
1875 },
1876 "enableContentValidation": {
1877 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
1878 "type": "boolean",
1879 "default": true
1880 },
1881 "enableDWARF": {
1882 "type": "boolean",
1883 "default": true,
1884 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
1885 },
1886 "env": {
1887 "type": "object",
1888 "additionalProperties": {
1889 "type": [
1890 "string",
1891 "null"
1892 ]
1893 },
1894 "default": {},
1895 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
1896 "tags": [
1897 "setup"
1898 ]
1899 },
1900 "envFile": {
1901 "description": "Absolute path to a file containing environment variable definitions.",
1902 "type": "string",
1903 "default": "${ZED_WORKTREE_ROOT}/.env"
1904 },
1905 "localRoot": {
1906 "description": "Path to the local directory containing the program.",
1907 "type": [
1908 "string",
1909 "null"
1910 ],
1911 "default": null
1912 },
1913 "nodeVersionHint": {
1914 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
1915 "type": "number",
1916 "default": 12,
1917 "minimum": 8
1918 },
1919 "outFiles": {
1920 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
1921 "type": [
1922 "array"
1923 ],
1924 "default": [
1925 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
1926 "!**/node_modules/**"
1927 ],
1928 "items": {
1929 "type": "string"
1930 },
1931 "tags": [
1932 "setup"
1933 ]
1934 },
1935 "outputCapture": {
1936 "default": "console",
1937 "enum": [
1938 "console",
1939 "std"
1940 ],
1941 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
1942 },
1943 "pauseForSourceMap": {
1944 "type": "boolean",
1945 "default": false,
1946 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
1947 },
1948 "remoteRoot": {
1949 "description": "Absolute path to the remote directory containing the program.",
1950 "type": [
1951 "string",
1952 "null"
1953 ],
1954 "default": null
1955 },
1956 "rendererDebugOptions": {
1957 "type": "object",
1958 "properties": {
1959 "address": {
1960 "description": "IP address or hostname the debugged browser is listening on.",
1961 "type": "string",
1962 "default": "localhost"
1963 },
1964 "browserAttachLocation": {
1965 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
1966 "default": null,
1967 "oneOf": [
1968 {
1969 "type": "null"
1970 },
1971 {
1972 "type": "string",
1973 "enum": [
1974 "ui",
1975 "workspace"
1976 ]
1977 }
1978 ]
1979 },
1980 "cascadeTerminateToConfigurations": {
1981 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
1982 "type": "array",
1983 "default": [],
1984 "items": {
1985 "type": "string",
1986 "uniqueItems": true
1987 }
1988 },
1989 "customDescriptionGenerator": {
1990 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
1991 "type": "string"
1992 },
1993 "customPropertiesGenerator": {
1994 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
1995 "type": "string",
1996 "deprecated": true
1997 },
1998 "disableNetworkCache": {
1999 "description": "Controls whether to skip the network cache for each request",
2000 "type": "boolean",
2001 "default": true
2002 },
2003 "enableContentValidation": {
2004 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
2005 "type": "boolean",
2006 "default": true
2007 },
2008 "enableDWARF": {
2009 "type": "boolean",
2010 "default": true,
2011 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
2012 },
2013 "inspectUri": {
2014 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
2015 "type": [
2016 "string",
2017 "null"
2018 ],
2019 "default": null
2020 },
2021 "outFiles": {
2022 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
2023 "type": [
2024 "array"
2025 ],
2026 "default": [
2027 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
2028 "!**/node_modules/**"
2029 ],
2030 "items": {
2031 "type": "string"
2032 },
2033 "tags": [
2034 "setup"
2035 ]
2036 },
2037 "outputCapture": {
2038 "default": "console",
2039 "enum": [
2040 "console",
2041 "std"
2042 ],
2043 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
2044 },
2045 "pathMapping": {
2046 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
2047 "type": "object",
2048 "default": {}
2049 },
2050 "pauseForSourceMap": {
2051 "type": "boolean",
2052 "default": false,
2053 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
2054 },
2055 "perScriptSourcemaps": {
2056 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
2057 "type": "string",
2058 "default": "auto",
2059 "enum": [
2060 "yes",
2061 "no",
2062 "auto"
2063 ]
2064 },
2065 "port": {
2066 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
2067 "default": 9229,
2068 "oneOf": [
2069 {
2070 "type": "integer"
2071 },
2072 {
2073 "type": "string",
2074 "pattern": "^\\${.*}$"
2075 }
2076 ],
2077 "tags": [
2078 "setup"
2079 ]
2080 },
2081 "resolveSourceMapLocations": {
2082 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
2083 "type": [
2084 "array",
2085 "null"
2086 ],
2087 "default": null,
2088 "items": {
2089 "type": "string"
2090 }
2091 },
2092 "restart": {
2093 "type": "boolean",
2094 "default": false,
2095 "markdownDescription": "Whether to reconnect if the browser connection is closed"
2096 },
2097 "server": {
2098 "oneOf": [
2099 {
2100 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
2101 "type": "object",
2102 "properties": {
2103 "args": {
2104 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
2105 "type": [
2106 "array",
2107 "string"
2108 ],
2109 "default": [],
2110 "items": {
2111 "type": "string"
2112 },
2113 "tags": [
2114 "setup"
2115 ]
2116 },
2117 "attachSimplePort": {
2118 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
2119 "default": 9229,
2120 "oneOf": [
2121 {
2122 "type": "integer"
2123 },
2124 {
2125 "type": "string",
2126 "pattern": "^\\${.*}$"
2127 }
2128 ]
2129 },
2130 "autoAttachChildProcesses": {
2131 "description": "Attach debugger to new child processes automatically.",
2132 "type": "boolean",
2133 "default": true
2134 },
2135 "cascadeTerminateToConfigurations": {
2136 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
2137 "type": "array",
2138 "default": [],
2139 "items": {
2140 "type": "string",
2141 "uniqueItems": true
2142 }
2143 },
2144 "console": {
2145 "description": "Where to launch the debug target.",
2146 "type": "string",
2147 "default": "internalConsole",
2148 "enum": [
2149 "internalConsole",
2150 "integratedTerminal",
2151 "externalTerminal"
2152 ],
2153 "enumDescriptions": [
2154 "VS Code Debug Console (which doesn't support to read input from a program)",
2155 "VS Code's integrated terminal",
2156 "External terminal that can be configured via user settings"
2157 ]
2158 },
2159 "customDescriptionGenerator": {
2160 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
2161 "type": "string"
2162 },
2163 "customPropertiesGenerator": {
2164 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
2165 "type": "string",
2166 "deprecated": true
2167 },
2168 "cwd": {
2169 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
2170 "type": "string",
2171 "default": "${ZED_WORKTREE_ROOT}",
2172 "tags": [
2173 "setup"
2174 ]
2175 },
2176 "enableContentValidation": {
2177 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
2178 "type": "boolean",
2179 "default": true
2180 },
2181 "enableDWARF": {
2182 "type": "boolean",
2183 "default": true,
2184 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
2185 },
2186 "env": {
2187 "type": "object",
2188 "additionalProperties": {
2189 "type": [
2190 "string",
2191 "null"
2192 ]
2193 },
2194 "default": {},
2195 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
2196 "tags": [
2197 "setup"
2198 ]
2199 },
2200 "envFile": {
2201 "description": "Absolute path to a file containing environment variable definitions.",
2202 "type": "string",
2203 "default": "${ZED_WORKTREE_ROOT}/.env"
2204 },
2205 "experimentalNetworking": {
2206 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
2207 "type": "string",
2208 "default": "auto",
2209 "enum": [
2210 "auto",
2211 "on",
2212 "off"
2213 ]
2214 },
2215 "killBehavior": {
2216 "type": "string",
2217 "default": "forceful",
2218 "enum": [
2219 "forceful",
2220 "polite",
2221 "none"
2222 ],
2223 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
2224 },
2225 "localRoot": {
2226 "description": "Path to the local directory containing the program.",
2227 "type": [
2228 "string",
2229 "null"
2230 ],
2231 "default": null
2232 },
2233 "nodeVersionHint": {
2234 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
2235 "type": "number",
2236 "default": 12,
2237 "minimum": 8
2238 },
2239 "outFiles": {
2240 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
2241 "type": [
2242 "array"
2243 ],
2244 "default": [
2245 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
2246 "!**/node_modules/**"
2247 ],
2248 "items": {
2249 "type": "string"
2250 },
2251 "tags": [
2252 "setup"
2253 ]
2254 },
2255 "outputCapture": {
2256 "default": "console",
2257 "enum": [
2258 "console",
2259 "std"
2260 ],
2261 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
2262 },
2263 "pauseForSourceMap": {
2264 "type": "boolean",
2265 "default": false,
2266 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
2267 },
2268 "profileStartup": {
2269 "description": "If true, will start profiling as soon as the process launches",
2270 "type": "boolean",
2271 "default": true
2272 },
2273 "program": {
2274 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
2275 "type": "string",
2276 "default": "",
2277 "tags": [
2278 "setup"
2279 ]
2280 },
2281 "remoteRoot": {
2282 "description": "Absolute path to the remote directory containing the program.",
2283 "type": [
2284 "string",
2285 "null"
2286 ],
2287 "default": null
2288 },
2289 "resolveSourceMapLocations": {
2290 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
2291 "type": [
2292 "array",
2293 "null"
2294 ],
2295 "default": [
2296 "${ZED_WORKTREE_ROOT}/**",
2297 "!**/node_modules/**"
2298 ],
2299 "items": {
2300 "type": "string"
2301 }
2302 },
2303 "restart": {
2304 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
2305 "default": true,
2306 "oneOf": [
2307 {
2308 "type": "boolean"
2309 },
2310 {
2311 "type": "object",
2312 "properties": {
2313 "delay": {
2314 "type": "number",
2315 "default": 1000,
2316 "minimum": 0
2317 },
2318 "maxAttempts": {
2319 "type": "number",
2320 "default": 10,
2321 "minimum": 0
2322 }
2323 }
2324 }
2325 ]
2326 },
2327 "runtimeArgs": {
2328 "description": "Optional arguments passed to the runtime executable.",
2329 "type": "array",
2330 "default": [],
2331 "items": {
2332 "type": "string"
2333 },
2334 "tags": [
2335 "setup"
2336 ]
2337 },
2338 "runtimeExecutable": {
2339 "type": [
2340 "string",
2341 "null"
2342 ],
2343 "default": "node",
2344 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
2345 },
2346 "runtimeSourcemapPausePatterns": {
2347 "type": "array",
2348 "default": [],
2349 "items": {
2350 "type": "string"
2351 },
2352 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
2353 },
2354 "runtimeVersion": {
2355 "type": "string",
2356 "default": "default",
2357 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
2358 },
2359 "showAsyncStacks": {
2360 "description": "Show the async calls that led to the current call stack.",
2361 "default": true,
2362 "oneOf": [
2363 {
2364 "type": "boolean"
2365 },
2366 {
2367 "type": "object",
2368 "properties": {
2369 "onAttach": {
2370 "type": "number",
2371 "default": 32
2372 }
2373 },
2374 "required": [
2375 "onAttach"
2376 ]
2377 },
2378 {
2379 "type": "object",
2380 "properties": {
2381 "onceBreakpointResolved": {
2382 "type": "number",
2383 "default": 32
2384 }
2385 },
2386 "required": [
2387 "onceBreakpointResolved"
2388 ]
2389 }
2390 ]
2391 },
2392 "skipFiles": {
2393 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
2394 "type": "array",
2395 "default": [
2396 "${/**"
2397 ]
2398 },
2399 "smartStep": {
2400 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
2401 "type": "boolean",
2402 "default": true
2403 },
2404 "sourceMapPathOverrides": {
2405 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
2406 "type": "object",
2407 "default": {
2408 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
2409 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
2410 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
2411 }
2412 },
2413 "sourceMapRenames": {
2414 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
2415 "type": "boolean",
2416 "default": true
2417 },
2418 "sourceMaps": {
2419 "description": "Use JavaScript source maps (if they exist).",
2420 "type": "boolean",
2421 "default": true
2422 },
2423 "stopOnEntry": {
2424 "description": "Automatically stop program after launch.",
2425 "type": [
2426 "boolean",
2427 "string"
2428 ],
2429 "default": true
2430 },
2431 "timeout": {
2432 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
2433 "type": "number",
2434 "default": 10000
2435 },
2436 "timeouts": {
2437 "description": "Timeouts for several debugger operations.",
2438 "type": "object",
2439 "properties": {
2440 "hoverEvaluation": {
2441 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
2442 "type": "number",
2443 "default": 500
2444 },
2445 "sourceMapCumulativePause": {
2446 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
2447 "type": "number",
2448 "default": 1000
2449 },
2450 "sourceMapMinPause": {
2451 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
2452 "type": "number",
2453 "default": 1000
2454 }
2455 },
2456 "additionalProperties": false,
2457 "default": {},
2458 "markdownDescription": "Timeouts for several debugger operations."
2459 },
2460 "trace": {
2461 "description": "Configures what diagnostic output is produced.",
2462 "default": true,
2463 "oneOf": [
2464 {
2465 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
2466 "type": "boolean"
2467 },
2468 {
2469 "type": "object",
2470 "properties": {
2471 "logFile": {
2472 "description": "Configures where on disk logs are written.",
2473 "type": [
2474 "string",
2475 "null"
2476 ]
2477 },
2478 "stdio": {
2479 "description": "Whether to return trace data from the launched application or browser.",
2480 "type": "boolean"
2481 }
2482 },
2483 "additionalProperties": false
2484 }
2485 ]
2486 }
2487 },
2488 "additionalProperties": false,
2489 "default": {
2490 "program": "node my-server.js"
2491 }
2492 },
2493 {
2494 "description": "JavaScript Debug Terminal",
2495 "type": "object",
2496 "properties": {
2497 "autoAttachChildProcesses": {
2498 "description": "Attach debugger to new child processes automatically.",
2499 "type": "boolean",
2500 "default": true
2501 },
2502 "cascadeTerminateToConfigurations": {
2503 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
2504 "type": "array",
2505 "default": [],
2506 "items": {
2507 "type": "string",
2508 "uniqueItems": true
2509 }
2510 },
2511 "command": {
2512 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
2513 "type": [
2514 "string",
2515 "null"
2516 ],
2517 "default": "npm start",
2518 "tags": [
2519 "setup"
2520 ]
2521 },
2522 "customDescriptionGenerator": {
2523 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
2524 "type": "string"
2525 },
2526 "customPropertiesGenerator": {
2527 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
2528 "type": "string",
2529 "deprecated": true
2530 },
2531 "cwd": {
2532 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
2533 "type": "string",
2534 "default": "${ZED_WORKTREE_ROOT}",
2535 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
2536 "tags": [
2537 "setup"
2538 ]
2539 },
2540 "enableContentValidation": {
2541 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
2542 "type": "boolean",
2543 "default": true
2544 },
2545 "enableDWARF": {
2546 "type": "boolean",
2547 "default": true,
2548 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
2549 },
2550 "env": {
2551 "type": "object",
2552 "additionalProperties": {
2553 "type": [
2554 "string",
2555 "null"
2556 ]
2557 },
2558 "default": {},
2559 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
2560 "tags": [
2561 "setup"
2562 ]
2563 },
2564 "envFile": {
2565 "description": "Absolute path to a file containing environment variable definitions.",
2566 "type": "string",
2567 "default": "${ZED_WORKTREE_ROOT}/.env"
2568 },
2569 "localRoot": {
2570 "description": "Path to the local directory containing the program.",
2571 "type": [
2572 "string",
2573 "null"
2574 ],
2575 "default": null
2576 },
2577 "nodeVersionHint": {
2578 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
2579 "type": "number",
2580 "default": 12,
2581 "minimum": 8
2582 },
2583 "outFiles": {
2584 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
2585 "type": [
2586 "array"
2587 ],
2588 "default": [
2589 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
2590 "!**/node_modules/**"
2591 ],
2592 "items": {
2593 "type": "string"
2594 },
2595 "tags": [
2596 "setup"
2597 ]
2598 },
2599 "outputCapture": {
2600 "default": "console",
2601 "enum": [
2602 "console",
2603 "std"
2604 ],
2605 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
2606 },
2607 "pauseForSourceMap": {
2608 "type": "boolean",
2609 "default": false,
2610 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
2611 },
2612 "remoteRoot": {
2613 "description": "Absolute path to the remote directory containing the program.",
2614 "type": [
2615 "string",
2616 "null"
2617 ],
2618 "default": null
2619 },
2620 "resolveSourceMapLocations": {
2621 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
2622 "type": [
2623 "array",
2624 "null"
2625 ],
2626 "default": [
2627 "${ZED_WORKTREE_ROOT}/**",
2628 "!**/node_modules/**"
2629 ],
2630 "items": {
2631 "type": "string"
2632 }
2633 },
2634 "runtimeSourcemapPausePatterns": {
2635 "type": "array",
2636 "default": [],
2637 "items": {
2638 "type": "string"
2639 },
2640 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
2641 },
2642 "showAsyncStacks": {
2643 "description": "Show the async calls that led to the current call stack.",
2644 "default": true,
2645 "oneOf": [
2646 {
2647 "type": "boolean"
2648 },
2649 {
2650 "type": "object",
2651 "properties": {
2652 "onAttach": {
2653 "type": "number",
2654 "default": 32
2655 }
2656 },
2657 "required": [
2658 "onAttach"
2659 ]
2660 },
2661 {
2662 "type": "object",
2663 "properties": {
2664 "onceBreakpointResolved": {
2665 "type": "number",
2666 "default": 32
2667 }
2668 },
2669 "required": [
2670 "onceBreakpointResolved"
2671 ]
2672 }
2673 ]
2674 },
2675 "skipFiles": {
2676 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
2677 "type": "array",
2678 "default": [
2679 "${/**"
2680 ]
2681 },
2682 "smartStep": {
2683 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
2684 "type": "boolean",
2685 "default": true
2686 },
2687 "sourceMapPathOverrides": {
2688 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
2689 "type": "object",
2690 "default": {
2691 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
2692 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
2693 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
2694 }
2695 },
2696 "sourceMapRenames": {
2697 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
2698 "type": "boolean",
2699 "default": true
2700 },
2701 "sourceMaps": {
2702 "description": "Use JavaScript source maps (if they exist).",
2703 "type": "boolean",
2704 "default": true
2705 },
2706 "timeout": {
2707 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
2708 "type": "number",
2709 "default": 10000
2710 },
2711 "timeouts": {
2712 "description": "Timeouts for several debugger operations.",
2713 "type": "object",
2714 "properties": {
2715 "hoverEvaluation": {
2716 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
2717 "type": "number",
2718 "default": 500
2719 },
2720 "sourceMapCumulativePause": {
2721 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
2722 "type": "number",
2723 "default": 1000
2724 },
2725 "sourceMapMinPause": {
2726 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
2727 "type": "number",
2728 "default": 1000
2729 }
2730 },
2731 "additionalProperties": false,
2732 "default": {},
2733 "markdownDescription": "Timeouts for several debugger operations."
2734 },
2735 "trace": {
2736 "description": "Configures what diagnostic output is produced.",
2737 "default": true,
2738 "oneOf": [
2739 {
2740 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
2741 "type": "boolean"
2742 },
2743 {
2744 "type": "object",
2745 "properties": {
2746 "logFile": {
2747 "description": "Configures where on disk logs are written.",
2748 "type": [
2749 "string",
2750 "null"
2751 ]
2752 },
2753 "stdio": {
2754 "description": "Whether to return trace data from the launched application or browser.",
2755 "type": "boolean"
2756 }
2757 },
2758 "additionalProperties": false
2759 }
2760 ]
2761 }
2762 },
2763 "additionalProperties": false,
2764 "default": {
2765 "program": "npm start"
2766 }
2767 }
2768 ]
2769 },
2770 "showAsyncStacks": {
2771 "description": "Show the async calls that led to the current call stack.",
2772 "default": true,
2773 "oneOf": [
2774 {
2775 "type": "boolean"
2776 },
2777 {
2778 "type": "object",
2779 "properties": {
2780 "onAttach": {
2781 "type": "number",
2782 "default": 32
2783 }
2784 },
2785 "required": [
2786 "onAttach"
2787 ]
2788 },
2789 {
2790 "type": "object",
2791 "properties": {
2792 "onceBreakpointResolved": {
2793 "type": "number",
2794 "default": 32
2795 }
2796 },
2797 "required": [
2798 "onceBreakpointResolved"
2799 ]
2800 }
2801 ]
2802 },
2803 "skipFiles": {
2804 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
2805 "type": "array",
2806 "default": [
2807 "${/**"
2808 ]
2809 },
2810 "smartStep": {
2811 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
2812 "type": "boolean",
2813 "default": true
2814 },
2815 "sourceMapPathOverrides": {
2816 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
2817 "type": "object",
2818 "default": {
2819 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
2820 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
2821 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
2822 }
2823 },
2824 "sourceMapRenames": {
2825 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
2826 "type": "boolean",
2827 "default": true
2828 },
2829 "sourceMaps": {
2830 "description": "Use JavaScript source maps (if they exist).",
2831 "type": "boolean",
2832 "default": true
2833 },
2834 "targetSelection": {
2835 "type": "string",
2836 "default": "automatic",
2837 "enum": [
2838 "pick",
2839 "automatic"
2840 ],
2841 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
2842 },
2843 "timeout": {
2844 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
2845 "type": "number",
2846 "default": 10000
2847 },
2848 "timeouts": {
2849 "description": "Timeouts for several debugger operations.",
2850 "type": "object",
2851 "properties": {
2852 "hoverEvaluation": {
2853 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
2854 "type": "number",
2855 "default": 500
2856 },
2857 "sourceMapCumulativePause": {
2858 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
2859 "type": "number",
2860 "default": 1000
2861 },
2862 "sourceMapMinPause": {
2863 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
2864 "type": "number",
2865 "default": 1000
2866 }
2867 },
2868 "additionalProperties": false,
2869 "default": {},
2870 "markdownDescription": "Timeouts for several debugger operations."
2871 },
2872 "trace": {
2873 "description": "Configures what diagnostic output is produced.",
2874 "default": true,
2875 "oneOf": [
2876 {
2877 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
2878 "type": "boolean"
2879 },
2880 {
2881 "type": "object",
2882 "properties": {
2883 "logFile": {
2884 "description": "Configures where on disk logs are written.",
2885 "type": [
2886 "string",
2887 "null"
2888 ]
2889 },
2890 "stdio": {
2891 "description": "Whether to return trace data from the launched application or browser.",
2892 "type": "boolean"
2893 }
2894 },
2895 "additionalProperties": false
2896 }
2897 ]
2898 },
2899 "url": {
2900 "description": "Will search for a tab with this exact url and attach to it, if found",
2901 "type": "string",
2902 "default": "http://localhost:8080",
2903 "tags": [
2904 "setup"
2905 ]
2906 },
2907 "urlFilter": {
2908 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
2909 "type": "string",
2910 "default": ""
2911 },
2912 "vueComponentPaths": {
2913 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
2914 "type": "array",
2915 "default": [
2916 "${ZED_WORKTREE_ROOT}/**/*.vue"
2917 ]
2918 },
2919 "webRoot": {
2920 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
2921 "type": "string",
2922 "default": "${ZED_WORKTREE_ROOT}",
2923 "tags": [
2924 "setup"
2925 ]
2926 }
2927 },
2928 "default": {
2929 "webRoot": "${ZED_WORKTREE_ROOT}"
2930 },
2931 "markdownDescription": "Chrome launch options used when attaching to the renderer process, with `debugWebviews` or `debugWebWorkerHost`."
2932 },
2933 "resolveSourceMapLocations": {
2934 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
2935 "type": [
2936 "array",
2937 "null"
2938 ],
2939 "default": [
2940 "${ZED_WORKTREE_ROOT}/**",
2941 "!**/node_modules/**"
2942 ],
2943 "items": {
2944 "type": "string"
2945 }
2946 },
2947 "runtimeExecutable": {
2948 "type": [
2949 "string",
2950 "null"
2951 ],
2952 "default": "node",
2953 "markdownDescription": "Absolute path to VS Code."
2954 },
2955 "runtimeSourcemapPausePatterns": {
2956 "type": "array",
2957 "default": [],
2958 "items": {
2959 "type": "string"
2960 },
2961 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
2962 },
2963 "showAsyncStacks": {
2964 "description": "Show the async calls that led to the current call stack.",
2965 "default": true,
2966 "oneOf": [
2967 {
2968 "type": "boolean"
2969 },
2970 {
2971 "type": "object",
2972 "properties": {
2973 "onAttach": {
2974 "type": "number",
2975 "default": 32
2976 }
2977 },
2978 "required": [
2979 "onAttach"
2980 ]
2981 },
2982 {
2983 "type": "object",
2984 "properties": {
2985 "onceBreakpointResolved": {
2986 "type": "number",
2987 "default": 32
2988 }
2989 },
2990 "required": [
2991 "onceBreakpointResolved"
2992 ]
2993 }
2994 ]
2995 },
2996 "skipFiles": {
2997 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
2998 "type": "array",
2999 "default": [
3000 "${/**"
3001 ]
3002 },
3003 "smartStep": {
3004 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
3005 "type": "boolean",
3006 "default": true
3007 },
3008 "sourceMapPathOverrides": {
3009 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
3010 "type": "object",
3011 "default": {
3012 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
3013 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
3014 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
3015 }
3016 },
3017 "sourceMapRenames": {
3018 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
3019 "type": "boolean",
3020 "default": true
3021 },
3022 "sourceMaps": {
3023 "description": "Use JavaScript source maps (if they exist).",
3024 "type": "boolean",
3025 "default": true
3026 },
3027 "testConfiguration": {
3028 "type": "string",
3029 "default": "${ZED_WORKTREE_ROOT}/.vscode-test.js",
3030 "markdownDescription": "Path to a test configuration file for the [test CLI](https://code.visualstudio.com/api/working-with-extensions/testing-extension#quick-setup-the-test-cli)."
3031 },
3032 "testConfigurationLabel": {
3033 "type": "string",
3034 "default": "",
3035 "markdownDescription": "A single configuration to run from the file. If not specified, you may be asked to pick."
3036 },
3037 "timeout": {
3038 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
3039 "type": "number",
3040 "default": 10000
3041 },
3042 "timeouts": {
3043 "description": "Timeouts for several debugger operations.",
3044 "type": "object",
3045 "properties": {
3046 "hoverEvaluation": {
3047 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
3048 "type": "number",
3049 "default": 500
3050 },
3051 "sourceMapCumulativePause": {
3052 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
3053 "type": "number",
3054 "default": 1000
3055 },
3056 "sourceMapMinPause": {
3057 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
3058 "type": "number",
3059 "default": 1000
3060 }
3061 },
3062 "additionalProperties": false,
3063 "default": {},
3064 "markdownDescription": "Timeouts for several debugger operations."
3065 },
3066 "trace": {
3067 "description": "Configures what diagnostic output is produced.",
3068 "default": true,
3069 "oneOf": [
3070 {
3071 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
3072 "type": "boolean"
3073 },
3074 {
3075 "type": "object",
3076 "properties": {
3077 "logFile": {
3078 "description": "Configures where on disk logs are written.",
3079 "type": [
3080 "string",
3081 "null"
3082 ]
3083 },
3084 "stdio": {
3085 "description": "Whether to return trace data from the launched application or browser.",
3086 "type": "boolean"
3087 }
3088 },
3089 "additionalProperties": false
3090 }
3091 ]
3092 }
3093 },
3094 "required": []
3095 }
3096 },
3097 {
3098 "if": {
3099 "properties": {
3100 "type": {
3101 "enum": [
3102 "extensionHost"
3103 ]
3104 },
3105 "request": {
3106 "enum": [
3107 "launch"
3108 ]
3109 }
3110 },
3111 "required": [
3112 "type",
3113 "request"
3114 ]
3115 },
3116 "then": {
3117 "properties": {
3118 "args": {
3119 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
3120 "type": "array",
3121 "default": [
3122 "--extensionDevelopmentPath=${ZED_WORKTREE_ROOT}"
3123 ],
3124 "items": {
3125 "type": "string"
3126 },
3127 "tags": [
3128 "setup"
3129 ]
3130 },
3131 "autoAttachChildProcesses": {
3132 "description": "Attach debugger to new child processes automatically.",
3133 "type": "boolean",
3134 "default": true
3135 },
3136 "cascadeTerminateToConfigurations": {
3137 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
3138 "type": "array",
3139 "default": [],
3140 "items": {
3141 "type": "string",
3142 "uniqueItems": true
3143 }
3144 },
3145 "customDescriptionGenerator": {
3146 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
3147 "type": "string"
3148 },
3149 "customPropertiesGenerator": {
3150 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
3151 "type": "string",
3152 "deprecated": true
3153 },
3154 "cwd": {
3155 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
3156 "type": "string",
3157 "default": "${ZED_WORKTREE_ROOT}",
3158 "tags": [
3159 "setup"
3160 ]
3161 },
3162 "debugWebWorkerHost": {
3163 "type": [
3164 "boolean"
3165 ],
3166 "default": true,
3167 "markdownDescription": "Configures whether we should try to attach to the web worker extension host."
3168 },
3169 "debugWebviews": {
3170 "type": [
3171 "boolean"
3172 ],
3173 "default": true,
3174 "markdownDescription": "Configures whether we should try to attach to webviews in the launched VS Code instance. This will only work in desktop VS Code."
3175 },
3176 "enableContentValidation": {
3177 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
3178 "type": "boolean",
3179 "default": true
3180 },
3181 "enableDWARF": {
3182 "type": "boolean",
3183 "default": true,
3184 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
3185 },
3186 "env": {
3187 "type": "object",
3188 "additionalProperties": {
3189 "type": [
3190 "string",
3191 "null"
3192 ]
3193 },
3194 "default": {},
3195 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
3196 "tags": [
3197 "setup"
3198 ]
3199 },
3200 "envFile": {
3201 "description": "Absolute path to a file containing environment variable definitions.",
3202 "type": "string",
3203 "default": "${ZED_WORKTREE_ROOT}/.env"
3204 },
3205 "localRoot": {
3206 "description": "Path to the local directory containing the program.",
3207 "type": [
3208 "string",
3209 "null"
3210 ],
3211 "default": null
3212 },
3213 "nodeVersionHint": {
3214 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
3215 "type": "number",
3216 "default": 12,
3217 "minimum": 8
3218 },
3219 "outFiles": {
3220 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
3221 "type": [
3222 "array"
3223 ],
3224 "default": [
3225 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
3226 "!**/node_modules/**"
3227 ],
3228 "items": {
3229 "type": "string"
3230 },
3231 "tags": [
3232 "setup"
3233 ]
3234 },
3235 "outputCapture": {
3236 "default": "console",
3237 "enum": [
3238 "console",
3239 "std"
3240 ],
3241 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
3242 },
3243 "pauseForSourceMap": {
3244 "type": "boolean",
3245 "default": false,
3246 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
3247 },
3248 "remoteRoot": {
3249 "description": "Absolute path to the remote directory containing the program.",
3250 "type": [
3251 "string",
3252 "null"
3253 ],
3254 "default": null
3255 },
3256 "rendererDebugOptions": {
3257 "type": "object",
3258 "properties": {
3259 "address": {
3260 "description": "IP address or hostname the debugged browser is listening on.",
3261 "type": "string",
3262 "default": "localhost"
3263 },
3264 "browserAttachLocation": {
3265 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
3266 "default": null,
3267 "oneOf": [
3268 {
3269 "type": "null"
3270 },
3271 {
3272 "type": "string",
3273 "enum": [
3274 "ui",
3275 "workspace"
3276 ]
3277 }
3278 ]
3279 },
3280 "cascadeTerminateToConfigurations": {
3281 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
3282 "type": "array",
3283 "default": [],
3284 "items": {
3285 "type": "string",
3286 "uniqueItems": true
3287 }
3288 },
3289 "customDescriptionGenerator": {
3290 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
3291 "type": "string"
3292 },
3293 "customPropertiesGenerator": {
3294 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
3295 "type": "string",
3296 "deprecated": true
3297 },
3298 "disableNetworkCache": {
3299 "description": "Controls whether to skip the network cache for each request",
3300 "type": "boolean",
3301 "default": true
3302 },
3303 "enableContentValidation": {
3304 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
3305 "type": "boolean",
3306 "default": true
3307 },
3308 "enableDWARF": {
3309 "type": "boolean",
3310 "default": true,
3311 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
3312 },
3313 "inspectUri": {
3314 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
3315 "type": [
3316 "string",
3317 "null"
3318 ],
3319 "default": null
3320 },
3321 "outFiles": {
3322 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
3323 "type": [
3324 "array"
3325 ],
3326 "default": [
3327 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
3328 "!**/node_modules/**"
3329 ],
3330 "items": {
3331 "type": "string"
3332 },
3333 "tags": [
3334 "setup"
3335 ]
3336 },
3337 "outputCapture": {
3338 "default": "console",
3339 "enum": [
3340 "console",
3341 "std"
3342 ],
3343 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
3344 },
3345 "pathMapping": {
3346 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
3347 "type": "object",
3348 "default": {}
3349 },
3350 "pauseForSourceMap": {
3351 "type": "boolean",
3352 "default": false,
3353 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
3354 },
3355 "perScriptSourcemaps": {
3356 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
3357 "type": "string",
3358 "default": "auto",
3359 "enum": [
3360 "yes",
3361 "no",
3362 "auto"
3363 ]
3364 },
3365 "port": {
3366 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
3367 "default": 9229,
3368 "oneOf": [
3369 {
3370 "type": "integer"
3371 },
3372 {
3373 "type": "string",
3374 "pattern": "^\\${.*}$"
3375 }
3376 ],
3377 "tags": [
3378 "setup"
3379 ]
3380 },
3381 "resolveSourceMapLocations": {
3382 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
3383 "type": [
3384 "array",
3385 "null"
3386 ],
3387 "default": null,
3388 "items": {
3389 "type": "string"
3390 }
3391 },
3392 "restart": {
3393 "type": "boolean",
3394 "default": false,
3395 "markdownDescription": "Whether to reconnect if the browser connection is closed"
3396 },
3397 "server": {
3398 "oneOf": [
3399 {
3400 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
3401 "type": "object",
3402 "properties": {
3403 "args": {
3404 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
3405 "type": [
3406 "array",
3407 "string"
3408 ],
3409 "default": [],
3410 "items": {
3411 "type": "string"
3412 },
3413 "tags": [
3414 "setup"
3415 ]
3416 },
3417 "attachSimplePort": {
3418 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
3419 "default": 9229,
3420 "oneOf": [
3421 {
3422 "type": "integer"
3423 },
3424 {
3425 "type": "string",
3426 "pattern": "^\\${.*}$"
3427 }
3428 ]
3429 },
3430 "autoAttachChildProcesses": {
3431 "description": "Attach debugger to new child processes automatically.",
3432 "type": "boolean",
3433 "default": true
3434 },
3435 "cascadeTerminateToConfigurations": {
3436 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
3437 "type": "array",
3438 "default": [],
3439 "items": {
3440 "type": "string",
3441 "uniqueItems": true
3442 }
3443 },
3444 "console": {
3445 "description": "Where to launch the debug target.",
3446 "type": "string",
3447 "default": "internalConsole",
3448 "enum": [
3449 "internalConsole",
3450 "integratedTerminal",
3451 "externalTerminal"
3452 ],
3453 "enumDescriptions": [
3454 "VS Code Debug Console (which doesn't support to read input from a program)",
3455 "VS Code's integrated terminal",
3456 "External terminal that can be configured via user settings"
3457 ]
3458 },
3459 "customDescriptionGenerator": {
3460 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
3461 "type": "string"
3462 },
3463 "customPropertiesGenerator": {
3464 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
3465 "type": "string",
3466 "deprecated": true
3467 },
3468 "cwd": {
3469 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
3470 "type": "string",
3471 "default": "${ZED_WORKTREE_ROOT}",
3472 "tags": [
3473 "setup"
3474 ]
3475 },
3476 "enableContentValidation": {
3477 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
3478 "type": "boolean",
3479 "default": true
3480 },
3481 "enableDWARF": {
3482 "type": "boolean",
3483 "default": true,
3484 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
3485 },
3486 "env": {
3487 "type": "object",
3488 "additionalProperties": {
3489 "type": [
3490 "string",
3491 "null"
3492 ]
3493 },
3494 "default": {},
3495 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
3496 "tags": [
3497 "setup"
3498 ]
3499 },
3500 "envFile": {
3501 "description": "Absolute path to a file containing environment variable definitions.",
3502 "type": "string",
3503 "default": "${ZED_WORKTREE_ROOT}/.env"
3504 },
3505 "experimentalNetworking": {
3506 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
3507 "type": "string",
3508 "default": "auto",
3509 "enum": [
3510 "auto",
3511 "on",
3512 "off"
3513 ]
3514 },
3515 "killBehavior": {
3516 "type": "string",
3517 "default": "forceful",
3518 "enum": [
3519 "forceful",
3520 "polite",
3521 "none"
3522 ],
3523 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
3524 },
3525 "localRoot": {
3526 "description": "Path to the local directory containing the program.",
3527 "type": [
3528 "string",
3529 "null"
3530 ],
3531 "default": null
3532 },
3533 "nodeVersionHint": {
3534 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
3535 "type": "number",
3536 "default": 12,
3537 "minimum": 8
3538 },
3539 "outFiles": {
3540 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
3541 "type": [
3542 "array"
3543 ],
3544 "default": [
3545 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
3546 "!**/node_modules/**"
3547 ],
3548 "items": {
3549 "type": "string"
3550 },
3551 "tags": [
3552 "setup"
3553 ]
3554 },
3555 "outputCapture": {
3556 "default": "console",
3557 "enum": [
3558 "console",
3559 "std"
3560 ],
3561 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
3562 },
3563 "pauseForSourceMap": {
3564 "type": "boolean",
3565 "default": false,
3566 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
3567 },
3568 "profileStartup": {
3569 "description": "If true, will start profiling as soon as the process launches",
3570 "type": "boolean",
3571 "default": true
3572 },
3573 "program": {
3574 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
3575 "type": "string",
3576 "default": "",
3577 "tags": [
3578 "setup"
3579 ]
3580 },
3581 "remoteRoot": {
3582 "description": "Absolute path to the remote directory containing the program.",
3583 "type": [
3584 "string",
3585 "null"
3586 ],
3587 "default": null
3588 },
3589 "resolveSourceMapLocations": {
3590 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
3591 "type": [
3592 "array",
3593 "null"
3594 ],
3595 "default": [
3596 "${ZED_WORKTREE_ROOT}/**",
3597 "!**/node_modules/**"
3598 ],
3599 "items": {
3600 "type": "string"
3601 }
3602 },
3603 "restart": {
3604 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
3605 "default": true,
3606 "oneOf": [
3607 {
3608 "type": "boolean"
3609 },
3610 {
3611 "type": "object",
3612 "properties": {
3613 "delay": {
3614 "type": "number",
3615 "default": 1000,
3616 "minimum": 0
3617 },
3618 "maxAttempts": {
3619 "type": "number",
3620 "default": 10,
3621 "minimum": 0
3622 }
3623 }
3624 }
3625 ]
3626 },
3627 "runtimeArgs": {
3628 "description": "Optional arguments passed to the runtime executable.",
3629 "type": "array",
3630 "default": [],
3631 "items": {
3632 "type": "string"
3633 },
3634 "tags": [
3635 "setup"
3636 ]
3637 },
3638 "runtimeExecutable": {
3639 "type": [
3640 "string",
3641 "null"
3642 ],
3643 "default": "node",
3644 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
3645 },
3646 "runtimeSourcemapPausePatterns": {
3647 "type": "array",
3648 "default": [],
3649 "items": {
3650 "type": "string"
3651 },
3652 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
3653 },
3654 "runtimeVersion": {
3655 "type": "string",
3656 "default": "default",
3657 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
3658 },
3659 "showAsyncStacks": {
3660 "description": "Show the async calls that led to the current call stack.",
3661 "default": true,
3662 "oneOf": [
3663 {
3664 "type": "boolean"
3665 },
3666 {
3667 "type": "object",
3668 "properties": {
3669 "onAttach": {
3670 "type": "number",
3671 "default": 32
3672 }
3673 },
3674 "required": [
3675 "onAttach"
3676 ]
3677 },
3678 {
3679 "type": "object",
3680 "properties": {
3681 "onceBreakpointResolved": {
3682 "type": "number",
3683 "default": 32
3684 }
3685 },
3686 "required": [
3687 "onceBreakpointResolved"
3688 ]
3689 }
3690 ]
3691 },
3692 "skipFiles": {
3693 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
3694 "type": "array",
3695 "default": [
3696 "${/**"
3697 ]
3698 },
3699 "smartStep": {
3700 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
3701 "type": "boolean",
3702 "default": true
3703 },
3704 "sourceMapPathOverrides": {
3705 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
3706 "type": "object",
3707 "default": {
3708 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
3709 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
3710 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
3711 }
3712 },
3713 "sourceMapRenames": {
3714 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
3715 "type": "boolean",
3716 "default": true
3717 },
3718 "sourceMaps": {
3719 "description": "Use JavaScript source maps (if they exist).",
3720 "type": "boolean",
3721 "default": true
3722 },
3723 "stopOnEntry": {
3724 "description": "Automatically stop program after launch.",
3725 "type": [
3726 "boolean",
3727 "string"
3728 ],
3729 "default": true
3730 },
3731 "timeout": {
3732 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
3733 "type": "number",
3734 "default": 10000
3735 },
3736 "timeouts": {
3737 "description": "Timeouts for several debugger operations.",
3738 "type": "object",
3739 "properties": {
3740 "hoverEvaluation": {
3741 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
3742 "type": "number",
3743 "default": 500
3744 },
3745 "sourceMapCumulativePause": {
3746 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
3747 "type": "number",
3748 "default": 1000
3749 },
3750 "sourceMapMinPause": {
3751 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
3752 "type": "number",
3753 "default": 1000
3754 }
3755 },
3756 "additionalProperties": false,
3757 "default": {},
3758 "markdownDescription": "Timeouts for several debugger operations."
3759 },
3760 "trace": {
3761 "description": "Configures what diagnostic output is produced.",
3762 "default": true,
3763 "oneOf": [
3764 {
3765 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
3766 "type": "boolean"
3767 },
3768 {
3769 "type": "object",
3770 "properties": {
3771 "logFile": {
3772 "description": "Configures where on disk logs are written.",
3773 "type": [
3774 "string",
3775 "null"
3776 ]
3777 },
3778 "stdio": {
3779 "description": "Whether to return trace data from the launched application or browser.",
3780 "type": "boolean"
3781 }
3782 },
3783 "additionalProperties": false
3784 }
3785 ]
3786 }
3787 },
3788 "additionalProperties": false,
3789 "default": {
3790 "program": "node my-server.js"
3791 }
3792 },
3793 {
3794 "description": "JavaScript Debug Terminal",
3795 "type": "object",
3796 "properties": {
3797 "autoAttachChildProcesses": {
3798 "description": "Attach debugger to new child processes automatically.",
3799 "type": "boolean",
3800 "default": true
3801 },
3802 "cascadeTerminateToConfigurations": {
3803 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
3804 "type": "array",
3805 "default": [],
3806 "items": {
3807 "type": "string",
3808 "uniqueItems": true
3809 }
3810 },
3811 "command": {
3812 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
3813 "type": [
3814 "string",
3815 "null"
3816 ],
3817 "default": "npm start",
3818 "tags": [
3819 "setup"
3820 ]
3821 },
3822 "customDescriptionGenerator": {
3823 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
3824 "type": "string"
3825 },
3826 "customPropertiesGenerator": {
3827 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
3828 "type": "string",
3829 "deprecated": true
3830 },
3831 "cwd": {
3832 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
3833 "type": "string",
3834 "default": "${ZED_WORKTREE_ROOT}",
3835 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
3836 "tags": [
3837 "setup"
3838 ]
3839 },
3840 "enableContentValidation": {
3841 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
3842 "type": "boolean",
3843 "default": true
3844 },
3845 "enableDWARF": {
3846 "type": "boolean",
3847 "default": true,
3848 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
3849 },
3850 "env": {
3851 "type": "object",
3852 "additionalProperties": {
3853 "type": [
3854 "string",
3855 "null"
3856 ]
3857 },
3858 "default": {},
3859 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
3860 "tags": [
3861 "setup"
3862 ]
3863 },
3864 "envFile": {
3865 "description": "Absolute path to a file containing environment variable definitions.",
3866 "type": "string",
3867 "default": "${ZED_WORKTREE_ROOT}/.env"
3868 },
3869 "localRoot": {
3870 "description": "Path to the local directory containing the program.",
3871 "type": [
3872 "string",
3873 "null"
3874 ],
3875 "default": null
3876 },
3877 "nodeVersionHint": {
3878 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
3879 "type": "number",
3880 "default": 12,
3881 "minimum": 8
3882 },
3883 "outFiles": {
3884 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
3885 "type": [
3886 "array"
3887 ],
3888 "default": [
3889 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
3890 "!**/node_modules/**"
3891 ],
3892 "items": {
3893 "type": "string"
3894 },
3895 "tags": [
3896 "setup"
3897 ]
3898 },
3899 "outputCapture": {
3900 "default": "console",
3901 "enum": [
3902 "console",
3903 "std"
3904 ],
3905 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
3906 },
3907 "pauseForSourceMap": {
3908 "type": "boolean",
3909 "default": false,
3910 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
3911 },
3912 "remoteRoot": {
3913 "description": "Absolute path to the remote directory containing the program.",
3914 "type": [
3915 "string",
3916 "null"
3917 ],
3918 "default": null
3919 },
3920 "resolveSourceMapLocations": {
3921 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
3922 "type": [
3923 "array",
3924 "null"
3925 ],
3926 "default": [
3927 "${ZED_WORKTREE_ROOT}/**",
3928 "!**/node_modules/**"
3929 ],
3930 "items": {
3931 "type": "string"
3932 }
3933 },
3934 "runtimeSourcemapPausePatterns": {
3935 "type": "array",
3936 "default": [],
3937 "items": {
3938 "type": "string"
3939 },
3940 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
3941 },
3942 "showAsyncStacks": {
3943 "description": "Show the async calls that led to the current call stack.",
3944 "default": true,
3945 "oneOf": [
3946 {
3947 "type": "boolean"
3948 },
3949 {
3950 "type": "object",
3951 "properties": {
3952 "onAttach": {
3953 "type": "number",
3954 "default": 32
3955 }
3956 },
3957 "required": [
3958 "onAttach"
3959 ]
3960 },
3961 {
3962 "type": "object",
3963 "properties": {
3964 "onceBreakpointResolved": {
3965 "type": "number",
3966 "default": 32
3967 }
3968 },
3969 "required": [
3970 "onceBreakpointResolved"
3971 ]
3972 }
3973 ]
3974 },
3975 "skipFiles": {
3976 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
3977 "type": "array",
3978 "default": [
3979 "${/**"
3980 ]
3981 },
3982 "smartStep": {
3983 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
3984 "type": "boolean",
3985 "default": true
3986 },
3987 "sourceMapPathOverrides": {
3988 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
3989 "type": "object",
3990 "default": {
3991 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
3992 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
3993 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
3994 }
3995 },
3996 "sourceMapRenames": {
3997 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
3998 "type": "boolean",
3999 "default": true
4000 },
4001 "sourceMaps": {
4002 "description": "Use JavaScript source maps (if they exist).",
4003 "type": "boolean",
4004 "default": true
4005 },
4006 "timeout": {
4007 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
4008 "type": "number",
4009 "default": 10000
4010 },
4011 "timeouts": {
4012 "description": "Timeouts for several debugger operations.",
4013 "type": "object",
4014 "properties": {
4015 "hoverEvaluation": {
4016 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
4017 "type": "number",
4018 "default": 500
4019 },
4020 "sourceMapCumulativePause": {
4021 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
4022 "type": "number",
4023 "default": 1000
4024 },
4025 "sourceMapMinPause": {
4026 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
4027 "type": "number",
4028 "default": 1000
4029 }
4030 },
4031 "additionalProperties": false,
4032 "default": {},
4033 "markdownDescription": "Timeouts for several debugger operations."
4034 },
4035 "trace": {
4036 "description": "Configures what diagnostic output is produced.",
4037 "default": true,
4038 "oneOf": [
4039 {
4040 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
4041 "type": "boolean"
4042 },
4043 {
4044 "type": "object",
4045 "properties": {
4046 "logFile": {
4047 "description": "Configures where on disk logs are written.",
4048 "type": [
4049 "string",
4050 "null"
4051 ]
4052 },
4053 "stdio": {
4054 "description": "Whether to return trace data from the launched application or browser.",
4055 "type": "boolean"
4056 }
4057 },
4058 "additionalProperties": false
4059 }
4060 ]
4061 }
4062 },
4063 "additionalProperties": false,
4064 "default": {
4065 "program": "npm start"
4066 }
4067 }
4068 ]
4069 },
4070 "showAsyncStacks": {
4071 "description": "Show the async calls that led to the current call stack.",
4072 "default": true,
4073 "oneOf": [
4074 {
4075 "type": "boolean"
4076 },
4077 {
4078 "type": "object",
4079 "properties": {
4080 "onAttach": {
4081 "type": "number",
4082 "default": 32
4083 }
4084 },
4085 "required": [
4086 "onAttach"
4087 ]
4088 },
4089 {
4090 "type": "object",
4091 "properties": {
4092 "onceBreakpointResolved": {
4093 "type": "number",
4094 "default": 32
4095 }
4096 },
4097 "required": [
4098 "onceBreakpointResolved"
4099 ]
4100 }
4101 ]
4102 },
4103 "skipFiles": {
4104 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
4105 "type": "array",
4106 "default": [
4107 "${/**"
4108 ]
4109 },
4110 "smartStep": {
4111 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
4112 "type": "boolean",
4113 "default": true
4114 },
4115 "sourceMapPathOverrides": {
4116 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
4117 "type": "object",
4118 "default": {
4119 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
4120 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
4121 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
4122 }
4123 },
4124 "sourceMapRenames": {
4125 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
4126 "type": "boolean",
4127 "default": true
4128 },
4129 "sourceMaps": {
4130 "description": "Use JavaScript source maps (if they exist).",
4131 "type": "boolean",
4132 "default": true
4133 },
4134 "targetSelection": {
4135 "type": "string",
4136 "default": "automatic",
4137 "enum": [
4138 "pick",
4139 "automatic"
4140 ],
4141 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
4142 },
4143 "timeout": {
4144 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
4145 "type": "number",
4146 "default": 10000
4147 },
4148 "timeouts": {
4149 "description": "Timeouts for several debugger operations.",
4150 "type": "object",
4151 "properties": {
4152 "hoverEvaluation": {
4153 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
4154 "type": "number",
4155 "default": 500
4156 },
4157 "sourceMapCumulativePause": {
4158 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
4159 "type": "number",
4160 "default": 1000
4161 },
4162 "sourceMapMinPause": {
4163 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
4164 "type": "number",
4165 "default": 1000
4166 }
4167 },
4168 "additionalProperties": false,
4169 "default": {},
4170 "markdownDescription": "Timeouts for several debugger operations."
4171 },
4172 "trace": {
4173 "description": "Configures what diagnostic output is produced.",
4174 "default": true,
4175 "oneOf": [
4176 {
4177 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
4178 "type": "boolean"
4179 },
4180 {
4181 "type": "object",
4182 "properties": {
4183 "logFile": {
4184 "description": "Configures where on disk logs are written.",
4185 "type": [
4186 "string",
4187 "null"
4188 ]
4189 },
4190 "stdio": {
4191 "description": "Whether to return trace data from the launched application or browser.",
4192 "type": "boolean"
4193 }
4194 },
4195 "additionalProperties": false
4196 }
4197 ]
4198 },
4199 "url": {
4200 "description": "Will search for a tab with this exact url and attach to it, if found",
4201 "type": "string",
4202 "default": "http://localhost:8080",
4203 "tags": [
4204 "setup"
4205 ]
4206 },
4207 "urlFilter": {
4208 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
4209 "type": "string",
4210 "default": ""
4211 },
4212 "vueComponentPaths": {
4213 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
4214 "type": "array",
4215 "default": [
4216 "${ZED_WORKTREE_ROOT}/**/*.vue"
4217 ]
4218 },
4219 "webRoot": {
4220 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
4221 "type": "string",
4222 "default": "${ZED_WORKTREE_ROOT}",
4223 "tags": [
4224 "setup"
4225 ]
4226 }
4227 },
4228 "default": {
4229 "webRoot": "${ZED_WORKTREE_ROOT}"
4230 },
4231 "markdownDescription": "Chrome launch options used when attaching to the renderer process, with `debugWebviews` or `debugWebWorkerHost`."
4232 },
4233 "resolveSourceMapLocations": {
4234 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
4235 "type": [
4236 "array",
4237 "null"
4238 ],
4239 "default": [
4240 "${ZED_WORKTREE_ROOT}/**",
4241 "!**/node_modules/**"
4242 ],
4243 "items": {
4244 "type": "string"
4245 }
4246 },
4247 "runtimeExecutable": {
4248 "type": [
4249 "string",
4250 "null"
4251 ],
4252 "default": "node",
4253 "markdownDescription": "Absolute path to VS Code."
4254 },
4255 "runtimeSourcemapPausePatterns": {
4256 "type": "array",
4257 "default": [],
4258 "items": {
4259 "type": "string"
4260 },
4261 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
4262 },
4263 "showAsyncStacks": {
4264 "description": "Show the async calls that led to the current call stack.",
4265 "default": true,
4266 "oneOf": [
4267 {
4268 "type": "boolean"
4269 },
4270 {
4271 "type": "object",
4272 "properties": {
4273 "onAttach": {
4274 "type": "number",
4275 "default": 32
4276 }
4277 },
4278 "required": [
4279 "onAttach"
4280 ]
4281 },
4282 {
4283 "type": "object",
4284 "properties": {
4285 "onceBreakpointResolved": {
4286 "type": "number",
4287 "default": 32
4288 }
4289 },
4290 "required": [
4291 "onceBreakpointResolved"
4292 ]
4293 }
4294 ]
4295 },
4296 "skipFiles": {
4297 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
4298 "type": "array",
4299 "default": [
4300 "${/**"
4301 ]
4302 },
4303 "smartStep": {
4304 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
4305 "type": "boolean",
4306 "default": true
4307 },
4308 "sourceMapPathOverrides": {
4309 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
4310 "type": "object",
4311 "default": {
4312 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
4313 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
4314 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
4315 }
4316 },
4317 "sourceMapRenames": {
4318 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
4319 "type": "boolean",
4320 "default": true
4321 },
4322 "sourceMaps": {
4323 "description": "Use JavaScript source maps (if they exist).",
4324 "type": "boolean",
4325 "default": true
4326 },
4327 "testConfiguration": {
4328 "type": "string",
4329 "default": "${ZED_WORKTREE_ROOT}/.vscode-test.js",
4330 "markdownDescription": "Path to a test configuration file for the [test CLI](https://code.visualstudio.com/api/working-with-extensions/testing-extension#quick-setup-the-test-cli)."
4331 },
4332 "testConfigurationLabel": {
4333 "type": "string",
4334 "default": "",
4335 "markdownDescription": "A single configuration to run from the file. If not specified, you may be asked to pick."
4336 },
4337 "timeout": {
4338 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
4339 "type": "number",
4340 "default": 10000
4341 },
4342 "timeouts": {
4343 "description": "Timeouts for several debugger operations.",
4344 "type": "object",
4345 "properties": {
4346 "hoverEvaluation": {
4347 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
4348 "type": "number",
4349 "default": 500
4350 },
4351 "sourceMapCumulativePause": {
4352 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
4353 "type": "number",
4354 "default": 1000
4355 },
4356 "sourceMapMinPause": {
4357 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
4358 "type": "number",
4359 "default": 1000
4360 }
4361 },
4362 "additionalProperties": false,
4363 "default": {},
4364 "markdownDescription": "Timeouts for several debugger operations."
4365 },
4366 "trace": {
4367 "description": "Configures what diagnostic output is produced.",
4368 "default": true,
4369 "oneOf": [
4370 {
4371 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
4372 "type": "boolean"
4373 },
4374 {
4375 "type": "object",
4376 "properties": {
4377 "logFile": {
4378 "description": "Configures where on disk logs are written.",
4379 "type": [
4380 "string",
4381 "null"
4382 ]
4383 },
4384 "stdio": {
4385 "description": "Whether to return trace data from the launched application or browser.",
4386 "type": "boolean"
4387 }
4388 },
4389 "additionalProperties": false
4390 }
4391 ]
4392 }
4393 },
4394 "required": []
4395 }
4396 },
4397 {
4398 "if": {
4399 "properties": {
4400 "type": {
4401 "enum": [
4402 "pwa-chrome"
4403 ]
4404 },
4405 "request": {
4406 "enum": [
4407 "launch"
4408 ]
4409 }
4410 },
4411 "required": [
4412 "type",
4413 "request"
4414 ]
4415 },
4416 "then": {
4417 "properties": {
4418 "browserLaunchLocation": {
4419 "description": "Forces the browser to be launched in one location. In a remote workspace (through ssh or WSL, for example) this can be used to open the browser on the remote machine rather than locally.",
4420 "default": null,
4421 "oneOf": [
4422 {
4423 "type": "null"
4424 },
4425 {
4426 "type": "string",
4427 "enum": [
4428 "ui",
4429 "workspace"
4430 ]
4431 }
4432 ]
4433 },
4434 "cascadeTerminateToConfigurations": {
4435 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
4436 "type": "array",
4437 "default": [],
4438 "items": {
4439 "type": "string",
4440 "uniqueItems": true
4441 }
4442 },
4443 "cleanUp": {
4444 "description": "What clean-up to do after the debugging session finishes. Close only the tab being debug, vs. close the whole browser.",
4445 "type": "string",
4446 "default": "wholeBrowser",
4447 "enum": [
4448 "wholeBrowser",
4449 "onlyTab"
4450 ]
4451 },
4452 "customDescriptionGenerator": {
4453 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
4454 "type": "string"
4455 },
4456 "customPropertiesGenerator": {
4457 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
4458 "type": "string",
4459 "deprecated": true
4460 },
4461 "cwd": {
4462 "description": "Optional working directory for the runtime executable.",
4463 "type": "string",
4464 "default": null
4465 },
4466 "disableNetworkCache": {
4467 "description": "Controls whether to skip the network cache for each request",
4468 "type": "boolean",
4469 "default": true
4470 },
4471 "enableContentValidation": {
4472 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
4473 "type": "boolean",
4474 "default": true
4475 },
4476 "enableDWARF": {
4477 "type": "boolean",
4478 "default": true,
4479 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
4480 },
4481 "env": {
4482 "description": "Optional dictionary of environment key/value pairs for the browser.",
4483 "type": "object",
4484 "default": {}
4485 },
4486 "file": {
4487 "description": "A local html file to open in the browser",
4488 "type": "string",
4489 "default": "${ZED_WORKTREE_ROOT}/index.html",
4490 "tags": [
4491 "setup"
4492 ]
4493 },
4494 "includeDefaultArgs": {
4495 "description": "Whether default browser launch arguments (to disable features that may make debugging harder) will be included in the launch.",
4496 "type": "boolean",
4497 "default": true
4498 },
4499 "includeLaunchArgs": {
4500 "description": "Advanced: whether any default launch/debugging arguments are set on the browser. The debugger will assume the browser will use pipe debugging such as that which is provided with `--remote-debugging-pipe`.",
4501 "type": "boolean",
4502 "default": true
4503 },
4504 "inspectUri": {
4505 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
4506 "type": [
4507 "string",
4508 "null"
4509 ],
4510 "default": null
4511 },
4512 "killBehavior": {
4513 "type": "string",
4514 "default": "forceful",
4515 "enum": [
4516 "forceful",
4517 "polite",
4518 "none"
4519 ],
4520 "markdownDescription": "Configures how browser processes are killed when stopping the session with `cleanUp: wholeBrowser`. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
4521 },
4522 "outFiles": {
4523 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
4524 "type": [
4525 "array"
4526 ],
4527 "default": [
4528 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
4529 "!**/node_modules/**"
4530 ],
4531 "items": {
4532 "type": "string"
4533 },
4534 "tags": [
4535 "setup"
4536 ]
4537 },
4538 "outputCapture": {
4539 "default": "console",
4540 "enum": [
4541 "console",
4542 "std"
4543 ],
4544 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
4545 },
4546 "pathMapping": {
4547 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
4548 "type": "object",
4549 "default": {}
4550 },
4551 "pauseForSourceMap": {
4552 "type": "boolean",
4553 "default": false,
4554 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
4555 },
4556 "perScriptSourcemaps": {
4557 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
4558 "type": "string",
4559 "default": "auto",
4560 "enum": [
4561 "yes",
4562 "no",
4563 "auto"
4564 ]
4565 },
4566 "port": {
4567 "description": "Port for the browser to listen on. Defaults to \"0\", which will cause the browser to be debugged via pipes, which is generally more secure and should be chosen unless you need to attach to the browser from another tool.",
4568 "type": "number",
4569 "default": 0
4570 },
4571 "profileStartup": {
4572 "description": "If true, will start profiling soon as the process launches",
4573 "type": "boolean",
4574 "default": true
4575 },
4576 "resolveSourceMapLocations": {
4577 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
4578 "type": [
4579 "array",
4580 "null"
4581 ],
4582 "default": null,
4583 "items": {
4584 "type": "string"
4585 }
4586 },
4587 "runtimeArgs": {
4588 "description": "Optional arguments passed to the runtime executable.",
4589 "type": "array",
4590 "default": [],
4591 "items": {
4592 "type": "string"
4593 }
4594 },
4595 "runtimeExecutable": {
4596 "description": "Either 'canary', 'stable', 'custom' or path to the browser executable. Custom means a custom wrapper, custom build or CHROME_PATH environment variable.",
4597 "type": [
4598 "string",
4599 "null"
4600 ],
4601 "default": "stable"
4602 },
4603 "server": {
4604 "oneOf": [
4605 {
4606 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
4607 "type": "object",
4608 "properties": {
4609 "args": {
4610 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
4611 "type": [
4612 "array",
4613 "string"
4614 ],
4615 "default": [],
4616 "items": {
4617 "type": "string"
4618 },
4619 "tags": [
4620 "setup"
4621 ]
4622 },
4623 "attachSimplePort": {
4624 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
4625 "default": 9229,
4626 "oneOf": [
4627 {
4628 "type": "integer"
4629 },
4630 {
4631 "type": "string",
4632 "pattern": "^\\${.*}$"
4633 }
4634 ]
4635 },
4636 "autoAttachChildProcesses": {
4637 "description": "Attach debugger to new child processes automatically.",
4638 "type": "boolean",
4639 "default": true
4640 },
4641 "cascadeTerminateToConfigurations": {
4642 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
4643 "type": "array",
4644 "default": [],
4645 "items": {
4646 "type": "string",
4647 "uniqueItems": true
4648 }
4649 },
4650 "console": {
4651 "description": "Where to launch the debug target.",
4652 "type": "string",
4653 "default": "internalConsole",
4654 "enum": [
4655 "internalConsole",
4656 "integratedTerminal",
4657 "externalTerminal"
4658 ],
4659 "enumDescriptions": [
4660 "VS Code Debug Console (which doesn't support to read input from a program)",
4661 "VS Code's integrated terminal",
4662 "External terminal that can be configured via user settings"
4663 ]
4664 },
4665 "customDescriptionGenerator": {
4666 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
4667 "type": "string"
4668 },
4669 "customPropertiesGenerator": {
4670 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
4671 "type": "string",
4672 "deprecated": true
4673 },
4674 "cwd": {
4675 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
4676 "type": "string",
4677 "default": "${ZED_WORKTREE_ROOT}",
4678 "tags": [
4679 "setup"
4680 ]
4681 },
4682 "enableContentValidation": {
4683 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
4684 "type": "boolean",
4685 "default": true
4686 },
4687 "enableDWARF": {
4688 "type": "boolean",
4689 "default": true,
4690 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
4691 },
4692 "env": {
4693 "type": "object",
4694 "additionalProperties": {
4695 "type": [
4696 "string",
4697 "null"
4698 ]
4699 },
4700 "default": {},
4701 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
4702 "tags": [
4703 "setup"
4704 ]
4705 },
4706 "envFile": {
4707 "description": "Absolute path to a file containing environment variable definitions.",
4708 "type": "string",
4709 "default": "${ZED_WORKTREE_ROOT}/.env"
4710 },
4711 "experimentalNetworking": {
4712 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
4713 "type": "string",
4714 "default": "auto",
4715 "enum": [
4716 "auto",
4717 "on",
4718 "off"
4719 ]
4720 },
4721 "killBehavior": {
4722 "type": "string",
4723 "default": "forceful",
4724 "enum": [
4725 "forceful",
4726 "polite",
4727 "none"
4728 ],
4729 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
4730 },
4731 "localRoot": {
4732 "description": "Path to the local directory containing the program.",
4733 "type": [
4734 "string",
4735 "null"
4736 ],
4737 "default": null
4738 },
4739 "nodeVersionHint": {
4740 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
4741 "type": "number",
4742 "default": 12,
4743 "minimum": 8
4744 },
4745 "outFiles": {
4746 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
4747 "type": [
4748 "array"
4749 ],
4750 "default": [
4751 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
4752 "!**/node_modules/**"
4753 ],
4754 "items": {
4755 "type": "string"
4756 },
4757 "tags": [
4758 "setup"
4759 ]
4760 },
4761 "outputCapture": {
4762 "default": "console",
4763 "enum": [
4764 "console",
4765 "std"
4766 ],
4767 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
4768 },
4769 "pauseForSourceMap": {
4770 "type": "boolean",
4771 "default": false,
4772 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
4773 },
4774 "profileStartup": {
4775 "description": "If true, will start profiling as soon as the process launches",
4776 "type": "boolean",
4777 "default": true
4778 },
4779 "program": {
4780 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
4781 "type": "string",
4782 "default": "",
4783 "tags": [
4784 "setup"
4785 ]
4786 },
4787 "remoteRoot": {
4788 "description": "Absolute path to the remote directory containing the program.",
4789 "type": [
4790 "string",
4791 "null"
4792 ],
4793 "default": null
4794 },
4795 "resolveSourceMapLocations": {
4796 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
4797 "type": [
4798 "array",
4799 "null"
4800 ],
4801 "default": [
4802 "${ZED_WORKTREE_ROOT}/**",
4803 "!**/node_modules/**"
4804 ],
4805 "items": {
4806 "type": "string"
4807 }
4808 },
4809 "restart": {
4810 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
4811 "default": true,
4812 "oneOf": [
4813 {
4814 "type": "boolean"
4815 },
4816 {
4817 "type": "object",
4818 "properties": {
4819 "delay": {
4820 "type": "number",
4821 "default": 1000,
4822 "minimum": 0
4823 },
4824 "maxAttempts": {
4825 "type": "number",
4826 "default": 10,
4827 "minimum": 0
4828 }
4829 }
4830 }
4831 ]
4832 },
4833 "runtimeArgs": {
4834 "description": "Optional arguments passed to the runtime executable.",
4835 "type": "array",
4836 "default": [],
4837 "items": {
4838 "type": "string"
4839 },
4840 "tags": [
4841 "setup"
4842 ]
4843 },
4844 "runtimeExecutable": {
4845 "type": [
4846 "string",
4847 "null"
4848 ],
4849 "default": "node",
4850 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
4851 },
4852 "runtimeSourcemapPausePatterns": {
4853 "type": "array",
4854 "default": [],
4855 "items": {
4856 "type": "string"
4857 },
4858 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
4859 },
4860 "runtimeVersion": {
4861 "type": "string",
4862 "default": "default",
4863 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
4864 },
4865 "showAsyncStacks": {
4866 "description": "Show the async calls that led to the current call stack.",
4867 "default": true,
4868 "oneOf": [
4869 {
4870 "type": "boolean"
4871 },
4872 {
4873 "type": "object",
4874 "properties": {
4875 "onAttach": {
4876 "type": "number",
4877 "default": 32
4878 }
4879 },
4880 "required": [
4881 "onAttach"
4882 ]
4883 },
4884 {
4885 "type": "object",
4886 "properties": {
4887 "onceBreakpointResolved": {
4888 "type": "number",
4889 "default": 32
4890 }
4891 },
4892 "required": [
4893 "onceBreakpointResolved"
4894 ]
4895 }
4896 ]
4897 },
4898 "skipFiles": {
4899 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
4900 "type": "array",
4901 "default": [
4902 "${/**"
4903 ]
4904 },
4905 "smartStep": {
4906 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
4907 "type": "boolean",
4908 "default": true
4909 },
4910 "sourceMapPathOverrides": {
4911 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
4912 "type": "object",
4913 "default": {
4914 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
4915 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
4916 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
4917 }
4918 },
4919 "sourceMapRenames": {
4920 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
4921 "type": "boolean",
4922 "default": true
4923 },
4924 "sourceMaps": {
4925 "description": "Use JavaScript source maps (if they exist).",
4926 "type": "boolean",
4927 "default": true
4928 },
4929 "stopOnEntry": {
4930 "description": "Automatically stop program after launch.",
4931 "type": [
4932 "boolean",
4933 "string"
4934 ],
4935 "default": true
4936 },
4937 "timeout": {
4938 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
4939 "type": "number",
4940 "default": 10000
4941 },
4942 "timeouts": {
4943 "description": "Timeouts for several debugger operations.",
4944 "type": "object",
4945 "properties": {
4946 "hoverEvaluation": {
4947 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
4948 "type": "number",
4949 "default": 500
4950 },
4951 "sourceMapCumulativePause": {
4952 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
4953 "type": "number",
4954 "default": 1000
4955 },
4956 "sourceMapMinPause": {
4957 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
4958 "type": "number",
4959 "default": 1000
4960 }
4961 },
4962 "additionalProperties": false,
4963 "default": {},
4964 "markdownDescription": "Timeouts for several debugger operations."
4965 },
4966 "trace": {
4967 "description": "Configures what diagnostic output is produced.",
4968 "default": true,
4969 "oneOf": [
4970 {
4971 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
4972 "type": "boolean"
4973 },
4974 {
4975 "type": "object",
4976 "properties": {
4977 "logFile": {
4978 "description": "Configures where on disk logs are written.",
4979 "type": [
4980 "string",
4981 "null"
4982 ]
4983 },
4984 "stdio": {
4985 "description": "Whether to return trace data from the launched application or browser.",
4986 "type": "boolean"
4987 }
4988 },
4989 "additionalProperties": false
4990 }
4991 ]
4992 }
4993 },
4994 "additionalProperties": false,
4995 "default": {
4996 "program": "node my-server.js"
4997 }
4998 },
4999 {
5000 "description": "JavaScript Debug Terminal",
5001 "type": "object",
5002 "properties": {
5003 "autoAttachChildProcesses": {
5004 "description": "Attach debugger to new child processes automatically.",
5005 "type": "boolean",
5006 "default": true
5007 },
5008 "cascadeTerminateToConfigurations": {
5009 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
5010 "type": "array",
5011 "default": [],
5012 "items": {
5013 "type": "string",
5014 "uniqueItems": true
5015 }
5016 },
5017 "command": {
5018 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
5019 "type": [
5020 "string",
5021 "null"
5022 ],
5023 "default": "npm start",
5024 "tags": [
5025 "setup"
5026 ]
5027 },
5028 "customDescriptionGenerator": {
5029 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
5030 "type": "string"
5031 },
5032 "customPropertiesGenerator": {
5033 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
5034 "type": "string",
5035 "deprecated": true
5036 },
5037 "cwd": {
5038 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
5039 "type": "string",
5040 "default": "${ZED_WORKTREE_ROOT}",
5041 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
5042 "tags": [
5043 "setup"
5044 ]
5045 },
5046 "enableContentValidation": {
5047 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
5048 "type": "boolean",
5049 "default": true
5050 },
5051 "enableDWARF": {
5052 "type": "boolean",
5053 "default": true,
5054 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
5055 },
5056 "env": {
5057 "type": "object",
5058 "additionalProperties": {
5059 "type": [
5060 "string",
5061 "null"
5062 ]
5063 },
5064 "default": {},
5065 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
5066 "tags": [
5067 "setup"
5068 ]
5069 },
5070 "envFile": {
5071 "description": "Absolute path to a file containing environment variable definitions.",
5072 "type": "string",
5073 "default": "${ZED_WORKTREE_ROOT}/.env"
5074 },
5075 "localRoot": {
5076 "description": "Path to the local directory containing the program.",
5077 "type": [
5078 "string",
5079 "null"
5080 ],
5081 "default": null
5082 },
5083 "nodeVersionHint": {
5084 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
5085 "type": "number",
5086 "default": 12,
5087 "minimum": 8
5088 },
5089 "outFiles": {
5090 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
5091 "type": [
5092 "array"
5093 ],
5094 "default": [
5095 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
5096 "!**/node_modules/**"
5097 ],
5098 "items": {
5099 "type": "string"
5100 },
5101 "tags": [
5102 "setup"
5103 ]
5104 },
5105 "outputCapture": {
5106 "default": "console",
5107 "enum": [
5108 "console",
5109 "std"
5110 ],
5111 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
5112 },
5113 "pauseForSourceMap": {
5114 "type": "boolean",
5115 "default": false,
5116 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
5117 },
5118 "remoteRoot": {
5119 "description": "Absolute path to the remote directory containing the program.",
5120 "type": [
5121 "string",
5122 "null"
5123 ],
5124 "default": null
5125 },
5126 "resolveSourceMapLocations": {
5127 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
5128 "type": [
5129 "array",
5130 "null"
5131 ],
5132 "default": [
5133 "${ZED_WORKTREE_ROOT}/**",
5134 "!**/node_modules/**"
5135 ],
5136 "items": {
5137 "type": "string"
5138 }
5139 },
5140 "runtimeSourcemapPausePatterns": {
5141 "type": "array",
5142 "default": [],
5143 "items": {
5144 "type": "string"
5145 },
5146 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
5147 },
5148 "showAsyncStacks": {
5149 "description": "Show the async calls that led to the current call stack.",
5150 "default": true,
5151 "oneOf": [
5152 {
5153 "type": "boolean"
5154 },
5155 {
5156 "type": "object",
5157 "properties": {
5158 "onAttach": {
5159 "type": "number",
5160 "default": 32
5161 }
5162 },
5163 "required": [
5164 "onAttach"
5165 ]
5166 },
5167 {
5168 "type": "object",
5169 "properties": {
5170 "onceBreakpointResolved": {
5171 "type": "number",
5172 "default": 32
5173 }
5174 },
5175 "required": [
5176 "onceBreakpointResolved"
5177 ]
5178 }
5179 ]
5180 },
5181 "skipFiles": {
5182 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
5183 "type": "array",
5184 "default": [
5185 "${/**"
5186 ]
5187 },
5188 "smartStep": {
5189 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
5190 "type": "boolean",
5191 "default": true
5192 },
5193 "sourceMapPathOverrides": {
5194 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
5195 "type": "object",
5196 "default": {
5197 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
5198 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
5199 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
5200 }
5201 },
5202 "sourceMapRenames": {
5203 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
5204 "type": "boolean",
5205 "default": true
5206 },
5207 "sourceMaps": {
5208 "description": "Use JavaScript source maps (if they exist).",
5209 "type": "boolean",
5210 "default": true
5211 },
5212 "timeout": {
5213 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
5214 "type": "number",
5215 "default": 10000
5216 },
5217 "timeouts": {
5218 "description": "Timeouts for several debugger operations.",
5219 "type": "object",
5220 "properties": {
5221 "hoverEvaluation": {
5222 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
5223 "type": "number",
5224 "default": 500
5225 },
5226 "sourceMapCumulativePause": {
5227 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
5228 "type": "number",
5229 "default": 1000
5230 },
5231 "sourceMapMinPause": {
5232 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
5233 "type": "number",
5234 "default": 1000
5235 }
5236 },
5237 "additionalProperties": false,
5238 "default": {},
5239 "markdownDescription": "Timeouts for several debugger operations."
5240 },
5241 "trace": {
5242 "description": "Configures what diagnostic output is produced.",
5243 "default": true,
5244 "oneOf": [
5245 {
5246 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
5247 "type": "boolean"
5248 },
5249 {
5250 "type": "object",
5251 "properties": {
5252 "logFile": {
5253 "description": "Configures where on disk logs are written.",
5254 "type": [
5255 "string",
5256 "null"
5257 ]
5258 },
5259 "stdio": {
5260 "description": "Whether to return trace data from the launched application or browser.",
5261 "type": "boolean"
5262 }
5263 },
5264 "additionalProperties": false
5265 }
5266 ]
5267 }
5268 },
5269 "additionalProperties": false,
5270 "default": {
5271 "program": "npm start"
5272 }
5273 }
5274 ]
5275 },
5276 "showAsyncStacks": {
5277 "description": "Show the async calls that led to the current call stack.",
5278 "default": true,
5279 "oneOf": [
5280 {
5281 "type": "boolean"
5282 },
5283 {
5284 "type": "object",
5285 "properties": {
5286 "onAttach": {
5287 "type": "number",
5288 "default": 32
5289 }
5290 },
5291 "required": [
5292 "onAttach"
5293 ]
5294 },
5295 {
5296 "type": "object",
5297 "properties": {
5298 "onceBreakpointResolved": {
5299 "type": "number",
5300 "default": 32
5301 }
5302 },
5303 "required": [
5304 "onceBreakpointResolved"
5305 ]
5306 }
5307 ]
5308 },
5309 "skipFiles": {
5310 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
5311 "type": "array",
5312 "default": [
5313 "${/**"
5314 ]
5315 },
5316 "smartStep": {
5317 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
5318 "type": "boolean",
5319 "default": true
5320 },
5321 "sourceMapPathOverrides": {
5322 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
5323 "type": "object",
5324 "default": {
5325 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
5326 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
5327 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
5328 }
5329 },
5330 "sourceMapRenames": {
5331 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
5332 "type": "boolean",
5333 "default": true
5334 },
5335 "sourceMaps": {
5336 "description": "Use JavaScript source maps (if they exist).",
5337 "type": "boolean",
5338 "default": true
5339 },
5340 "timeout": {
5341 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
5342 "type": "number",
5343 "default": 10000
5344 },
5345 "timeouts": {
5346 "description": "Timeouts for several debugger operations.",
5347 "type": "object",
5348 "properties": {
5349 "hoverEvaluation": {
5350 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
5351 "type": "number",
5352 "default": 500
5353 },
5354 "sourceMapCumulativePause": {
5355 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
5356 "type": "number",
5357 "default": 1000
5358 },
5359 "sourceMapMinPause": {
5360 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
5361 "type": "number",
5362 "default": 1000
5363 }
5364 },
5365 "additionalProperties": false,
5366 "default": {},
5367 "markdownDescription": "Timeouts for several debugger operations."
5368 },
5369 "trace": {
5370 "description": "Configures what diagnostic output is produced.",
5371 "default": true,
5372 "oneOf": [
5373 {
5374 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
5375 "type": "boolean"
5376 },
5377 {
5378 "type": "object",
5379 "properties": {
5380 "logFile": {
5381 "description": "Configures where on disk logs are written.",
5382 "type": [
5383 "string",
5384 "null"
5385 ]
5386 },
5387 "stdio": {
5388 "description": "Whether to return trace data from the launched application or browser.",
5389 "type": "boolean"
5390 }
5391 },
5392 "additionalProperties": false
5393 }
5394 ]
5395 },
5396 "url": {
5397 "description": "Will search for a tab with this exact url and attach to it, if found",
5398 "type": "string",
5399 "default": "http://localhost:8080",
5400 "tags": [
5401 "setup"
5402 ]
5403 },
5404 "urlFilter": {
5405 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
5406 "type": "string",
5407 "default": ""
5408 },
5409 "userDataDir": {
5410 "description": "By default, the browser is launched with a separate user profile in a temp folder. Use this option to override it. Set to false to launch with your default user profile. A new browser can't be launched if an instance is already running from `userDataDir`.",
5411 "type": [
5412 "string",
5413 "boolean"
5414 ],
5415 "default": true
5416 },
5417 "vueComponentPaths": {
5418 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
5419 "type": "array",
5420 "default": [
5421 "${ZED_WORKTREE_ROOT}/**/*.vue"
5422 ]
5423 },
5424 "webRoot": {
5425 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
5426 "type": "string",
5427 "default": "${ZED_WORKTREE_ROOT}",
5428 "tags": [
5429 "setup"
5430 ]
5431 }
5432 }
5433 }
5434 },
5435 {
5436 "if": {
5437 "properties": {
5438 "type": {
5439 "enum": [
5440 "pwa-chrome"
5441 ]
5442 },
5443 "request": {
5444 "enum": [
5445 "attach"
5446 ]
5447 }
5448 },
5449 "required": [
5450 "type",
5451 "request"
5452 ]
5453 },
5454 "then": {
5455 "properties": {
5456 "address": {
5457 "description": "IP address or hostname the debugged browser is listening on.",
5458 "type": "string",
5459 "default": "localhost"
5460 },
5461 "browserAttachLocation": {
5462 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
5463 "default": null,
5464 "oneOf": [
5465 {
5466 "type": "null"
5467 },
5468 {
5469 "type": "string",
5470 "enum": [
5471 "ui",
5472 "workspace"
5473 ]
5474 }
5475 ]
5476 },
5477 "cascadeTerminateToConfigurations": {
5478 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
5479 "type": "array",
5480 "default": [],
5481 "items": {
5482 "type": "string",
5483 "uniqueItems": true
5484 }
5485 },
5486 "customDescriptionGenerator": {
5487 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
5488 "type": "string"
5489 },
5490 "customPropertiesGenerator": {
5491 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
5492 "type": "string",
5493 "deprecated": true
5494 },
5495 "disableNetworkCache": {
5496 "description": "Controls whether to skip the network cache for each request",
5497 "type": "boolean",
5498 "default": true
5499 },
5500 "enableContentValidation": {
5501 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
5502 "type": "boolean",
5503 "default": true
5504 },
5505 "enableDWARF": {
5506 "type": "boolean",
5507 "default": true,
5508 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
5509 },
5510 "inspectUri": {
5511 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
5512 "type": [
5513 "string",
5514 "null"
5515 ],
5516 "default": null
5517 },
5518 "outFiles": {
5519 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
5520 "type": [
5521 "array"
5522 ],
5523 "default": [
5524 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
5525 "!**/node_modules/**"
5526 ],
5527 "items": {
5528 "type": "string"
5529 },
5530 "tags": [
5531 "setup"
5532 ]
5533 },
5534 "outputCapture": {
5535 "default": "console",
5536 "enum": [
5537 "console",
5538 "std"
5539 ],
5540 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
5541 },
5542 "pathMapping": {
5543 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
5544 "type": "object",
5545 "default": {}
5546 },
5547 "pauseForSourceMap": {
5548 "type": "boolean",
5549 "default": false,
5550 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
5551 },
5552 "perScriptSourcemaps": {
5553 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
5554 "type": "string",
5555 "default": "auto",
5556 "enum": [
5557 "yes",
5558 "no",
5559 "auto"
5560 ]
5561 },
5562 "port": {
5563 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
5564 "default": 9229,
5565 "oneOf": [
5566 {
5567 "type": "integer"
5568 },
5569 {
5570 "type": "string",
5571 "pattern": "^\\${.*}$"
5572 }
5573 ],
5574 "tags": [
5575 "setup"
5576 ]
5577 },
5578 "resolveSourceMapLocations": {
5579 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
5580 "type": [
5581 "array",
5582 "null"
5583 ],
5584 "default": null,
5585 "items": {
5586 "type": "string"
5587 }
5588 },
5589 "restart": {
5590 "type": "boolean",
5591 "default": false,
5592 "markdownDescription": "Whether to reconnect if the browser connection is closed"
5593 },
5594 "server": {
5595 "oneOf": [
5596 {
5597 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
5598 "type": "object",
5599 "properties": {
5600 "args": {
5601 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
5602 "type": [
5603 "array",
5604 "string"
5605 ],
5606 "default": [],
5607 "items": {
5608 "type": "string"
5609 },
5610 "tags": [
5611 "setup"
5612 ]
5613 },
5614 "attachSimplePort": {
5615 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
5616 "default": 9229,
5617 "oneOf": [
5618 {
5619 "type": "integer"
5620 },
5621 {
5622 "type": "string",
5623 "pattern": "^\\${.*}$"
5624 }
5625 ]
5626 },
5627 "autoAttachChildProcesses": {
5628 "description": "Attach debugger to new child processes automatically.",
5629 "type": "boolean",
5630 "default": true
5631 },
5632 "cascadeTerminateToConfigurations": {
5633 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
5634 "type": "array",
5635 "default": [],
5636 "items": {
5637 "type": "string",
5638 "uniqueItems": true
5639 }
5640 },
5641 "console": {
5642 "description": "Where to launch the debug target.",
5643 "type": "string",
5644 "default": "internalConsole",
5645 "enum": [
5646 "internalConsole",
5647 "integratedTerminal",
5648 "externalTerminal"
5649 ],
5650 "enumDescriptions": [
5651 "VS Code Debug Console (which doesn't support to read input from a program)",
5652 "VS Code's integrated terminal",
5653 "External terminal that can be configured via user settings"
5654 ]
5655 },
5656 "customDescriptionGenerator": {
5657 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
5658 "type": "string"
5659 },
5660 "customPropertiesGenerator": {
5661 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
5662 "type": "string",
5663 "deprecated": true
5664 },
5665 "cwd": {
5666 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
5667 "type": "string",
5668 "default": "${ZED_WORKTREE_ROOT}",
5669 "tags": [
5670 "setup"
5671 ]
5672 },
5673 "enableContentValidation": {
5674 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
5675 "type": "boolean",
5676 "default": true
5677 },
5678 "enableDWARF": {
5679 "type": "boolean",
5680 "default": true,
5681 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
5682 },
5683 "env": {
5684 "type": "object",
5685 "additionalProperties": {
5686 "type": [
5687 "string",
5688 "null"
5689 ]
5690 },
5691 "default": {},
5692 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
5693 "tags": [
5694 "setup"
5695 ]
5696 },
5697 "envFile": {
5698 "description": "Absolute path to a file containing environment variable definitions.",
5699 "type": "string",
5700 "default": "${ZED_WORKTREE_ROOT}/.env"
5701 },
5702 "experimentalNetworking": {
5703 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
5704 "type": "string",
5705 "default": "auto",
5706 "enum": [
5707 "auto",
5708 "on",
5709 "off"
5710 ]
5711 },
5712 "killBehavior": {
5713 "type": "string",
5714 "default": "forceful",
5715 "enum": [
5716 "forceful",
5717 "polite",
5718 "none"
5719 ],
5720 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
5721 },
5722 "localRoot": {
5723 "description": "Path to the local directory containing the program.",
5724 "type": [
5725 "string",
5726 "null"
5727 ],
5728 "default": null
5729 },
5730 "nodeVersionHint": {
5731 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
5732 "type": "number",
5733 "default": 12,
5734 "minimum": 8
5735 },
5736 "outFiles": {
5737 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
5738 "type": [
5739 "array"
5740 ],
5741 "default": [
5742 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
5743 "!**/node_modules/**"
5744 ],
5745 "items": {
5746 "type": "string"
5747 },
5748 "tags": [
5749 "setup"
5750 ]
5751 },
5752 "outputCapture": {
5753 "default": "console",
5754 "enum": [
5755 "console",
5756 "std"
5757 ],
5758 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
5759 },
5760 "pauseForSourceMap": {
5761 "type": "boolean",
5762 "default": false,
5763 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
5764 },
5765 "profileStartup": {
5766 "description": "If true, will start profiling as soon as the process launches",
5767 "type": "boolean",
5768 "default": true
5769 },
5770 "program": {
5771 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
5772 "type": "string",
5773 "default": "",
5774 "tags": [
5775 "setup"
5776 ]
5777 },
5778 "remoteRoot": {
5779 "description": "Absolute path to the remote directory containing the program.",
5780 "type": [
5781 "string",
5782 "null"
5783 ],
5784 "default": null
5785 },
5786 "resolveSourceMapLocations": {
5787 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
5788 "type": [
5789 "array",
5790 "null"
5791 ],
5792 "default": [
5793 "${ZED_WORKTREE_ROOT}/**",
5794 "!**/node_modules/**"
5795 ],
5796 "items": {
5797 "type": "string"
5798 }
5799 },
5800 "restart": {
5801 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
5802 "default": true,
5803 "oneOf": [
5804 {
5805 "type": "boolean"
5806 },
5807 {
5808 "type": "object",
5809 "properties": {
5810 "delay": {
5811 "type": "number",
5812 "default": 1000,
5813 "minimum": 0
5814 },
5815 "maxAttempts": {
5816 "type": "number",
5817 "default": 10,
5818 "minimum": 0
5819 }
5820 }
5821 }
5822 ]
5823 },
5824 "runtimeArgs": {
5825 "description": "Optional arguments passed to the runtime executable.",
5826 "type": "array",
5827 "default": [],
5828 "items": {
5829 "type": "string"
5830 },
5831 "tags": [
5832 "setup"
5833 ]
5834 },
5835 "runtimeExecutable": {
5836 "type": [
5837 "string",
5838 "null"
5839 ],
5840 "default": "node",
5841 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
5842 },
5843 "runtimeSourcemapPausePatterns": {
5844 "type": "array",
5845 "default": [],
5846 "items": {
5847 "type": "string"
5848 },
5849 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
5850 },
5851 "runtimeVersion": {
5852 "type": "string",
5853 "default": "default",
5854 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
5855 },
5856 "showAsyncStacks": {
5857 "description": "Show the async calls that led to the current call stack.",
5858 "default": true,
5859 "oneOf": [
5860 {
5861 "type": "boolean"
5862 },
5863 {
5864 "type": "object",
5865 "properties": {
5866 "onAttach": {
5867 "type": "number",
5868 "default": 32
5869 }
5870 },
5871 "required": [
5872 "onAttach"
5873 ]
5874 },
5875 {
5876 "type": "object",
5877 "properties": {
5878 "onceBreakpointResolved": {
5879 "type": "number",
5880 "default": 32
5881 }
5882 },
5883 "required": [
5884 "onceBreakpointResolved"
5885 ]
5886 }
5887 ]
5888 },
5889 "skipFiles": {
5890 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
5891 "type": "array",
5892 "default": [
5893 "${/**"
5894 ]
5895 },
5896 "smartStep": {
5897 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
5898 "type": "boolean",
5899 "default": true
5900 },
5901 "sourceMapPathOverrides": {
5902 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
5903 "type": "object",
5904 "default": {
5905 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
5906 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
5907 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
5908 }
5909 },
5910 "sourceMapRenames": {
5911 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
5912 "type": "boolean",
5913 "default": true
5914 },
5915 "sourceMaps": {
5916 "description": "Use JavaScript source maps (if they exist).",
5917 "type": "boolean",
5918 "default": true
5919 },
5920 "stopOnEntry": {
5921 "description": "Automatically stop program after launch.",
5922 "type": [
5923 "boolean",
5924 "string"
5925 ],
5926 "default": true
5927 },
5928 "timeout": {
5929 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
5930 "type": "number",
5931 "default": 10000
5932 },
5933 "timeouts": {
5934 "description": "Timeouts for several debugger operations.",
5935 "type": "object",
5936 "properties": {
5937 "hoverEvaluation": {
5938 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
5939 "type": "number",
5940 "default": 500
5941 },
5942 "sourceMapCumulativePause": {
5943 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
5944 "type": "number",
5945 "default": 1000
5946 },
5947 "sourceMapMinPause": {
5948 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
5949 "type": "number",
5950 "default": 1000
5951 }
5952 },
5953 "additionalProperties": false,
5954 "default": {},
5955 "markdownDescription": "Timeouts for several debugger operations."
5956 },
5957 "trace": {
5958 "description": "Configures what diagnostic output is produced.",
5959 "default": true,
5960 "oneOf": [
5961 {
5962 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
5963 "type": "boolean"
5964 },
5965 {
5966 "type": "object",
5967 "properties": {
5968 "logFile": {
5969 "description": "Configures where on disk logs are written.",
5970 "type": [
5971 "string",
5972 "null"
5973 ]
5974 },
5975 "stdio": {
5976 "description": "Whether to return trace data from the launched application or browser.",
5977 "type": "boolean"
5978 }
5979 },
5980 "additionalProperties": false
5981 }
5982 ]
5983 }
5984 },
5985 "additionalProperties": false,
5986 "default": {
5987 "program": "node my-server.js"
5988 }
5989 },
5990 {
5991 "description": "JavaScript Debug Terminal",
5992 "type": "object",
5993 "properties": {
5994 "autoAttachChildProcesses": {
5995 "description": "Attach debugger to new child processes automatically.",
5996 "type": "boolean",
5997 "default": true
5998 },
5999 "cascadeTerminateToConfigurations": {
6000 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
6001 "type": "array",
6002 "default": [],
6003 "items": {
6004 "type": "string",
6005 "uniqueItems": true
6006 }
6007 },
6008 "command": {
6009 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
6010 "type": [
6011 "string",
6012 "null"
6013 ],
6014 "default": "npm start",
6015 "tags": [
6016 "setup"
6017 ]
6018 },
6019 "customDescriptionGenerator": {
6020 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
6021 "type": "string"
6022 },
6023 "customPropertiesGenerator": {
6024 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
6025 "type": "string",
6026 "deprecated": true
6027 },
6028 "cwd": {
6029 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
6030 "type": "string",
6031 "default": "${ZED_WORKTREE_ROOT}",
6032 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
6033 "tags": [
6034 "setup"
6035 ]
6036 },
6037 "enableContentValidation": {
6038 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
6039 "type": "boolean",
6040 "default": true
6041 },
6042 "enableDWARF": {
6043 "type": "boolean",
6044 "default": true,
6045 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
6046 },
6047 "env": {
6048 "type": "object",
6049 "additionalProperties": {
6050 "type": [
6051 "string",
6052 "null"
6053 ]
6054 },
6055 "default": {},
6056 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
6057 "tags": [
6058 "setup"
6059 ]
6060 },
6061 "envFile": {
6062 "description": "Absolute path to a file containing environment variable definitions.",
6063 "type": "string",
6064 "default": "${ZED_WORKTREE_ROOT}/.env"
6065 },
6066 "localRoot": {
6067 "description": "Path to the local directory containing the program.",
6068 "type": [
6069 "string",
6070 "null"
6071 ],
6072 "default": null
6073 },
6074 "nodeVersionHint": {
6075 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
6076 "type": "number",
6077 "default": 12,
6078 "minimum": 8
6079 },
6080 "outFiles": {
6081 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
6082 "type": [
6083 "array"
6084 ],
6085 "default": [
6086 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
6087 "!**/node_modules/**"
6088 ],
6089 "items": {
6090 "type": "string"
6091 },
6092 "tags": [
6093 "setup"
6094 ]
6095 },
6096 "outputCapture": {
6097 "default": "console",
6098 "enum": [
6099 "console",
6100 "std"
6101 ],
6102 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
6103 },
6104 "pauseForSourceMap": {
6105 "type": "boolean",
6106 "default": false,
6107 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
6108 },
6109 "remoteRoot": {
6110 "description": "Absolute path to the remote directory containing the program.",
6111 "type": [
6112 "string",
6113 "null"
6114 ],
6115 "default": null
6116 },
6117 "resolveSourceMapLocations": {
6118 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
6119 "type": [
6120 "array",
6121 "null"
6122 ],
6123 "default": [
6124 "${ZED_WORKTREE_ROOT}/**",
6125 "!**/node_modules/**"
6126 ],
6127 "items": {
6128 "type": "string"
6129 }
6130 },
6131 "runtimeSourcemapPausePatterns": {
6132 "type": "array",
6133 "default": [],
6134 "items": {
6135 "type": "string"
6136 },
6137 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
6138 },
6139 "showAsyncStacks": {
6140 "description": "Show the async calls that led to the current call stack.",
6141 "default": true,
6142 "oneOf": [
6143 {
6144 "type": "boolean"
6145 },
6146 {
6147 "type": "object",
6148 "properties": {
6149 "onAttach": {
6150 "type": "number",
6151 "default": 32
6152 }
6153 },
6154 "required": [
6155 "onAttach"
6156 ]
6157 },
6158 {
6159 "type": "object",
6160 "properties": {
6161 "onceBreakpointResolved": {
6162 "type": "number",
6163 "default": 32
6164 }
6165 },
6166 "required": [
6167 "onceBreakpointResolved"
6168 ]
6169 }
6170 ]
6171 },
6172 "skipFiles": {
6173 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
6174 "type": "array",
6175 "default": [
6176 "${/**"
6177 ]
6178 },
6179 "smartStep": {
6180 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
6181 "type": "boolean",
6182 "default": true
6183 },
6184 "sourceMapPathOverrides": {
6185 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
6186 "type": "object",
6187 "default": {
6188 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
6189 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
6190 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
6191 }
6192 },
6193 "sourceMapRenames": {
6194 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
6195 "type": "boolean",
6196 "default": true
6197 },
6198 "sourceMaps": {
6199 "description": "Use JavaScript source maps (if they exist).",
6200 "type": "boolean",
6201 "default": true
6202 },
6203 "timeout": {
6204 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
6205 "type": "number",
6206 "default": 10000
6207 },
6208 "timeouts": {
6209 "description": "Timeouts for several debugger operations.",
6210 "type": "object",
6211 "properties": {
6212 "hoverEvaluation": {
6213 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
6214 "type": "number",
6215 "default": 500
6216 },
6217 "sourceMapCumulativePause": {
6218 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
6219 "type": "number",
6220 "default": 1000
6221 },
6222 "sourceMapMinPause": {
6223 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
6224 "type": "number",
6225 "default": 1000
6226 }
6227 },
6228 "additionalProperties": false,
6229 "default": {},
6230 "markdownDescription": "Timeouts for several debugger operations."
6231 },
6232 "trace": {
6233 "description": "Configures what diagnostic output is produced.",
6234 "default": true,
6235 "oneOf": [
6236 {
6237 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
6238 "type": "boolean"
6239 },
6240 {
6241 "type": "object",
6242 "properties": {
6243 "logFile": {
6244 "description": "Configures where on disk logs are written.",
6245 "type": [
6246 "string",
6247 "null"
6248 ]
6249 },
6250 "stdio": {
6251 "description": "Whether to return trace data from the launched application or browser.",
6252 "type": "boolean"
6253 }
6254 },
6255 "additionalProperties": false
6256 }
6257 ]
6258 }
6259 },
6260 "additionalProperties": false,
6261 "default": {
6262 "program": "npm start"
6263 }
6264 }
6265 ]
6266 },
6267 "showAsyncStacks": {
6268 "description": "Show the async calls that led to the current call stack.",
6269 "default": true,
6270 "oneOf": [
6271 {
6272 "type": "boolean"
6273 },
6274 {
6275 "type": "object",
6276 "properties": {
6277 "onAttach": {
6278 "type": "number",
6279 "default": 32
6280 }
6281 },
6282 "required": [
6283 "onAttach"
6284 ]
6285 },
6286 {
6287 "type": "object",
6288 "properties": {
6289 "onceBreakpointResolved": {
6290 "type": "number",
6291 "default": 32
6292 }
6293 },
6294 "required": [
6295 "onceBreakpointResolved"
6296 ]
6297 }
6298 ]
6299 },
6300 "skipFiles": {
6301 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
6302 "type": "array",
6303 "default": [
6304 "${/**"
6305 ]
6306 },
6307 "smartStep": {
6308 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
6309 "type": "boolean",
6310 "default": true
6311 },
6312 "sourceMapPathOverrides": {
6313 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
6314 "type": "object",
6315 "default": {
6316 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
6317 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
6318 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
6319 }
6320 },
6321 "sourceMapRenames": {
6322 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
6323 "type": "boolean",
6324 "default": true
6325 },
6326 "sourceMaps": {
6327 "description": "Use JavaScript source maps (if they exist).",
6328 "type": "boolean",
6329 "default": true
6330 },
6331 "targetSelection": {
6332 "type": "string",
6333 "default": "automatic",
6334 "enum": [
6335 "pick",
6336 "automatic"
6337 ],
6338 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
6339 },
6340 "timeout": {
6341 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
6342 "type": "number",
6343 "default": 10000
6344 },
6345 "timeouts": {
6346 "description": "Timeouts for several debugger operations.",
6347 "type": "object",
6348 "properties": {
6349 "hoverEvaluation": {
6350 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
6351 "type": "number",
6352 "default": 500
6353 },
6354 "sourceMapCumulativePause": {
6355 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
6356 "type": "number",
6357 "default": 1000
6358 },
6359 "sourceMapMinPause": {
6360 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
6361 "type": "number",
6362 "default": 1000
6363 }
6364 },
6365 "additionalProperties": false,
6366 "default": {},
6367 "markdownDescription": "Timeouts for several debugger operations."
6368 },
6369 "trace": {
6370 "description": "Configures what diagnostic output is produced.",
6371 "default": true,
6372 "oneOf": [
6373 {
6374 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
6375 "type": "boolean"
6376 },
6377 {
6378 "type": "object",
6379 "properties": {
6380 "logFile": {
6381 "description": "Configures where on disk logs are written.",
6382 "type": [
6383 "string",
6384 "null"
6385 ]
6386 },
6387 "stdio": {
6388 "description": "Whether to return trace data from the launched application or browser.",
6389 "type": "boolean"
6390 }
6391 },
6392 "additionalProperties": false
6393 }
6394 ]
6395 },
6396 "url": {
6397 "description": "Will search for a tab with this exact url and attach to it, if found",
6398 "type": "string",
6399 "default": "http://localhost:8080",
6400 "tags": [
6401 "setup"
6402 ]
6403 },
6404 "urlFilter": {
6405 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
6406 "type": "string",
6407 "default": ""
6408 },
6409 "vueComponentPaths": {
6410 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
6411 "type": "array",
6412 "default": [
6413 "${ZED_WORKTREE_ROOT}/**/*.vue"
6414 ]
6415 },
6416 "webRoot": {
6417 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
6418 "type": "string",
6419 "default": "${ZED_WORKTREE_ROOT}",
6420 "tags": [
6421 "setup"
6422 ]
6423 }
6424 }
6425 }
6426 },
6427 {
6428 "if": {
6429 "properties": {
6430 "type": {
6431 "enum": [
6432 "chrome"
6433 ]
6434 },
6435 "request": {
6436 "enum": [
6437 "launch"
6438 ]
6439 }
6440 },
6441 "required": [
6442 "type",
6443 "request"
6444 ]
6445 },
6446 "then": {
6447 "properties": {
6448 "browserLaunchLocation": {
6449 "description": "Forces the browser to be launched in one location. In a remote workspace (through ssh or WSL, for example) this can be used to open the browser on the remote machine rather than locally.",
6450 "default": null,
6451 "oneOf": [
6452 {
6453 "type": "null"
6454 },
6455 {
6456 "type": "string",
6457 "enum": [
6458 "ui",
6459 "workspace"
6460 ]
6461 }
6462 ]
6463 },
6464 "cascadeTerminateToConfigurations": {
6465 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
6466 "type": "array",
6467 "default": [],
6468 "items": {
6469 "type": "string",
6470 "uniqueItems": true
6471 }
6472 },
6473 "cleanUp": {
6474 "description": "What clean-up to do after the debugging session finishes. Close only the tab being debug, vs. close the whole browser.",
6475 "type": "string",
6476 "default": "wholeBrowser",
6477 "enum": [
6478 "wholeBrowser",
6479 "onlyTab"
6480 ]
6481 },
6482 "customDescriptionGenerator": {
6483 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
6484 "type": "string"
6485 },
6486 "customPropertiesGenerator": {
6487 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
6488 "type": "string",
6489 "deprecated": true
6490 },
6491 "cwd": {
6492 "description": "Optional working directory for the runtime executable.",
6493 "type": "string",
6494 "default": null
6495 },
6496 "disableNetworkCache": {
6497 "description": "Controls whether to skip the network cache for each request",
6498 "type": "boolean",
6499 "default": true
6500 },
6501 "enableContentValidation": {
6502 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
6503 "type": "boolean",
6504 "default": true
6505 },
6506 "enableDWARF": {
6507 "type": "boolean",
6508 "default": true,
6509 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
6510 },
6511 "env": {
6512 "description": "Optional dictionary of environment key/value pairs for the browser.",
6513 "type": "object",
6514 "default": {}
6515 },
6516 "file": {
6517 "description": "A local html file to open in the browser",
6518 "type": "string",
6519 "default": "${ZED_WORKTREE_ROOT}/index.html",
6520 "tags": [
6521 "setup"
6522 ]
6523 },
6524 "includeDefaultArgs": {
6525 "description": "Whether default browser launch arguments (to disable features that may make debugging harder) will be included in the launch.",
6526 "type": "boolean",
6527 "default": true
6528 },
6529 "includeLaunchArgs": {
6530 "description": "Advanced: whether any default launch/debugging arguments are set on the browser. The debugger will assume the browser will use pipe debugging such as that which is provided with `--remote-debugging-pipe`.",
6531 "type": "boolean",
6532 "default": true
6533 },
6534 "inspectUri": {
6535 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
6536 "type": [
6537 "string",
6538 "null"
6539 ],
6540 "default": null
6541 },
6542 "killBehavior": {
6543 "type": "string",
6544 "default": "forceful",
6545 "enum": [
6546 "forceful",
6547 "polite",
6548 "none"
6549 ],
6550 "markdownDescription": "Configures how browser processes are killed when stopping the session with `cleanUp: wholeBrowser`. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
6551 },
6552 "outFiles": {
6553 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
6554 "type": [
6555 "array"
6556 ],
6557 "default": [
6558 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
6559 "!**/node_modules/**"
6560 ],
6561 "items": {
6562 "type": "string"
6563 },
6564 "tags": [
6565 "setup"
6566 ]
6567 },
6568 "outputCapture": {
6569 "default": "console",
6570 "enum": [
6571 "console",
6572 "std"
6573 ],
6574 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
6575 },
6576 "pathMapping": {
6577 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
6578 "type": "object",
6579 "default": {}
6580 },
6581 "pauseForSourceMap": {
6582 "type": "boolean",
6583 "default": false,
6584 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
6585 },
6586 "perScriptSourcemaps": {
6587 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
6588 "type": "string",
6589 "default": "auto",
6590 "enum": [
6591 "yes",
6592 "no",
6593 "auto"
6594 ]
6595 },
6596 "port": {
6597 "description": "Port for the browser to listen on. Defaults to \"0\", which will cause the browser to be debugged via pipes, which is generally more secure and should be chosen unless you need to attach to the browser from another tool.",
6598 "type": "number",
6599 "default": 0
6600 },
6601 "profileStartup": {
6602 "description": "If true, will start profiling soon as the process launches",
6603 "type": "boolean",
6604 "default": true
6605 },
6606 "resolveSourceMapLocations": {
6607 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
6608 "type": [
6609 "array",
6610 "null"
6611 ],
6612 "default": null,
6613 "items": {
6614 "type": "string"
6615 }
6616 },
6617 "runtimeArgs": {
6618 "description": "Optional arguments passed to the runtime executable.",
6619 "type": "array",
6620 "default": [],
6621 "items": {
6622 "type": "string"
6623 }
6624 },
6625 "runtimeExecutable": {
6626 "description": "Either 'canary', 'stable', 'custom' or path to the browser executable. Custom means a custom wrapper, custom build or CHROME_PATH environment variable.",
6627 "type": [
6628 "string",
6629 "null"
6630 ],
6631 "default": "stable"
6632 },
6633 "server": {
6634 "oneOf": [
6635 {
6636 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
6637 "type": "object",
6638 "properties": {
6639 "args": {
6640 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
6641 "type": [
6642 "array",
6643 "string"
6644 ],
6645 "default": [],
6646 "items": {
6647 "type": "string"
6648 },
6649 "tags": [
6650 "setup"
6651 ]
6652 },
6653 "attachSimplePort": {
6654 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
6655 "default": 9229,
6656 "oneOf": [
6657 {
6658 "type": "integer"
6659 },
6660 {
6661 "type": "string",
6662 "pattern": "^\\${.*}$"
6663 }
6664 ]
6665 },
6666 "autoAttachChildProcesses": {
6667 "description": "Attach debugger to new child processes automatically.",
6668 "type": "boolean",
6669 "default": true
6670 },
6671 "cascadeTerminateToConfigurations": {
6672 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
6673 "type": "array",
6674 "default": [],
6675 "items": {
6676 "type": "string",
6677 "uniqueItems": true
6678 }
6679 },
6680 "console": {
6681 "description": "Where to launch the debug target.",
6682 "type": "string",
6683 "default": "internalConsole",
6684 "enum": [
6685 "internalConsole",
6686 "integratedTerminal",
6687 "externalTerminal"
6688 ],
6689 "enumDescriptions": [
6690 "VS Code Debug Console (which doesn't support to read input from a program)",
6691 "VS Code's integrated terminal",
6692 "External terminal that can be configured via user settings"
6693 ]
6694 },
6695 "customDescriptionGenerator": {
6696 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
6697 "type": "string"
6698 },
6699 "customPropertiesGenerator": {
6700 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
6701 "type": "string",
6702 "deprecated": true
6703 },
6704 "cwd": {
6705 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
6706 "type": "string",
6707 "default": "${ZED_WORKTREE_ROOT}",
6708 "tags": [
6709 "setup"
6710 ]
6711 },
6712 "enableContentValidation": {
6713 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
6714 "type": "boolean",
6715 "default": true
6716 },
6717 "enableDWARF": {
6718 "type": "boolean",
6719 "default": true,
6720 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
6721 },
6722 "env": {
6723 "type": "object",
6724 "additionalProperties": {
6725 "type": [
6726 "string",
6727 "null"
6728 ]
6729 },
6730 "default": {},
6731 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
6732 "tags": [
6733 "setup"
6734 ]
6735 },
6736 "envFile": {
6737 "description": "Absolute path to a file containing environment variable definitions.",
6738 "type": "string",
6739 "default": "${ZED_WORKTREE_ROOT}/.env"
6740 },
6741 "experimentalNetworking": {
6742 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
6743 "type": "string",
6744 "default": "auto",
6745 "enum": [
6746 "auto",
6747 "on",
6748 "off"
6749 ]
6750 },
6751 "killBehavior": {
6752 "type": "string",
6753 "default": "forceful",
6754 "enum": [
6755 "forceful",
6756 "polite",
6757 "none"
6758 ],
6759 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
6760 },
6761 "localRoot": {
6762 "description": "Path to the local directory containing the program.",
6763 "type": [
6764 "string",
6765 "null"
6766 ],
6767 "default": null
6768 },
6769 "nodeVersionHint": {
6770 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
6771 "type": "number",
6772 "default": 12,
6773 "minimum": 8
6774 },
6775 "outFiles": {
6776 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
6777 "type": [
6778 "array"
6779 ],
6780 "default": [
6781 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
6782 "!**/node_modules/**"
6783 ],
6784 "items": {
6785 "type": "string"
6786 },
6787 "tags": [
6788 "setup"
6789 ]
6790 },
6791 "outputCapture": {
6792 "default": "console",
6793 "enum": [
6794 "console",
6795 "std"
6796 ],
6797 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
6798 },
6799 "pauseForSourceMap": {
6800 "type": "boolean",
6801 "default": false,
6802 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
6803 },
6804 "profileStartup": {
6805 "description": "If true, will start profiling as soon as the process launches",
6806 "type": "boolean",
6807 "default": true
6808 },
6809 "program": {
6810 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
6811 "type": "string",
6812 "default": "",
6813 "tags": [
6814 "setup"
6815 ]
6816 },
6817 "remoteRoot": {
6818 "description": "Absolute path to the remote directory containing the program.",
6819 "type": [
6820 "string",
6821 "null"
6822 ],
6823 "default": null
6824 },
6825 "resolveSourceMapLocations": {
6826 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
6827 "type": [
6828 "array",
6829 "null"
6830 ],
6831 "default": [
6832 "${ZED_WORKTREE_ROOT}/**",
6833 "!**/node_modules/**"
6834 ],
6835 "items": {
6836 "type": "string"
6837 }
6838 },
6839 "restart": {
6840 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
6841 "default": true,
6842 "oneOf": [
6843 {
6844 "type": "boolean"
6845 },
6846 {
6847 "type": "object",
6848 "properties": {
6849 "delay": {
6850 "type": "number",
6851 "default": 1000,
6852 "minimum": 0
6853 },
6854 "maxAttempts": {
6855 "type": "number",
6856 "default": 10,
6857 "minimum": 0
6858 }
6859 }
6860 }
6861 ]
6862 },
6863 "runtimeArgs": {
6864 "description": "Optional arguments passed to the runtime executable.",
6865 "type": "array",
6866 "default": [],
6867 "items": {
6868 "type": "string"
6869 },
6870 "tags": [
6871 "setup"
6872 ]
6873 },
6874 "runtimeExecutable": {
6875 "type": [
6876 "string",
6877 "null"
6878 ],
6879 "default": "node",
6880 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
6881 },
6882 "runtimeSourcemapPausePatterns": {
6883 "type": "array",
6884 "default": [],
6885 "items": {
6886 "type": "string"
6887 },
6888 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
6889 },
6890 "runtimeVersion": {
6891 "type": "string",
6892 "default": "default",
6893 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
6894 },
6895 "showAsyncStacks": {
6896 "description": "Show the async calls that led to the current call stack.",
6897 "default": true,
6898 "oneOf": [
6899 {
6900 "type": "boolean"
6901 },
6902 {
6903 "type": "object",
6904 "properties": {
6905 "onAttach": {
6906 "type": "number",
6907 "default": 32
6908 }
6909 },
6910 "required": [
6911 "onAttach"
6912 ]
6913 },
6914 {
6915 "type": "object",
6916 "properties": {
6917 "onceBreakpointResolved": {
6918 "type": "number",
6919 "default": 32
6920 }
6921 },
6922 "required": [
6923 "onceBreakpointResolved"
6924 ]
6925 }
6926 ]
6927 },
6928 "skipFiles": {
6929 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
6930 "type": "array",
6931 "default": [
6932 "${/**"
6933 ]
6934 },
6935 "smartStep": {
6936 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
6937 "type": "boolean",
6938 "default": true
6939 },
6940 "sourceMapPathOverrides": {
6941 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
6942 "type": "object",
6943 "default": {
6944 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
6945 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
6946 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
6947 }
6948 },
6949 "sourceMapRenames": {
6950 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
6951 "type": "boolean",
6952 "default": true
6953 },
6954 "sourceMaps": {
6955 "description": "Use JavaScript source maps (if they exist).",
6956 "type": "boolean",
6957 "default": true
6958 },
6959 "stopOnEntry": {
6960 "description": "Automatically stop program after launch.",
6961 "type": [
6962 "boolean",
6963 "string"
6964 ],
6965 "default": true
6966 },
6967 "timeout": {
6968 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
6969 "type": "number",
6970 "default": 10000
6971 },
6972 "timeouts": {
6973 "description": "Timeouts for several debugger operations.",
6974 "type": "object",
6975 "properties": {
6976 "hoverEvaluation": {
6977 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
6978 "type": "number",
6979 "default": 500
6980 },
6981 "sourceMapCumulativePause": {
6982 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
6983 "type": "number",
6984 "default": 1000
6985 },
6986 "sourceMapMinPause": {
6987 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
6988 "type": "number",
6989 "default": 1000
6990 }
6991 },
6992 "additionalProperties": false,
6993 "default": {},
6994 "markdownDescription": "Timeouts for several debugger operations."
6995 },
6996 "trace": {
6997 "description": "Configures what diagnostic output is produced.",
6998 "default": true,
6999 "oneOf": [
7000 {
7001 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
7002 "type": "boolean"
7003 },
7004 {
7005 "type": "object",
7006 "properties": {
7007 "logFile": {
7008 "description": "Configures where on disk logs are written.",
7009 "type": [
7010 "string",
7011 "null"
7012 ]
7013 },
7014 "stdio": {
7015 "description": "Whether to return trace data from the launched application or browser.",
7016 "type": "boolean"
7017 }
7018 },
7019 "additionalProperties": false
7020 }
7021 ]
7022 }
7023 },
7024 "additionalProperties": false,
7025 "default": {
7026 "program": "node my-server.js"
7027 }
7028 },
7029 {
7030 "description": "JavaScript Debug Terminal",
7031 "type": "object",
7032 "properties": {
7033 "autoAttachChildProcesses": {
7034 "description": "Attach debugger to new child processes automatically.",
7035 "type": "boolean",
7036 "default": true
7037 },
7038 "cascadeTerminateToConfigurations": {
7039 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
7040 "type": "array",
7041 "default": [],
7042 "items": {
7043 "type": "string",
7044 "uniqueItems": true
7045 }
7046 },
7047 "command": {
7048 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
7049 "type": [
7050 "string",
7051 "null"
7052 ],
7053 "default": "npm start",
7054 "tags": [
7055 "setup"
7056 ]
7057 },
7058 "customDescriptionGenerator": {
7059 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
7060 "type": "string"
7061 },
7062 "customPropertiesGenerator": {
7063 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
7064 "type": "string",
7065 "deprecated": true
7066 },
7067 "cwd": {
7068 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
7069 "type": "string",
7070 "default": "${ZED_WORKTREE_ROOT}",
7071 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
7072 "tags": [
7073 "setup"
7074 ]
7075 },
7076 "enableContentValidation": {
7077 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
7078 "type": "boolean",
7079 "default": true
7080 },
7081 "enableDWARF": {
7082 "type": "boolean",
7083 "default": true,
7084 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
7085 },
7086 "env": {
7087 "type": "object",
7088 "additionalProperties": {
7089 "type": [
7090 "string",
7091 "null"
7092 ]
7093 },
7094 "default": {},
7095 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
7096 "tags": [
7097 "setup"
7098 ]
7099 },
7100 "envFile": {
7101 "description": "Absolute path to a file containing environment variable definitions.",
7102 "type": "string",
7103 "default": "${ZED_WORKTREE_ROOT}/.env"
7104 },
7105 "localRoot": {
7106 "description": "Path to the local directory containing the program.",
7107 "type": [
7108 "string",
7109 "null"
7110 ],
7111 "default": null
7112 },
7113 "nodeVersionHint": {
7114 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
7115 "type": "number",
7116 "default": 12,
7117 "minimum": 8
7118 },
7119 "outFiles": {
7120 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
7121 "type": [
7122 "array"
7123 ],
7124 "default": [
7125 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
7126 "!**/node_modules/**"
7127 ],
7128 "items": {
7129 "type": "string"
7130 },
7131 "tags": [
7132 "setup"
7133 ]
7134 },
7135 "outputCapture": {
7136 "default": "console",
7137 "enum": [
7138 "console",
7139 "std"
7140 ],
7141 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
7142 },
7143 "pauseForSourceMap": {
7144 "type": "boolean",
7145 "default": false,
7146 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
7147 },
7148 "remoteRoot": {
7149 "description": "Absolute path to the remote directory containing the program.",
7150 "type": [
7151 "string",
7152 "null"
7153 ],
7154 "default": null
7155 },
7156 "resolveSourceMapLocations": {
7157 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
7158 "type": [
7159 "array",
7160 "null"
7161 ],
7162 "default": [
7163 "${ZED_WORKTREE_ROOT}/**",
7164 "!**/node_modules/**"
7165 ],
7166 "items": {
7167 "type": "string"
7168 }
7169 },
7170 "runtimeSourcemapPausePatterns": {
7171 "type": "array",
7172 "default": [],
7173 "items": {
7174 "type": "string"
7175 },
7176 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
7177 },
7178 "showAsyncStacks": {
7179 "description": "Show the async calls that led to the current call stack.",
7180 "default": true,
7181 "oneOf": [
7182 {
7183 "type": "boolean"
7184 },
7185 {
7186 "type": "object",
7187 "properties": {
7188 "onAttach": {
7189 "type": "number",
7190 "default": 32
7191 }
7192 },
7193 "required": [
7194 "onAttach"
7195 ]
7196 },
7197 {
7198 "type": "object",
7199 "properties": {
7200 "onceBreakpointResolved": {
7201 "type": "number",
7202 "default": 32
7203 }
7204 },
7205 "required": [
7206 "onceBreakpointResolved"
7207 ]
7208 }
7209 ]
7210 },
7211 "skipFiles": {
7212 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
7213 "type": "array",
7214 "default": [
7215 "${/**"
7216 ]
7217 },
7218 "smartStep": {
7219 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
7220 "type": "boolean",
7221 "default": true
7222 },
7223 "sourceMapPathOverrides": {
7224 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
7225 "type": "object",
7226 "default": {
7227 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
7228 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
7229 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
7230 }
7231 },
7232 "sourceMapRenames": {
7233 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
7234 "type": "boolean",
7235 "default": true
7236 },
7237 "sourceMaps": {
7238 "description": "Use JavaScript source maps (if they exist).",
7239 "type": "boolean",
7240 "default": true
7241 },
7242 "timeout": {
7243 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
7244 "type": "number",
7245 "default": 10000
7246 },
7247 "timeouts": {
7248 "description": "Timeouts for several debugger operations.",
7249 "type": "object",
7250 "properties": {
7251 "hoverEvaluation": {
7252 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
7253 "type": "number",
7254 "default": 500
7255 },
7256 "sourceMapCumulativePause": {
7257 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
7258 "type": "number",
7259 "default": 1000
7260 },
7261 "sourceMapMinPause": {
7262 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
7263 "type": "number",
7264 "default": 1000
7265 }
7266 },
7267 "additionalProperties": false,
7268 "default": {},
7269 "markdownDescription": "Timeouts for several debugger operations."
7270 },
7271 "trace": {
7272 "description": "Configures what diagnostic output is produced.",
7273 "default": true,
7274 "oneOf": [
7275 {
7276 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
7277 "type": "boolean"
7278 },
7279 {
7280 "type": "object",
7281 "properties": {
7282 "logFile": {
7283 "description": "Configures where on disk logs are written.",
7284 "type": [
7285 "string",
7286 "null"
7287 ]
7288 },
7289 "stdio": {
7290 "description": "Whether to return trace data from the launched application or browser.",
7291 "type": "boolean"
7292 }
7293 },
7294 "additionalProperties": false
7295 }
7296 ]
7297 }
7298 },
7299 "additionalProperties": false,
7300 "default": {
7301 "program": "npm start"
7302 }
7303 }
7304 ]
7305 },
7306 "showAsyncStacks": {
7307 "description": "Show the async calls that led to the current call stack.",
7308 "default": true,
7309 "oneOf": [
7310 {
7311 "type": "boolean"
7312 },
7313 {
7314 "type": "object",
7315 "properties": {
7316 "onAttach": {
7317 "type": "number",
7318 "default": 32
7319 }
7320 },
7321 "required": [
7322 "onAttach"
7323 ]
7324 },
7325 {
7326 "type": "object",
7327 "properties": {
7328 "onceBreakpointResolved": {
7329 "type": "number",
7330 "default": 32
7331 }
7332 },
7333 "required": [
7334 "onceBreakpointResolved"
7335 ]
7336 }
7337 ]
7338 },
7339 "skipFiles": {
7340 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
7341 "type": "array",
7342 "default": [
7343 "${/**"
7344 ]
7345 },
7346 "smartStep": {
7347 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
7348 "type": "boolean",
7349 "default": true
7350 },
7351 "sourceMapPathOverrides": {
7352 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
7353 "type": "object",
7354 "default": {
7355 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
7356 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
7357 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
7358 }
7359 },
7360 "sourceMapRenames": {
7361 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
7362 "type": "boolean",
7363 "default": true
7364 },
7365 "sourceMaps": {
7366 "description": "Use JavaScript source maps (if they exist).",
7367 "type": "boolean",
7368 "default": true
7369 },
7370 "timeout": {
7371 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
7372 "type": "number",
7373 "default": 10000
7374 },
7375 "timeouts": {
7376 "description": "Timeouts for several debugger operations.",
7377 "type": "object",
7378 "properties": {
7379 "hoverEvaluation": {
7380 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
7381 "type": "number",
7382 "default": 500
7383 },
7384 "sourceMapCumulativePause": {
7385 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
7386 "type": "number",
7387 "default": 1000
7388 },
7389 "sourceMapMinPause": {
7390 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
7391 "type": "number",
7392 "default": 1000
7393 }
7394 },
7395 "additionalProperties": false,
7396 "default": {},
7397 "markdownDescription": "Timeouts for several debugger operations."
7398 },
7399 "trace": {
7400 "description": "Configures what diagnostic output is produced.",
7401 "default": true,
7402 "oneOf": [
7403 {
7404 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
7405 "type": "boolean"
7406 },
7407 {
7408 "type": "object",
7409 "properties": {
7410 "logFile": {
7411 "description": "Configures where on disk logs are written.",
7412 "type": [
7413 "string",
7414 "null"
7415 ]
7416 },
7417 "stdio": {
7418 "description": "Whether to return trace data from the launched application or browser.",
7419 "type": "boolean"
7420 }
7421 },
7422 "additionalProperties": false
7423 }
7424 ]
7425 },
7426 "url": {
7427 "description": "Will search for a tab with this exact url and attach to it, if found",
7428 "type": "string",
7429 "default": "http://localhost:8080",
7430 "tags": [
7431 "setup"
7432 ]
7433 },
7434 "urlFilter": {
7435 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
7436 "type": "string",
7437 "default": ""
7438 },
7439 "userDataDir": {
7440 "description": "By default, the browser is launched with a separate user profile in a temp folder. Use this option to override it. Set to false to launch with your default user profile. A new browser can't be launched if an instance is already running from `userDataDir`.",
7441 "type": [
7442 "string",
7443 "boolean"
7444 ],
7445 "default": true
7446 },
7447 "vueComponentPaths": {
7448 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
7449 "type": "array",
7450 "default": [
7451 "${ZED_WORKTREE_ROOT}/**/*.vue"
7452 ]
7453 },
7454 "webRoot": {
7455 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
7456 "type": "string",
7457 "default": "${ZED_WORKTREE_ROOT}",
7458 "tags": [
7459 "setup"
7460 ]
7461 }
7462 }
7463 }
7464 },
7465 {
7466 "if": {
7467 "properties": {
7468 "type": {
7469 "enum": [
7470 "chrome"
7471 ]
7472 },
7473 "request": {
7474 "enum": [
7475 "attach"
7476 ]
7477 }
7478 },
7479 "required": [
7480 "type",
7481 "request"
7482 ]
7483 },
7484 "then": {
7485 "properties": {
7486 "address": {
7487 "description": "IP address or hostname the debugged browser is listening on.",
7488 "type": "string",
7489 "default": "localhost"
7490 },
7491 "browserAttachLocation": {
7492 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
7493 "default": null,
7494 "oneOf": [
7495 {
7496 "type": "null"
7497 },
7498 {
7499 "type": "string",
7500 "enum": [
7501 "ui",
7502 "workspace"
7503 ]
7504 }
7505 ]
7506 },
7507 "cascadeTerminateToConfigurations": {
7508 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
7509 "type": "array",
7510 "default": [],
7511 "items": {
7512 "type": "string",
7513 "uniqueItems": true
7514 }
7515 },
7516 "customDescriptionGenerator": {
7517 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
7518 "type": "string"
7519 },
7520 "customPropertiesGenerator": {
7521 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
7522 "type": "string",
7523 "deprecated": true
7524 },
7525 "disableNetworkCache": {
7526 "description": "Controls whether to skip the network cache for each request",
7527 "type": "boolean",
7528 "default": true
7529 },
7530 "enableContentValidation": {
7531 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
7532 "type": "boolean",
7533 "default": true
7534 },
7535 "enableDWARF": {
7536 "type": "boolean",
7537 "default": true,
7538 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
7539 },
7540 "inspectUri": {
7541 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
7542 "type": [
7543 "string",
7544 "null"
7545 ],
7546 "default": null
7547 },
7548 "outFiles": {
7549 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
7550 "type": [
7551 "array"
7552 ],
7553 "default": [
7554 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
7555 "!**/node_modules/**"
7556 ],
7557 "items": {
7558 "type": "string"
7559 },
7560 "tags": [
7561 "setup"
7562 ]
7563 },
7564 "outputCapture": {
7565 "default": "console",
7566 "enum": [
7567 "console",
7568 "std"
7569 ],
7570 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
7571 },
7572 "pathMapping": {
7573 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
7574 "type": "object",
7575 "default": {}
7576 },
7577 "pauseForSourceMap": {
7578 "type": "boolean",
7579 "default": false,
7580 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
7581 },
7582 "perScriptSourcemaps": {
7583 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
7584 "type": "string",
7585 "default": "auto",
7586 "enum": [
7587 "yes",
7588 "no",
7589 "auto"
7590 ]
7591 },
7592 "port": {
7593 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
7594 "default": 9229,
7595 "oneOf": [
7596 {
7597 "type": "integer"
7598 },
7599 {
7600 "type": "string",
7601 "pattern": "^\\${.*}$"
7602 }
7603 ],
7604 "tags": [
7605 "setup"
7606 ]
7607 },
7608 "resolveSourceMapLocations": {
7609 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
7610 "type": [
7611 "array",
7612 "null"
7613 ],
7614 "default": null,
7615 "items": {
7616 "type": "string"
7617 }
7618 },
7619 "restart": {
7620 "type": "boolean",
7621 "default": false,
7622 "markdownDescription": "Whether to reconnect if the browser connection is closed"
7623 },
7624 "server": {
7625 "oneOf": [
7626 {
7627 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
7628 "type": "object",
7629 "properties": {
7630 "args": {
7631 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
7632 "type": [
7633 "array",
7634 "string"
7635 ],
7636 "default": [],
7637 "items": {
7638 "type": "string"
7639 },
7640 "tags": [
7641 "setup"
7642 ]
7643 },
7644 "attachSimplePort": {
7645 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
7646 "default": 9229,
7647 "oneOf": [
7648 {
7649 "type": "integer"
7650 },
7651 {
7652 "type": "string",
7653 "pattern": "^\\${.*}$"
7654 }
7655 ]
7656 },
7657 "autoAttachChildProcesses": {
7658 "description": "Attach debugger to new child processes automatically.",
7659 "type": "boolean",
7660 "default": true
7661 },
7662 "cascadeTerminateToConfigurations": {
7663 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
7664 "type": "array",
7665 "default": [],
7666 "items": {
7667 "type": "string",
7668 "uniqueItems": true
7669 }
7670 },
7671 "console": {
7672 "description": "Where to launch the debug target.",
7673 "type": "string",
7674 "default": "internalConsole",
7675 "enum": [
7676 "internalConsole",
7677 "integratedTerminal",
7678 "externalTerminal"
7679 ],
7680 "enumDescriptions": [
7681 "VS Code Debug Console (which doesn't support to read input from a program)",
7682 "VS Code's integrated terminal",
7683 "External terminal that can be configured via user settings"
7684 ]
7685 },
7686 "customDescriptionGenerator": {
7687 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
7688 "type": "string"
7689 },
7690 "customPropertiesGenerator": {
7691 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
7692 "type": "string",
7693 "deprecated": true
7694 },
7695 "cwd": {
7696 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
7697 "type": "string",
7698 "default": "${ZED_WORKTREE_ROOT}",
7699 "tags": [
7700 "setup"
7701 ]
7702 },
7703 "enableContentValidation": {
7704 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
7705 "type": "boolean",
7706 "default": true
7707 },
7708 "enableDWARF": {
7709 "type": "boolean",
7710 "default": true,
7711 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
7712 },
7713 "env": {
7714 "type": "object",
7715 "additionalProperties": {
7716 "type": [
7717 "string",
7718 "null"
7719 ]
7720 },
7721 "default": {},
7722 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
7723 "tags": [
7724 "setup"
7725 ]
7726 },
7727 "envFile": {
7728 "description": "Absolute path to a file containing environment variable definitions.",
7729 "type": "string",
7730 "default": "${ZED_WORKTREE_ROOT}/.env"
7731 },
7732 "experimentalNetworking": {
7733 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
7734 "type": "string",
7735 "default": "auto",
7736 "enum": [
7737 "auto",
7738 "on",
7739 "off"
7740 ]
7741 },
7742 "killBehavior": {
7743 "type": "string",
7744 "default": "forceful",
7745 "enum": [
7746 "forceful",
7747 "polite",
7748 "none"
7749 ],
7750 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
7751 },
7752 "localRoot": {
7753 "description": "Path to the local directory containing the program.",
7754 "type": [
7755 "string",
7756 "null"
7757 ],
7758 "default": null
7759 },
7760 "nodeVersionHint": {
7761 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
7762 "type": "number",
7763 "default": 12,
7764 "minimum": 8
7765 },
7766 "outFiles": {
7767 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
7768 "type": [
7769 "array"
7770 ],
7771 "default": [
7772 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
7773 "!**/node_modules/**"
7774 ],
7775 "items": {
7776 "type": "string"
7777 },
7778 "tags": [
7779 "setup"
7780 ]
7781 },
7782 "outputCapture": {
7783 "default": "console",
7784 "enum": [
7785 "console",
7786 "std"
7787 ],
7788 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
7789 },
7790 "pauseForSourceMap": {
7791 "type": "boolean",
7792 "default": false,
7793 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
7794 },
7795 "profileStartup": {
7796 "description": "If true, will start profiling as soon as the process launches",
7797 "type": "boolean",
7798 "default": true
7799 },
7800 "program": {
7801 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
7802 "type": "string",
7803 "default": "",
7804 "tags": [
7805 "setup"
7806 ]
7807 },
7808 "remoteRoot": {
7809 "description": "Absolute path to the remote directory containing the program.",
7810 "type": [
7811 "string",
7812 "null"
7813 ],
7814 "default": null
7815 },
7816 "resolveSourceMapLocations": {
7817 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
7818 "type": [
7819 "array",
7820 "null"
7821 ],
7822 "default": [
7823 "${ZED_WORKTREE_ROOT}/**",
7824 "!**/node_modules/**"
7825 ],
7826 "items": {
7827 "type": "string"
7828 }
7829 },
7830 "restart": {
7831 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
7832 "default": true,
7833 "oneOf": [
7834 {
7835 "type": "boolean"
7836 },
7837 {
7838 "type": "object",
7839 "properties": {
7840 "delay": {
7841 "type": "number",
7842 "default": 1000,
7843 "minimum": 0
7844 },
7845 "maxAttempts": {
7846 "type": "number",
7847 "default": 10,
7848 "minimum": 0
7849 }
7850 }
7851 }
7852 ]
7853 },
7854 "runtimeArgs": {
7855 "description": "Optional arguments passed to the runtime executable.",
7856 "type": "array",
7857 "default": [],
7858 "items": {
7859 "type": "string"
7860 },
7861 "tags": [
7862 "setup"
7863 ]
7864 },
7865 "runtimeExecutable": {
7866 "type": [
7867 "string",
7868 "null"
7869 ],
7870 "default": "node",
7871 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
7872 },
7873 "runtimeSourcemapPausePatterns": {
7874 "type": "array",
7875 "default": [],
7876 "items": {
7877 "type": "string"
7878 },
7879 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
7880 },
7881 "runtimeVersion": {
7882 "type": "string",
7883 "default": "default",
7884 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
7885 },
7886 "showAsyncStacks": {
7887 "description": "Show the async calls that led to the current call stack.",
7888 "default": true,
7889 "oneOf": [
7890 {
7891 "type": "boolean"
7892 },
7893 {
7894 "type": "object",
7895 "properties": {
7896 "onAttach": {
7897 "type": "number",
7898 "default": 32
7899 }
7900 },
7901 "required": [
7902 "onAttach"
7903 ]
7904 },
7905 {
7906 "type": "object",
7907 "properties": {
7908 "onceBreakpointResolved": {
7909 "type": "number",
7910 "default": 32
7911 }
7912 },
7913 "required": [
7914 "onceBreakpointResolved"
7915 ]
7916 }
7917 ]
7918 },
7919 "skipFiles": {
7920 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
7921 "type": "array",
7922 "default": [
7923 "${/**"
7924 ]
7925 },
7926 "smartStep": {
7927 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
7928 "type": "boolean",
7929 "default": true
7930 },
7931 "sourceMapPathOverrides": {
7932 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
7933 "type": "object",
7934 "default": {
7935 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
7936 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
7937 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
7938 }
7939 },
7940 "sourceMapRenames": {
7941 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
7942 "type": "boolean",
7943 "default": true
7944 },
7945 "sourceMaps": {
7946 "description": "Use JavaScript source maps (if they exist).",
7947 "type": "boolean",
7948 "default": true
7949 },
7950 "stopOnEntry": {
7951 "description": "Automatically stop program after launch.",
7952 "type": [
7953 "boolean",
7954 "string"
7955 ],
7956 "default": true
7957 },
7958 "timeout": {
7959 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
7960 "type": "number",
7961 "default": 10000
7962 },
7963 "timeouts": {
7964 "description": "Timeouts for several debugger operations.",
7965 "type": "object",
7966 "properties": {
7967 "hoverEvaluation": {
7968 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
7969 "type": "number",
7970 "default": 500
7971 },
7972 "sourceMapCumulativePause": {
7973 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
7974 "type": "number",
7975 "default": 1000
7976 },
7977 "sourceMapMinPause": {
7978 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
7979 "type": "number",
7980 "default": 1000
7981 }
7982 },
7983 "additionalProperties": false,
7984 "default": {},
7985 "markdownDescription": "Timeouts for several debugger operations."
7986 },
7987 "trace": {
7988 "description": "Configures what diagnostic output is produced.",
7989 "default": true,
7990 "oneOf": [
7991 {
7992 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
7993 "type": "boolean"
7994 },
7995 {
7996 "type": "object",
7997 "properties": {
7998 "logFile": {
7999 "description": "Configures where on disk logs are written.",
8000 "type": [
8001 "string",
8002 "null"
8003 ]
8004 },
8005 "stdio": {
8006 "description": "Whether to return trace data from the launched application or browser.",
8007 "type": "boolean"
8008 }
8009 },
8010 "additionalProperties": false
8011 }
8012 ]
8013 }
8014 },
8015 "additionalProperties": false,
8016 "default": {
8017 "program": "node my-server.js"
8018 }
8019 },
8020 {
8021 "description": "JavaScript Debug Terminal",
8022 "type": "object",
8023 "properties": {
8024 "autoAttachChildProcesses": {
8025 "description": "Attach debugger to new child processes automatically.",
8026 "type": "boolean",
8027 "default": true
8028 },
8029 "cascadeTerminateToConfigurations": {
8030 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
8031 "type": "array",
8032 "default": [],
8033 "items": {
8034 "type": "string",
8035 "uniqueItems": true
8036 }
8037 },
8038 "command": {
8039 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
8040 "type": [
8041 "string",
8042 "null"
8043 ],
8044 "default": "npm start",
8045 "tags": [
8046 "setup"
8047 ]
8048 },
8049 "customDescriptionGenerator": {
8050 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
8051 "type": "string"
8052 },
8053 "customPropertiesGenerator": {
8054 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
8055 "type": "string",
8056 "deprecated": true
8057 },
8058 "cwd": {
8059 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
8060 "type": "string",
8061 "default": "${ZED_WORKTREE_ROOT}",
8062 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
8063 "tags": [
8064 "setup"
8065 ]
8066 },
8067 "enableContentValidation": {
8068 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
8069 "type": "boolean",
8070 "default": true
8071 },
8072 "enableDWARF": {
8073 "type": "boolean",
8074 "default": true,
8075 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
8076 },
8077 "env": {
8078 "type": "object",
8079 "additionalProperties": {
8080 "type": [
8081 "string",
8082 "null"
8083 ]
8084 },
8085 "default": {},
8086 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
8087 "tags": [
8088 "setup"
8089 ]
8090 },
8091 "envFile": {
8092 "description": "Absolute path to a file containing environment variable definitions.",
8093 "type": "string",
8094 "default": "${ZED_WORKTREE_ROOT}/.env"
8095 },
8096 "localRoot": {
8097 "description": "Path to the local directory containing the program.",
8098 "type": [
8099 "string",
8100 "null"
8101 ],
8102 "default": null
8103 },
8104 "nodeVersionHint": {
8105 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
8106 "type": "number",
8107 "default": 12,
8108 "minimum": 8
8109 },
8110 "outFiles": {
8111 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
8112 "type": [
8113 "array"
8114 ],
8115 "default": [
8116 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
8117 "!**/node_modules/**"
8118 ],
8119 "items": {
8120 "type": "string"
8121 },
8122 "tags": [
8123 "setup"
8124 ]
8125 },
8126 "outputCapture": {
8127 "default": "console",
8128 "enum": [
8129 "console",
8130 "std"
8131 ],
8132 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
8133 },
8134 "pauseForSourceMap": {
8135 "type": "boolean",
8136 "default": false,
8137 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
8138 },
8139 "remoteRoot": {
8140 "description": "Absolute path to the remote directory containing the program.",
8141 "type": [
8142 "string",
8143 "null"
8144 ],
8145 "default": null
8146 },
8147 "resolveSourceMapLocations": {
8148 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
8149 "type": [
8150 "array",
8151 "null"
8152 ],
8153 "default": [
8154 "${ZED_WORKTREE_ROOT}/**",
8155 "!**/node_modules/**"
8156 ],
8157 "items": {
8158 "type": "string"
8159 }
8160 },
8161 "runtimeSourcemapPausePatterns": {
8162 "type": "array",
8163 "default": [],
8164 "items": {
8165 "type": "string"
8166 },
8167 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
8168 },
8169 "showAsyncStacks": {
8170 "description": "Show the async calls that led to the current call stack.",
8171 "default": true,
8172 "oneOf": [
8173 {
8174 "type": "boolean"
8175 },
8176 {
8177 "type": "object",
8178 "properties": {
8179 "onAttach": {
8180 "type": "number",
8181 "default": 32
8182 }
8183 },
8184 "required": [
8185 "onAttach"
8186 ]
8187 },
8188 {
8189 "type": "object",
8190 "properties": {
8191 "onceBreakpointResolved": {
8192 "type": "number",
8193 "default": 32
8194 }
8195 },
8196 "required": [
8197 "onceBreakpointResolved"
8198 ]
8199 }
8200 ]
8201 },
8202 "skipFiles": {
8203 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
8204 "type": "array",
8205 "default": [
8206 "${/**"
8207 ]
8208 },
8209 "smartStep": {
8210 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
8211 "type": "boolean",
8212 "default": true
8213 },
8214 "sourceMapPathOverrides": {
8215 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
8216 "type": "object",
8217 "default": {
8218 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
8219 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
8220 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
8221 }
8222 },
8223 "sourceMapRenames": {
8224 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
8225 "type": "boolean",
8226 "default": true
8227 },
8228 "sourceMaps": {
8229 "description": "Use JavaScript source maps (if they exist).",
8230 "type": "boolean",
8231 "default": true
8232 },
8233 "timeout": {
8234 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
8235 "type": "number",
8236 "default": 10000
8237 },
8238 "timeouts": {
8239 "description": "Timeouts for several debugger operations.",
8240 "type": "object",
8241 "properties": {
8242 "hoverEvaluation": {
8243 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
8244 "type": "number",
8245 "default": 500
8246 },
8247 "sourceMapCumulativePause": {
8248 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
8249 "type": "number",
8250 "default": 1000
8251 },
8252 "sourceMapMinPause": {
8253 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
8254 "type": "number",
8255 "default": 1000
8256 }
8257 },
8258 "additionalProperties": false,
8259 "default": {},
8260 "markdownDescription": "Timeouts for several debugger operations."
8261 },
8262 "trace": {
8263 "description": "Configures what diagnostic output is produced.",
8264 "default": true,
8265 "oneOf": [
8266 {
8267 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
8268 "type": "boolean"
8269 },
8270 {
8271 "type": "object",
8272 "properties": {
8273 "logFile": {
8274 "description": "Configures where on disk logs are written.",
8275 "type": [
8276 "string",
8277 "null"
8278 ]
8279 },
8280 "stdio": {
8281 "description": "Whether to return trace data from the launched application or browser.",
8282 "type": "boolean"
8283 }
8284 },
8285 "additionalProperties": false
8286 }
8287 ]
8288 }
8289 },
8290 "additionalProperties": false,
8291 "default": {
8292 "program": "npm start"
8293 }
8294 }
8295 ]
8296 },
8297 "showAsyncStacks": {
8298 "description": "Show the async calls that led to the current call stack.",
8299 "default": true,
8300 "oneOf": [
8301 {
8302 "type": "boolean"
8303 },
8304 {
8305 "type": "object",
8306 "properties": {
8307 "onAttach": {
8308 "type": "number",
8309 "default": 32
8310 }
8311 },
8312 "required": [
8313 "onAttach"
8314 ]
8315 },
8316 {
8317 "type": "object",
8318 "properties": {
8319 "onceBreakpointResolved": {
8320 "type": "number",
8321 "default": 32
8322 }
8323 },
8324 "required": [
8325 "onceBreakpointResolved"
8326 ]
8327 }
8328 ]
8329 },
8330 "skipFiles": {
8331 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
8332 "type": "array",
8333 "default": [
8334 "${/**"
8335 ]
8336 },
8337 "smartStep": {
8338 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
8339 "type": "boolean",
8340 "default": true
8341 },
8342 "sourceMapPathOverrides": {
8343 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
8344 "type": "object",
8345 "default": {
8346 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
8347 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
8348 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
8349 }
8350 },
8351 "sourceMapRenames": {
8352 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
8353 "type": "boolean",
8354 "default": true
8355 },
8356 "sourceMaps": {
8357 "description": "Use JavaScript source maps (if they exist).",
8358 "type": "boolean",
8359 "default": true
8360 },
8361 "targetSelection": {
8362 "type": "string",
8363 "default": "automatic",
8364 "enum": [
8365 "pick",
8366 "automatic"
8367 ],
8368 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
8369 },
8370 "timeout": {
8371 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
8372 "type": "number",
8373 "default": 10000
8374 },
8375 "timeouts": {
8376 "description": "Timeouts for several debugger operations.",
8377 "type": "object",
8378 "properties": {
8379 "hoverEvaluation": {
8380 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
8381 "type": "number",
8382 "default": 500
8383 },
8384 "sourceMapCumulativePause": {
8385 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
8386 "type": "number",
8387 "default": 1000
8388 },
8389 "sourceMapMinPause": {
8390 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
8391 "type": "number",
8392 "default": 1000
8393 }
8394 },
8395 "additionalProperties": false,
8396 "default": {},
8397 "markdownDescription": "Timeouts for several debugger operations."
8398 },
8399 "trace": {
8400 "description": "Configures what diagnostic output is produced.",
8401 "default": true,
8402 "oneOf": [
8403 {
8404 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
8405 "type": "boolean"
8406 },
8407 {
8408 "type": "object",
8409 "properties": {
8410 "logFile": {
8411 "description": "Configures where on disk logs are written.",
8412 "type": [
8413 "string",
8414 "null"
8415 ]
8416 },
8417 "stdio": {
8418 "description": "Whether to return trace data from the launched application or browser.",
8419 "type": "boolean"
8420 }
8421 },
8422 "additionalProperties": false
8423 }
8424 ]
8425 },
8426 "url": {
8427 "description": "Will search for a tab with this exact url and attach to it, if found",
8428 "type": "string",
8429 "default": "http://localhost:8080",
8430 "tags": [
8431 "setup"
8432 ]
8433 },
8434 "urlFilter": {
8435 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
8436 "type": "string",
8437 "default": ""
8438 },
8439 "vueComponentPaths": {
8440 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
8441 "type": "array",
8442 "default": [
8443 "${ZED_WORKTREE_ROOT}/**/*.vue"
8444 ]
8445 },
8446 "webRoot": {
8447 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
8448 "type": "string",
8449 "default": "${ZED_WORKTREE_ROOT}",
8450 "tags": [
8451 "setup"
8452 ]
8453 }
8454 }
8455 }
8456 },
8457 {
8458 "if": {
8459 "properties": {
8460 "type": {
8461 "enum": [
8462 "pwa-msedge"
8463 ]
8464 },
8465 "request": {
8466 "enum": [
8467 "launch"
8468 ]
8469 }
8470 },
8471 "required": [
8472 "type",
8473 "request"
8474 ]
8475 },
8476 "then": {
8477 "properties": {
8478 "address": {
8479 "description": "When debugging webviews, the IP address or hostname the webview is listening on. Will be automatically discovered if not set.",
8480 "type": "string",
8481 "default": "localhost"
8482 },
8483 "browserLaunchLocation": {
8484 "description": "Forces the browser to be launched in one location. In a remote workspace (through ssh or WSL, for example) this can be used to open the browser on the remote machine rather than locally.",
8485 "default": null,
8486 "oneOf": [
8487 {
8488 "type": "null"
8489 },
8490 {
8491 "type": "string",
8492 "enum": [
8493 "ui",
8494 "workspace"
8495 ]
8496 }
8497 ]
8498 },
8499 "cascadeTerminateToConfigurations": {
8500 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
8501 "type": "array",
8502 "default": [],
8503 "items": {
8504 "type": "string",
8505 "uniqueItems": true
8506 }
8507 },
8508 "cleanUp": {
8509 "description": "What clean-up to do after the debugging session finishes. Close only the tab being debug, vs. close the whole browser.",
8510 "type": "string",
8511 "default": "wholeBrowser",
8512 "enum": [
8513 "wholeBrowser",
8514 "onlyTab"
8515 ]
8516 },
8517 "customDescriptionGenerator": {
8518 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
8519 "type": "string"
8520 },
8521 "customPropertiesGenerator": {
8522 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
8523 "type": "string",
8524 "deprecated": true
8525 },
8526 "cwd": {
8527 "description": "Optional working directory for the runtime executable.",
8528 "type": "string",
8529 "default": null
8530 },
8531 "disableNetworkCache": {
8532 "description": "Controls whether to skip the network cache for each request",
8533 "type": "boolean",
8534 "default": true
8535 },
8536 "enableContentValidation": {
8537 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
8538 "type": "boolean",
8539 "default": true
8540 },
8541 "enableDWARF": {
8542 "type": "boolean",
8543 "default": true,
8544 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
8545 },
8546 "env": {
8547 "description": "Optional dictionary of environment key/value pairs for the browser.",
8548 "type": "object",
8549 "default": {}
8550 },
8551 "file": {
8552 "description": "A local html file to open in the browser",
8553 "type": "string",
8554 "default": "${ZED_WORKTREE_ROOT}/index.html",
8555 "tags": [
8556 "setup"
8557 ]
8558 },
8559 "includeDefaultArgs": {
8560 "description": "Whether default browser launch arguments (to disable features that may make debugging harder) will be included in the launch.",
8561 "type": "boolean",
8562 "default": true
8563 },
8564 "includeLaunchArgs": {
8565 "description": "Advanced: whether any default launch/debugging arguments are set on the browser. The debugger will assume the browser will use pipe debugging such as that which is provided with `--remote-debugging-pipe`.",
8566 "type": "boolean",
8567 "default": true
8568 },
8569 "inspectUri": {
8570 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
8571 "type": [
8572 "string",
8573 "null"
8574 ],
8575 "default": null
8576 },
8577 "killBehavior": {
8578 "type": "string",
8579 "default": "forceful",
8580 "enum": [
8581 "forceful",
8582 "polite",
8583 "none"
8584 ],
8585 "markdownDescription": "Configures how browser processes are killed when stopping the session with `cleanUp: wholeBrowser`. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
8586 },
8587 "outFiles": {
8588 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
8589 "type": [
8590 "array"
8591 ],
8592 "default": [
8593 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
8594 "!**/node_modules/**"
8595 ],
8596 "items": {
8597 "type": "string"
8598 },
8599 "tags": [
8600 "setup"
8601 ]
8602 },
8603 "outputCapture": {
8604 "default": "console",
8605 "enum": [
8606 "console",
8607 "std"
8608 ],
8609 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
8610 },
8611 "pathMapping": {
8612 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
8613 "type": "object",
8614 "default": {}
8615 },
8616 "pauseForSourceMap": {
8617 "type": "boolean",
8618 "default": false,
8619 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
8620 },
8621 "perScriptSourcemaps": {
8622 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
8623 "type": "string",
8624 "default": "auto",
8625 "enum": [
8626 "yes",
8627 "no",
8628 "auto"
8629 ]
8630 },
8631 "port": {
8632 "description": "When debugging webviews, the port the webview debugger is listening on. Will be automatically discovered if not set.",
8633 "type": "number",
8634 "default": 9229
8635 },
8636 "profileStartup": {
8637 "description": "If true, will start profiling soon as the process launches",
8638 "type": "boolean",
8639 "default": true
8640 },
8641 "resolveSourceMapLocations": {
8642 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
8643 "type": [
8644 "array",
8645 "null"
8646 ],
8647 "default": null,
8648 "items": {
8649 "type": "string"
8650 }
8651 },
8652 "runtimeArgs": {
8653 "description": "Optional arguments passed to the runtime executable.",
8654 "type": "array",
8655 "default": [],
8656 "items": {
8657 "type": "string"
8658 }
8659 },
8660 "runtimeExecutable": {
8661 "description": "Either 'canary', 'stable', 'dev', 'custom' or path to the browser executable. Custom means a custom wrapper, custom build or EDGE_PATH environment variable.",
8662 "type": [
8663 "string",
8664 "null"
8665 ],
8666 "default": "stable"
8667 },
8668 "server": {
8669 "oneOf": [
8670 {
8671 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
8672 "type": "object",
8673 "properties": {
8674 "args": {
8675 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
8676 "type": [
8677 "array",
8678 "string"
8679 ],
8680 "default": [],
8681 "items": {
8682 "type": "string"
8683 },
8684 "tags": [
8685 "setup"
8686 ]
8687 },
8688 "attachSimplePort": {
8689 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
8690 "default": 9229,
8691 "oneOf": [
8692 {
8693 "type": "integer"
8694 },
8695 {
8696 "type": "string",
8697 "pattern": "^\\${.*}$"
8698 }
8699 ]
8700 },
8701 "autoAttachChildProcesses": {
8702 "description": "Attach debugger to new child processes automatically.",
8703 "type": "boolean",
8704 "default": true
8705 },
8706 "cascadeTerminateToConfigurations": {
8707 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
8708 "type": "array",
8709 "default": [],
8710 "items": {
8711 "type": "string",
8712 "uniqueItems": true
8713 }
8714 },
8715 "console": {
8716 "description": "Where to launch the debug target.",
8717 "type": "string",
8718 "default": "internalConsole",
8719 "enum": [
8720 "internalConsole",
8721 "integratedTerminal",
8722 "externalTerminal"
8723 ],
8724 "enumDescriptions": [
8725 "VS Code Debug Console (which doesn't support to read input from a program)",
8726 "VS Code's integrated terminal",
8727 "External terminal that can be configured via user settings"
8728 ]
8729 },
8730 "customDescriptionGenerator": {
8731 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
8732 "type": "string"
8733 },
8734 "customPropertiesGenerator": {
8735 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
8736 "type": "string",
8737 "deprecated": true
8738 },
8739 "cwd": {
8740 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
8741 "type": "string",
8742 "default": "${ZED_WORKTREE_ROOT}",
8743 "tags": [
8744 "setup"
8745 ]
8746 },
8747 "enableContentValidation": {
8748 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
8749 "type": "boolean",
8750 "default": true
8751 },
8752 "enableDWARF": {
8753 "type": "boolean",
8754 "default": true,
8755 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
8756 },
8757 "env": {
8758 "type": "object",
8759 "additionalProperties": {
8760 "type": [
8761 "string",
8762 "null"
8763 ]
8764 },
8765 "default": {},
8766 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
8767 "tags": [
8768 "setup"
8769 ]
8770 },
8771 "envFile": {
8772 "description": "Absolute path to a file containing environment variable definitions.",
8773 "type": "string",
8774 "default": "${ZED_WORKTREE_ROOT}/.env"
8775 },
8776 "experimentalNetworking": {
8777 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
8778 "type": "string",
8779 "default": "auto",
8780 "enum": [
8781 "auto",
8782 "on",
8783 "off"
8784 ]
8785 },
8786 "killBehavior": {
8787 "type": "string",
8788 "default": "forceful",
8789 "enum": [
8790 "forceful",
8791 "polite",
8792 "none"
8793 ],
8794 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
8795 },
8796 "localRoot": {
8797 "description": "Path to the local directory containing the program.",
8798 "type": [
8799 "string",
8800 "null"
8801 ],
8802 "default": null
8803 },
8804 "nodeVersionHint": {
8805 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
8806 "type": "number",
8807 "default": 12,
8808 "minimum": 8
8809 },
8810 "outFiles": {
8811 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
8812 "type": [
8813 "array"
8814 ],
8815 "default": [
8816 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
8817 "!**/node_modules/**"
8818 ],
8819 "items": {
8820 "type": "string"
8821 },
8822 "tags": [
8823 "setup"
8824 ]
8825 },
8826 "outputCapture": {
8827 "default": "console",
8828 "enum": [
8829 "console",
8830 "std"
8831 ],
8832 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
8833 },
8834 "pauseForSourceMap": {
8835 "type": "boolean",
8836 "default": false,
8837 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
8838 },
8839 "profileStartup": {
8840 "description": "If true, will start profiling as soon as the process launches",
8841 "type": "boolean",
8842 "default": true
8843 },
8844 "program": {
8845 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
8846 "type": "string",
8847 "default": "",
8848 "tags": [
8849 "setup"
8850 ]
8851 },
8852 "remoteRoot": {
8853 "description": "Absolute path to the remote directory containing the program.",
8854 "type": [
8855 "string",
8856 "null"
8857 ],
8858 "default": null
8859 },
8860 "resolveSourceMapLocations": {
8861 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
8862 "type": [
8863 "array",
8864 "null"
8865 ],
8866 "default": [
8867 "${ZED_WORKTREE_ROOT}/**",
8868 "!**/node_modules/**"
8869 ],
8870 "items": {
8871 "type": "string"
8872 }
8873 },
8874 "restart": {
8875 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
8876 "default": true,
8877 "oneOf": [
8878 {
8879 "type": "boolean"
8880 },
8881 {
8882 "type": "object",
8883 "properties": {
8884 "delay": {
8885 "type": "number",
8886 "default": 1000,
8887 "minimum": 0
8888 },
8889 "maxAttempts": {
8890 "type": "number",
8891 "default": 10,
8892 "minimum": 0
8893 }
8894 }
8895 }
8896 ]
8897 },
8898 "runtimeArgs": {
8899 "description": "Optional arguments passed to the runtime executable.",
8900 "type": "array",
8901 "default": [],
8902 "items": {
8903 "type": "string"
8904 },
8905 "tags": [
8906 "setup"
8907 ]
8908 },
8909 "runtimeExecutable": {
8910 "type": [
8911 "string",
8912 "null"
8913 ],
8914 "default": "node",
8915 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
8916 },
8917 "runtimeSourcemapPausePatterns": {
8918 "type": "array",
8919 "default": [],
8920 "items": {
8921 "type": "string"
8922 },
8923 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
8924 },
8925 "runtimeVersion": {
8926 "type": "string",
8927 "default": "default",
8928 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
8929 },
8930 "showAsyncStacks": {
8931 "description": "Show the async calls that led to the current call stack.",
8932 "default": true,
8933 "oneOf": [
8934 {
8935 "type": "boolean"
8936 },
8937 {
8938 "type": "object",
8939 "properties": {
8940 "onAttach": {
8941 "type": "number",
8942 "default": 32
8943 }
8944 },
8945 "required": [
8946 "onAttach"
8947 ]
8948 },
8949 {
8950 "type": "object",
8951 "properties": {
8952 "onceBreakpointResolved": {
8953 "type": "number",
8954 "default": 32
8955 }
8956 },
8957 "required": [
8958 "onceBreakpointResolved"
8959 ]
8960 }
8961 ]
8962 },
8963 "skipFiles": {
8964 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
8965 "type": "array",
8966 "default": [
8967 "${/**"
8968 ]
8969 },
8970 "smartStep": {
8971 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
8972 "type": "boolean",
8973 "default": true
8974 },
8975 "sourceMapPathOverrides": {
8976 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
8977 "type": "object",
8978 "default": {
8979 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
8980 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
8981 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
8982 }
8983 },
8984 "sourceMapRenames": {
8985 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
8986 "type": "boolean",
8987 "default": true
8988 },
8989 "sourceMaps": {
8990 "description": "Use JavaScript source maps (if they exist).",
8991 "type": "boolean",
8992 "default": true
8993 },
8994 "stopOnEntry": {
8995 "description": "Automatically stop program after launch.",
8996 "type": [
8997 "boolean",
8998 "string"
8999 ],
9000 "default": true
9001 },
9002 "timeout": {
9003 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
9004 "type": "number",
9005 "default": 10000
9006 },
9007 "timeouts": {
9008 "description": "Timeouts for several debugger operations.",
9009 "type": "object",
9010 "properties": {
9011 "hoverEvaluation": {
9012 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
9013 "type": "number",
9014 "default": 500
9015 },
9016 "sourceMapCumulativePause": {
9017 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
9018 "type": "number",
9019 "default": 1000
9020 },
9021 "sourceMapMinPause": {
9022 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
9023 "type": "number",
9024 "default": 1000
9025 }
9026 },
9027 "additionalProperties": false,
9028 "default": {},
9029 "markdownDescription": "Timeouts for several debugger operations."
9030 },
9031 "trace": {
9032 "description": "Configures what diagnostic output is produced.",
9033 "default": true,
9034 "oneOf": [
9035 {
9036 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
9037 "type": "boolean"
9038 },
9039 {
9040 "type": "object",
9041 "properties": {
9042 "logFile": {
9043 "description": "Configures where on disk logs are written.",
9044 "type": [
9045 "string",
9046 "null"
9047 ]
9048 },
9049 "stdio": {
9050 "description": "Whether to return trace data from the launched application or browser.",
9051 "type": "boolean"
9052 }
9053 },
9054 "additionalProperties": false
9055 }
9056 ]
9057 }
9058 },
9059 "additionalProperties": false,
9060 "default": {
9061 "program": "node my-server.js"
9062 }
9063 },
9064 {
9065 "description": "JavaScript Debug Terminal",
9066 "type": "object",
9067 "properties": {
9068 "autoAttachChildProcesses": {
9069 "description": "Attach debugger to new child processes automatically.",
9070 "type": "boolean",
9071 "default": true
9072 },
9073 "cascadeTerminateToConfigurations": {
9074 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
9075 "type": "array",
9076 "default": [],
9077 "items": {
9078 "type": "string",
9079 "uniqueItems": true
9080 }
9081 },
9082 "command": {
9083 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
9084 "type": [
9085 "string",
9086 "null"
9087 ],
9088 "default": "npm start",
9089 "tags": [
9090 "setup"
9091 ]
9092 },
9093 "customDescriptionGenerator": {
9094 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
9095 "type": "string"
9096 },
9097 "customPropertiesGenerator": {
9098 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
9099 "type": "string",
9100 "deprecated": true
9101 },
9102 "cwd": {
9103 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
9104 "type": "string",
9105 "default": "${ZED_WORKTREE_ROOT}",
9106 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
9107 "tags": [
9108 "setup"
9109 ]
9110 },
9111 "enableContentValidation": {
9112 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
9113 "type": "boolean",
9114 "default": true
9115 },
9116 "enableDWARF": {
9117 "type": "boolean",
9118 "default": true,
9119 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
9120 },
9121 "env": {
9122 "type": "object",
9123 "additionalProperties": {
9124 "type": [
9125 "string",
9126 "null"
9127 ]
9128 },
9129 "default": {},
9130 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
9131 "tags": [
9132 "setup"
9133 ]
9134 },
9135 "envFile": {
9136 "description": "Absolute path to a file containing environment variable definitions.",
9137 "type": "string",
9138 "default": "${ZED_WORKTREE_ROOT}/.env"
9139 },
9140 "localRoot": {
9141 "description": "Path to the local directory containing the program.",
9142 "type": [
9143 "string",
9144 "null"
9145 ],
9146 "default": null
9147 },
9148 "nodeVersionHint": {
9149 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
9150 "type": "number",
9151 "default": 12,
9152 "minimum": 8
9153 },
9154 "outFiles": {
9155 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
9156 "type": [
9157 "array"
9158 ],
9159 "default": [
9160 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
9161 "!**/node_modules/**"
9162 ],
9163 "items": {
9164 "type": "string"
9165 },
9166 "tags": [
9167 "setup"
9168 ]
9169 },
9170 "outputCapture": {
9171 "default": "console",
9172 "enum": [
9173 "console",
9174 "std"
9175 ],
9176 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
9177 },
9178 "pauseForSourceMap": {
9179 "type": "boolean",
9180 "default": false,
9181 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
9182 },
9183 "remoteRoot": {
9184 "description": "Absolute path to the remote directory containing the program.",
9185 "type": [
9186 "string",
9187 "null"
9188 ],
9189 "default": null
9190 },
9191 "resolveSourceMapLocations": {
9192 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
9193 "type": [
9194 "array",
9195 "null"
9196 ],
9197 "default": [
9198 "${ZED_WORKTREE_ROOT}/**",
9199 "!**/node_modules/**"
9200 ],
9201 "items": {
9202 "type": "string"
9203 }
9204 },
9205 "runtimeSourcemapPausePatterns": {
9206 "type": "array",
9207 "default": [],
9208 "items": {
9209 "type": "string"
9210 },
9211 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
9212 },
9213 "showAsyncStacks": {
9214 "description": "Show the async calls that led to the current call stack.",
9215 "default": true,
9216 "oneOf": [
9217 {
9218 "type": "boolean"
9219 },
9220 {
9221 "type": "object",
9222 "properties": {
9223 "onAttach": {
9224 "type": "number",
9225 "default": 32
9226 }
9227 },
9228 "required": [
9229 "onAttach"
9230 ]
9231 },
9232 {
9233 "type": "object",
9234 "properties": {
9235 "onceBreakpointResolved": {
9236 "type": "number",
9237 "default": 32
9238 }
9239 },
9240 "required": [
9241 "onceBreakpointResolved"
9242 ]
9243 }
9244 ]
9245 },
9246 "skipFiles": {
9247 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
9248 "type": "array",
9249 "default": [
9250 "${/**"
9251 ]
9252 },
9253 "smartStep": {
9254 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
9255 "type": "boolean",
9256 "default": true
9257 },
9258 "sourceMapPathOverrides": {
9259 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
9260 "type": "object",
9261 "default": {
9262 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
9263 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
9264 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
9265 }
9266 },
9267 "sourceMapRenames": {
9268 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
9269 "type": "boolean",
9270 "default": true
9271 },
9272 "sourceMaps": {
9273 "description": "Use JavaScript source maps (if they exist).",
9274 "type": "boolean",
9275 "default": true
9276 },
9277 "timeout": {
9278 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
9279 "type": "number",
9280 "default": 10000
9281 },
9282 "timeouts": {
9283 "description": "Timeouts for several debugger operations.",
9284 "type": "object",
9285 "properties": {
9286 "hoverEvaluation": {
9287 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
9288 "type": "number",
9289 "default": 500
9290 },
9291 "sourceMapCumulativePause": {
9292 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
9293 "type": "number",
9294 "default": 1000
9295 },
9296 "sourceMapMinPause": {
9297 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
9298 "type": "number",
9299 "default": 1000
9300 }
9301 },
9302 "additionalProperties": false,
9303 "default": {},
9304 "markdownDescription": "Timeouts for several debugger operations."
9305 },
9306 "trace": {
9307 "description": "Configures what diagnostic output is produced.",
9308 "default": true,
9309 "oneOf": [
9310 {
9311 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
9312 "type": "boolean"
9313 },
9314 {
9315 "type": "object",
9316 "properties": {
9317 "logFile": {
9318 "description": "Configures where on disk logs are written.",
9319 "type": [
9320 "string",
9321 "null"
9322 ]
9323 },
9324 "stdio": {
9325 "description": "Whether to return trace data from the launched application or browser.",
9326 "type": "boolean"
9327 }
9328 },
9329 "additionalProperties": false
9330 }
9331 ]
9332 }
9333 },
9334 "additionalProperties": false,
9335 "default": {
9336 "program": "npm start"
9337 }
9338 }
9339 ]
9340 },
9341 "showAsyncStacks": {
9342 "description": "Show the async calls that led to the current call stack.",
9343 "default": true,
9344 "oneOf": [
9345 {
9346 "type": "boolean"
9347 },
9348 {
9349 "type": "object",
9350 "properties": {
9351 "onAttach": {
9352 "type": "number",
9353 "default": 32
9354 }
9355 },
9356 "required": [
9357 "onAttach"
9358 ]
9359 },
9360 {
9361 "type": "object",
9362 "properties": {
9363 "onceBreakpointResolved": {
9364 "type": "number",
9365 "default": 32
9366 }
9367 },
9368 "required": [
9369 "onceBreakpointResolved"
9370 ]
9371 }
9372 ]
9373 },
9374 "skipFiles": {
9375 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
9376 "type": "array",
9377 "default": [
9378 "${/**"
9379 ]
9380 },
9381 "smartStep": {
9382 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
9383 "type": "boolean",
9384 "default": true
9385 },
9386 "sourceMapPathOverrides": {
9387 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
9388 "type": "object",
9389 "default": {
9390 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
9391 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
9392 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
9393 }
9394 },
9395 "sourceMapRenames": {
9396 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
9397 "type": "boolean",
9398 "default": true
9399 },
9400 "sourceMaps": {
9401 "description": "Use JavaScript source maps (if they exist).",
9402 "type": "boolean",
9403 "default": true
9404 },
9405 "timeout": {
9406 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
9407 "type": "number",
9408 "default": 10000
9409 },
9410 "timeouts": {
9411 "description": "Timeouts for several debugger operations.",
9412 "type": "object",
9413 "properties": {
9414 "hoverEvaluation": {
9415 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
9416 "type": "number",
9417 "default": 500
9418 },
9419 "sourceMapCumulativePause": {
9420 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
9421 "type": "number",
9422 "default": 1000
9423 },
9424 "sourceMapMinPause": {
9425 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
9426 "type": "number",
9427 "default": 1000
9428 }
9429 },
9430 "additionalProperties": false,
9431 "default": {},
9432 "markdownDescription": "Timeouts for several debugger operations."
9433 },
9434 "trace": {
9435 "description": "Configures what diagnostic output is produced.",
9436 "default": true,
9437 "oneOf": [
9438 {
9439 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
9440 "type": "boolean"
9441 },
9442 {
9443 "type": "object",
9444 "properties": {
9445 "logFile": {
9446 "description": "Configures where on disk logs are written.",
9447 "type": [
9448 "string",
9449 "null"
9450 ]
9451 },
9452 "stdio": {
9453 "description": "Whether to return trace data from the launched application or browser.",
9454 "type": "boolean"
9455 }
9456 },
9457 "additionalProperties": false
9458 }
9459 ]
9460 },
9461 "url": {
9462 "description": "Will search for a tab with this exact url and attach to it, if found",
9463 "type": "string",
9464 "default": "http://localhost:8080",
9465 "tags": [
9466 "setup"
9467 ]
9468 },
9469 "urlFilter": {
9470 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
9471 "type": "string",
9472 "default": ""
9473 },
9474 "useWebView": {
9475 "description": "When 'true', the debugger will treat the runtime executable as a host application that contains a WebView allowing you to debug the WebView script content.",
9476 "type": "boolean",
9477 "default": false
9478 },
9479 "userDataDir": {
9480 "description": "By default, the browser is launched with a separate user profile in a temp folder. Use this option to override it. Set to false to launch with your default user profile. A new browser can't be launched if an instance is already running from `userDataDir`.",
9481 "type": [
9482 "string",
9483 "boolean"
9484 ],
9485 "default": true
9486 },
9487 "vueComponentPaths": {
9488 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
9489 "type": "array",
9490 "default": [
9491 "${ZED_WORKTREE_ROOT}/**/*.vue"
9492 ]
9493 },
9494 "webRoot": {
9495 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
9496 "type": "string",
9497 "default": "${ZED_WORKTREE_ROOT}",
9498 "tags": [
9499 "setup"
9500 ]
9501 }
9502 }
9503 }
9504 },
9505 {
9506 "if": {
9507 "properties": {
9508 "type": {
9509 "enum": [
9510 "pwa-msedge"
9511 ]
9512 },
9513 "request": {
9514 "enum": [
9515 "attach"
9516 ]
9517 }
9518 },
9519 "required": [
9520 "type",
9521 "request"
9522 ]
9523 },
9524 "then": {
9525 "properties": {
9526 "address": {
9527 "description": "IP address or hostname the debugged browser is listening on.",
9528 "type": "string",
9529 "default": "localhost"
9530 },
9531 "browserAttachLocation": {
9532 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
9533 "default": null,
9534 "oneOf": [
9535 {
9536 "type": "null"
9537 },
9538 {
9539 "type": "string",
9540 "enum": [
9541 "ui",
9542 "workspace"
9543 ]
9544 }
9545 ]
9546 },
9547 "cascadeTerminateToConfigurations": {
9548 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
9549 "type": "array",
9550 "default": [],
9551 "items": {
9552 "type": "string",
9553 "uniqueItems": true
9554 }
9555 },
9556 "customDescriptionGenerator": {
9557 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
9558 "type": "string"
9559 },
9560 "customPropertiesGenerator": {
9561 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
9562 "type": "string",
9563 "deprecated": true
9564 },
9565 "disableNetworkCache": {
9566 "description": "Controls whether to skip the network cache for each request",
9567 "type": "boolean",
9568 "default": true
9569 },
9570 "enableContentValidation": {
9571 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
9572 "type": "boolean",
9573 "default": true
9574 },
9575 "enableDWARF": {
9576 "type": "boolean",
9577 "default": true,
9578 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
9579 },
9580 "inspectUri": {
9581 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
9582 "type": [
9583 "string",
9584 "null"
9585 ],
9586 "default": null
9587 },
9588 "outFiles": {
9589 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
9590 "type": [
9591 "array"
9592 ],
9593 "default": [
9594 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
9595 "!**/node_modules/**"
9596 ],
9597 "items": {
9598 "type": "string"
9599 },
9600 "tags": [
9601 "setup"
9602 ]
9603 },
9604 "outputCapture": {
9605 "default": "console",
9606 "enum": [
9607 "console",
9608 "std"
9609 ],
9610 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
9611 },
9612 "pathMapping": {
9613 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
9614 "type": "object",
9615 "default": {}
9616 },
9617 "pauseForSourceMap": {
9618 "type": "boolean",
9619 "default": false,
9620 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
9621 },
9622 "perScriptSourcemaps": {
9623 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
9624 "type": "string",
9625 "default": "auto",
9626 "enum": [
9627 "yes",
9628 "no",
9629 "auto"
9630 ]
9631 },
9632 "port": {
9633 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
9634 "default": 9229,
9635 "oneOf": [
9636 {
9637 "type": "integer"
9638 },
9639 {
9640 "type": "string",
9641 "pattern": "^\\${.*}$"
9642 }
9643 ],
9644 "tags": [
9645 "setup"
9646 ]
9647 },
9648 "resolveSourceMapLocations": {
9649 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
9650 "type": [
9651 "array",
9652 "null"
9653 ],
9654 "default": null,
9655 "items": {
9656 "type": "string"
9657 }
9658 },
9659 "restart": {
9660 "type": "boolean",
9661 "default": false,
9662 "markdownDescription": "Whether to reconnect if the browser connection is closed"
9663 },
9664 "server": {
9665 "oneOf": [
9666 {
9667 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
9668 "type": "object",
9669 "properties": {
9670 "args": {
9671 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
9672 "type": [
9673 "array",
9674 "string"
9675 ],
9676 "default": [],
9677 "items": {
9678 "type": "string"
9679 },
9680 "tags": [
9681 "setup"
9682 ]
9683 },
9684 "attachSimplePort": {
9685 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
9686 "default": 9229,
9687 "oneOf": [
9688 {
9689 "type": "integer"
9690 },
9691 {
9692 "type": "string",
9693 "pattern": "^\\${.*}$"
9694 }
9695 ]
9696 },
9697 "autoAttachChildProcesses": {
9698 "description": "Attach debugger to new child processes automatically.",
9699 "type": "boolean",
9700 "default": true
9701 },
9702 "cascadeTerminateToConfigurations": {
9703 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
9704 "type": "array",
9705 "default": [],
9706 "items": {
9707 "type": "string",
9708 "uniqueItems": true
9709 }
9710 },
9711 "console": {
9712 "description": "Where to launch the debug target.",
9713 "type": "string",
9714 "default": "internalConsole",
9715 "enum": [
9716 "internalConsole",
9717 "integratedTerminal",
9718 "externalTerminal"
9719 ],
9720 "enumDescriptions": [
9721 "VS Code Debug Console (which doesn't support to read input from a program)",
9722 "VS Code's integrated terminal",
9723 "External terminal that can be configured via user settings"
9724 ]
9725 },
9726 "customDescriptionGenerator": {
9727 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
9728 "type": "string"
9729 },
9730 "customPropertiesGenerator": {
9731 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
9732 "type": "string",
9733 "deprecated": true
9734 },
9735 "cwd": {
9736 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
9737 "type": "string",
9738 "default": "${ZED_WORKTREE_ROOT}",
9739 "tags": [
9740 "setup"
9741 ]
9742 },
9743 "enableContentValidation": {
9744 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
9745 "type": "boolean",
9746 "default": true
9747 },
9748 "enableDWARF": {
9749 "type": "boolean",
9750 "default": true,
9751 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
9752 },
9753 "env": {
9754 "type": "object",
9755 "additionalProperties": {
9756 "type": [
9757 "string",
9758 "null"
9759 ]
9760 },
9761 "default": {},
9762 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
9763 "tags": [
9764 "setup"
9765 ]
9766 },
9767 "envFile": {
9768 "description": "Absolute path to a file containing environment variable definitions.",
9769 "type": "string",
9770 "default": "${ZED_WORKTREE_ROOT}/.env"
9771 },
9772 "experimentalNetworking": {
9773 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
9774 "type": "string",
9775 "default": "auto",
9776 "enum": [
9777 "auto",
9778 "on",
9779 "off"
9780 ]
9781 },
9782 "killBehavior": {
9783 "type": "string",
9784 "default": "forceful",
9785 "enum": [
9786 "forceful",
9787 "polite",
9788 "none"
9789 ],
9790 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
9791 },
9792 "localRoot": {
9793 "description": "Path to the local directory containing the program.",
9794 "type": [
9795 "string",
9796 "null"
9797 ],
9798 "default": null
9799 },
9800 "nodeVersionHint": {
9801 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
9802 "type": "number",
9803 "default": 12,
9804 "minimum": 8
9805 },
9806 "outFiles": {
9807 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
9808 "type": [
9809 "array"
9810 ],
9811 "default": [
9812 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
9813 "!**/node_modules/**"
9814 ],
9815 "items": {
9816 "type": "string"
9817 },
9818 "tags": [
9819 "setup"
9820 ]
9821 },
9822 "outputCapture": {
9823 "default": "console",
9824 "enum": [
9825 "console",
9826 "std"
9827 ],
9828 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
9829 },
9830 "pauseForSourceMap": {
9831 "type": "boolean",
9832 "default": false,
9833 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
9834 },
9835 "profileStartup": {
9836 "description": "If true, will start profiling as soon as the process launches",
9837 "type": "boolean",
9838 "default": true
9839 },
9840 "program": {
9841 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
9842 "type": "string",
9843 "default": "",
9844 "tags": [
9845 "setup"
9846 ]
9847 },
9848 "remoteRoot": {
9849 "description": "Absolute path to the remote directory containing the program.",
9850 "type": [
9851 "string",
9852 "null"
9853 ],
9854 "default": null
9855 },
9856 "resolveSourceMapLocations": {
9857 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
9858 "type": [
9859 "array",
9860 "null"
9861 ],
9862 "default": [
9863 "${ZED_WORKTREE_ROOT}/**",
9864 "!**/node_modules/**"
9865 ],
9866 "items": {
9867 "type": "string"
9868 }
9869 },
9870 "restart": {
9871 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
9872 "default": true,
9873 "oneOf": [
9874 {
9875 "type": "boolean"
9876 },
9877 {
9878 "type": "object",
9879 "properties": {
9880 "delay": {
9881 "type": "number",
9882 "default": 1000,
9883 "minimum": 0
9884 },
9885 "maxAttempts": {
9886 "type": "number",
9887 "default": 10,
9888 "minimum": 0
9889 }
9890 }
9891 }
9892 ]
9893 },
9894 "runtimeArgs": {
9895 "description": "Optional arguments passed to the runtime executable.",
9896 "type": "array",
9897 "default": [],
9898 "items": {
9899 "type": "string"
9900 },
9901 "tags": [
9902 "setup"
9903 ]
9904 },
9905 "runtimeExecutable": {
9906 "type": [
9907 "string",
9908 "null"
9909 ],
9910 "default": "node",
9911 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
9912 },
9913 "runtimeSourcemapPausePatterns": {
9914 "type": "array",
9915 "default": [],
9916 "items": {
9917 "type": "string"
9918 },
9919 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
9920 },
9921 "runtimeVersion": {
9922 "type": "string",
9923 "default": "default",
9924 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
9925 },
9926 "showAsyncStacks": {
9927 "description": "Show the async calls that led to the current call stack.",
9928 "default": true,
9929 "oneOf": [
9930 {
9931 "type": "boolean"
9932 },
9933 {
9934 "type": "object",
9935 "properties": {
9936 "onAttach": {
9937 "type": "number",
9938 "default": 32
9939 }
9940 },
9941 "required": [
9942 "onAttach"
9943 ]
9944 },
9945 {
9946 "type": "object",
9947 "properties": {
9948 "onceBreakpointResolved": {
9949 "type": "number",
9950 "default": 32
9951 }
9952 },
9953 "required": [
9954 "onceBreakpointResolved"
9955 ]
9956 }
9957 ]
9958 },
9959 "skipFiles": {
9960 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
9961 "type": "array",
9962 "default": [
9963 "${/**"
9964 ]
9965 },
9966 "smartStep": {
9967 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
9968 "type": "boolean",
9969 "default": true
9970 },
9971 "sourceMapPathOverrides": {
9972 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
9973 "type": "object",
9974 "default": {
9975 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
9976 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
9977 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
9978 }
9979 },
9980 "sourceMapRenames": {
9981 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
9982 "type": "boolean",
9983 "default": true
9984 },
9985 "sourceMaps": {
9986 "description": "Use JavaScript source maps (if they exist).",
9987 "type": "boolean",
9988 "default": true
9989 },
9990 "stopOnEntry": {
9991 "description": "Automatically stop program after launch.",
9992 "type": [
9993 "boolean",
9994 "string"
9995 ],
9996 "default": true
9997 },
9998 "timeout": {
9999 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
10000 "type": "number",
10001 "default": 10000
10002 },
10003 "timeouts": {
10004 "description": "Timeouts for several debugger operations.",
10005 "type": "object",
10006 "properties": {
10007 "hoverEvaluation": {
10008 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
10009 "type": "number",
10010 "default": 500
10011 },
10012 "sourceMapCumulativePause": {
10013 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
10014 "type": "number",
10015 "default": 1000
10016 },
10017 "sourceMapMinPause": {
10018 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
10019 "type": "number",
10020 "default": 1000
10021 }
10022 },
10023 "additionalProperties": false,
10024 "default": {},
10025 "markdownDescription": "Timeouts for several debugger operations."
10026 },
10027 "trace": {
10028 "description": "Configures what diagnostic output is produced.",
10029 "default": true,
10030 "oneOf": [
10031 {
10032 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
10033 "type": "boolean"
10034 },
10035 {
10036 "type": "object",
10037 "properties": {
10038 "logFile": {
10039 "description": "Configures where on disk logs are written.",
10040 "type": [
10041 "string",
10042 "null"
10043 ]
10044 },
10045 "stdio": {
10046 "description": "Whether to return trace data from the launched application or browser.",
10047 "type": "boolean"
10048 }
10049 },
10050 "additionalProperties": false
10051 }
10052 ]
10053 }
10054 },
10055 "additionalProperties": false,
10056 "default": {
10057 "program": "node my-server.js"
10058 }
10059 },
10060 {
10061 "description": "JavaScript Debug Terminal",
10062 "type": "object",
10063 "properties": {
10064 "autoAttachChildProcesses": {
10065 "description": "Attach debugger to new child processes automatically.",
10066 "type": "boolean",
10067 "default": true
10068 },
10069 "cascadeTerminateToConfigurations": {
10070 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
10071 "type": "array",
10072 "default": [],
10073 "items": {
10074 "type": "string",
10075 "uniqueItems": true
10076 }
10077 },
10078 "command": {
10079 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
10080 "type": [
10081 "string",
10082 "null"
10083 ],
10084 "default": "npm start",
10085 "tags": [
10086 "setup"
10087 ]
10088 },
10089 "customDescriptionGenerator": {
10090 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
10091 "type": "string"
10092 },
10093 "customPropertiesGenerator": {
10094 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
10095 "type": "string",
10096 "deprecated": true
10097 },
10098 "cwd": {
10099 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
10100 "type": "string",
10101 "default": "${ZED_WORKTREE_ROOT}",
10102 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
10103 "tags": [
10104 "setup"
10105 ]
10106 },
10107 "enableContentValidation": {
10108 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
10109 "type": "boolean",
10110 "default": true
10111 },
10112 "enableDWARF": {
10113 "type": "boolean",
10114 "default": true,
10115 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
10116 },
10117 "env": {
10118 "type": "object",
10119 "additionalProperties": {
10120 "type": [
10121 "string",
10122 "null"
10123 ]
10124 },
10125 "default": {},
10126 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
10127 "tags": [
10128 "setup"
10129 ]
10130 },
10131 "envFile": {
10132 "description": "Absolute path to a file containing environment variable definitions.",
10133 "type": "string",
10134 "default": "${ZED_WORKTREE_ROOT}/.env"
10135 },
10136 "localRoot": {
10137 "description": "Path to the local directory containing the program.",
10138 "type": [
10139 "string",
10140 "null"
10141 ],
10142 "default": null
10143 },
10144 "nodeVersionHint": {
10145 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
10146 "type": "number",
10147 "default": 12,
10148 "minimum": 8
10149 },
10150 "outFiles": {
10151 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
10152 "type": [
10153 "array"
10154 ],
10155 "default": [
10156 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
10157 "!**/node_modules/**"
10158 ],
10159 "items": {
10160 "type": "string"
10161 },
10162 "tags": [
10163 "setup"
10164 ]
10165 },
10166 "outputCapture": {
10167 "default": "console",
10168 "enum": [
10169 "console",
10170 "std"
10171 ],
10172 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
10173 },
10174 "pauseForSourceMap": {
10175 "type": "boolean",
10176 "default": false,
10177 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
10178 },
10179 "remoteRoot": {
10180 "description": "Absolute path to the remote directory containing the program.",
10181 "type": [
10182 "string",
10183 "null"
10184 ],
10185 "default": null
10186 },
10187 "resolveSourceMapLocations": {
10188 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
10189 "type": [
10190 "array",
10191 "null"
10192 ],
10193 "default": [
10194 "${ZED_WORKTREE_ROOT}/**",
10195 "!**/node_modules/**"
10196 ],
10197 "items": {
10198 "type": "string"
10199 }
10200 },
10201 "runtimeSourcemapPausePatterns": {
10202 "type": "array",
10203 "default": [],
10204 "items": {
10205 "type": "string"
10206 },
10207 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
10208 },
10209 "showAsyncStacks": {
10210 "description": "Show the async calls that led to the current call stack.",
10211 "default": true,
10212 "oneOf": [
10213 {
10214 "type": "boolean"
10215 },
10216 {
10217 "type": "object",
10218 "properties": {
10219 "onAttach": {
10220 "type": "number",
10221 "default": 32
10222 }
10223 },
10224 "required": [
10225 "onAttach"
10226 ]
10227 },
10228 {
10229 "type": "object",
10230 "properties": {
10231 "onceBreakpointResolved": {
10232 "type": "number",
10233 "default": 32
10234 }
10235 },
10236 "required": [
10237 "onceBreakpointResolved"
10238 ]
10239 }
10240 ]
10241 },
10242 "skipFiles": {
10243 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
10244 "type": "array",
10245 "default": [
10246 "${/**"
10247 ]
10248 },
10249 "smartStep": {
10250 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
10251 "type": "boolean",
10252 "default": true
10253 },
10254 "sourceMapPathOverrides": {
10255 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
10256 "type": "object",
10257 "default": {
10258 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
10259 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
10260 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
10261 }
10262 },
10263 "sourceMapRenames": {
10264 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
10265 "type": "boolean",
10266 "default": true
10267 },
10268 "sourceMaps": {
10269 "description": "Use JavaScript source maps (if they exist).",
10270 "type": "boolean",
10271 "default": true
10272 },
10273 "timeout": {
10274 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
10275 "type": "number",
10276 "default": 10000
10277 },
10278 "timeouts": {
10279 "description": "Timeouts for several debugger operations.",
10280 "type": "object",
10281 "properties": {
10282 "hoverEvaluation": {
10283 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
10284 "type": "number",
10285 "default": 500
10286 },
10287 "sourceMapCumulativePause": {
10288 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
10289 "type": "number",
10290 "default": 1000
10291 },
10292 "sourceMapMinPause": {
10293 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
10294 "type": "number",
10295 "default": 1000
10296 }
10297 },
10298 "additionalProperties": false,
10299 "default": {},
10300 "markdownDescription": "Timeouts for several debugger operations."
10301 },
10302 "trace": {
10303 "description": "Configures what diagnostic output is produced.",
10304 "default": true,
10305 "oneOf": [
10306 {
10307 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
10308 "type": "boolean"
10309 },
10310 {
10311 "type": "object",
10312 "properties": {
10313 "logFile": {
10314 "description": "Configures where on disk logs are written.",
10315 "type": [
10316 "string",
10317 "null"
10318 ]
10319 },
10320 "stdio": {
10321 "description": "Whether to return trace data from the launched application or browser.",
10322 "type": "boolean"
10323 }
10324 },
10325 "additionalProperties": false
10326 }
10327 ]
10328 }
10329 },
10330 "additionalProperties": false,
10331 "default": {
10332 "program": "npm start"
10333 }
10334 }
10335 ]
10336 },
10337 "showAsyncStacks": {
10338 "description": "Show the async calls that led to the current call stack.",
10339 "default": true,
10340 "oneOf": [
10341 {
10342 "type": "boolean"
10343 },
10344 {
10345 "type": "object",
10346 "properties": {
10347 "onAttach": {
10348 "type": "number",
10349 "default": 32
10350 }
10351 },
10352 "required": [
10353 "onAttach"
10354 ]
10355 },
10356 {
10357 "type": "object",
10358 "properties": {
10359 "onceBreakpointResolved": {
10360 "type": "number",
10361 "default": 32
10362 }
10363 },
10364 "required": [
10365 "onceBreakpointResolved"
10366 ]
10367 }
10368 ]
10369 },
10370 "skipFiles": {
10371 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
10372 "type": "array",
10373 "default": [
10374 "${/**"
10375 ]
10376 },
10377 "smartStep": {
10378 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
10379 "type": "boolean",
10380 "default": true
10381 },
10382 "sourceMapPathOverrides": {
10383 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
10384 "type": "object",
10385 "default": {
10386 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
10387 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
10388 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
10389 }
10390 },
10391 "sourceMapRenames": {
10392 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
10393 "type": "boolean",
10394 "default": true
10395 },
10396 "sourceMaps": {
10397 "description": "Use JavaScript source maps (if they exist).",
10398 "type": "boolean",
10399 "default": true
10400 },
10401 "targetSelection": {
10402 "type": "string",
10403 "default": "automatic",
10404 "enum": [
10405 "pick",
10406 "automatic"
10407 ],
10408 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
10409 },
10410 "timeout": {
10411 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
10412 "type": "number",
10413 "default": 10000
10414 },
10415 "timeouts": {
10416 "description": "Timeouts for several debugger operations.",
10417 "type": "object",
10418 "properties": {
10419 "hoverEvaluation": {
10420 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
10421 "type": "number",
10422 "default": 500
10423 },
10424 "sourceMapCumulativePause": {
10425 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
10426 "type": "number",
10427 "default": 1000
10428 },
10429 "sourceMapMinPause": {
10430 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
10431 "type": "number",
10432 "default": 1000
10433 }
10434 },
10435 "additionalProperties": false,
10436 "default": {},
10437 "markdownDescription": "Timeouts for several debugger operations."
10438 },
10439 "trace": {
10440 "description": "Configures what diagnostic output is produced.",
10441 "default": true,
10442 "oneOf": [
10443 {
10444 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
10445 "type": "boolean"
10446 },
10447 {
10448 "type": "object",
10449 "properties": {
10450 "logFile": {
10451 "description": "Configures where on disk logs are written.",
10452 "type": [
10453 "string",
10454 "null"
10455 ]
10456 },
10457 "stdio": {
10458 "description": "Whether to return trace data from the launched application or browser.",
10459 "type": "boolean"
10460 }
10461 },
10462 "additionalProperties": false
10463 }
10464 ]
10465 },
10466 "url": {
10467 "description": "Will search for a tab with this exact url and attach to it, if found",
10468 "type": "string",
10469 "default": "http://localhost:8080",
10470 "tags": [
10471 "setup"
10472 ]
10473 },
10474 "urlFilter": {
10475 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
10476 "type": "string",
10477 "default": ""
10478 },
10479 "useWebView": {
10480 "description": "An object containing the `pipeName` of a debug pipe for a UWP hosted Webview2. This is the \"MyTestSharedMemory\" when creating the pipe \"\\\\.\\pipe\\LOCAL\\MyTestSharedMemory\"",
10481 "type": "object",
10482 "properties": {
10483 "pipeName": {
10484 "type": "string"
10485 }
10486 },
10487 "default": {
10488 "pipeName": "MyPipeName"
10489 }
10490 },
10491 "vueComponentPaths": {
10492 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
10493 "type": "array",
10494 "default": [
10495 "${ZED_WORKTREE_ROOT}/**/*.vue"
10496 ]
10497 },
10498 "webRoot": {
10499 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
10500 "type": "string",
10501 "default": "${ZED_WORKTREE_ROOT}",
10502 "tags": [
10503 "setup"
10504 ]
10505 }
10506 }
10507 }
10508 },
10509 {
10510 "if": {
10511 "properties": {
10512 "type": {
10513 "enum": [
10514 "msedge"
10515 ]
10516 },
10517 "request": {
10518 "enum": [
10519 "launch"
10520 ]
10521 }
10522 },
10523 "required": [
10524 "type",
10525 "request"
10526 ]
10527 },
10528 "then": {
10529 "properties": {
10530 "address": {
10531 "description": "When debugging webviews, the IP address or hostname the webview is listening on. Will be automatically discovered if not set.",
10532 "type": "string",
10533 "default": "localhost"
10534 },
10535 "browserLaunchLocation": {
10536 "description": "Forces the browser to be launched in one location. In a remote workspace (through ssh or WSL, for example) this can be used to open the browser on the remote machine rather than locally.",
10537 "default": null,
10538 "oneOf": [
10539 {
10540 "type": "null"
10541 },
10542 {
10543 "type": "string",
10544 "enum": [
10545 "ui",
10546 "workspace"
10547 ]
10548 }
10549 ]
10550 },
10551 "cascadeTerminateToConfigurations": {
10552 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
10553 "type": "array",
10554 "default": [],
10555 "items": {
10556 "type": "string",
10557 "uniqueItems": true
10558 }
10559 },
10560 "cleanUp": {
10561 "description": "What clean-up to do after the debugging session finishes. Close only the tab being debug, vs. close the whole browser.",
10562 "type": "string",
10563 "default": "wholeBrowser",
10564 "enum": [
10565 "wholeBrowser",
10566 "onlyTab"
10567 ]
10568 },
10569 "customDescriptionGenerator": {
10570 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
10571 "type": "string"
10572 },
10573 "customPropertiesGenerator": {
10574 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
10575 "type": "string",
10576 "deprecated": true
10577 },
10578 "cwd": {
10579 "description": "Optional working directory for the runtime executable.",
10580 "type": "string",
10581 "default": null
10582 },
10583 "disableNetworkCache": {
10584 "description": "Controls whether to skip the network cache for each request",
10585 "type": "boolean",
10586 "default": true
10587 },
10588 "enableContentValidation": {
10589 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
10590 "type": "boolean",
10591 "default": true
10592 },
10593 "enableDWARF": {
10594 "type": "boolean",
10595 "default": true,
10596 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
10597 },
10598 "env": {
10599 "description": "Optional dictionary of environment key/value pairs for the browser.",
10600 "type": "object",
10601 "default": {}
10602 },
10603 "file": {
10604 "description": "A local html file to open in the browser",
10605 "type": "string",
10606 "default": "${ZED_WORKTREE_ROOT}/index.html",
10607 "tags": [
10608 "setup"
10609 ]
10610 },
10611 "includeDefaultArgs": {
10612 "description": "Whether default browser launch arguments (to disable features that may make debugging harder) will be included in the launch.",
10613 "type": "boolean",
10614 "default": true
10615 },
10616 "includeLaunchArgs": {
10617 "description": "Advanced: whether any default launch/debugging arguments are set on the browser. The debugger will assume the browser will use pipe debugging such as that which is provided with `--remote-debugging-pipe`.",
10618 "type": "boolean",
10619 "default": true
10620 },
10621 "inspectUri": {
10622 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
10623 "type": [
10624 "string",
10625 "null"
10626 ],
10627 "default": null
10628 },
10629 "killBehavior": {
10630 "type": "string",
10631 "default": "forceful",
10632 "enum": [
10633 "forceful",
10634 "polite",
10635 "none"
10636 ],
10637 "markdownDescription": "Configures how browser processes are killed when stopping the session with `cleanUp: wholeBrowser`. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
10638 },
10639 "outFiles": {
10640 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
10641 "type": [
10642 "array"
10643 ],
10644 "default": [
10645 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
10646 "!**/node_modules/**"
10647 ],
10648 "items": {
10649 "type": "string"
10650 },
10651 "tags": [
10652 "setup"
10653 ]
10654 },
10655 "outputCapture": {
10656 "default": "console",
10657 "enum": [
10658 "console",
10659 "std"
10660 ],
10661 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
10662 },
10663 "pathMapping": {
10664 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
10665 "type": "object",
10666 "default": {}
10667 },
10668 "pauseForSourceMap": {
10669 "type": "boolean",
10670 "default": false,
10671 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
10672 },
10673 "perScriptSourcemaps": {
10674 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
10675 "type": "string",
10676 "default": "auto",
10677 "enum": [
10678 "yes",
10679 "no",
10680 "auto"
10681 ]
10682 },
10683 "port": {
10684 "description": "When debugging webviews, the port the webview debugger is listening on. Will be automatically discovered if not set.",
10685 "type": "number",
10686 "default": 9229
10687 },
10688 "profileStartup": {
10689 "description": "If true, will start profiling soon as the process launches",
10690 "type": "boolean",
10691 "default": true
10692 },
10693 "resolveSourceMapLocations": {
10694 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
10695 "type": [
10696 "array",
10697 "null"
10698 ],
10699 "default": null,
10700 "items": {
10701 "type": "string"
10702 }
10703 },
10704 "runtimeArgs": {
10705 "description": "Optional arguments passed to the runtime executable.",
10706 "type": "array",
10707 "default": [],
10708 "items": {
10709 "type": "string"
10710 }
10711 },
10712 "runtimeExecutable": {
10713 "description": "Either 'canary', 'stable', 'dev', 'custom' or path to the browser executable. Custom means a custom wrapper, custom build or EDGE_PATH environment variable.",
10714 "type": [
10715 "string",
10716 "null"
10717 ],
10718 "default": "stable"
10719 },
10720 "server": {
10721 "oneOf": [
10722 {
10723 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
10724 "type": "object",
10725 "properties": {
10726 "args": {
10727 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
10728 "type": [
10729 "array",
10730 "string"
10731 ],
10732 "default": [],
10733 "items": {
10734 "type": "string"
10735 },
10736 "tags": [
10737 "setup"
10738 ]
10739 },
10740 "attachSimplePort": {
10741 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
10742 "default": 9229,
10743 "oneOf": [
10744 {
10745 "type": "integer"
10746 },
10747 {
10748 "type": "string",
10749 "pattern": "^\\${.*}$"
10750 }
10751 ]
10752 },
10753 "autoAttachChildProcesses": {
10754 "description": "Attach debugger to new child processes automatically.",
10755 "type": "boolean",
10756 "default": true
10757 },
10758 "cascadeTerminateToConfigurations": {
10759 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
10760 "type": "array",
10761 "default": [],
10762 "items": {
10763 "type": "string",
10764 "uniqueItems": true
10765 }
10766 },
10767 "console": {
10768 "description": "Where to launch the debug target.",
10769 "type": "string",
10770 "default": "internalConsole",
10771 "enum": [
10772 "internalConsole",
10773 "integratedTerminal",
10774 "externalTerminal"
10775 ],
10776 "enumDescriptions": [
10777 "VS Code Debug Console (which doesn't support to read input from a program)",
10778 "VS Code's integrated terminal",
10779 "External terminal that can be configured via user settings"
10780 ]
10781 },
10782 "customDescriptionGenerator": {
10783 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
10784 "type": "string"
10785 },
10786 "customPropertiesGenerator": {
10787 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
10788 "type": "string",
10789 "deprecated": true
10790 },
10791 "cwd": {
10792 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
10793 "type": "string",
10794 "default": "${ZED_WORKTREE_ROOT}",
10795 "tags": [
10796 "setup"
10797 ]
10798 },
10799 "enableContentValidation": {
10800 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
10801 "type": "boolean",
10802 "default": true
10803 },
10804 "enableDWARF": {
10805 "type": "boolean",
10806 "default": true,
10807 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
10808 },
10809 "env": {
10810 "type": "object",
10811 "additionalProperties": {
10812 "type": [
10813 "string",
10814 "null"
10815 ]
10816 },
10817 "default": {},
10818 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
10819 "tags": [
10820 "setup"
10821 ]
10822 },
10823 "envFile": {
10824 "description": "Absolute path to a file containing environment variable definitions.",
10825 "type": "string",
10826 "default": "${ZED_WORKTREE_ROOT}/.env"
10827 },
10828 "experimentalNetworking": {
10829 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
10830 "type": "string",
10831 "default": "auto",
10832 "enum": [
10833 "auto",
10834 "on",
10835 "off"
10836 ]
10837 },
10838 "killBehavior": {
10839 "type": "string",
10840 "default": "forceful",
10841 "enum": [
10842 "forceful",
10843 "polite",
10844 "none"
10845 ],
10846 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
10847 },
10848 "localRoot": {
10849 "description": "Path to the local directory containing the program.",
10850 "type": [
10851 "string",
10852 "null"
10853 ],
10854 "default": null
10855 },
10856 "nodeVersionHint": {
10857 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
10858 "type": "number",
10859 "default": 12,
10860 "minimum": 8
10861 },
10862 "outFiles": {
10863 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
10864 "type": [
10865 "array"
10866 ],
10867 "default": [
10868 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
10869 "!**/node_modules/**"
10870 ],
10871 "items": {
10872 "type": "string"
10873 },
10874 "tags": [
10875 "setup"
10876 ]
10877 },
10878 "outputCapture": {
10879 "default": "console",
10880 "enum": [
10881 "console",
10882 "std"
10883 ],
10884 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
10885 },
10886 "pauseForSourceMap": {
10887 "type": "boolean",
10888 "default": false,
10889 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
10890 },
10891 "profileStartup": {
10892 "description": "If true, will start profiling as soon as the process launches",
10893 "type": "boolean",
10894 "default": true
10895 },
10896 "program": {
10897 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
10898 "type": "string",
10899 "default": "",
10900 "tags": [
10901 "setup"
10902 ]
10903 },
10904 "remoteRoot": {
10905 "description": "Absolute path to the remote directory containing the program.",
10906 "type": [
10907 "string",
10908 "null"
10909 ],
10910 "default": null
10911 },
10912 "resolveSourceMapLocations": {
10913 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
10914 "type": [
10915 "array",
10916 "null"
10917 ],
10918 "default": [
10919 "${ZED_WORKTREE_ROOT}/**",
10920 "!**/node_modules/**"
10921 ],
10922 "items": {
10923 "type": "string"
10924 }
10925 },
10926 "restart": {
10927 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
10928 "default": true,
10929 "oneOf": [
10930 {
10931 "type": "boolean"
10932 },
10933 {
10934 "type": "object",
10935 "properties": {
10936 "delay": {
10937 "type": "number",
10938 "default": 1000,
10939 "minimum": 0
10940 },
10941 "maxAttempts": {
10942 "type": "number",
10943 "default": 10,
10944 "minimum": 0
10945 }
10946 }
10947 }
10948 ]
10949 },
10950 "runtimeArgs": {
10951 "description": "Optional arguments passed to the runtime executable.",
10952 "type": "array",
10953 "default": [],
10954 "items": {
10955 "type": "string"
10956 },
10957 "tags": [
10958 "setup"
10959 ]
10960 },
10961 "runtimeExecutable": {
10962 "type": [
10963 "string",
10964 "null"
10965 ],
10966 "default": "node",
10967 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
10968 },
10969 "runtimeSourcemapPausePatterns": {
10970 "type": "array",
10971 "default": [],
10972 "items": {
10973 "type": "string"
10974 },
10975 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
10976 },
10977 "runtimeVersion": {
10978 "type": "string",
10979 "default": "default",
10980 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
10981 },
10982 "showAsyncStacks": {
10983 "description": "Show the async calls that led to the current call stack.",
10984 "default": true,
10985 "oneOf": [
10986 {
10987 "type": "boolean"
10988 },
10989 {
10990 "type": "object",
10991 "properties": {
10992 "onAttach": {
10993 "type": "number",
10994 "default": 32
10995 }
10996 },
10997 "required": [
10998 "onAttach"
10999 ]
11000 },
11001 {
11002 "type": "object",
11003 "properties": {
11004 "onceBreakpointResolved": {
11005 "type": "number",
11006 "default": 32
11007 }
11008 },
11009 "required": [
11010 "onceBreakpointResolved"
11011 ]
11012 }
11013 ]
11014 },
11015 "skipFiles": {
11016 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
11017 "type": "array",
11018 "default": [
11019 "${/**"
11020 ]
11021 },
11022 "smartStep": {
11023 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
11024 "type": "boolean",
11025 "default": true
11026 },
11027 "sourceMapPathOverrides": {
11028 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
11029 "type": "object",
11030 "default": {
11031 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
11032 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
11033 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
11034 }
11035 },
11036 "sourceMapRenames": {
11037 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
11038 "type": "boolean",
11039 "default": true
11040 },
11041 "sourceMaps": {
11042 "description": "Use JavaScript source maps (if they exist).",
11043 "type": "boolean",
11044 "default": true
11045 },
11046 "stopOnEntry": {
11047 "description": "Automatically stop program after launch.",
11048 "type": [
11049 "boolean",
11050 "string"
11051 ],
11052 "default": true
11053 },
11054 "timeout": {
11055 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
11056 "type": "number",
11057 "default": 10000
11058 },
11059 "timeouts": {
11060 "description": "Timeouts for several debugger operations.",
11061 "type": "object",
11062 "properties": {
11063 "hoverEvaluation": {
11064 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
11065 "type": "number",
11066 "default": 500
11067 },
11068 "sourceMapCumulativePause": {
11069 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
11070 "type": "number",
11071 "default": 1000
11072 },
11073 "sourceMapMinPause": {
11074 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
11075 "type": "number",
11076 "default": 1000
11077 }
11078 },
11079 "additionalProperties": false,
11080 "default": {},
11081 "markdownDescription": "Timeouts for several debugger operations."
11082 },
11083 "trace": {
11084 "description": "Configures what diagnostic output is produced.",
11085 "default": true,
11086 "oneOf": [
11087 {
11088 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
11089 "type": "boolean"
11090 },
11091 {
11092 "type": "object",
11093 "properties": {
11094 "logFile": {
11095 "description": "Configures where on disk logs are written.",
11096 "type": [
11097 "string",
11098 "null"
11099 ]
11100 },
11101 "stdio": {
11102 "description": "Whether to return trace data from the launched application or browser.",
11103 "type": "boolean"
11104 }
11105 },
11106 "additionalProperties": false
11107 }
11108 ]
11109 }
11110 },
11111 "additionalProperties": false,
11112 "default": {
11113 "program": "node my-server.js"
11114 }
11115 },
11116 {
11117 "description": "JavaScript Debug Terminal",
11118 "type": "object",
11119 "properties": {
11120 "autoAttachChildProcesses": {
11121 "description": "Attach debugger to new child processes automatically.",
11122 "type": "boolean",
11123 "default": true
11124 },
11125 "cascadeTerminateToConfigurations": {
11126 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
11127 "type": "array",
11128 "default": [],
11129 "items": {
11130 "type": "string",
11131 "uniqueItems": true
11132 }
11133 },
11134 "command": {
11135 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
11136 "type": [
11137 "string",
11138 "null"
11139 ],
11140 "default": "npm start",
11141 "tags": [
11142 "setup"
11143 ]
11144 },
11145 "customDescriptionGenerator": {
11146 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
11147 "type": "string"
11148 },
11149 "customPropertiesGenerator": {
11150 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
11151 "type": "string",
11152 "deprecated": true
11153 },
11154 "cwd": {
11155 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
11156 "type": "string",
11157 "default": "${ZED_WORKTREE_ROOT}",
11158 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
11159 "tags": [
11160 "setup"
11161 ]
11162 },
11163 "enableContentValidation": {
11164 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
11165 "type": "boolean",
11166 "default": true
11167 },
11168 "enableDWARF": {
11169 "type": "boolean",
11170 "default": true,
11171 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
11172 },
11173 "env": {
11174 "type": "object",
11175 "additionalProperties": {
11176 "type": [
11177 "string",
11178 "null"
11179 ]
11180 },
11181 "default": {},
11182 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
11183 "tags": [
11184 "setup"
11185 ]
11186 },
11187 "envFile": {
11188 "description": "Absolute path to a file containing environment variable definitions.",
11189 "type": "string",
11190 "default": "${ZED_WORKTREE_ROOT}/.env"
11191 },
11192 "localRoot": {
11193 "description": "Path to the local directory containing the program.",
11194 "type": [
11195 "string",
11196 "null"
11197 ],
11198 "default": null
11199 },
11200 "nodeVersionHint": {
11201 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
11202 "type": "number",
11203 "default": 12,
11204 "minimum": 8
11205 },
11206 "outFiles": {
11207 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
11208 "type": [
11209 "array"
11210 ],
11211 "default": [
11212 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
11213 "!**/node_modules/**"
11214 ],
11215 "items": {
11216 "type": "string"
11217 },
11218 "tags": [
11219 "setup"
11220 ]
11221 },
11222 "outputCapture": {
11223 "default": "console",
11224 "enum": [
11225 "console",
11226 "std"
11227 ],
11228 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
11229 },
11230 "pauseForSourceMap": {
11231 "type": "boolean",
11232 "default": false,
11233 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
11234 },
11235 "remoteRoot": {
11236 "description": "Absolute path to the remote directory containing the program.",
11237 "type": [
11238 "string",
11239 "null"
11240 ],
11241 "default": null
11242 },
11243 "resolveSourceMapLocations": {
11244 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
11245 "type": [
11246 "array",
11247 "null"
11248 ],
11249 "default": [
11250 "${ZED_WORKTREE_ROOT}/**",
11251 "!**/node_modules/**"
11252 ],
11253 "items": {
11254 "type": "string"
11255 }
11256 },
11257 "runtimeSourcemapPausePatterns": {
11258 "type": "array",
11259 "default": [],
11260 "items": {
11261 "type": "string"
11262 },
11263 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
11264 },
11265 "showAsyncStacks": {
11266 "description": "Show the async calls that led to the current call stack.",
11267 "default": true,
11268 "oneOf": [
11269 {
11270 "type": "boolean"
11271 },
11272 {
11273 "type": "object",
11274 "properties": {
11275 "onAttach": {
11276 "type": "number",
11277 "default": 32
11278 }
11279 },
11280 "required": [
11281 "onAttach"
11282 ]
11283 },
11284 {
11285 "type": "object",
11286 "properties": {
11287 "onceBreakpointResolved": {
11288 "type": "number",
11289 "default": 32
11290 }
11291 },
11292 "required": [
11293 "onceBreakpointResolved"
11294 ]
11295 }
11296 ]
11297 },
11298 "skipFiles": {
11299 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
11300 "type": "array",
11301 "default": [
11302 "${/**"
11303 ]
11304 },
11305 "smartStep": {
11306 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
11307 "type": "boolean",
11308 "default": true
11309 },
11310 "sourceMapPathOverrides": {
11311 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
11312 "type": "object",
11313 "default": {
11314 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
11315 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
11316 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
11317 }
11318 },
11319 "sourceMapRenames": {
11320 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
11321 "type": "boolean",
11322 "default": true
11323 },
11324 "sourceMaps": {
11325 "description": "Use JavaScript source maps (if they exist).",
11326 "type": "boolean",
11327 "default": true
11328 },
11329 "timeout": {
11330 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
11331 "type": "number",
11332 "default": 10000
11333 },
11334 "timeouts": {
11335 "description": "Timeouts for several debugger operations.",
11336 "type": "object",
11337 "properties": {
11338 "hoverEvaluation": {
11339 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
11340 "type": "number",
11341 "default": 500
11342 },
11343 "sourceMapCumulativePause": {
11344 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
11345 "type": "number",
11346 "default": 1000
11347 },
11348 "sourceMapMinPause": {
11349 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
11350 "type": "number",
11351 "default": 1000
11352 }
11353 },
11354 "additionalProperties": false,
11355 "default": {},
11356 "markdownDescription": "Timeouts for several debugger operations."
11357 },
11358 "trace": {
11359 "description": "Configures what diagnostic output is produced.",
11360 "default": true,
11361 "oneOf": [
11362 {
11363 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
11364 "type": "boolean"
11365 },
11366 {
11367 "type": "object",
11368 "properties": {
11369 "logFile": {
11370 "description": "Configures where on disk logs are written.",
11371 "type": [
11372 "string",
11373 "null"
11374 ]
11375 },
11376 "stdio": {
11377 "description": "Whether to return trace data from the launched application or browser.",
11378 "type": "boolean"
11379 }
11380 },
11381 "additionalProperties": false
11382 }
11383 ]
11384 }
11385 },
11386 "additionalProperties": false,
11387 "default": {
11388 "program": "npm start"
11389 }
11390 }
11391 ]
11392 },
11393 "showAsyncStacks": {
11394 "description": "Show the async calls that led to the current call stack.",
11395 "default": true,
11396 "oneOf": [
11397 {
11398 "type": "boolean"
11399 },
11400 {
11401 "type": "object",
11402 "properties": {
11403 "onAttach": {
11404 "type": "number",
11405 "default": 32
11406 }
11407 },
11408 "required": [
11409 "onAttach"
11410 ]
11411 },
11412 {
11413 "type": "object",
11414 "properties": {
11415 "onceBreakpointResolved": {
11416 "type": "number",
11417 "default": 32
11418 }
11419 },
11420 "required": [
11421 "onceBreakpointResolved"
11422 ]
11423 }
11424 ]
11425 },
11426 "skipFiles": {
11427 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
11428 "type": "array",
11429 "default": [
11430 "${/**"
11431 ]
11432 },
11433 "smartStep": {
11434 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
11435 "type": "boolean",
11436 "default": true
11437 },
11438 "sourceMapPathOverrides": {
11439 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
11440 "type": "object",
11441 "default": {
11442 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
11443 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
11444 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
11445 }
11446 },
11447 "sourceMapRenames": {
11448 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
11449 "type": "boolean",
11450 "default": true
11451 },
11452 "sourceMaps": {
11453 "description": "Use JavaScript source maps (if they exist).",
11454 "type": "boolean",
11455 "default": true
11456 },
11457 "timeout": {
11458 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
11459 "type": "number",
11460 "default": 10000
11461 },
11462 "timeouts": {
11463 "description": "Timeouts for several debugger operations.",
11464 "type": "object",
11465 "properties": {
11466 "hoverEvaluation": {
11467 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
11468 "type": "number",
11469 "default": 500
11470 },
11471 "sourceMapCumulativePause": {
11472 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
11473 "type": "number",
11474 "default": 1000
11475 },
11476 "sourceMapMinPause": {
11477 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
11478 "type": "number",
11479 "default": 1000
11480 }
11481 },
11482 "additionalProperties": false,
11483 "default": {},
11484 "markdownDescription": "Timeouts for several debugger operations."
11485 },
11486 "trace": {
11487 "description": "Configures what diagnostic output is produced.",
11488 "default": true,
11489 "oneOf": [
11490 {
11491 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
11492 "type": "boolean"
11493 },
11494 {
11495 "type": "object",
11496 "properties": {
11497 "logFile": {
11498 "description": "Configures where on disk logs are written.",
11499 "type": [
11500 "string",
11501 "null"
11502 ]
11503 },
11504 "stdio": {
11505 "description": "Whether to return trace data from the launched application or browser.",
11506 "type": "boolean"
11507 }
11508 },
11509 "additionalProperties": false
11510 }
11511 ]
11512 },
11513 "url": {
11514 "description": "Will search for a tab with this exact url and attach to it, if found",
11515 "type": "string",
11516 "default": "http://localhost:8080",
11517 "tags": [
11518 "setup"
11519 ]
11520 },
11521 "urlFilter": {
11522 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
11523 "type": "string",
11524 "default": ""
11525 },
11526 "useWebView": {
11527 "description": "When 'true', the debugger will treat the runtime executable as a host application that contains a WebView allowing you to debug the WebView script content.",
11528 "type": "boolean",
11529 "default": false
11530 },
11531 "userDataDir": {
11532 "description": "By default, the browser is launched with a separate user profile in a temp folder. Use this option to override it. Set to false to launch with your default user profile. A new browser can't be launched if an instance is already running from `userDataDir`.",
11533 "type": [
11534 "string",
11535 "boolean"
11536 ],
11537 "default": true
11538 },
11539 "vueComponentPaths": {
11540 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
11541 "type": "array",
11542 "default": [
11543 "${ZED_WORKTREE_ROOT}/**/*.vue"
11544 ]
11545 },
11546 "webRoot": {
11547 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
11548 "type": "string",
11549 "default": "${ZED_WORKTREE_ROOT}",
11550 "tags": [
11551 "setup"
11552 ]
11553 }
11554 }
11555 }
11556 },
11557 {
11558 "if": {
11559 "properties": {
11560 "type": {
11561 "enum": [
11562 "msedge"
11563 ]
11564 },
11565 "request": {
11566 "enum": [
11567 "attach"
11568 ]
11569 }
11570 },
11571 "required": [
11572 "type",
11573 "request"
11574 ]
11575 },
11576 "then": {
11577 "properties": {
11578 "address": {
11579 "description": "IP address or hostname the debugged browser is listening on.",
11580 "type": "string",
11581 "default": "localhost"
11582 },
11583 "browserAttachLocation": {
11584 "description": "Forces the browser to attach in one location. In a remote workspace (through ssh or WSL, for example) this can be used to attach to a browser on the remote machine rather than locally.",
11585 "default": null,
11586 "oneOf": [
11587 {
11588 "type": "null"
11589 },
11590 {
11591 "type": "string",
11592 "enum": [
11593 "ui",
11594 "workspace"
11595 ]
11596 }
11597 ]
11598 },
11599 "cascadeTerminateToConfigurations": {
11600 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
11601 "type": "array",
11602 "default": [],
11603 "items": {
11604 "type": "string",
11605 "uniqueItems": true
11606 }
11607 },
11608 "customDescriptionGenerator": {
11609 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
11610 "type": "string"
11611 },
11612 "customPropertiesGenerator": {
11613 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
11614 "type": "string",
11615 "deprecated": true
11616 },
11617 "disableNetworkCache": {
11618 "description": "Controls whether to skip the network cache for each request",
11619 "type": "boolean",
11620 "default": true
11621 },
11622 "enableContentValidation": {
11623 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
11624 "type": "boolean",
11625 "default": true
11626 },
11627 "enableDWARF": {
11628 "type": "boolean",
11629 "default": true,
11630 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
11631 },
11632 "inspectUri": {
11633 "description": "Format to use to rewrite the inspectUri: It's a template string that interpolates keys in `{curlyBraces}`. Available keys are:\n - `url.*` is the parsed address of the running application. For instance, `{url.port}`, `{url.hostname}`\n - `port` is the debug port that Chrome is listening on.\n - `browserInspectUri` is the inspector URI on the launched browser\n - `browserInspectUriPath` is the path part of the inspector URI on the launched browser (e.g.: \"/devtools/browser/e9ec0098-306e-472a-8133-5e42488929c2\").\n - `wsProtocol` is the hinted websocket protocol. This is set to `wss` if the original URL is `https`, or `ws` otherwise.\n",
11634 "type": [
11635 "string",
11636 "null"
11637 ],
11638 "default": null
11639 },
11640 "outFiles": {
11641 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
11642 "type": [
11643 "array"
11644 ],
11645 "default": [
11646 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
11647 "!**/node_modules/**"
11648 ],
11649 "items": {
11650 "type": "string"
11651 },
11652 "tags": [
11653 "setup"
11654 ]
11655 },
11656 "outputCapture": {
11657 "default": "console",
11658 "enum": [
11659 "console",
11660 "std"
11661 ],
11662 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
11663 },
11664 "pathMapping": {
11665 "description": "A mapping of URLs/paths to local folders, to resolve scripts in the Browser to scripts on disk",
11666 "type": "object",
11667 "default": {}
11668 },
11669 "pauseForSourceMap": {
11670 "type": "boolean",
11671 "default": false,
11672 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
11673 },
11674 "perScriptSourcemaps": {
11675 "description": "Whether scripts are loaded individually with unique sourcemaps containing the basename of the source file. This can be set to optimize sourcemap handling when dealing with lots of small scripts. If set to \"auto\", we'll detect known cases where this is appropriate.",
11676 "type": "string",
11677 "default": "auto",
11678 "enum": [
11679 "yes",
11680 "no",
11681 "auto"
11682 ]
11683 },
11684 "port": {
11685 "description": "Port to use to remote debugging the browser, given as `--remote-debugging-port` when launching the browser.",
11686 "default": 9229,
11687 "oneOf": [
11688 {
11689 "type": "integer"
11690 },
11691 {
11692 "type": "string",
11693 "pattern": "^\\${.*}$"
11694 }
11695 ],
11696 "tags": [
11697 "setup"
11698 ]
11699 },
11700 "resolveSourceMapLocations": {
11701 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
11702 "type": [
11703 "array",
11704 "null"
11705 ],
11706 "default": null,
11707 "items": {
11708 "type": "string"
11709 }
11710 },
11711 "restart": {
11712 "type": "boolean",
11713 "default": false,
11714 "markdownDescription": "Whether to reconnect if the browser connection is closed"
11715 },
11716 "server": {
11717 "oneOf": [
11718 {
11719 "description": "Configures a web server to start up. Takes the same configuration as the 'node' launch task.",
11720 "type": "object",
11721 "properties": {
11722 "args": {
11723 "description": "Command line arguments passed to the program.\n\nCan be an array of strings or a single string. When the program is launched in a terminal, setting this property to a single string will result in the arguments not being escaped for the shell.",
11724 "type": [
11725 "array",
11726 "string"
11727 ],
11728 "default": [],
11729 "items": {
11730 "type": "string"
11731 },
11732 "tags": [
11733 "setup"
11734 ]
11735 },
11736 "attachSimplePort": {
11737 "description": "If set, attaches to the process via the given port. This is generally no longer necessary for Node.js programs and loses the ability to debug child processes, but can be useful in more esoteric scenarios such as with Deno and Docker launches. If set to 0, a random port will be chosen and --inspect-brk added to the launch arguments automatically.",
11738 "default": 9229,
11739 "oneOf": [
11740 {
11741 "type": "integer"
11742 },
11743 {
11744 "type": "string",
11745 "pattern": "^\\${.*}$"
11746 }
11747 ]
11748 },
11749 "autoAttachChildProcesses": {
11750 "description": "Attach debugger to new child processes automatically.",
11751 "type": "boolean",
11752 "default": true
11753 },
11754 "cascadeTerminateToConfigurations": {
11755 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
11756 "type": "array",
11757 "default": [],
11758 "items": {
11759 "type": "string",
11760 "uniqueItems": true
11761 }
11762 },
11763 "console": {
11764 "description": "Where to launch the debug target.",
11765 "type": "string",
11766 "default": "internalConsole",
11767 "enum": [
11768 "internalConsole",
11769 "integratedTerminal",
11770 "externalTerminal"
11771 ],
11772 "enumDescriptions": [
11773 "VS Code Debug Console (which doesn't support to read input from a program)",
11774 "VS Code's integrated terminal",
11775 "External terminal that can be configured via user settings"
11776 ]
11777 },
11778 "customDescriptionGenerator": {
11779 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
11780 "type": "string"
11781 },
11782 "customPropertiesGenerator": {
11783 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
11784 "type": "string",
11785 "deprecated": true
11786 },
11787 "cwd": {
11788 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
11789 "type": "string",
11790 "default": "${ZED_WORKTREE_ROOT}",
11791 "tags": [
11792 "setup"
11793 ]
11794 },
11795 "enableContentValidation": {
11796 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
11797 "type": "boolean",
11798 "default": true
11799 },
11800 "enableDWARF": {
11801 "type": "boolean",
11802 "default": true,
11803 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
11804 },
11805 "env": {
11806 "type": "object",
11807 "additionalProperties": {
11808 "type": [
11809 "string",
11810 "null"
11811 ]
11812 },
11813 "default": {},
11814 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
11815 "tags": [
11816 "setup"
11817 ]
11818 },
11819 "envFile": {
11820 "description": "Absolute path to a file containing environment variable definitions.",
11821 "type": "string",
11822 "default": "${ZED_WORKTREE_ROOT}/.env"
11823 },
11824 "experimentalNetworking": {
11825 "description": "Enable experimental inspection in Node.js. When set to `auto` this is enabled for versions of Node.js that support it. It can be set to `on` or `off` to enable or disable it explicitly.",
11826 "type": "string",
11827 "default": "auto",
11828 "enum": [
11829 "auto",
11830 "on",
11831 "off"
11832 ]
11833 },
11834 "killBehavior": {
11835 "type": "string",
11836 "default": "forceful",
11837 "enum": [
11838 "forceful",
11839 "polite",
11840 "none"
11841 ],
11842 "markdownDescription": "Configures how debug processes are killed when stopping the session. Can be:\n\n- forceful (default): forcefully tears down the process tree. Sends SIGKILL on posix, or `taskkill.exe /F` on Windows.\n- polite: gracefully tears down the process tree. It's possible that misbehaving processes continue to run after shutdown in this way. Sends SIGTERM on posix, or `taskkill.exe` with no `/F` (force) flag on Windows.\n- none: no termination will happen."
11843 },
11844 "localRoot": {
11845 "description": "Path to the local directory containing the program.",
11846 "type": [
11847 "string",
11848 "null"
11849 ],
11850 "default": null
11851 },
11852 "nodeVersionHint": {
11853 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
11854 "type": "number",
11855 "default": 12,
11856 "minimum": 8
11857 },
11858 "outFiles": {
11859 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
11860 "type": [
11861 "array"
11862 ],
11863 "default": [
11864 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
11865 "!**/node_modules/**"
11866 ],
11867 "items": {
11868 "type": "string"
11869 },
11870 "tags": [
11871 "setup"
11872 ]
11873 },
11874 "outputCapture": {
11875 "default": "console",
11876 "enum": [
11877 "console",
11878 "std"
11879 ],
11880 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
11881 },
11882 "pauseForSourceMap": {
11883 "type": "boolean",
11884 "default": false,
11885 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
11886 },
11887 "profileStartup": {
11888 "description": "If true, will start profiling as soon as the process launches",
11889 "type": "boolean",
11890 "default": true
11891 },
11892 "program": {
11893 "description": "Absolute path to the program. Generated value is guessed by looking at package.json and opened files. Edit this attribute.",
11894 "type": "string",
11895 "default": "",
11896 "tags": [
11897 "setup"
11898 ]
11899 },
11900 "remoteRoot": {
11901 "description": "Absolute path to the remote directory containing the program.",
11902 "type": [
11903 "string",
11904 "null"
11905 ],
11906 "default": null
11907 },
11908 "resolveSourceMapLocations": {
11909 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
11910 "type": [
11911 "array",
11912 "null"
11913 ],
11914 "default": [
11915 "${ZED_WORKTREE_ROOT}/**",
11916 "!**/node_modules/**"
11917 ],
11918 "items": {
11919 "type": "string"
11920 }
11921 },
11922 "restart": {
11923 "description": "Try to reconnect to the program if we lose connection. If set to `true`, we'll try once a second, forever. You can customize the interval and maximum number of attempts by specifying the `delay` and `maxAttempts` in an object instead.",
11924 "default": true,
11925 "oneOf": [
11926 {
11927 "type": "boolean"
11928 },
11929 {
11930 "type": "object",
11931 "properties": {
11932 "delay": {
11933 "type": "number",
11934 "default": 1000,
11935 "minimum": 0
11936 },
11937 "maxAttempts": {
11938 "type": "number",
11939 "default": 10,
11940 "minimum": 0
11941 }
11942 }
11943 }
11944 ]
11945 },
11946 "runtimeArgs": {
11947 "description": "Optional arguments passed to the runtime executable.",
11948 "type": "array",
11949 "default": [],
11950 "items": {
11951 "type": "string"
11952 },
11953 "tags": [
11954 "setup"
11955 ]
11956 },
11957 "runtimeExecutable": {
11958 "type": [
11959 "string",
11960 "null"
11961 ],
11962 "default": "node",
11963 "markdownDescription": "Runtime to use. Either an absolute path or the name of a runtime available on the PATH. If omitted `node` is assumed."
11964 },
11965 "runtimeSourcemapPausePatterns": {
11966 "type": "array",
11967 "default": [],
11968 "items": {
11969 "type": "string"
11970 },
11971 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
11972 },
11973 "runtimeVersion": {
11974 "type": "string",
11975 "default": "default",
11976 "markdownDescription": "Version of `node` runtime to use. Requires `nvm`."
11977 },
11978 "showAsyncStacks": {
11979 "description": "Show the async calls that led to the current call stack.",
11980 "default": true,
11981 "oneOf": [
11982 {
11983 "type": "boolean"
11984 },
11985 {
11986 "type": "object",
11987 "properties": {
11988 "onAttach": {
11989 "type": "number",
11990 "default": 32
11991 }
11992 },
11993 "required": [
11994 "onAttach"
11995 ]
11996 },
11997 {
11998 "type": "object",
11999 "properties": {
12000 "onceBreakpointResolved": {
12001 "type": "number",
12002 "default": 32
12003 }
12004 },
12005 "required": [
12006 "onceBreakpointResolved"
12007 ]
12008 }
12009 ]
12010 },
12011 "skipFiles": {
12012 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
12013 "type": "array",
12014 "default": [
12015 "${/**"
12016 ]
12017 },
12018 "smartStep": {
12019 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
12020 "type": "boolean",
12021 "default": true
12022 },
12023 "sourceMapPathOverrides": {
12024 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
12025 "type": "object",
12026 "default": {
12027 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
12028 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
12029 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
12030 }
12031 },
12032 "sourceMapRenames": {
12033 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
12034 "type": "boolean",
12035 "default": true
12036 },
12037 "sourceMaps": {
12038 "description": "Use JavaScript source maps (if they exist).",
12039 "type": "boolean",
12040 "default": true
12041 },
12042 "stopOnEntry": {
12043 "description": "Automatically stop program after launch.",
12044 "type": [
12045 "boolean",
12046 "string"
12047 ],
12048 "default": true
12049 },
12050 "timeout": {
12051 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
12052 "type": "number",
12053 "default": 10000
12054 },
12055 "timeouts": {
12056 "description": "Timeouts for several debugger operations.",
12057 "type": "object",
12058 "properties": {
12059 "hoverEvaluation": {
12060 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
12061 "type": "number",
12062 "default": 500
12063 },
12064 "sourceMapCumulativePause": {
12065 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
12066 "type": "number",
12067 "default": 1000
12068 },
12069 "sourceMapMinPause": {
12070 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
12071 "type": "number",
12072 "default": 1000
12073 }
12074 },
12075 "additionalProperties": false,
12076 "default": {},
12077 "markdownDescription": "Timeouts for several debugger operations."
12078 },
12079 "trace": {
12080 "description": "Configures what diagnostic output is produced.",
12081 "default": true,
12082 "oneOf": [
12083 {
12084 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
12085 "type": "boolean"
12086 },
12087 {
12088 "type": "object",
12089 "properties": {
12090 "logFile": {
12091 "description": "Configures where on disk logs are written.",
12092 "type": [
12093 "string",
12094 "null"
12095 ]
12096 },
12097 "stdio": {
12098 "description": "Whether to return trace data from the launched application or browser.",
12099 "type": "boolean"
12100 }
12101 },
12102 "additionalProperties": false
12103 }
12104 ]
12105 }
12106 },
12107 "additionalProperties": false,
12108 "default": {
12109 "program": "node my-server.js"
12110 }
12111 },
12112 {
12113 "description": "JavaScript Debug Terminal",
12114 "type": "object",
12115 "properties": {
12116 "autoAttachChildProcesses": {
12117 "description": "Attach debugger to new child processes automatically.",
12118 "type": "boolean",
12119 "default": true
12120 },
12121 "cascadeTerminateToConfigurations": {
12122 "description": "A list of debug sessions which, when this debug session is terminated, will also be stopped.",
12123 "type": "array",
12124 "default": [],
12125 "items": {
12126 "type": "string",
12127 "uniqueItems": true
12128 }
12129 },
12130 "command": {
12131 "description": "Command to run in the launched terminal. If not provided, the terminal will open without launching a program.",
12132 "type": [
12133 "string",
12134 "null"
12135 ],
12136 "default": "npm start",
12137 "tags": [
12138 "setup"
12139 ]
12140 },
12141 "customDescriptionGenerator": {
12142 "description": "Customize the textual description the debugger shows for objects (local variables, etc...). Samples:\n 1. this.toString() // will call toString to print all objects\n 2. this.customDescription ? this.customDescription() : defaultValue // Use customDescription method if available, if not return defaultValue\n 3. function (def) { return this.customDescription ? this.customDescription() : def } // Use customDescription method if available, if not return defaultValue\n ",
12143 "type": "string"
12144 },
12145 "customPropertiesGenerator": {
12146 "description": "Customize the properties shown for an object in the debugger (local variables, etc...). Samples:\n 1. { ...this, extraProperty: '12345' } // Add an extraProperty 12345 to all objects\n 2. this.customProperties ? this.customProperties() : this // Use customProperties method if available, if not use the properties in this (the default properties)\n 3. function () { return this.customProperties ? this.customProperties() : this } // Use customDescription method if available, if not return the default properties\n\n Deprecated: This is a temporary implementation of this feature until we have time to implement it in the way described here: https://github.com/microsoft/vscode/issues/102181",
12147 "type": "string",
12148 "deprecated": true
12149 },
12150 "cwd": {
12151 "description": "Absolute path to the working directory of the program being debugged. If you've set localRoot then cwd will match that value otherwise it falls back to your workspaceFolder",
12152 "type": "string",
12153 "default": "${ZED_WORKTREE_ROOT}",
12154 "docDefault": "localRoot || ${ZED_WORKTREE_ROOT}",
12155 "tags": [
12156 "setup"
12157 ]
12158 },
12159 "enableContentValidation": {
12160 "description": "Toggles whether we verify the contents of files on disk match the ones loaded in the runtime. This is useful in a variety of scenarios and required in some, but can cause issues if you have server-side transformation of scripts, for example.",
12161 "type": "boolean",
12162 "default": true
12163 },
12164 "enableDWARF": {
12165 "type": "boolean",
12166 "default": true,
12167 "markdownDescription": "Toggles whether the debugger will try to read DWARF debug symbols from WebAssembly, which can be resource intensive. Requires the `ms-vscode.wasm-dwarf-debugging` extension to function."
12168 },
12169 "env": {
12170 "type": "object",
12171 "additionalProperties": {
12172 "type": [
12173 "string",
12174 "null"
12175 ]
12176 },
12177 "default": {},
12178 "markdownDescription": "Environment variables passed to the program. The value `null` removes the variable from the environment.",
12179 "tags": [
12180 "setup"
12181 ]
12182 },
12183 "envFile": {
12184 "description": "Absolute path to a file containing environment variable definitions.",
12185 "type": "string",
12186 "default": "${ZED_WORKTREE_ROOT}/.env"
12187 },
12188 "localRoot": {
12189 "description": "Path to the local directory containing the program.",
12190 "type": [
12191 "string",
12192 "null"
12193 ],
12194 "default": null
12195 },
12196 "nodeVersionHint": {
12197 "description": "Allows you to explicitly specify the Node version that's running, which can be used to disable or enable certain behaviors in cases where the automatic version detection does not work.",
12198 "type": "number",
12199 "default": 12,
12200 "minimum": 8
12201 },
12202 "outFiles": {
12203 "description": "If source maps are enabled, these glob patterns specify the generated JavaScript files. If a pattern starts with `!` the files are excluded. If not specified, the generated code is expected in the same directory as its source.",
12204 "type": [
12205 "array"
12206 ],
12207 "default": [
12208 "${ZED_WORKTREE_ROOT}/**/*.(m|c|)js",
12209 "!**/node_modules/**"
12210 ],
12211 "items": {
12212 "type": "string"
12213 },
12214 "tags": [
12215 "setup"
12216 ]
12217 },
12218 "outputCapture": {
12219 "default": "console",
12220 "enum": [
12221 "console",
12222 "std"
12223 ],
12224 "markdownDescription": "From where to capture output messages: the default debug API if set to `console`, or stdout/stderr streams if set to `std`."
12225 },
12226 "pauseForSourceMap": {
12227 "type": "boolean",
12228 "default": false,
12229 "markdownDescription": "Whether to wait for source maps to load for each incoming script. This has a performance overhead, and might be safely disabled when running off of disk, so long as `rootPath` is not disabled."
12230 },
12231 "remoteRoot": {
12232 "description": "Absolute path to the remote directory containing the program.",
12233 "type": [
12234 "string",
12235 "null"
12236 ],
12237 "default": null
12238 },
12239 "resolveSourceMapLocations": {
12240 "description": "A list of minimatch patterns for locations (folders and URLs) in which source maps can be used to resolve local files. This can be used to avoid incorrectly breaking in external source mapped code. Patterns can be prefixed with \"!\" to exclude them. May be set to an empty array or null to avoid restriction.",
12241 "type": [
12242 "array",
12243 "null"
12244 ],
12245 "default": [
12246 "${ZED_WORKTREE_ROOT}/**",
12247 "!**/node_modules/**"
12248 ],
12249 "items": {
12250 "type": "string"
12251 }
12252 },
12253 "runtimeSourcemapPausePatterns": {
12254 "type": "array",
12255 "default": [],
12256 "items": {
12257 "type": "string"
12258 },
12259 "markdownDescription": "A list of patterns at which to manually insert entrypoint breakpoints. This can be useful to give the debugger an opportunity to set breakpoints when using sourcemaps that don't exist or can't be detected before launch, such as [with the Serverless framework](https://github.com/microsoft/vscode-js-debug/issues/492)."
12260 },
12261 "showAsyncStacks": {
12262 "description": "Show the async calls that led to the current call stack.",
12263 "default": true,
12264 "oneOf": [
12265 {
12266 "type": "boolean"
12267 },
12268 {
12269 "type": "object",
12270 "properties": {
12271 "onAttach": {
12272 "type": "number",
12273 "default": 32
12274 }
12275 },
12276 "required": [
12277 "onAttach"
12278 ]
12279 },
12280 {
12281 "type": "object",
12282 "properties": {
12283 "onceBreakpointResolved": {
12284 "type": "number",
12285 "default": 32
12286 }
12287 },
12288 "required": [
12289 "onceBreakpointResolved"
12290 ]
12291 }
12292 ]
12293 },
12294 "skipFiles": {
12295 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
12296 "type": "array",
12297 "default": [
12298 "${/**"
12299 ]
12300 },
12301 "smartStep": {
12302 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
12303 "type": "boolean",
12304 "default": true
12305 },
12306 "sourceMapPathOverrides": {
12307 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
12308 "type": "object",
12309 "default": {
12310 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
12311 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
12312 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
12313 }
12314 },
12315 "sourceMapRenames": {
12316 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
12317 "type": "boolean",
12318 "default": true
12319 },
12320 "sourceMaps": {
12321 "description": "Use JavaScript source maps (if they exist).",
12322 "type": "boolean",
12323 "default": true
12324 },
12325 "timeout": {
12326 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
12327 "type": "number",
12328 "default": 10000
12329 },
12330 "timeouts": {
12331 "description": "Timeouts for several debugger operations.",
12332 "type": "object",
12333 "properties": {
12334 "hoverEvaluation": {
12335 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
12336 "type": "number",
12337 "default": 500
12338 },
12339 "sourceMapCumulativePause": {
12340 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
12341 "type": "number",
12342 "default": 1000
12343 },
12344 "sourceMapMinPause": {
12345 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
12346 "type": "number",
12347 "default": 1000
12348 }
12349 },
12350 "additionalProperties": false,
12351 "default": {},
12352 "markdownDescription": "Timeouts for several debugger operations."
12353 },
12354 "trace": {
12355 "description": "Configures what diagnostic output is produced.",
12356 "default": true,
12357 "oneOf": [
12358 {
12359 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
12360 "type": "boolean"
12361 },
12362 {
12363 "type": "object",
12364 "properties": {
12365 "logFile": {
12366 "description": "Configures where on disk logs are written.",
12367 "type": [
12368 "string",
12369 "null"
12370 ]
12371 },
12372 "stdio": {
12373 "description": "Whether to return trace data from the launched application or browser.",
12374 "type": "boolean"
12375 }
12376 },
12377 "additionalProperties": false
12378 }
12379 ]
12380 }
12381 },
12382 "additionalProperties": false,
12383 "default": {
12384 "program": "npm start"
12385 }
12386 }
12387 ]
12388 },
12389 "showAsyncStacks": {
12390 "description": "Show the async calls that led to the current call stack.",
12391 "default": true,
12392 "oneOf": [
12393 {
12394 "type": "boolean"
12395 },
12396 {
12397 "type": "object",
12398 "properties": {
12399 "onAttach": {
12400 "type": "number",
12401 "default": 32
12402 }
12403 },
12404 "required": [
12405 "onAttach"
12406 ]
12407 },
12408 {
12409 "type": "object",
12410 "properties": {
12411 "onceBreakpointResolved": {
12412 "type": "number",
12413 "default": 32
12414 }
12415 },
12416 "required": [
12417 "onceBreakpointResolved"
12418 ]
12419 }
12420 ]
12421 },
12422 "skipFiles": {
12423 "description": "An array of file or folder names, or path globs, to skip when debugging. Star patterns and negations are allowed, for example, `[\"**/node_modules/**\", \"!**/node_modules/my-module/**\"]`",
12424 "type": "array",
12425 "default": [
12426 "${/**"
12427 ]
12428 },
12429 "smartStep": {
12430 "description": "Automatically step through generated code that cannot be mapped back to the original source.",
12431 "type": "boolean",
12432 "default": true
12433 },
12434 "sourceMapPathOverrides": {
12435 "description": "A set of mappings for rewriting the locations of source files from what the sourcemap says, to their locations on disk.",
12436 "type": "object",
12437 "default": {
12438 "meteor://💻app/*": "${ZED_WORKTREE_ROOT}/*",
12439 "webpack:///./~/*": "${ZED_WORKTREE_ROOT}/node_modules/*",
12440 "webpack://?:*/*": "${ZED_WORKTREE_ROOT}/*"
12441 }
12442 },
12443 "sourceMapRenames": {
12444 "description": "Whether to use the \"names\" mapping in sourcemaps. This requires requesting source content, which can be slow with certain debuggers.",
12445 "type": "boolean",
12446 "default": true
12447 },
12448 "sourceMaps": {
12449 "description": "Use JavaScript source maps (if they exist).",
12450 "type": "boolean",
12451 "default": true
12452 },
12453 "targetSelection": {
12454 "type": "string",
12455 "default": "automatic",
12456 "enum": [
12457 "pick",
12458 "automatic"
12459 ],
12460 "markdownDescription": "Whether to attach to all targets that match the URL filter (\"automatic\") or ask to pick one (\"pick\")."
12461 },
12462 "timeout": {
12463 "description": "Retry for this number of milliseconds to connect to Node.js. Default is 10000 ms.",
12464 "type": "number",
12465 "default": 10000
12466 },
12467 "timeouts": {
12468 "description": "Timeouts for several debugger operations.",
12469 "type": "object",
12470 "properties": {
12471 "hoverEvaluation": {
12472 "description": "Time until value evaluation for hovered symbols is aborted. If set to 0, hover evaluation does never time out.",
12473 "type": "number",
12474 "default": 500
12475 },
12476 "sourceMapCumulativePause": {
12477 "description": "Extra time in milliseconds allowed per session to be spent waiting for source-maps to be processed, after the minimum time (sourceMapMinPause) has been exhausted",
12478 "type": "number",
12479 "default": 1000
12480 },
12481 "sourceMapMinPause": {
12482 "description": "Minimum time in milliseconds spent waiting for each source-map to be processed when a script is being parsed",
12483 "type": "number",
12484 "default": 1000
12485 }
12486 },
12487 "additionalProperties": false,
12488 "default": {},
12489 "markdownDescription": "Timeouts for several debugger operations."
12490 },
12491 "trace": {
12492 "description": "Configures what diagnostic output is produced.",
12493 "default": true,
12494 "oneOf": [
12495 {
12496 "description": "Trace may be set to 'true' to write diagnostic logs to the disk.",
12497 "type": "boolean"
12498 },
12499 {
12500 "type": "object",
12501 "properties": {
12502 "logFile": {
12503 "description": "Configures where on disk logs are written.",
12504 "type": [
12505 "string",
12506 "null"
12507 ]
12508 },
12509 "stdio": {
12510 "description": "Whether to return trace data from the launched application or browser.",
12511 "type": "boolean"
12512 }
12513 },
12514 "additionalProperties": false
12515 }
12516 ]
12517 },
12518 "url": {
12519 "description": "Will search for a tab with this exact url and attach to it, if found",
12520 "type": "string",
12521 "default": "http://localhost:8080",
12522 "tags": [
12523 "setup"
12524 ]
12525 },
12526 "urlFilter": {
12527 "description": "Will search for a page with this url and attach to it, if found. Can have * wildcards.",
12528 "type": "string",
12529 "default": ""
12530 },
12531 "useWebView": {
12532 "description": "An object containing the `pipeName` of a debug pipe for a UWP hosted Webview2. This is the \"MyTestSharedMemory\" when creating the pipe \"\\\\.\\pipe\\LOCAL\\MyTestSharedMemory\"",
12533 "type": "object",
12534 "properties": {
12535 "pipeName": {
12536 "type": "string"
12537 }
12538 },
12539 "default": {
12540 "pipeName": "MyPipeName"
12541 }
12542 },
12543 "vueComponentPaths": {
12544 "description": "A list of file glob patterns to find `*.vue` components. By default, searches the entire workspace. This needs to be specified due to extra lookups that Vue's sourcemaps require in Vue CLI 4. You can disable this special handling by setting this to an empty array.",
12545 "type": "array",
12546 "default": [
12547 "${ZED_WORKTREE_ROOT}/**/*.vue"
12548 ]
12549 },
12550 "webRoot": {
12551 "description": "This specifies the workspace absolute path to the webserver root. Used to resolve paths like `/app.js` to files on disk. Shorthand for a pathMapping for \"/\"",
12552 "type": "string",
12553 "default": "${ZED_WORKTREE_ROOT}",
12554 "tags": [
12555 "setup"
12556 ]
12557 }
12558 }
12559 }
12560 }
12561 ]
12562}