google prettify:ada语法

时间:2013-11-21 15:47:01

标签: ada google-code-prettify

我目前正在尝试使用google prettify和我找到的here文件突出显示我网站上的Ada代码。 但是,我无法使用后期文件进行美化,并且自动语言检测会使用'字符(例如Array'first或integer'image)来清除属性,并将它们突出显示为字符串分隔符。

例如,我有以下示例代码,我希望在我的页面中正确格式化它:

procedure mergesort (V: in out TV_integer; iterations: in out integer) is
-- {} => {V is sorted}
    m : integer := (V'first + V'last) / 2;
begin -- mergesort
    if V'length > 1 then
        mergesort(V(V'first..m), iterations);
        mergesort(V(m+1..V'last), iterations);
        merge(V(V'first..m),V(m+1..V'last),V,iterations);
    end if;
end mergesort;

任何帮助都将不胜感激。

编辑:我尝试使用 pre class =“prettyprint lang-ada”标记,以便它使用lang-ada自定义脚本,但没有成功。

2 个答案:

答案 0 :(得分:7)

我是谷歌代码美化的Ada lexer的作者。要使用它,请将其添加到您的页面:

<head>
    <!-- ... -->

    <link href="css/prettify.css" media="screen" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="js/prettify.js"></script>
    <script type="text/javascript" src="js/lang-ada.js"></script>
</head>

<body onload="prettyPrint()">

使用自动加载器,它不会使用自定义词法分析器(更改您放置谷歌代码文件美化的路径)。完成后,您可以在网站上突出显示以下代码:

<pre class="prettyprint lang-ada"><code>
-- Ada code
</code></pre>

或者如果您使用markdown或其他阻止您向代码添加类的内容:

<?prettify lang=ada?>
<pre><code>
-- here goes your Ada code
</code></pre>

顺便说一下,Ada词法分析器会将Ada属性标记为atn类(默认为紫色)。如果您希望它们与其他代码具有相同的颜色,只需编辑prettify.css

答案 1 :(得分:2)

不支持Ada。 fordprefect86已经提交了词法分析器,但尚未包括在内。 有关详细信息,请参阅Issue 312