|
1 | | -# Jupyter Extension for Visual Studio Code |
| 1 | +# Deepnote Extension for Visual Studio Code |
2 | 2 |
|
3 | | -A [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter) that provides basic notebook support for [language kernels](https://github.com/jupyter/jupyter/wiki/Jupyter-kernels) that are supported in [Jupyter Notebooks](https://jupyter.org/) today, and allows any Python environment to be used as a Jupyter kernel. This is _**NOT a Jupyter kernel**_--you must have Python environment in which you've installed the [Jupyter package](https://pypi.org/project/jupyter/), though many language kernels will work with no modification. To enable advanced features, modifications may be needed in the VS Code language extensions. |
| 3 | +A [Visual Studio Code](https://code.visualstudio.com/) extension that provides support for [Deepnote notebooks](https://deepnote.com/) directly within VS Code. This extension allows you to work with Deepnote notebooks in VS Code, bringing the rich data science capabilities of Deepnote to your favorite editor. |
4 | 4 |
|
5 | | - |
| 5 | + |
6 | 6 |
|
7 | | -| Link | Description | |
8 | | -| ------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | |
9 | | -| [File an issue](https://github.com/microsoft/vscode-jupyter/issues/new/choose) | Report problems and suggest enhancements | |
10 | | -| [Go to docs](https://code.visualstudio.com/docs/datascience/jupyter-notebooks) | Jupyter extension and data science in VS Code documentation, tutorials, and more | |
11 | | -| [Discussions](https://github.com/microsoft/vscode-jupyter/discussions) | Post questions, and engage in community discussions | |
| 7 | +This extension allows you to work with Deepnote notebooks in VS Code. Deepnote notebooks provide enhanced data science capabilities beyond traditional Jupyter notebooks: |
12 | 8 |
|
13 | | -## Work in the browser |
14 | | - |
15 | | -Editing Jupyter notebooks in VS Code can also be done on the browser in two ways. |
16 | | -1. The Jupyter extension has [support](https://github.com/microsoft/vscode-jupyter/discussions/10315) for a web based interface provided by [vscode.dev](https://vscode.dev) (which includes [github.dev](https://github.dev), available by typing '.' when viewing a repo on github.com) |
17 | | -2. The Jupyter extension can be installed on VS Code in [GitHub Codespaces](https://github.com/features/codespaces) the same way it is done locally (or [sync your VS Code settings](https://code.visualstudio.com/docs/editor/settings-sync) to have your extensions installed automatically on Codespaces). |
18 | | - |
19 | | -## Installed extensions |
20 | | - |
21 | | -The Jupyter Extension will automatically install the following extensions by default to provide enhanced Jupyter notebook experiences in VS Code. |
22 | | -- [Jupyter Keymap](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter-keymap) - to provide Jupyter-consistent keymaps |
23 | | -- [Jupyter Notebook Renderers](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter-renderers) - to provide renderers for MIME types such as latex, plotly, vega, etc. |
24 | | -- [Jupyter Cell Tags](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.vscode-jupyter-cell-tags) and [Jupyter Slide Show](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.vscode-jupyter-slideshow) - to provide the ability to tag cells in notebooks and support for presentations |
25 | | - |
26 | | -You can also install the [Jupyter PowerToys](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.vscode-jupyter-powertoys) extension to try out experimental features (_not_ installed by default). Extensions installed through the marketplace are subject to the [Marketplace Terms of Use](https://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdfhttps://cdn.vsassets.io/v/M146_20190123.39/_content/Microsoft-Visual-Studio-Marketplace-Terms-of-Use.pdf), and any or all of these extensions can be [disabled](https://code.visualstudio.com/docs/editor/extension-marketplace#_disable-an-extension) or [uninstalled](https://code.visualstudio.com/docs/editor/extension-marketplace#_uninstall-an-extension). |
27 | | - |
28 | | -## Working with Python |
29 | | - |
30 | | -### Quick Start |
31 | | - |
32 | | -- **Step 1.** Install [VS Code](https://code.visualstudio.com/) |
33 | | -- **Step 2.** Install [Anaconda](https://docs.anaconda.com/anaconda/install/index.html)/[Miniconda](https://docs.conda.io/en/latest/miniconda.html) or another Python environment in which you've installed the Jupyter package |
34 | | -- Since not working with Python, make sure to have a [Jupyter Kernel](https://docs.jupyter.org/en/latest/install/kernels.html) that corresponds to the language you would like to use installed on your machine. |
35 | | -- **Step 3.** Install the [Jupyter Extension](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter) and the [Python Extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python) |
36 | | -- **Step 4.** Open or create a notebook file by opening the Command Palette (`Ctrl+Shift+P`) and select `Jupyter: Create New Jupyter Notebook`.<br><img src="https://code.visualstudio.com/assets/docs/datascience/data-science-tutorial/create-notebook.png"> |
37 | | -- **Step 5.** Select your kernel by clicking on the kernel picker in the top right of the notebook or by invoking the `Notebook: Select Notebook Kernel` command and start coding!<br><img src="https://code.visualstudio.com/assets/docs/datascience/data-science-tutorial/select-kernel.png"> |
38 | | - |
39 | | -## Working with other Languages |
40 | | - |
41 | | -The Jupyter Extension supports other languages in addition to Python such as Julia, R, and C#. |
42 | | - |
43 | | -### Quick Start |
44 | | - |
45 | | -- **Step 1.** Install [VS Code](https://code.visualstudio.com/) |
46 | | -- **Step 2.** Since not working with Python, make sure to have a Jupyter kernelspec that corresponds to the language you would like to use installed on your machine. |
47 | | -- **Step 3.** Install the [Jupyter Extension](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter) |
48 | | -- **Step 4.** Open or create a notebook file and start coding! |
49 | | - |
50 | | -## Notebook support |
51 | | - |
52 | | -The Jupyter Extension uses the [built-in notebook support](https://code.visualstudio.com/api/extension-guides/notebook#:~:text=The%20Notebook%20API%20allows%20Visual%20Studio%20Code%20extensions,allows%20for%20similar%20experiences%20inside%20Visual%20Studio%20Code.) from VS Code. This UI gives a number of advantages to users of notebooks: |
53 | | - |
54 | | -- Out of the box support for VS Code's vast array of basic code editing features like [hot exit](https://code.visualstudio.com/docs/editor/codebasics#_hot-exit), [find & replace](https://code.visualstudio.com/docs/editor/codebasics#_find-and-replace), and [code folding](https://code.visualstudio.com/docs/editor/codebasics#_folding). |
55 | | -- Editor extensions like [VIM](https://marketplace.visualstudio.com/items?itemName=vscodevim.vim), [bracket colorization](https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer), linters and many more are available while editing a cell. |
56 | | -- Deep integration with general workbench and file-based features in VS Code like [outline view](https://code.visualstudio.com/docs/getstarted/userinterface#_outline-view) (Table of Contents), [breadcrumbs](https://code.visualstudio.com/docs/getstarted/userinterface#_breadcrumbs) and [other operations](https://code.visualstudio.com/docs/getstarted/userinterface). |
57 | | -- Fast load times for Jupyter notebook (.ipynb) files. Any notebook file is loaded and rendered as quickly as possible, while execution-related operations are initialized behind the scenes. |
58 | | -- Includes a [notebook-friendly diff tool](https://code.visualstudio.com/docs/datascience/jupyter-notebooks#_custom-notebook-diffing), making it much easier to compare and see differences between code cells, output and metadata. |
59 | | -- Extensibility beyond what the Jupyter extension provides. Extensions can now add their own language or runtime-specific take on notebooks, such as the [.NET Interactive Notebooks](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.dotnet-interactive-vscode) and [Gather](https://marketplace.visualstudio.com/items?itemName=ms-python.gather) |
60 | | -- While the Jupyter extension comes packaged with a large set of the most commonly used renderers for output, the marketplace supports [custom installable renderers](https://marketplace.visualstudio.com/search?term=tag%3Arenderer&target=VSCode&category=All%20categories&sortBy=Relevance) to make working with your notebooks even more productive. To get started writing your own, see [VS Code's renderer api documentation](https://code.visualstudio.com/api/extension-guides/notebook#notebook-renderer). |
| 9 | +- **More block types** - Choose from SQL blocks, chart blocks, and more specialized data science blocks |
| 10 | +- **Seamless language switching** - Switch between Python and SQL seamlessly within the same notebook |
| 11 | +- **Database integrations** - Connect directly to Postgres, Snowflake, BigQuery and more data sources |
61 | 12 |
|
62 | 13 | ## Useful commands |
63 | 14 |
|
64 | 15 | Open the Command Palette (Command+Shift+P on macOS and Ctrl+Shift+P on Windows/Linux) and type in one of the following commands: |
65 | 16 |
|
66 | | -| Command | Description | |
67 | | -| ------------------------------------------------ | ---------------------------------------------------------------------- | |
68 | | -| `Jupyter: Create New Jupyter Notebook` | Creates a new Jupyter Notebook | |
69 | | -| `Notebook: Select Notebook Kernel` | Select or switch kernels within your notebook | |
70 | | -| `Notebook: Change Cell Language` | Change the language of the cell currently in focus | |
71 | | -| `Jupyter: Export to HTML Jupyter: Export to PDF` | Create a presentation-friendly version of your notebook in HTML or PDF | |
72 | | - |
73 | | -To see all available Jupyter Notebook commands, open the Command Palette and type `Jupyter` or `Notebook`. |
74 | | - |
75 | | -### Context Keys for Key bindings |
76 | | - |
77 | | -You can use the extension's context keys in 'when' clauses. Here's an example: |
78 | | - |
79 | | -``` |
80 | | - { |
81 | | - "key": "ctrl+i", |
82 | | - "command": "jupyter.runAndDebugCell", |
83 | | - "when": "!jupyter.webExtension" |
84 | | - } |
85 | | -``` |
86 | | - |
87 | | -That keybinding states the `jupyter.runAndDebugCell` command should map to CTRL+I when not in the `jupyter.webExtension`. |
88 | | - |
89 | | -The full list of context keys can be found here: https://github.com/microsoft/vscode-jupyter/wiki/Extensibility-for-other-extensions#context-keys-for-keybindings |
90 | | - |
91 | | -## Feature details |
92 | | - |
93 | | -Learn more about the rich features of the Jupyter extension: |
94 | | - |
95 | | -- [IntelliSense](https://code.visualstudio.com/docs/python/editing#_autocomplete-and-intellisense): Edit your code with auto-completion, code navigation, syntax checking and more. |
96 | | - |
97 | | -- [Jupyter Notebooks](https://code.visualstudio.com/docs/python/jupyter-support): Create and edit Jupyter Notebooks, add and run code/markdown cells, render plots, create presentation-friendly versions of your notebook by exporting to HTML or PDF and more. |
98 | | - |
99 | | -## Supported locales |
100 | | - |
101 | | -The extension is available in multiple languages: `de`, `en`, `es`, `fa`, `fr`, `it`, `ja`, `ko-kr`, `nl`, `pl`, `pt-br`, `ru`, `tr`, `zh-cn`, `zh-tw` |
102 | | - |
103 | | -## Questions, issues, feature requests, and contributions |
104 | | - |
105 | | -- If you have a question about how to accomplish something with the extension, please [ask on Discussions](https://github.com/microsoft/vscode-jupyter/discussions). Our [wiki](https://github.com/microsoft/vscode-jupyter/wiki) can be a source of information as well. |
106 | | -- Any and all feedback is appreciated and welcome! If you come across a problem or bug with the extension, please [file an issue](https://github.com/microsoft/vscode-jupyter/issues/new/choose). |
107 | | - |
108 | | - - If someone has already [filed an issue](https://github.com/Microsoft/vscode-jupyter/issues) that encompasses your feedback, please leave a 👍/👎 reaction on the issue. |
109 | | - |
110 | | -- Contributions are always welcome, so please see our [contributing guide](https://github.com/Microsoft/vscode-jupyter/blob/main/CONTRIBUTING.md) for more details. |
111 | | - |
112 | | -- If you're interested in the development of the extension, you can read about our [development process](https://github.com/microsoft/vscode-jupyter/blob/main/CONTRIBUTING.md#development-process) |
113 | | - |
114 | | -## Data and telemetry |
115 | | - |
116 | | -The Microsoft Jupyter Extension for Visual Studio Code collects usage data and sends it to Microsoft to help improve our products and services. Read our [privacy statement](https://privacy.microsoft.com/privacystatement) to learn more. This extension respects the `telemetry.telemetryLevel` setting which you can learn more about at https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting. |
117 | | - |
118 | | -## Trademarks |
| 17 | +| Command | Description | |
| 18 | +| ---------------------------------- | -------------------------------------------------- | |
| 19 | +| `Deepnote: Refresh Explorer` | Refresh the Deepnote project explorer | |
| 20 | +| `Deepnote: Open Notebook` | Open a specific notebook from a Deepnote project | |
| 21 | +| `Deepnote: Open File` | Open the raw .deepnote project file | |
| 22 | +| `Deepnote: Reveal in Explorer` | Show active notebook information in the explorer | |
| 23 | +| `Notebook: Select Notebook Kernel` | Select or switch kernels within your notebook | |
| 24 | +| `Notebook: Change Cell Language` | Change the language of the cell currently in focus | |
119 | 25 |
|
120 | | -This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies. |
| 26 | +To see all available Deepnote commands, open the Command Palette and type `Deepnote`. |
0 commit comments