65 lines
1.9 KiB
Markdown
65 lines
1.9 KiB
Markdown
|
# Jupyter
|
||
|
Despite being one of the most prolific modern languages, python suffers from a
|
||
|
dangerous amount of not-invented-here syndrome. Prepare to fight on all fronts
|
||
|
while python reinvents the wheels, though makes it square, just since a
|
||
|
text-based terminal is too intimidating for new cs students
|
||
|
|
||
|
Firstly you'll want to install python and all the other required packages:
|
||
|
|
||
|
```
|
||
|
# pacman -S python python-pip
|
||
|
# pacman -S jupyter_console python-qtconsole python-ipython-genutils
|
||
|
# pacman -S python-pynvim # For neovim only
|
||
|
```
|
||
|
|
||
|
Next you'll want to generate the configs required for Vim to connect with
|
||
|
Jupyter. Follow this section of the
|
||
|
[readme](https://github.com/jupyter-vim/jupyter-vim#jupyter-configuration).
|
||
|
Jupyter does not come with manpages, though it does give useful support by using
|
||
|
`-h` for any of its subcommands
|
||
|
|
||
|
Now we need to make a virtual environment, otherwise pip will pollute package
|
||
|
dependencies all over the system. Create a new environment directory:
|
||
|
|
||
|
```
|
||
|
$ python3 -m venv new_env_dir
|
||
|
$ cd new_env_dir
|
||
|
$ . bin/activate
|
||
|
```
|
||
|
|
||
|
Now you can install packages with pip, so long as the prompt stays "activated".
|
||
|
If you aren't sure, open another pane and reactivate from there
|
||
|
|
||
|
```
|
||
|
$ python -m pip install ipykernel
|
||
|
$ python -m pip install numpy matplotlib networkx
|
||
|
```
|
||
|
|
||
|
Trying to use Jupyter now still won't work. Since virtual environments are very
|
||
|
thin layer that just modifies some environment variables, Jupyter will still run
|
||
|
as if it's being run from a normal shell. We'll need to attach this venv as a
|
||
|
separate kernel on the system Jupyter installation. For example:
|
||
|
|
||
|
```
|
||
|
$ python3 -m ipykernel install --user --name=my_kernel_name
|
||
|
```
|
||
|
|
||
|
Now Jupyter should see it. You can use any shell from here on, not just the
|
||
|
venv-activated one
|
||
|
|
||
|
```
|
||
|
$ jupyter kernelspec list
|
||
|
```
|
||
|
|
||
|
We can connect to this kernel with an option
|
||
|
|
||
|
```
|
||
|
$ jupyter console --kernel=my_kernel_name
|
||
|
```
|
||
|
|
||
|
Removing the kernel later is easy too
|
||
|
|
||
|
```
|
||
|
$ jupyter kernelspec remove my_kernel_name
|
||
|
```
|