【问题标题】:How can I force MediaWiki to respect single line breaks?如何强制 MediaWiki 尊重单行换行符?
【发布时间】:2012-04-29 20:43:48
【问题描述】:

默认情况下,MediaWiki 会忽略单个换行符,将它们视为单个空格。要在页面中插入新行,您必须在源代码中插入两个连续的换行符,这会产生一个新段落:</p><p>。也可以将<br /> 直接插入到源中。

如何修改 MediaWiki 解析引擎,以便在生成的 HTML 中将源中的单行换行符自动替换为 <br />

(来源:http://www.mediawiki.org/wiki/Help:Formatting

【问题讨论】:

  • 是的,您可以随意编辑源代码。
  • 要点——我已经改写了这个问题,并向圣佩蒂蒂克斯祈祷。 :)
  • 我一直在想,有一件事我无法理解——段落标签有什么问题?
  • 这是一个免费诗歌的维基。段落在语义上不正确。

标签: php mediawiki


【解决方案1】:

使用https://www.mediawiki.org/wiki/Extension:Poem

<poem>
Roses are red
Violets are blue
</poem>

【讨论】:

    【解决方案2】:
    <pre></pre>
    

    这个 html 标签似乎可以帮我完成这项工作。

    【讨论】:

    • 不,不要这样做!原因 1:
      -blocks 不以正常格式出现,而是包裹在灰色框中。原因 2:您在 Mediawiki 中创建 
      -blocks 不是通过手动输入标签,而是简单地将每一行应该包含在 
       中的每一行都用一个空格开始。
    • 我的目的是在wiki上存储一些有用的sql脚本。并且从 Sql Server 或文本编辑器复制/粘贴到必须是即时的。我绝不会以一种方式插入 html 标签并以另一种方式删除它们。而且我不想安装一个诗意的扩展。用
       包围我的代码看起来不错,我不关心文本显示在框中。
    【解决方案3】:

    您可以编写an extension,在解析 wikicode 时将 br 标记添加到换行符。但是,您必须非常小心 - 您不希望 wikicode 中的 每个 换行符实际上都是 br 标记,对吗?

    编辑:您不希望每个换行符都是 br 标签,因为并非 wikicode 中的每个换行符实际上都应该是换行符。比如一个表:

    {|
    |+ The table's caption
    |-
    |Cell 1
    |Cell 2
    |-
    |Cell A
    |Cell B
    |}
    

    如果在表格代码中添加 br 标记会变得非常混乱。

    【讨论】:

    • 将换行符转换为
      s 有什么缺点?
    • Wiki 标记的全部意义在于允许用户编辑看起来像文本的内容,而不是原始 HTML。在每一行添加
      's 会破坏这一点。
    • @meetar:例如,一张桌子。我已经编辑了答案以提供示例。
    • @jpatokal:我想这就是提问者想要在解析器中完成它的原因
    • @jpatokal 是的,我想在源代码中避免使用 HTML。我已经编辑了问题以澄清这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-02
    • 1970-01-01
    • 2010-10-26
    • 2013-11-09
    相关资源
    最近更新 更多