R Extension for Visual Studio Code
npm install vscode-rR Extension for Visual Studio Code
This VS Code extension provides support for the R programming language, including features such as R language service based on code analysis, interacting with R terminals, viewing data, plots, workspace variables, help pages, managing packages, and working with R Markdown documents.
The R and R Markdown syntaxes are located in a slibing package vscode-R-syntax.
Go to the wiki to view the documentation of the extension.
What's new in 3.0.0-rc
Version 3.0.0 introduces a major architectural shift for session watching:
sessR Package: Replaces the legacy file-based IPC with a modern, in-memory WebSocket architecture using JSON-RPC 2.0.- Better Performance and Reliability: No more OS-level file watchers. Communication is faster and more robust.
- Automatic Installation: The extension will prompt you to install the
sesspackage when you start an R session if it is not available.
See the sess package README for more details on the protocol.
Getting started
Install R (>= 3.4.0) on your system. For Windows users, Writing R Path to the registry is recommended in the installation.
Install
languageserverin R.install.packages("languageserver")Install the R extension for VS Code from the VS Code Extension Marketplace or the Open VSX Registry.
Create an R file and start coding.
The following software are recommended to enhance the experience of using R in VS Code:
Interactive plot backends (install one for a better R plotting experience):
arf: Modern R console with many features: syntax highlighting, fuzzy history search, multiline editing, vi/emacs keybindings, R version switching, etc. Successor to radian written in Rust.
VSCode-R-Debugger: A VS Code extension to support R debugging capabilities.
Go to the installation wiki pages (Windows | macOS | Linux) for more detailed instructions.
Features
Snippets for R and R Markdown.
R Language Service: Code completion, function signature, symbol highlight, document outline, formatting, definition, diagnostics, references, and more.
Interacting with R terminals: Sending code to terminals, running multiple terminals, working with remote servers.
Package development: Build, test, install, load all and other commands from devtools.
Keyboard shortcuts: Built-in and customizable keyboard shortcuts.
Workspace viewer: Environment pane to show global variables in the attached R session.
Help pages viewer: Viewing R help pages and searching help topics.
Package management: Installing and removing R packages.
Session symbol hover and completion.
Data viewer: Viewing
data.frameormatrixin a grid or a list structure in a treeview.Plot viewer: Interactive plot viewer with support for jgd and httpgd backends, plus a standard PNG/SVG fallback.
Webpage viewer: Viewing htmlwidgets such as interactive graphics and visual profiling results.
Browser viewer: Viewing interactive shiny apps.
R Markdown support: R Markdown chunk highlighting, chunk navigation, execute commands, and preview.
RStudio add-in support: Run supported RStudio add-ins in VS Code with a live R session.
Full support of Remote Development via SSH, Containers and WSL.
Questions, issues, feature requests, and contributions
If you have a question about accomplishing something in general with the extension, please ask on Stack Overflow.
If you find a problem or have a feature request with the extension, please find out if there is a current issue you may upvote or otherwise file an issue.
Contributions are always welcome! Please see the contributing guide for more details.