This is what Jupyter shows:
We show this.
It would be great to have this fixed in VS Code.
Is anyone working on this now?
No sorry this is not a high priority at the moment. We do accept outside PR's though if you'd like to try implementing it.
We try to prioritize stuff based on feedback, so up voting certainly moves things up the priority queue.
Are there any updates on this issue?
It would be great to have this feature implemented.
Sorry it's not being looked at the moment. Feel free to up vote it. We generally work on stuff based on the number of votes and comments items have.
Would love to have this implemented as well... we're not allowed to store data or passwords locally at work, so we need to query the database each time we run out code — the lack of this feature prevents us from using the VSCode Jupyter support.
Moving back to triage. There's a LOT of up votes on this one.
I got the same issue today.
python2019.11.41015-devWindows_NT x64 10.0.183621.39.0-insidersending back to triage to re-evaluate
Not sure how feasible, but I would assume this should approx. work as follows:
input(prompt) is called, open an input in VS Code, with the text being prompt (similar to the screenshot below from the Azure IoT Extension)
The details could be more complicated than I assume:
prompt not available before executionTherefore, an interim solution could be approximately the following:
Add some syntax that is recognized by the VS Code extension but ignored else, e.g.:
a = input('Python uses this prompt: ') #%I 'VS Code uses this prompt instead'
could be parsed, the prompts for the user displayed and the code that is sent to the jupyter cell for execution is rewritten as
a = r"[result from above]" # beware of r'\' and a few similar issues
This would be somewhat ugly and prone to breaking but maybe good enough as an interim solution.
I'm guessing 3 days to implement this.
I _think_ all we need to do is change this code to allow_stdin:
private generateRequest = (code: string, silent?: boolean): Kernel.IFuture | undefined => {
//traceInfo(`Executing code in jupyter : ${code}`);
try {
const cellMatcher = new CellMatcher(this.configService.getSettings().datascience);
return this.session ? this.session.requestExecute(
{
// Remove the cell marker if we have one.
code: cellMatcher.stripFirstMarker(code),
stop_on_error: false,
allow_stdin: false,
store_history: !silent // Silent actually means don't output anything. Store_history is what affects execution_count
},
true
) : undefined;
} catch (exc) {
// Any errors generating a request should just be logged. User can't do anything about it.
traceError(exc);
}
return undefined;
}
Then provide UI to do the input.
I have this working. Here's what it will look like:

Supports straight input and password based.
Looks great, though I have a questions:
It seems you're doing this in a .ipynb file. I personally never use those but the #%% magic comment syntax for cells in regular scripts.
Is it also working there (same backend maybe?) or will #%% be EOL in the near future (which would be a pity in my opinion).
Same backend, so it will work for the interactive window too.
Most helpful comment
Same backend, so it will work for the interactive window too.