VSCode下配置R语言环境(Windows)
本文介绍Windows下在VSCode中使用R语言的配置过程。
最后更新日期 2021/12/2文章目录
- 更新信息
- 系统环境
- VSCode插件安装
- python(3)下安装radian
- R 包安装
- 附注:如果无法install.packages安装
- 附注2(可选):把R语言的控制台改成英文
- 插件配置
- rpath
- rterm
- 启动radian相关支持
- 启用代码格式化
- 指定R语言专用的格式化工具
- 保存时自动格式化
- 使用快捷键时格式化
- 运行R程序
- 通过终端运行
- 运行R代码文件
- 附注:如果不想让VSCode提示代码美观度相关内容
- 参考内容
更新信息
2021年12月2日
更新代码提示设置相关内容
已经验证在Windows 11 22000.348版本中可以正常运行。
2021年9月19日
7月20日,R插件更新到2.1.0版本,整合了原R LSP Client插件的功能,因此无需再安装后者(并且应用商店已经搜索不到这个插件)。
如果之前安装了R LSP Client,请卸载并重启VSCode。
系统环境
Lenovo yoga slim7 pro (yoga14s) 2021
CPU: Intel Core i5-1135G7 @2.4GHz 4C, 8T
RAM: 16GB LPDDR4X 4266MHz
软件版本:
OS: Windows 11 Pro 21H2 22000.348
R: 4.1.0
VSCode: 1.62.3
VSCode插件安装
在VSCode的应用商店中安装如下的插件:
- R
(如开头所说,原本还需安装R LSP Client,但是现在不用了)
python(3)下安装radian
radian是一个增强版的交互式R终端,支持语法高亮,错误提示等强大功能。是R插件官方推荐安装的软件之一。之后会有相关演示。
radian依赖于python,因此先检测机器是否有python环境,然后安装radian
。我的机器是安装了Anaconda3之后自带的python3以及相应终端。
打开python3的终端,安装radian
pip3 install radian
安装完后执行以下命令,检测是否安装成功,同时记住显示的路径,接下来要用。
where radian
可以顺便把R语言的路径也记下来
where R
R 包安装
为了使用之后安装的R插件的代码格式化功能,需要首先在R语言中安装languageserver
包。
install.packages("languageserver")
附注:如果无法install.packages安装
曾经我在R旧版本安装的时候提示这个包还有它的一些依赖似乎没法直接install.packages
安装(提示package ‘languageserver’ is not available (for R version 3.6.3)
),知乎上有人遇到过相同的问题。针对此情况,个人选择手动安装:
先下载languageserver
和stringi
(前者的依赖)两个包:
https://cran.r-project.org/src/contrib/languageserver_0.3.10.tar.gz
https://cran.r-project.org/src/contrib/stringi_1.6.2.tar.gz
R语言下手动安装
先安装stringi
(需要编译,耗时较久),然后安装languageserver
包。最后尝试能否正确加载
library("languageserver")
附注2(可选):把R语言的控制台改成英文
这样可以避免VSCode控制台中的乱码(我个人没有做这一步也没出现中文乱码,仅供参考)
在这个文件中搜索language
,将对应的行改为language = en
插件配置
rpath
Ctrl + ,
打开设置tab,在搜索框里输入rpath
,找到图中的Rpath: windows
,改成R语言可执行文件的路径
rterm
Ctrl + ,
打开设置tab,在搜索框里输入rterm
,找到图中的内容,改成radian的exe路径
。就是第一步中where radian
显示的路径。
- 还是在这个搜索结果下,找到图示的设置,删除Option中的
--no-save
,--no-restore
,添加--no-site-file
。最终效果如下
启动radian相关支持
Ctrl + ,
打开设置tab,在搜索框里输入bracketed
,勾选R: Bracketed Paste一项。这样方便我们在终端模式下复制大段的代码。
Ctrl + ,
打开设置tab,在搜索框里输入sessionWatcher
,勾选该选项(如果默认没有勾选上),开启绘图窗口。让我们在命令行模式下能够像R一样,在绘图时弹出新的窗口显示。
设置完毕后重启VSCode。
启用代码格式化
指定R语言专用的格式化工具
如果你还使用VSCode书写其他的编程语言,可能它的格式化工具和R语言的有冲突,此时可以给R语言单独设置格式化:
新建一个R语言文档
右键,选择
使用...格式化文档
(较早的版本可能是格式化文档的方式
)
如果默认值是R,则无需进一步修改。
如果上一步的默认格式化程序不是R,选择
配置默认格式化程序
,然后选择R
。
保存时自动格式化
Ctrl + ,
打开设置tab,在搜索框里输入format,勾选其中的Format On Save。
使用快捷键时格式化
如果不希望保存时自动格式化,而是手动输入快捷键格式化,可以不勾选上图,而在快捷键(文件-首选项-键盘快捷方式
)中输入format
来搜索并更改按键绑定
确保两个格式化文档
的快捷键一样,并且和格式化选定内容
不一样。
格式化仍然是改变了代码,因此这样设置的话在格式化之后还需要手动保存。
运行R程序
通过终端运行
类似于平时在R或者R Studio里一样输入命令。
因为是通过终端运行,所以不一定非要通过VSCode,在系统自带的终端运行也有相同的效果。
打开VSCode,Ctrl + shift + 反单引号键
开启新的终端,输入radian
,按回车切换到radian终端
反单引号键:`
接下来就像平时在R或者R Studio里的一样,随意输入代码即可。
此时就显示出了radian的强大功能。例如输入:
plot(1:5, 1:5)
当你还没输入完plot就能自动联想:
输入完成后,函数部分会自动变色区分。
光标定位在值之前(例如第一个1:5
),按tab
键可以显示所有可用的参数,并根据选择自动填充到填写的值之前。
当代码输入完成后,按回车,会自动弹出一个窗口显示画图结果(没有的话去任务栏里找一下)。可以像R语言本身一样拖拽,放大缩小这个窗口。你可以把这个窗口放在一边,代码放另一边,随时查看结果。
对于View
函数也是如此。
运行R代码文件
我们用的更多的还是写好一个R代码文件然后执行。此时只需打开一个后缀名为R的文件,开始写作即可。
R插件带来的各种便利功能包括且不限于:
- 代码提示
和终端一样,也带有代码补全提示。
- 函数文档实时查看
将鼠标移动到函数名字上,可以直接查看函数的用法说明。并且在函数体内写参数时仍然会提示函数的基本用法。这一点非常便利。
代码格式化
这样一段排版极差的代码,只要按下配置好的格式化快捷键,duang的一下就变成:
再也不用担心代码不够美观了(笑)语法高亮
呃,上面的例子应该能体现出来了吧。代码美观度提示
这是经常提示的一个信息:一行代码不要超过80个字符,建议在必要的地方回车分隔。
即使代码运行没有错误,也请看一下蓝色波浪线的提示,尽量把代码写美观。
如果需要运行一个写好的R代码文件,只需要点击编辑器右上角的右三角箭头即可。
VSCode会自动开启一个radian终端,然后执行source(这个R文件所在的绝对路径)
,这样就执行了这个R代码。
注意,在这种模式下,展示数据框和图片需要用View(数据或图片变量)
的方式来做。如下同中的View(loadings)
。执行过后,会在编辑器中展开标签页来显示相关的数据。善用VSCode的标签页管理,可以使数据观测更容易。
执行之后,仍然可以在下面的radian终端中输入代码来读取变量,做一些快速查看和计算等(因为执行文件本质上就是开了个新终端把你的代码复制进去了)。
附注:如果不想让VSCode提示代码美观度相关内容
方案A:直接关闭所有美观度提示。
Ctrl+,
打开设置搜索lsp diag
,把下面的R > Lsp: Diagnostics
选项去掉勾选。然后重启VSCode。
方案B:单独配置。
在项目文件夹的根目录下新建一个
.lintr
文件。
在该文件中写入如下内容:
linters: with_defaults( # 不提醒一行字符数错误line_length_linter = NULL, # 不提醒命名错误object_name_linter = NULL,# 不提醒多余注释错误commented_code_linter = NULL)
说明如下:
linters: with_defaults( # 这个文件除了最后的空行之外不能有空行。以下空行仅为方便查看# 可以#号开头注释# 第2行开始每一行(含注释)一开始必须有一个tab分隔符(待考证,但是不加会报错)# 一行内字符数限制,不想有限制就写NULL,禁止其它提示同理line_length_linter = NULL, # 如果想规定一行的字符数,就写成这样# line_length_linter(999),# 不提醒命名错误(应该用下划线命名而非驼峰命名)object_name_linter = NULL,# 不提醒多余注释(把代码注释掉)错误# 最后的一个设置的最后不能有逗号commented_code_linter = NULL# 下面这个括号之后要换一下行,保证以空行结尾)
- 保存这个文件,然后在选项卡里关闭并重新打开需要重新检测的R文件(比如我这个2020.R)即可(不需要重启VSCode)。注意,如果
.lintr
的内容或格式有错误,会导致VSCode不能正确进行检测,于是会发现代码第一行的第一个字符会划红线报错,且下方“问题”一栏中会提示运行检测失败(如下图),此时请检查.lintr
文件是否正确编写。
参考内容
vscode 缓存路径_在vscode中配置R的开发环境——圭多达莱佐的CSDN博客
如何在 VSCODE 中高效使用 R 语言 (图文详解)——白墨石的CSDN博客
VSCode 愉快地使用 R——黄盼的知乎专栏
R插件的github文档
VSCode下配置R语言环境(Windows)相关推荐
- VScode下的Rust语言环境搭建
VS Code对Rust有着较完备的支持,下面主要介绍VScode下的Rust语言环境搭建 下面是VSCode的下载地址: Download Visual Studio Code - M ...
- anaconda下配置R子环境并配置jupyter notebook的R Kernel
anaconda下配置R子环境并配置jupyter notebook的R Kernel #在anaconda下打开主环境的terminal: conda create --name r4-base # ...
- VSCode快速配置C语言环境
1.在VSCode中安装C/C++插件 2.下载mingw64 MinGW-w64官方网站首页 1.找到downloads 2.找到SourceForge 3.找到一个合适的版本(我这里是下拉找到 ...
- 怎么在vs code上编写C语言,VScode上配置 c语言环境的图文教程
成成最近用到C语言了,之前比较喜欢用在vscode上面用python调试,今天我参考了一些文章,也尝试了下在vscode上配置c语言的调试,其中包含一些相关的基础知识. 1.在vscode里面下载c/ ...
- vscode在Windows下配置C语言环境,设置三个配置文件
一.需要下载的安装包: 1.vscode 直接在微软官方下载最新的vscode 2.MinGw64 里面包含了gcc.gdb等前一个是编译器,后一个是debug的 传送链接: MinGW64 往下拉点 ...
- VSCode配置C语言环境(完整版)
基本步骤 要在VSCode中配置C语言环境,我们首先可能要一个VSCode(废话),所以先下载安装一个VSCode: 然后肯定需要相关插件,因为VSCode不能直接拿来写C: 然后任何语言的程序在运行 ...
- Windows下R语言环境安装
Windows下R语言环境安装 R官网: https://www.r-project.org/ 按照如下步骤下载windows中的安装文件R-4.1.0-win.exe 文件已经下载完成:R-4.1. ...
- Windows系统下R语言环境搭建及高级图表绘制
1.R语言环境及其编译软件下载安装: 链接:https://pan.baidu.com/s/186hjytYEqJB2kDUed0beAA 提取码:mtwh 先安装R-4.0.3-win.exe,这 ...
- VScode配置C语言环境 亲测 可用!!!
VScode配置C语言环境 亲测 可用!!! 一.首先下载vscode,地址:https://code.visualstudio.com/ 此时我已经安装好了 二.对VSCode进行汉化安装插件Chi ...
最新文章
- python语言deLong‘s test:通过统计学的角度来比较两个ROC曲线、检验两个ROC曲线的差异是否具有统计显著性
- Doctype作用? 严格模式与混杂模式如何区分?它们有何意义
- 重磅回击!ZeniMax回击Oculus新试验
- Python imp模块 实际使用中的坑
- tornado 简易教程
- Flutter LayoutBuilder 用来获取父布局的尺寸大小
- python将argv作为参数,Python当中的命令行参数sys.argv[]的使用方法
- python标准库——math模块
- 101.对称二叉树(力扣leetcode) 博主可答疑该问题
- Filter过滤器概念及生命周期
- 关于word2016保存失败
- 开发案例---微信定时推送:生日祝福
- 明解C语言入门篇_第12章_结构体
- 高考数学95分能学计算机吗,数学模考5分到高考95分?
- PHP退休了吗,年底退休和年初退休也有区别?
- 森林图怎么分析_森林图(forest plot)怎么看|meta分析
- hdcp key校验流程
- 21款超赞的手写英文字体,总有一款适合你
- 手机中的那些人机交互都是怎么实现的
- c语言和matlab的区别,Matlab与C语言区别.pdf