Search code examples
visual-studio-codeoutput

Where does standard output go when I launch with "externalConsole": false?


I'm running VScode on a Mac. I can run with "externalConsole": true in my launch.json, but if I do, I get this annoying little terminal window that pops up and won't go away unless explicitly dismissed.

So I try false. It looks like the standard output should have three tabs where it could turn up: Output, Debug Console, or Terminal. But in fact I find it in none of those. I see compiler output in Output; I see messages as libraries are loaded in Debug Console, but I don't see my application's standard output anywhere. Is there a way to get it to appear in one of these places? Surely whatever library loading does, I could do?


Solution

  • Quoting the docs:

    Used only when launching the debuggee. For attach, this parameter does not change the debuggee's behavior.

    • Windows: [...] When set to false, it will use VS Code's integratedTerminal.
    • Linux: [...] When set to false, it will use VS Code's integratedTerminal.
    • macOS: [...] When set to false, the output can be seen in VS Code's debugConsole. Due to limitations within lldb-mi, integratedTerminal support is not available.