如何使用 RStudio 热键在 R / Shiny App 中编写折叠括号 ()?

How to code fold parenthesis () in R / RShiny App using RStudio hot key?

我一直在 R 中使用代码折叠 + 代码折叠热键来保持我的脚本井井有条。如果一切都在函数中并且函数完成工作,折叠代码非常整洁。

我们如何编写代码来折叠下面的 dashboardBody() 调用?如果我在第 32 行和第 33 行之间添加 #####,第 33 行下方的整个脚本会折叠成一个折叠,这是有问题的,因为我只想让 dashboardBody() 函数在这里折叠成自身。

我试过这个,我用花括号把整个东西包起来

ui_body <- {dashboardBody(

  # Shiny HTML Tags 
  tags$script(HTML("$('body').addClass('fixed');")),
  tags$head(tags$style(HTML(css_fixed_sidebar))),
  tags$head(tags$style(HTML(css_dashboard_body_white))),
  tags$head(tags$style(HTML(css_nyk_grey_header))),
  
  # UI Body for this page
  tabItems(
    create_ui__glossary(id = NA) # NA for no server module
  )
)}

...虽然此处确实出现了代码折叠图标

...这是有问题的,因为 (a) 如果 dashboardBody() 仍然显示会更好,例如折叠时函数名称的显示方式(尽管这可能不可能),更重要的是(b) RStudio 代码折叠热键(Windows 上的 ALT-O)出于某种原因无法折叠此部分,因此我必须手动单击箭头来折叠此代码,这违背了使用热键对整个脚本进行代码折叠的目的。

还有其他方法吗?

将其包装在一个函数中并折叠该函数...

create_ui_body <- function() {
  return (
    dashboardBody(
       ...
    )
  )
}
ui_body <- create_ui_body()

弃牌:

我很想知道是否有人可以指出这种方法的任何问题。