How to set ipython/jupyter as the default python terminal for vscode?

  1. In your VSCode, press ctrl+shift+P, start typing settings and click on Preferences: Open Settings (JSON)

  2. Add this key-value pair to tell python to start ipython:

    "python.terminal.launchArgs": [
        "-c",
        "\"from IPython import start_ipython; start_ipython()\""
    ]
    

There currently isn't support to specify an alternative REPL that isn't the Python interpreter you use to execute code. One trick some people do if you want this just for sending code to the REPL is they launch the REPL once, exit it, and then launch ipython manually as the extension will continue to use that terminal instance for future code sent to the REPL.


A slightly neater way to achieve @TwoUnderscorez's answer is to just launch the module with -m IPython:

"python.terminal.launchArgs": [
   "-m",
   "IPython"
]

Edit: For anyone struggling with IndentationError: unexpected indent errors, try the following:

"python.terminal.launchArgs": [
   "-m",
   "IPython",
   "--no-autoindent",
]

(wouldn't have just added a comment to the existing answer, but not enough rep)