mirror of
https://github.com/microsoft/vscode-extension-samples.git
synced 2026-04-27 16:55:44 +08:00
Switches all samples to use eslint 9 with flat configs. I've tried to migrate existing settings as much as possible. However our eslint configs were also inconsistent so I've tried to align these too
Jupyter Server Provider Sample
This is a very simple extension sample demonstrating the use of the Jupyter Extension API allowing other extensions to contribute Jupyter Servers via the Kernel Picker for Jupyter notebooks:
- The sample extension finds Jupyter Servers running locally on the current machine
- This list of servers is then provided to the Jupyter extension via the Jupyter Extension API
- Upon opening a notebook and selecting a kernel the option
Local JupyterLab Servers...will display the above servers. - From there, the user can select a kernel and run code in the notebook against one of the local kernels.
- Sample showcases the use of the
backbutton to allow the user to go back to the previous step. - Sample showcases the use of custom quick picks to get additional information from the user.
Running this sample
cd jupyter-server-provider-samplecode .: Open the folder in VS Code- Run
npm installin terminal to install dependencies - Run the
Run Extensiontarget in the Debug View. This will:- Start a task
npm: watchto compile the code - Run the extension in a new VS Code window
- Start a task
- Select the kernel Picker for a notebook and select the option
Local JupyterLab Servers... - To see servers show up in this list, start JupyterLab or Jupyter Notebook outside VS Code or from within the integrated terminal (e.g. jupyter lab)
Guidelines
- When displaying a custom UI in the kernel picker, please ensure to add a
backbutton to allow the user to go back to the previous step. The sample shows the use of thebackbutton and how throwingCancellationErrorvs returningundefinedhelps Jupyter extension distinguish betweencancelvsbackbehaviour. - Minimize creating multiple collections, as this will result in multiple steps to selecting a kernel.
