【问题标题】:Define what makes a code section in rstudio在 rstudio 中定义代码部分的组成部分
【发布时间】:2017-03-30 16:02:53
【问题描述】:

Rstudio 更改了代码段的定义方式。在 0.99.902 版本中,代码部分必须在井号后面有一些文本。但是现在在 1.0.136 版本中,如果连续有 5 个哈希值,它将定义一个新部分。

有没有办法让它回到定义部分的旧方式?这没什么大不了的,只是我会在名称上方和下方用哈希标记我的部分,现在它正在创建 3 倍的部分。

旧版本:

新版本:

【问题讨论】:

    标签: r rstudio


    【解决方案1】:

    我不知道是否有办法恢复旧行为,但您可以改用+。此外,您可以将其放入代码 sn-p 中(如果您还没有的话)。在首选项中,转到Code 选项卡,滚动到底部并单击Edit Snippets 按钮。然后添加如下内容:

    snippet hd
      `r "# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
      ### HEAD ##########
      # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"`
    

    然后,当您键入hd 后跟一个选项卡(实际上是两个选项卡,因为第一个选项卡会弹出几个以hd 开头的选项,但hd 将在顶部,所以您可以只需在你的 R 脚本文件中按两次 Tab 键,就会出现以下内容:

    # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ### HEAD ##########
    # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    

    更好的是,您可以创建一个将标题文本作为参数的 sn-p:

    snippet hd
       `r paste("# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++\n",
       "### ", "${1:HEAD}", " ##########\n",
       "# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++", sep="")`
    

    然后,当您键入 hd 后跟两个选项卡时,HEAD 文本将突出显示,您只需输入实际的标题文本。

    【讨论】:

    • 关于 sn-ps 的好提示。我不知道你能做到这一点。我在辩论只是使用不同的符号来避免额外的部分,但这对我的旧代码没有帮助。
    • 您可以在打开旧脚本时进行查找和替换以将 #######...###### 更改为 # ++++...+++++。很痛苦,但至少它只是一个操作,并且对于给定的脚本只需要执行一次。如果您对命令行很方便,您可以一次对所有 R 脚本执行此操作,最好使用正则表达式来捕获和替换 # 的“长”字符串。
    【解决方案2】:

    不幸的是,这种行为在 RStudio v0.98.1091、v0.99.903 和当前版本 v1.0.136 之间发生了变化。

    在 RStudio v0.98.1091 中,“空”标头(例如 #####)被识别为节标头。

    此行为在 v0.99.903 中进行了短暂更改,因此需要一些初始文本才能将其识别为节标题。许多用户不满意,因为这实际上破坏了明确使用独立 ##### 块创建部分的用户的代码折叠。

    因此,该行为在 RStudio v1.0.136 中被恢复,因此现在独立的 ##### 块再次被识别为节标题。

    【讨论】:

    • 感谢您的回复。 Rstudio 上是否有关于此的帖子?
    • 我不认为独立部分带有例如#### 曾被明确记录,但由于它们有效,它们隐含地成为 RStudio 中创建部分的方式的一部分。我能找到的最接近的是这篇支持文章:support.rstudio.com/hc/en-us/articles/…
    • 您在哪里找到每个版本的更改说明?
    猜你喜欢
    • 2018-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多