最新版的 Anaconda3 是自带了 JupyterLab 的,但那个 JupyterLab 的版本不是最新的。
不过最近新出了桌面版,有需要的可以直接安装桌面版。
安装
推荐通过 conda
为 JupyterLab 创建一个单独的虚拟环境:
如果使用 Anaconda3 的话,它的 Base 环境中很多包都不是最新版的,可能存在版本冲突。还有个原因是因为 JupyterLab 的插件对版本都有要求,可能会存在提示版本太低的问题。
使用虚拟环境这样可以保持开发环境的整洁干净,还能避免可能存在的一些版本冲突。同时,如果不想用了,卸载也非常方便。
conda create -n lab python=3.10
进入虚拟环境 conda activate lab
,通过下面命令安装 JupyterLab:
pip install jupyterlab
安装完成后就可以使用下面命令启动 JupyterLab:
jupyter-lab # Or jupyter lab
在哪个目录中执行启动命令默认就会打开哪个目录
添加其他虚拟环境
进入 JupyterLab 中,默认显示的 Python 3(ipykernel)
是 JupyterLab
所在的虚拟环境。但我们在过程中,可能有需要用到其他创建的虚拟环境,这时候就需要自行添加了。
这边以 base
环境为例子:
# 进入虚拟环境
conda activate base
# 查看是否安装 ipykernel
python -m ipykernel --version
# 如果没有就安装
pip install ipykernel
# jupyter 安装内核,第一个 base 是你的虚拟环境名称,第二个 base 是在 JupyterLab 中显示的名称
python -m ipykernel install --user --name base --display-name base
--display-name
也可以不使用,默认就是你的虚拟环境名称。
这时候重新进入 JupyterLab 就可以看到多出来的内核了。
也可以在创建虚拟环境的同时,自定义添加上参数 ipykernel
:
conda create -n test python=3.10 ipykernel
生成配置文件
配置文件需要手动生成:
jupyter lab --generate-config
生成的配置文件一般在:
- macOS:
~/.jupyter/jupyter_lab_config.py
- Windows:
C:\Users\[user]\.jupyter\jupyter_lab_config.py
修改工作目录
每次打开 JupyterLab 都会默认在 C:\Users\[user]
(Windows 用户)下,在配置文件中进行修改。
打开 jupyter_lab_config.py
,找到 c.ServerApp.root_dir = ''
,去掉前面的 #
,然后在 ''
添加你想要设置的工作目录即可。
其他命令
# 查看内核
jupyter kernelspec list
# 删除内核
jupyter kernelspec remove [env_name]
插件
可以在 JupyterLab 的插件页面安装插件,也可以使用命令行安装。
有个 Github 项目
awesome-jupyterlab
,但已经 archived 了。
中文汉化
新版的 JupyterLab 是支持中文汉化的。
pip install jupyterlab-language-pack-zh-CN
安装完成后,打开 JupyterLab -> Settings
-> Language
选择中文即可。
LSP
LSP(语言服务器协议)
我推荐直接用 JupyterLab 的插件安装,而不是命令行。
pip install jupyterlab-lsp
为你选择的语言安装 LSP 服务器:例如,Python(pylsp)和 R(languageserver)服务器。
pip install 'python-lsp-server[all]'
使用默认配置即可。
如果个人有其他需求,可以根据官方文档进行额外安装配置。
代码格式化
Code Formatter 代码格式化,默认使用 isort
+ black
。
pip install jupyterlab-code-formatter
安装一些支持的格式化程序(isort
+black
是 python 的默认设置)
pip install black isort
我这边更换为了 ruff
:
pip install ruff
配置文件修改为:
{
"formatOnSave": true,
"preferences": {
"default_formatter": {
"python": "ruff"
}
}
}
资源使用情况
Resource Usage 显示服务器正在使用多少资源。
原来项目为 jtpio/jupyterlab-system-monitor 支持 JupyterLab 3.x
pip install jupyter-resource-usage
客户端
JupyterLab Desktop 是 JupyterLab 的一个跨平台的桌面应用,基于 Electron,后端直接捆绑了 conda
环境中的 JupyterLab 的 server 服务。
我感觉下来的好处可能就是省去了打开环境的步骤,使用更加方便。
macOS 下可以直接使用 Homebrew 安装:
brew install --cask jupyterlab