R:在自定义类中启用自动完成

Kri*_*rup 6 r autocomplete

我创建了一个新类,我想启用R的自动完成功能.

一个例子可能是:

# Define class
setClass("customList",
     representation("list")
)

# Make example
tmp <- new("customList",
           list(
               test='a',
               b=1:3
           )        
)
Run Code Online (Sandbox Code Playgroud)

结果如下:

tmp
# An object of class "customList"
# [[1]]
# [1] 'a'
#
# [[2]]
# [1] 1 2 3
Run Code Online (Sandbox Code Playgroud)

此自定义列表确实具有可以使用的名称和命名参数

names(tmp)
[1] "a" "b"
tmp$test
[1] 'a'
Run Code Online (Sandbox Code Playgroud)

现在我想以某种方式启用自动完成,所以我可以简单地输入

tmp$t <TAB> 
Run Code Online (Sandbox Code Playgroud)

得到

tmp$test
Run Code Online (Sandbox Code Playgroud)

怎么做到这一点?

提前 - 谢谢!

mil*_*.ai -1

只需安装最新的 v0.99.660 Rstudio和自动完成,如您的问题中所述应该可以正常工作。

更新:

以下是 GRanges 类的示例:

library(GenomicRanges)

gr1 <- GRanges(seqnames=Rle(c("ch1", "chMT"), c(2, 4)),ranges=IRanges(16:21, 20),strand=rep(c("+", "-", "*"), 2))
Run Code Online (Sandbox Code Playgroud)

然后你可以输入:

gr1@
Run Code Online (Sandbox Code Playgroud)

Rstudio 将显示自动完成弹出窗口,如下图所示:

在此输入图像描述

您可以继续使用@来深入了解类结构并选择特定元素。