R功能中的自定义选项卡完成

时间:2013-07-11 11:20:32

标签: r autocomplete

我目前正在编写一个只接受某些输入的功能(仅在示例中为" a"和" b")。对于所有其他输入,该函数将返回错误。

test <- function(x) {
  allowedX <- c("a","b")
  if(x %in% allowedX) print("Good choice!")
  else stop("wrong input!")
}

为了帮助该功能的用户,我想使用R中的选项卡完成功能提供x的允许值(存储在 allowedX 中),并替换通常在应用之后应用的默认文件名完成一句话。所以按TAB应该给出类似的东西:

test(x="<TAB>
a b

但是,到目前为止,我还无法找到一个解决方案,如何将矢量 allowedX 映射到R中的制表符完成。有人可以告诉我该怎么做吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以尝试以下内容:

test <- function() {
  allowedX <- c("a","b")
  x = readline('Please enter your choice of parameters (either "a" or "b"): ')
  if(x %in% allowedX) print("Good choice!")
  else stop("wrong input!")
}