发布于 

记录一下如何配置 R+Vusial Studio Code+Jupyter

虽然 RStudio 是十分优秀的 R 开发软件,但是它的界面布局用起来很不习惯,自由度不够高。而且在和其他语言配合开发的时候不太方便。我自己习惯使用 vscode 写代码。关于如何给 vscode 配置 R 的开发环境,微软官方或者知乎上都有比较可用的教程,我在这里简单记录一下,另外还有一些需要注意的配置。

步骤

基本配置

一般来讲按照微软的 教程 就基本能配好环境了。首先是在安装好 R 的基础上安装语言服务

1
install.packages("languageserver")

安装好后在 vscode 中安装 R 的插件就基本可用了。R 插件基本包括了使用 R 过程中会用到的各种操作,比如包的管理,数据和图片的查看等等。

微软官方推荐了两款改善体验的工具:

  1. radian:一个更加现代的 R 终端,支持高亮、代码提示等功能(需要 Python)
1
pip install radian
  1. httpgd:在 vscode 中查看生成的交互式图片,或者直接在浏览器中对图片进行预览,会比直接在 vscode 或 RStudio 的小窗口中预览更加方便
1
install.packages("httpgd")

如果安装过程中出现了问题,知乎的 这篇文章 或许会有帮助。

额外设置

如果需要在 Jupyter 中使用 R,需要安装

1
install.packages("IRkernel")

此外,虽然 vscode 有 jupyter 插件,但建议额外安装 jupyter。例如在 conda 的 base 环境中

1
conda install jupyter

否则接下来的命令可能会失败。两项安装均完成后在 R 中执行

1
IRkernel::installspec() 

这样一般就可以在 Jupyter 中选择 R 内核了。如果出现错误可以查看 这篇文章 进行排查。

Rmarkdown

如果需要 Rmarkdown 可以按照 vscode-R 插件中的提示进行配置。

注意事项!!

这里汇总了一些在 vscode 中使用 radian 时可能会遇到的问题。这些问题主要来自 radian,可能会随着 radian 的更新得到修复。

  1. RStudio 中一些方便使用的快捷键 vscode 或者 radian 中是没有的,需要自己配置。比如常用的 或者 %>%,可以根据自己习惯配置。
  2. radian 可能会出现中文乱码,可以参考 这里 重新设置 LANG 环境,或者采用 Yunuuuu 的做法,在 .Rprofile中添加如下配置
1
2
3
4
5
6
7
8
9
10
# Set locale to utf8
is_uft8_support <- grepl(
"UTF-8|utf8", Sys.getenv("LANG"),
ignore.case = TRUE, perl = TRUE
) &&
R.version$major >= 4L &&
R.version$minor >= 2.0
if (is_uft8_support) {
suppressWarnings(Sys.setlocale("LC_ALL", Sys.getenv("LANG")))
}
  1. 如果想设置默认 CRAN 镜像,可以在.Rprofile 中添加如下配置
1
options(repos = c(CRAN = "https://mirrors.nju.edu.cn/CRAN/"))

例如这里添加了南大的镜像,也可以换成其他镜像。

  1. 在 vscode 中使用 Ctrl+Enter将代码发送到 radian 时,最后可能会添加括号或引号之类的字符。Github 上有很多这类 讨论 。这一问题可能是 bracketedPaste 导致的,可以尝试在.radian_profile 文件中写入 options(radian.auto_match = FALSE),关闭自动匹配功能,或许会有帮助。

  2. radian 可能会出现长文本无法折行显示,只能显示一部分的情况,可以参考 这里 修改 radian 源码。