扰流板中的代码块具有降价功能

时间:2015-08-24 11:35:35

标签: gitlab markdown

在markdown中是否有任何方法可以将代码(在```里面)与剧透(在!>之后)语法结合起来以获取剧透内容中的一些代码?

我正在使用GitLab中实施的降价。

3 个答案:

答案 0 :(得分:3)

https://docs.gitlab.com/ee/user/markdown.html#details-and-summary

常规Markdown在细节块中不起作用,但HTML会起作用。

<details>
    <summary>Click me to collapse/fold.</summary>
    These details will remain hidden until expanded.
    <pre>
        <code>PASTE LOGS HERE</code>
    </pre>
</details>
  

注意:很遗憾,这些代码中不支持Markdown   降价规范描述。你可以解决这个问题   例如,使用HTML,您可以使用标签而不是代码   栅栏。

答案 1 :(得分:1)

正如@Chris在评论中提到的那样,GitLab Flavored Markdown似乎没有提及支持“剧透”语法的任何内容(在!>之后)。另外,“剧透”语法不是“官方”语法(也不是像@Chris指出的那样是围栏代码块)并且不常见。就个人而言,我不知道任何支持它的特定Markdown实现。也就是说,据我理解语法,它基本上是blockquote语法的扩展。因此,如果你使用的实现支持破坏者,那么无论对blockquotes如何工作都应该适用于剧透。

需要注意的另一个问题是,并非所有Markdown实现都支持Fenced代码块,并非所有这些都支持它们。例如,一些最早的实现不支持嵌套的受防护代码块。因此,根据您使用的Markdown实现,您可能会得到不同的结果(我不知道GitLab使用哪种实现)。这是您使用非标准功能所支付的价格。

无论如何,假设您使用的实现具有完全支持,以下可能会起作用:

!> ```javascript
!> alert("42");
!> ```

请注意,我正常编写了我的代码块。然后我只是在每行的开头插入三个字符(感叹号,大于符号和空格)。如果这不起作用,那么一个安全的假设是实现不支持一个或多个所需的非标准功能。

答案 2 :(得分:1)

以下应该可以解决问题:

<details>
  <summary>Click to expand</summary>
  Whatever
</details>