首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有“`的Rstudio快捷键?

是否有“`的Rstudio快捷键?
EN

Stack Overflow用户
提问于 2021-12-28 20:09:08
回答 1查看 180关注 0票数 0

我经常在Rmarkdow上使用它来引用代码,所以我创建了一个Addin,但是我想知道是否有快捷方式。如果不是这种情况,我如何配置加载项,以便在调用它时,插入符号或游标的位置处于两个符号之间,就像在""()中使用RStudio时一样。

insertInAddin <- function() { rstudioapi::insertText("``") }是我用于外接程序的代码。

我在寻找帮助,了解如何设置

rstudioapi::setCursorPosition()document_position()insertTextlocation参数中。

EN

回答 1

Stack Overflow用户

发布于 2022-03-03 08:58:11

您可以将缩痕包用于此任务。它允许您为任意R代码分配键盘快捷方式。

  1. 创建一个新的R Markdown代码段,也可以通过键入in (用于内联代码字体)并按Shift+Tab来单独使用: ${1}$0中的代码片段
  2. 使用RStudio控制台中的命令RStudio打开您定义自定义快捷方式的文件。
  3. 将以下代码粘贴到该文件中(在@shortcut行中设置首选的键绑定)。注意,函数第二行中插入的文本必须与步骤1中的新片段匹配: #‘代码字体#’# @description #‘如果编辑器有选择,将当前选择转换为代码字体。如果编辑器没有选择,请在背板之间写字。@@interactive#‘@快捷Cmd+E函数(){ if (rstudioapi::selectionGet()$value == "") { rstudioapi::insertText("in") rstudioapi::executeCommand("insertSnippet") |> capture.output() |>不可见(){#获取活动文档ctx <- rstudioapi::getActiveDocumentContext() #检查文档是否是活动的if (!is.null(X)){#将选择提取为字符串rstudioapi::modifyRange(ctx$selection[1]$range,<- ctx$ ctx$selection[1]$text #修改字符串selected_text <- stringr::str_glue("{selected\_text}") #将选择替换为字符串selection[1]Selected_text}} 此解决方案使用本机管道|>,因此需要R 4.1。当然,如果使用早期版本的magrittr,可以在每一行中定义单独的变量,也可以使用R管道。此外,可以轻松地将stringr::str_glue()命令替换为基本的R解决方案,以避免依赖关系。
  4. 使用RStudio控制台中的命令RStudio添加新的快捷方式及其指定的键绑定。然后重新启动RStudio。

现在,您可以使用例如没有选择的cmd+e将光标放置在回拨中,并按Tab在第二个回勾之后继续写入。或者,您可以选择文本,然后按cmd+e将选定的文本环绕在后面。

上面的解决方案可以很容易地推广到RMarkdown文档中的粗体和斜体文本,或者用美元符号来添加内联Latex。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70512028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档