【问题标题】:Renamed: Solution for boilerplate code in Rstudio重命名:Rstudio 中样板代码的解决方案
【发布时间】:2020-12-10 13:38:46
【问题描述】:

编辑:这个问题原来有一个与编程本身无关的接口解决方案。因此,问题不再与 r 语言有关。

原标题: 将代码粘贴到 R 控制台,保留换行和缩进而不格式化?

我正在寻找一种方法来轻松存储代码并随后将代码打印到 R 控制台。最好不必处理转义的特殊字符,例如\"

expr() 函数几乎是正确的,因为它不需要任何格式。不幸的是,它不保留换行符:

# A)   
expr("17" %>%
       as.numeric())
   

因此等价于

# B) 
expr("17" %>% as.numeric())

两种打印方式:

"17" %>% as.numeric()

但是,我发现确实尊重换行并保持缩进的功能需要转义字符。例如来自胶水包的glue()

glue("
\"17\" %>%
  as.numeric()")

打印精美:

"17" %>%
  as.numeric()

是否已经有任何功能可以解决我的问题?

我相信我的情况与 R 中的 "Error: unexpected ..." 输出几乎相同,例如,当您在通话结束时有一个额外的 ) 时。但我不知道如何找到产生这些错误消息的底层代码。

【问题讨论】:

  • 究竟是为了什么目的?为什么需要将代码打印到 R 控制台?您是否了解集成探索性编程环境,例如 ESS、Nvim-R 和 RStudio?
  • 目的是存储代码块,然后可以轻松地从控制台复制并粘贴到代码中。我已经使用 Rstudio 10 年了,但没有你提到的其他两个经验。
  • 也许readClipboard() 的一些实现是可能的,与eval() 配对?
  • 我仍然不清楚它的实际目的是什么。从您评论中的描述来看,现在听起来真正想要的是 RStudio sn-ps 功能。是这样吗?无论哪种方式,将其粘贴到控制台可能是错误的做法,如果您提供有关所需用途的更多详细信息,我们可能会提供更具体的建议。
  • @Smerla 哦,酷!我同意在这种情况下你的描述就足够了,我只是假设你的意思是别的。

标签: r rstudio


【解决方案1】:

包括 RStudio 在内的许多 IDE 都具有插入常用code snippets 和占位符的功能。

这些 sn-ps 可以在首选项中添加/自定义,并且可以通过自动完成菜单访问。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多