RStudio addin重定位光标

时间:2017-04-11 12:06:00

标签: r rstudio add-in

我喜欢在括号后加一个空格,因为我发现它增加了我的代码的可读性。 像这样:

some_function <- function( arg1, arg2, arg3 ) {
  # Doing things
}

some_list <- list( a1 = c( 1, 2, 3 ), a2 = "nothing" )

由于RStudio已经自动完成了括号,我想为什么不添加额外的空间来增加我存在的懒惰。我制作了一个R包并按照here描述的工作流程。

使用devtools::install_github("ErikSchutte/extrawhitespace")安装我的包 并将addin绑定到shift + 9.所以每次我输入(时我都会得到( ^ )^是光标位置)。真正困扰我的是,每次第一次使用插件时光标都会跳转到文件的开头..

到目前为止我唯一使用的是:

#' extrawhitespace
#'
#' Adds a whitespace after parentheses for readability.
#'
#' @importFrom rstudioapi insertText setCursorPosition
#' @export
extrawhitespace <- function() {
  context <- rstudioapi::getActiveDocumentContext()
  start_line <- context$selection[[1]]$range$start[[1]]
  start_char <- context$selection[[1]]$range$start[[2]]
  insertText( "(  )" )
  setCursorPosition( c( start_line, start_char+2 ), id = NULL )
}

我在这个问题上找不到任何东西,任何人都可以让我朝着正确的方向努力吗?

亲切的问候,

埃里克

0 个答案:

没有答案