asciidoc:有没有办法解决以 [colour] 属性开头并以 ] 结尾的行不显示在 asciidoc 中的问题?

asciidoc: Is there a way to get around the problem of lines beginning with [colour] attributes ending with ] not displaying in asciidoc?

我的目标 asciidoc 文本是这样的:

[red]#Some prompt[x]# Make sure the option is [checked]

但它不会显示在 asciidoc 中

经过进一步调查,我发现任何以方括号中的 [color] 开头并以右括号结尾的行同样不会显示。

现在,在这种情况下,我通过将整个提示部分加粗来解决了这个问题,如下所示:

*[red]#Some prompt[x]#* Make sure the option is [checked]

但这并不理想。在最后一个右括号 \] 之后添加一个句点也可以避免问题 - 但在我的用例中我不喜欢它。

想知道有没有更好的办法。到目前为止我已经尝试过:

  1. 转义前导左括号 \[
  2. 转义最后的右括号 \]
  3. 去掉中间的[x],中间多出的括号可能会影响结果

但其中 none 有效。

所以我的问题是:

有没有办法解决以 [colour] 属性开头并以 ] 结尾的行不显示在 asciidoc 中的问题?

在我看来,以左括号开头并以右括号结尾的行被解释为块属性行。

有多种方法可以缓解这种情况。


使用 character replacement attribute. There are many built-in attributes, or you can easily define your own.

例如:

[.red]#Some prompt[x]# Make sure the option is [checked{endsb}

使用 inline pass-through 语法之一,例如 ++:

[.red]#Some prompt[x]# Make sure the option is [checked++]++

防止第一个左括号成为该行的第一个字符。此外,使用 built-in 属性,标记需要更改为 unconstrained.

例如:

{empty}[.red]##Some prompt[x]## Make sure the option is [checked]