Skip to content

Commit c2de904

Browse files
nstrayerjuliasilge
andauthored
Update Extensions doc page (#92)
* Update extensions article with list of bundled extensions and some other editorial changes Co-authored-by: Julia Silge <julia.silge@gmail.com>
1 parent 0334186 commit c2de904

File tree

1 file changed

+53
-14
lines changed

1 file changed

+53
-14
lines changed

extensions.qmd

Lines changed: 53 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,42 +2,81 @@
22
title: "Extensions"
33
---
44

5-
Since Positron is built on [Code OSS](https://github.com/microsoft/vscode), you can use VS Code extensions in Positron. Your extensions installed for Positron are _separate_ from the extensions you have installed for VS Code, and they won't interfere with each other. Positron bundles several extensions, including those for Quarto, Jupyter notebooks, and Pyright. These extensions are installed for you the first time you start Positron.
5+
Since Positron is built on [Code OSS](https://github.com/microsoft/vscode) (the open-source core of VS Code), you can use VS Code extensions in Positron. Extensions installed for Positron are _separate_ from the extensions you have installed for VS Code, and they won't interfere with each other.
6+
7+
<!-- vale Posit.Contractions = NO -->
8+
## Open VSX
9+
<!-- vale Posit.Contractions = YES -->
10+
11+
Positron has an Extensions view, just like VS Code. The primary difference is that when you browse extensions in Positron, the extensions don't come from VS Code's Marketplace. Instead, they come from a third-party marketplace, [Open VSX](https://open-vsx.org/). This is necessary for licensing reasons; Microsoft doesn't permit access to the Marketplace from non-official clients.
12+
13+
Open VSX includes most popular VS Code extensions, but not all; some authors don't bother to publish their extensions to Open VSX (it's an extra step) and others don't keep the Open VSX version of the extension up to date. Open VSX has a suggested [template](https://github.com/open-vsx/publish-extensions/blob/master/docs/external_contribution_request.md) to request that the authors of an extension cross-publish their extension on the Open VSX Registry.
614

715
:::{.callout-note}
8-
Positron doesn't currently bundle the [Shiny](https://open-vsx.org/extension/posit/shiny) extension, so you will need to install that if you want to use it.
16+
<!-- vale Posit.Contractions = NO -->
17+
Posit is a major sponsor of Open VSX.
18+
<!-- vale Posit.Contractions = YES -->
919
:::
20+
21+
## Accessing extensions
1022

11-
Positron also uses built-in extensions to manage functionality like the R and Python backends for Positron's frontend features. To see these extensions, search for `@builtin` under the Extensions tab. To further filter the list, you can add a search term, such as `@builtin positron`.
23+
To manage your extensions in Positron, choose the Extensions view from the Activity Bar on the left or use the keyboard shortcut <kbd>Cmd/Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>X</kbd>. From here you can manage extensions you already have installed or search the Open VSX marketplace for new ones.
1224

13-
### Installing extensions
25+
## Included extensions
1426

15-
Positron has an Extensions view, just like VS Code. The primary difference is that when you browse extensions in Positron, the extensions don't come from VS Code's Marketplace. Instead, they come from a third-party marketplace, [OpenVSX](https://open-vsx.org/). This is necessary for licensing reasons; Microsoft doesn't permit access to the Marketplace from non-official clients.
27+
While you can install many extensions from Open VSX, Positron comes with several extensions already installed to help you get started quickly.
1628

17-
OpenVSX includes most popular VS Code extensions, but not all; some authors don't bother to publish their extensions to OpenVSX (it's an extra step) and others don't keep the OpenVSX version of the extension up to date. Open VSX has a suggested [template](https://github.com/open-vsx/publish-extensions/blob/master/docs/external_contribution_request.md) to request that the authors of an extension cross-publish their extension on the Open VSX Registry.
29+
Positron includes two types of pre-installed extensions:
1830

19-
<!-- vale Posit.Contractions = NO -->
20-
Posit is a major sponsor of OpenVSX.
21-
<!-- vale Posit.Contractions = YES -->
31+
### Built-in extensions
32+
33+
These extensions manage core functionality such as the R and Python backends for Positron's frontend features. They are not in the Open VSX registry and are integral to the functioning of Positron. These extensions get updated when Positron itself is updated, and most of the time you won't need to think about these.
34+
35+
To see these extensions, search for `@builtin` under the Extensions tab. To further filter the list, you can add a search term, such as `@builtin positron`.
36+
37+
### Bootstrapped extensions
38+
39+
In addition to built-in extensions, Positron includes a set of automatically installed (or "bootstrapped") extensions curated to enhance your data science workflow. These are traditional extensions you can find on Open VSX. They act just like extensions you install yourself; they update automatically when a new version of the extension is on Open VSX and they can be uninstalled.
2240

23-
In offline or other environments, users may need to manually install extensions rather than relying on the search and install capabilities from the Positron extensions tab. Users can install extensions saved as `.vsix` files. See the *Extensions: Install from VSIX* command via the Command Palette <kbd>Cmd/Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> or via the `...` in the top right of the Extensions tab.
2441

25-
### Compatibility
42+
Some examples of the bootstrapped extensions include:
2643

27-
Almost all extensions for Visual Studio Code work great with Positron, and in fact Positron is built with this kind of extensibility in mind. There are two known exceptions:
44+
- [charliermarsh.ruff](https://open-vsx.org/extension/charliermarsh/ruff): A Python linter and code formatter built in Rust. It provides fast and comprehensive Python code quality checking with support for hundreds of lint rules.
2845

29-
- [R extension](https://marketplace.visualstudio.com/items?itemName=REditorSupport.r): The R language support in Positron is a direct replacement for the features in this extension, and we don't plan for them to work well together. If there are features in this extension you miss, please let us know. If you use this extension and have code in your `.Rprofile` for better behavior in the terminal, you will need to update it so that section of your `.Rprofile` isn't run in Positron:
46+
- [ms-pyright.pyright](https://open-vsx.org/extension/ms-pyright/pyright): A fast Python static type checker and language server. It provides intelligent code completion, type checking, and helps catch errors before runtime.
47+
48+
- [posit.publisher](https://open-vsx.org/extension/posit/publisher): A publishing tool for deploying content to Posit Connect. It streamlines the process of sharing data science applications, reports, and APIs with stakeholders.
49+
50+
- [quarto.quarto](https://open-vsx.org/extension/quarto/quarto): Support for the Quarto publishing system. It enables creation of dynamic documents that combine code, visualizations, and narrative text for reproducible research and reporting.
51+
52+
- [posit.air-vscode](https://open-vsx.org/extension/posit/air-vscode): Comprehensive R language support including syntax highlighting, code completion, debugging, and environment management. It provides tools needed for professional R development.
53+
54+
55+
:::{.callout-note}
56+
Positron doesn't currently bundle the [Shiny](https://open-vsx.org/extension/posit/shiny) extension, so you will need to install that if you want to use it.
57+
:::
58+
59+
### Non-compatible extensions
60+
61+
Almost all extensions for Visual Studio Code are fully compatible with Positron, and in fact Positron is built with this kind of extensibility in mind. There are two known exceptions:
62+
63+
64+
- [R extension](https://marketplace.visualstudio.com/items?itemName=REditorSupport.r): The R language support in Positron is a direct replacement for the features in this extension, and we don't plan for them to work well together. If there are features in this extension you miss, please [let us know](https://github.com/posit-dev/positron/issues). If you use this extension and have code in your `.Rprofile` for better behavior in the terminal, you will need to update it so that section of your `.Rprofile` isn't run in Positron:
3065

3166
```r
3267
if (interactive() && Sys.getenv("RSTUDIO") == "" && Sys.getenv("POSITRON") == "") {
3368
## code you use for better terminal behavior for R in VS Code
3469
}
3570
```
3671

37-
- [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python): Positron bundles a fork of this extension that's built to work with Positron and offers support for the console, help, and other features. If there is anything from the original Python extension that doesn't work for you, please let us know.
72+
- [Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python): Positron bundles a fork of this extension that's built to work with Positron and offers support for the console, help, and other features. If there is anything from the original Python extension that doesn't work for you, please [let us know](https://github.com/posit-dev/positron/issues).
3873

3974
There may be extensions that aren't available for Positron for licensing rather than technical reasons. These extensions would typically contain proprietary Microsoft code and are only licensed for use with Microsoft's proprietary VS Code product.
4075

4176
:::{.callout-tip}
4277
See [Extension Development](extension-development.qmd) for information on creating extensions specifically for Positron.
4378
:::
79+
80+
### Installing extensions manually
81+
82+
In offline or restricted environments, users may need to manually install extensions rather than relying on the search and install capabilities from the Positron extensions tab. Users can install extensions saved as [`.vsix` files](https://code.visualstudio.com/api/working-with-extensions/publishing-extension#packaging-extensions). See the *Extensions: Install from VSIX* command via the Command Palette <kbd>Cmd/Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> or via the `...` in the top right of the Extensions tab.

0 commit comments

Comments
 (0)