更改 "Insert Section..." 的 RStudio 快捷方式
Change RStudio shortcut for "Insert Section..."
为了保持代码整洁,我喜欢使用代码段。在 Windows 上,新代码段的快捷方式是 ctrl+shift+R
,在 MAC 上是 Cmd+shift+R
。各部分的格式为
# <label> ---------------------------------------
但是当我使用 knitr
编写文档并包含来自 .R 文件的代码时,此格式与 knitr
对标签的期望不匹配。
例如当使用
read_chunk("foo.R")
<<label-a>>=
@
然后 foo.R
中的 label-a
前面必须至少有四个破折号 -
- 例如
## ---- label-a ----
1+2
rnorm(2)
因此,如果能够更改 RStudio 中的键盘快捷键,以便它创建具有以下格式格式的代码部分,那就太好了:
## ---- <label> ----
这可能吗?
我在 RStudio 支持上问了这个问题,虽然没有直接的方法,但他们建议我可以使用代码片段功能:
https://support.rstudio.com/hc/en-us/articles/204463668-Code-Snippets
您可以将以下内容添加到片段中:
snippet sec
## ---- ${1:label} ----
${2:}
$ 符号是占位符,可让您直接使用 .您只需输入 "sec",按 tab 键,代码段就会被填写,您写下您的标签名称,然后按 tab 键找到代码段。与您想要的不一样,但非常接近。它非常适合我。
我想做同样的事情,但更喜欢像 CTRL+SHIFT+R
热键那样根据标签长度自动生成长度。由于 R 现在可以在片段中求值:
snippet sect-
`r strtrim(paste("#----",parse(text = "$$"),strrep("-",150)),120)`
要使用它,你可以输入“sect-label”,按SHIFT+TAB
,它会自动生成“#----标签---------- -...”到 120 个字符的长度(我的 IDE 页边距长度)。
自动设置边距长度会很好,但是我找不到如何获取它的值。
为了保持代码整洁,我喜欢使用代码段。在 Windows 上,新代码段的快捷方式是 ctrl+shift+R
,在 MAC 上是 Cmd+shift+R
。各部分的格式为
# <label> ---------------------------------------
但是当我使用 knitr
编写文档并包含来自 .R 文件的代码时,此格式与 knitr
对标签的期望不匹配。
例如当使用
read_chunk("foo.R")
<<label-a>>=
@
然后 foo.R
中的 label-a
前面必须至少有四个破折号 -
- 例如
## ---- label-a ----
1+2
rnorm(2)
因此,如果能够更改 RStudio 中的键盘快捷键,以便它创建具有以下格式格式的代码部分,那就太好了:
## ---- <label> ----
这可能吗?
我在 RStudio 支持上问了这个问题,虽然没有直接的方法,但他们建议我可以使用代码片段功能:
https://support.rstudio.com/hc/en-us/articles/204463668-Code-Snippets
您可以将以下内容添加到片段中:
snippet sec
## ---- ${1:label} ----
${2:}
$ 符号是占位符,可让您直接使用 .您只需输入 "sec",按 tab 键,代码段就会被填写,您写下您的标签名称,然后按 tab 键找到代码段。与您想要的不一样,但非常接近。它非常适合我。
我想做同样的事情,但更喜欢像 CTRL+SHIFT+R
热键那样根据标签长度自动生成长度。由于 R 现在可以在片段中求值:
snippet sect-
`r strtrim(paste("#----",parse(text = "$$"),strrep("-",150)),120)`
要使用它,你可以输入“sect-label”,按SHIFT+TAB
,它会自动生成“#----标签---------- -...”到 120 个字符的长度(我的 IDE 页边距长度)。
自动设置边距长度会很好,但是我找不到如何获取它的值。