前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >更现代的R代码编辑器----本地VSCode-R搭建

更现代的R代码编辑器----本地VSCode-R搭建

原创
作者头像
叶子Tenney
修改于 2023-03-16 02:16:27
修改于 2023-03-16 02:16:27
3.5K0
举报

引言

每一位初学者接触R,想必都是从RStudio开始的,甚至将RStudio当作R本身的也不在少数。尽管RStudio是一个非常受欢迎的R编程环境,但它也有一些缺点。

  • 单 session
  • 布局固定
  • 内存消耗大

首先, "得益于"单 session 操作, 当RStudio的Console 中运行了一个命令后, 整个编辑器就会失去响应, 而时不时的无响应对编程的打击是巨大的.

其次,RStudio的界面不够灵活。相信不是只有我一个人觉得右下角的文件导航窗没用吧,RStudio的默认布局可能不适合每个用户的需求,而且更改布局需要花费一定的时间和努力。相比之下,其他IDE通常允许用户自定义和调整布局,以适应个人喜好和工作流程。

此外,RStudio的性能问题可能会影响大型数据分析项目。当处理大型数据集时,RStudio可能会变得缓慢,特别是在使用RMarkdown等功能时。在这种情况下,使用其他工具和方法可能更加有效和高效。

最后,RStudio的可扩展性不如其他IDE。虽然RStudio支持许多有用的插件和扩展,但它的扩展生态系统相对较小,没有像其他IDE那样广泛的社区支持和开发者社区。

因此,虽然RStudio是一个很好的工具,但它也有一些缺点,这些缺点可能会对一些用户造成问题。

所以为什么不来试试真正的"现代化代码编辑器"呢?比如,VSCode?

首先,VSCode提供了与其他编程语言的无缝集成,使您可以在同一编辑器中编写和调试多种编程语言。这意味着您可以在一个环境中同时使用R和其他编程语言,而无需切换到不同的编辑器。

其次,VSCode具有出色的代码自动完成功能和强大的代码编辑工具,这些工具可以帮助您更快地编写和调试代码。您可以轻松地自定义代码片段、快捷键和扩展,以便更好地适应自己的编码风格和需求。

此外,VSCode还具有出色的Git集成,可以使您更轻松地管理代码版本控制。您可以使用VSCode内置的Git功能轻松查看代码差异、提交更改和解决冲突。

最后,VSCode是一个轻量级的编辑器,可以更快地启动和运行,这意味着您可以更快地开始编写代码。它也可以更好地适应低性能计算机,因为它不需要太多的系统资源。

因此,如果你正在寻找一个更灵活、更高效的R代码编辑器,那么VSCode是一个值得考虑的选择。

效果展示

常用自带及插件附加功能

鼠标悬停即显示函数定义和文档,无论对应的包是否已经加载
鼠标悬停即显示函数定义和文档,无论对应的包是否已经加载
鼠标悬停在变量上,直接展示变量类型信息
鼠标悬停在变量上,直接展示变量类型信息
选中代码,自动格式化,例如添加空格等
选中代码,自动格式化,例如添加空格等

奇妙插件

或许是昙花一现的奇思妙想, 或许是有望长久存在于各位列表中的奇思妙想

自动写代码!!!

codeium
codeium

自动写文档!!!

Safurai
Safurai

自动改md!!!

mervin.markdown-formatter
mervin.markdown-formatter

过程--以macOS为例

我们需要的东西

  1. 本地VS Code及插件
    1. R(R LSP Client已被整合, 不需要单独安装)
    2. R tools
  2. 本地R包
    1. languageserver
    2. httpd
  3. 服务器应用
    1. python
    2. radian

安装

本地VS Code及插件

打开 VSCode,最左侧是活动栏。活动栏上的最后一个按钮就是“扩展”按钮。点击它之后你会看到大量可安装的扩展, 也可以按快捷键组合 Ctrl + Shift + X 来启动扩展栏的侧面面板。

  • R
  • R tools

R包

在terminal中进入R 环境,安装 languageserver :

代码语言:text
AI代码解释
复制
install.packages("languageserver")
install.packages("httpd")

安装过程中可能出现stringi无法安装的情况, 请详细参见引用2

应用

conda install radianpip install radian 都行, 取决于想往哪放.

配置

VS CODE配置

设置-插件-R, 将Bracketed Paste点上, 网上的教程一般还要点alwaysUseActiveTerminal, 但是我的实际体验是不好用.... 因为设置了之后就无法自动从terminal打开r了.

基础配置
基础配置

使用 which radian 获取路径并填入 Rterm: Mac , 同时建议在 ~/.zshrcalias r="radian" .

RTerm配置
RTerm配置

使用 which R 获取路径并填入 Rpath: Mac .

Rpath配置
Rpath配置
R: Session Watcher配置
R: Session Watcher配置

这是设置的json文件:

代码语言:json
AI代码解释
复制
{
	"r.rterm.option": [
        "--no-site-file",
        "--r-binary=/usr/local/bin/R",
    ],
    "r.rterm.mac": "/Users/sandy/opt/anaconda3/bin/radian",
    "r.bracketedPaste": true,
    "r.rpath.mac": "/usr/local/bin/R",
    "r.lsp.debug": true,
    "r.lsp.path": "/usr/local/bin/R",
    "r.sessionWatcher": true,
	"r.plot.useHttpgd": true,
}

在设置界面点右上角进入:

VS Codeode setting json
VS Codeode setting json

引用

  1. 使用vscode进行R远程开发
  2. # 如何在 VSCODE 中高效使用 R 语言 (图文详解)
  3. # VS Code 系列文章(二):Mac OS 系统下配置 VS Code 的 R 运行环境
  4. # shiny 服务器未响应, 忘掉Rstudio,来用VSCode愉快地进行R远程开发
  5. 使用 VSCode 愉快地进行远程 R 开发

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
Nacos Config--服务配置
使用nacos作为配置中心,其实就是将nacos当做一个服务端,将各个微服务看成是客户端,我们 将各个微服务的配置文件统一存放在nacos上,然后各个微服务从nacos上拉取配置即可。 接下来我们以商品微服务为例,学习nacos config的使用。
用户10196776
2022/11/28
5550
Nacos Config--服务配置
spring-gateway 基于 nacos 配置文件的动态路由
InFileRouteDefinitionRepository 类主要是简单 nacos 中的配置文件routes.json 的变化;只要监听到 routes.json 就进行路由更新。
BUG弄潮儿
2022/12/05
9460
SpringCloud+Nacos实现服务配置中心(Hoxton版本)
关于 Nacos Spring Cloud 的详细文档请参看:Nacos Config和Nacos Discovery。
程序员的时光001
2021/04/23
1.3K0
SpringCloud+Nacos实现服务配置中心(Hoxton版本)
【微服务】配置Nacos管理SpringBoot配置文件(附解压包)
Nacos可以帮助我们配置和管理微服务,是阿里的一个开源产品,是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。Nacos可以用来实现配置中心和服务注册中心。
哈__
2024/04/08
5310
【微服务】配置Nacos管理SpringBoot配置文件(附解压包)
SpringBoot使用Nacos进行服务注册发现与配置管理
最近由于业务发展,需要调研一套完善和主流的基础架构,进行中台化(微服务)的实施,考虑到技术栈切换到SOFAStack。既然整个体系都切换到蚂蚁金服的技术栈,那么自然考虑一些基础组件如服务注册发现、配置管理等都切换为阿里的技术栈。考虑到目前比较热的服务发现组件是Nacos,需要调研SpringBoot服务接入Nacos的可行性,为以后强制要求新服务使用SOFAStack + Nacos的技术栈进行服务开发打下基础。
Throwable
2020/06/23
4.3K0
SpringBoot使用Nacos进行服务注册发现与配置管理
微服务灵魂摆渡者Nacos
Nacos是阿里巴巴开源的服务注册中心以及配置中心,致力于给开发者提供一款便捷、简单上手的开源框架。
爱撒谎的男孩
2022/12/30
4280
万字长文 | Spring Cloud Alibaba组件之Nacos实战及其客户端服务注册源码解析
假设有这样一个场景,我们乘坐公车需要确定自己的座位在哪里,才能入座,否则有可能那是别人的座位,等别人来做的时候把我撵起来那就尴尬了。正常的情况应该是有个售票员给我发个带有座位编号的票,然后我去对号入座,这样就可以快速找到自己的座位且没有被撵走的风险。
行百里er
2022/11/22
1.2K0
万字长文 | Spring Cloud Alibaba组件之Nacos实战及其客户端服务注册源码解析
面试题57:如何基于Spring Cloud Alibaba Nacos进行单个DataID的配置读取?
因为nacos的配置要优先加载,所以放到bootstrap.yml中,而不是application.yml中
爪哇缪斯
2023/05/10
3830
面试题57:如何基于Spring Cloud Alibaba Nacos进行单个DataID的配置读取?
springboot配置文件中的基础配置
SpringBoot配置文件默认为application.和application-default.,如果通过spring.config.name属性指定了自定义配置文件名则加载读取指定的配置文件;扩展名有四个:.properties、.xml、.yml、.yaml;
在水一方
2022/06/14
6900
springboot配置文件中的基础配置
Spring Cloud Alibaba - 17 Nacos Config 配置中心 应用篇
https://nacos.io/zh-cn/docs/concepts.html
小小工匠
2022/02/05
7830
Spring Cloud Alibaba - 17 Nacos Config 配置中心 应用篇
一、SpringCloudAlibaba环境搭建
访问地址:https://github.com/alibaba/nacos 本人下载的时候最新的release版本是1.4.1版本
云叶知秋
2021/03/08
2K0
一、SpringCloudAlibaba环境搭建
SpringCloud之Nacos配置管理【统一配置管理,配置热更新,配置共享】
上一篇博客地址:(2条消息) 微服务框架之Spring Cloud 学习_一切总会归于平淡的博客-CSDN博客
叫我阿杰好了
2022/11/07
2.9K0
SpringCloud之Nacos配置管理【统一配置管理,配置热更新,配置共享】
SpringBoot配置文件高级用法实战
Spring Boot配置文件的优先级是一个重要的概念,它决定了当存在多个配置文件时,哪个配置文件中的配置将被优先采用。
公众号:码到三十五
2024/08/06
2260
SpringBoot配置文件高级用法实战
SpringCloud Alibaba Nacos 服务注册和配置中心
前四个字母分别为 Naming 和 Configuration 的前两个字母,最后的 s 为 Service。
OY
2022/03/17
8050
SpringCloud Alibaba Nacos 服务注册和配置中心
SpringBoot中的配置文件详解(yml、properties全局配置和自定义配置、@ConfigurationProperties与@Vuale使用、有趣的banner图配置)
全局配置文件能够对一些默认配置值进行修改。Spring Boot使用一个application.properties或者application.yaml的文件作为全局配置文件,该文件存放在src/main/resource目录或者类路径的/config,一般会选择resource目录。接下来,将针对这两种全局配置文件进行讲解∶
共饮一杯无
2022/11/28
13.1K0
SpringBoot中的配置文件详解(yml、properties全局配置和自定义配置、@ConfigurationProperties与@Vuale使用、有趣的banner图配置)
Spring Cloud Gateway实战之三:动态路由
本篇概览 本文是《Spring Cloud Gateway实战》系列的第三篇,前文介绍了多种路由配置方式,它们存在一个共同问题:路由配置变更后必须重启Gateway应用才能生效,聪明的您一下就看出了问题关键:这样不适合生产环境! 如何让变动后的路由立即生效,而无需重启应用呢?这就是今天的主题:动态路由 设计思路 这里提前将设计思路捋清楚,总的来说就是将配置放在nacos上,写个监听器监听nacos上配置的变化,将变化后的配置更新到Gateway应用的进程内: 上述思路体现在代码中就是下面三个类: 将操作路由
程序员欣宸
2021/12/07
9050
Spring Cloud Gateway实战之三:动态路由
SpringBoot教程(四) | SpringBoot中的配置文件
上文我中我们提到,spring中常用的配置文件有yml 和 properties 两种,都是以application来命名的,通常放到resources文件夹下。yml是使用缩进来体现层级管理的, 而properties 中是以. 的形式体现。二者没啥区别,根据个人的使用习惯来进行选择即可。目前来说用的比较多的还是yml 形式的。为什么呢,因为properties 可能会有很多冗余的书写,相对于yml来说,不够简洁。我们具体体会一下。
一缕82年的清风
2022/04/08
6760
SpringBoot教程(四) | SpringBoot中的配置文件
Springboot 系列(二)Spring Boot 配置文件
不管是通过官方提供的方式获取 Spring Boot 项目,还是通过 IDEA 快速的创建 Spring Boot 项目,我们都会发现在 resource 有一个配置文件 application.properties,也有可能是application.yml.这个文件也就是 Spring Boot 的配置文件。
未读代码
2019/11/04
1.6K0
SpringBoot配置文件的12个实用技巧
配置文件是SpringBoot应用的核心组成部分,它决定了应用的行为、连接参数以及功能特性。
每周聚焦
2025/05/19
1180
SpringBoot配置文件的12个实用技巧
55 张图吃透 Nacos,微服务的灵魂摆渡者强大在哪
Nacos是阿里巴巴开源的服务注册中心以及配置中心,致力于给开发者提供一款便捷、简单上手的开源框架。
程序员小富
2021/09/24
2.8K3
55 张图吃透 Nacos,微服务的灵魂摆渡者强大在哪
推荐阅读
相关推荐
Nacos Config--服务配置
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档