Frâncio Rodrigues
Frâncio Rodrigues

Reputation: 2290

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

How can I choose ipython/jupyter as the DEFAULT python terminal? I use both a windows 10 and a linux machine with the anaconda distribution.

If I type "ipython" on the terminal, it opens an ipython session. If I run the debugger or shift+enter a line, it automatically runs on a "barebones" python shell. Should be simple...but I have been googling and messing with the settings for half an hour with no success.

Looked up

https://code.visualstudio.com/docs/python/tutorial-flask

Use IPython REPL in VS Code

but could not find a way to set it up on my linux or win10 machines. Any ideas?

Upvotes: 16

Views: 8021

Answers (3)

Ant
Ant

Reputation: 590

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)

Upvotes: 26

TwoUnderscorez
TwoUnderscorez

Reputation: 109

  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()\""
    ]
    

Upvotes: 8

Brett Cannon
Brett Cannon

Reputation: 15990

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.

Upvotes: 5

Related Questions