RStudio中的代码折叠:在代码

时间:2016-06-15 13:36:45

标签: r ide rstudio folding

我在RStudio中编写R脚本,并且我经常使用code folding。我发现你可以通过按 cmd + shift + O 来查看折叠的层次结构。这非常有用。

# to my dear love ---------------------------------------------------------
2+2 
# yo man ====
x.2 = function (x) {x+2}

### I do love potatoes ####

cmd + shift + O 查看结果。

enter image description here

我不明白这是如何工作的,因为当我编写下面的代码时,我可以创建一个没有文本的子部分,但是当文本中没有文本时(使用# ====而不是{{1}) })。

# yo man ====

cmd + shift + O 查看结果。 enter image description here

你可以看到# to my dear love --------------------------------------------------------- 2+2 # ==== # yo man ==== ### I do love potatoes #### x.2 = function (x) {x+2} data = "here is some data" 下的所有内容都向右移动了!这很酷!

  1. 问题是,如何才能创建包含文本的部分层次结构?
  2. 这是一个特殊的包裹还是Emac呢?如何创建带有文本的子部分,并在 cmd + shift + O 框中查看层次结构?
  3. 如何通过减少右侧框中的视觉层次来向下移动一个部分(转到更高的部分(比如第2部分)到下部(第1部分)?

1 个答案:

答案 0 :(得分:3)

根据克里斯的回答subheaders within functions

RStudio Code Folding层次结构仅适用于函数定义和if-else结构。例如:

# Section 1 ----
a <- 1

testfunct1 <- function () {
# sect in function=====
  b <- 2
  c <- 3
}

# Section 2 #####
d <- 4

# Section 3 =======
e <- 5

testfunct2 <- function () {
  # sect in function 2 =====
  f <- 6
  testsubfunct2_1 <- function () {
  # sect in subfunction 2_1 -----
    if (a == 1) {
      # section in if ----
      g < 7
    } else {
      # section in else ----
      h = 8
    }
  } 
}

# Section 4 ####
j <- 9

制作此大纲:

Code Outline screenshot

我不知道为什么if-else部分标签没有排列。