如何使用正确的lang参数?

问题描述 投票:0回答:2

我在新的 UBUNTU 18 LTS 中安装了一个新的 Mediawiki... ''SyntaxHighlight'' 扩展 不适用于 Unix shell

lang="sh"
lang="shell"
lang="bash"
,...没有人适用在职的。它不在 #Supported_languages,并且没有关于如何安装“其他标记”的线索。

mediawiki.org/list 没有任何线索。

那么,如何解决这个问题?是配置、环境还是语法问题?


注释和测试

注释。

  • 这是一个企业Wiki,无法提供公共URL...但它是一个新鲜的、标准的和受控的安装,所有复制和标准。

  • 维基配置了皮肤“矢量”和语言“巴西葡萄牙语”。

测试。

  1. mediawiki.org/Extension:SyntaxHighlight的使用测试,Python 示例。

    1.1。带标签

    <syntaxhighlight>
    。结果:没有亮点,同
    <pre>

    1.2。带标签

    <source>
    。结果:没有突出显示,同
    <pre>

  2. PHP 示例,片段来自 wikipedia.org/PHP Syntax

    2.1。带标签

    <syntaxhighlight>
    。结果:没有亮点,同
    <pre>

    2.2。带标签

    <source>
    。结果:没有突出显示,同
    <pre>

测试中使用的代码片段:

def quickSort(arr):
    less = []
    pivotList = []
    more = []
    if len(arr) <= 1:
        return arr
    else:
        pass
<title>PHP "Hello, World!" program</title>
<?php echo '<p>Hello World</p>'; ?>
syntax-highlighting mediawiki
2个回答
0
投票

MediaWiki 语法荧光笔使用了 Pygments 库,您应该首先下载并安装扩展:

要求

此版本的扩展已通过 Pygments 1.6、2.0.2 和 MediaWiki 1.25 截至 2015 年 6 月 19 日。要获得此扩展的兼容版本 对于早期版本的 MediaWiki,请访问:

https://www.mediawiki.org/wiki/Special:ExtensionDistributor/SyntaxHighlight_GeSHi

下载

https://github.com/wikimedia/mediawiki-extensions-SyntaxHighlight_GeSHi/archive/master.tar.gz

安装

将此行添加到您的 LocalSettings.php 中:

wfLoadExtension( 'SyntaxHighlight_GeSHi' );

默认情况下,此扩展将使用 Pygments 2.0.2 的捆绑副本。如果你 想使用库的不同副本,您可以设置 $wgPygmentizePath 指向“pygmentize”二进制文件的路径。

使用方法

在 wiki 页面上,您现在可以使用“源”元素:

<source lang="php">
<?php
    v = "string";    // sample initialization
?>
html text
<?php
    echo v;         // end of php code
?>
</source>

参数

这些参数的详细信息请参见Pygments的文档 HtmlFormatter 位于 http://pygments.org/docs/formatters/#HtmlFormatter

  • 郎;定义语言。
  • 线;对应于 linenos="inline" 选项。
  • 开始;对应于 linenostart 选项。
  • 附上;如果设置为“none”,则对应于 nowrap=1 选项。
  • 内联;对应于 nowrap=1 选项。
  • 突出显示;对应于 hl_lines 选项(逗号分隔)。

注意

Pygments 在创建 HTML 元素方面非常慷慨:突出显示大块 代码可以很容易地生成足够多的代码来导致浏览器崩溃。作为守卫,语法 对于大于 100 kB 的代码片段,突出显示会关闭。


0
投票

在语法突出显示扩展中使用 Pygments 引入了文档中可能不清楚的依赖项:您必须在路径中安装一个可用的 python3! Extensions/SyntaxHighlight_GeSHi 目录中有两个 Python 程序:pygmentize 和 create_pygmentize_bundle。两者都包含以下“shebang”行:

#!/usr/bin/env python3

两个文件都应该是可执行的(例如模式 755 而不是 644)。并且您应该在 wiki 代码运行的环境中的路径上安装 python3。 如果您的安装中不满足这些条件中的任何一个,结果可能正是您所描述的症状:代码块看起来像没有语法着色的预格式化文本。

© www.soinside.com 2019 - 2024. All rights reserved.