profile
viewpoint

Ask questionsExplore improving the single file debug experience

Today VS Code debugging has no generic way to know whether a debug extension implements "single file debugging". Without this knowledge it is not possible to provide a standardised UX experience for this case.

Because of this some debug extension have started to create their own UI. A good example is the Python extension which shows a play button in the editor:

2020-03-20_10-00-43

microsoft/vscode

Answer questions luabud

Lots of great discussions here! One thing to notice is that for Python our green play button calls our "Run Python in Terminal" command, which calls the path to the selected Python interpreter and appends the file path to it:

image

That means that we have a different concept for "Run" (no debugpy), "Run without debugging" (uses debugpy) and "Debug" (uses debugpy).

The feedback we hear from our users is that they'd love to customize the play button (https://github.com/microsoft/vscode-python/issues/10130, https://github.com/microsoft/vscode-python/issues/11036, https://github.com/microsoft/vscode-python/issues/11473, https://github.com/microsoft/vscode-python/issues/12509). So we thought of binding the icon to "Run without debugging" with the default configuration for Python files (bonus points if we could follow what is done for NodeJS and auto configure it - for Django and Flask apps for example 😁).

I like the idea of having different icons and being able to toggle between them. Another thing I thought of would be if VS Code provided just one icon ($(play)) and made it configurable so that users (and maybe extensions) could change what behaviour it's bind to.

useful!

Related questions

the terminal process terminated with exit code #259 hot 7
XHR Failed on trying to install plugins via Visual Studio code
The terminal shell CWD "/c:/User..." does not exist - vscode hot 4
Insiders - We cannot connect to the Extensions Marketplace hot 3
Bad message: Cannot launch program 'c:\...'; setting the 'outFiles' attribute might help. hot 3
Show offending file path, when "Tokenization is skipped for long lines for performance reasons. The length of a long line can be configured via `editor.maxTokenizationLineLength`." hot 3
launch: program ''does not exist hot 2
format code alt + shift + f hot 2
Corrupt ZIP: end of central directory record signature not found hot 2
"Initializing JS/TS Language Features" appears every time I open a JS file hot 2
dart is not recognized as internal or external command hot 2
Logitech MX Master: Horizontal scrolling via scroll wheel doesn't work hot 2
VS Code doesn't read Git packed-refs hot 2
Is it possible to use wsl bash php for php.validate.executablePath hot 2
Git Fetch fails with Missing or invalid credentials hot 2
Github User Rank List