5

是否可以使用SyntaxHighlight GeSHi缩进 MediaWiki 中的代码块?

比如我想让下面的代码容器和三级列表对齐

* This is plain text of a first-level list to be rendered by MediaWiki
** This is plain text of a a second-level list to be rendered by MediaWiki
*** This is plain text of a third-level list to be rendered by MediaWiki

<source lang="Cpp">
int main(int argc, char** argv)
{
    my_function(4, 1, 2, 3);
    return 0;
}
</source>

我尝试用冒号包装 GeSHi 代码容器(使用 MediaWiki 的标准缩进语法),但这会阻止 SyntaxHighlight GeSHi 正确解析代码。

为了澄清起见,我想避免用我的代码包装,<code></code>因为我需要正确的语法突出显示。

有什么建议么?

4

3 回答 3

6

你也可以用普通的 HTML div 标签来包装它:

<div style="margin-left: 2em;">
  <来源...>
    ...
  </source>
</div>
于 2011-02-08T02:04:48.670 回答
4

您可以将源代码放在表格中,然后缩进表格:

:::{|
|
<source ...>
...
</source>
|}
于 2014-10-15T11:56:32.623 回答
1

也许有一种方法可以滥用<ul>...</ul>HTML 元素?Meta,WikiMedia,Help:Editing FAQ中提供了一个可能的解决方法(由 Jeremy Koppel 提供)我可以将预先格式化的文本放入编号列表中吗?

<ul>
      <li>one</li>
      <li>two<pre>

Here are a couple lines...
...of preformatted text

      </pre></li>
      <li>and the numbering</li>
      <li>starts over</li>
   </ul>

我在一个基于 WikiMedia 的 wiki 中成功地使用它来突出显示项目符号文本行下的 bash 代码,如下所示:

 <ul>
<source lang="bash">sudo apt-get install \
build-essential \
...
libglu1-mesa-dev libxmu-dev</source>
   </ul>

虽然没有成功使其适用于更深层次!

于 2012-12-29T21:34:37.483 回答