Trac PHP 语法高亮在 Wiki 中不起作用
Posted
技术标签:
【中文标题】Trac PHP 语法高亮在 Wiki 中不起作用【英文标题】:Trac PHP Syntax Highlighting not working in Wiki 【发布时间】:2012-02-16 21:19:26 【问题描述】:php 的语法高亮显示拒绝 在我安装 Trac 时在 Wiki 页面上工作。它在浏览源代码时运行良好,但在 Wiki 中却不行。 javascript、C 和 Python 语法高亮在 Wiki 中有效,但在 PHP 中无效。不幸的是我。
我在Ubuntu 10.04
上安装了Trac 0.11.7
。我的网络服务器是Apache 2.2.14
。
我已经手动安装了 Pygments。没运气。我在首选项中更改了 Pygments 主题。没有运气。
我在trac
和apache
日志中记录了绝对0 个错误。 Trac 的日志记录级别设置为WARNING
(并且 Trac 日志记录正在工作 - 我今天早些时候还有其他错误)。 Firebug 在所有东西都打开时也没有显示任何错误(除了一个不相关的“未知属性'-moz-opacity'”CSS 错误)。
查看页面的 html 源代码表明代码只是作为预格式化的文本吐出。它没有大量 <span>
的所有其他语法高亮代码块。
这是我在 Wiki 中使用的代码:
#!php
if(true)
echo 'hi';
结果如下:
<div class="code"><pre><span class="x">if(true)
echo 'hi';
</span></pre></div>
请帮忙:-)
作为我所期望的示例,这里有一些有效的 JS 代码:
#!js
if(true)
alert('hi');
结果如下:
<div class="code"><pre><span class="k">if</span><span class="p">(</span><span class="kc">true</span><span class="p">)</span>
<span class="p"></span>
<span class="nx">alert</span><span class="p">(</span><span class="s1">'hi'</span><span class="p">);</span>
<span class="p"></span>
</pre></div>
【问题讨论】:
【参考方案1】:我相信您可以通过添加<?php
标签来解决此问题:
#!php
<?php
if(true)
echo 'hi';
无论如何,这在我的 Trac wiki 上对我有用。不过,我仍然无法确定这是预期行为还是错误。
【讨论】:
值得一提的是,语法高亮仅在 Trac 安装了某些额外的软件包时才有效。引用:“To activate syntax coloring, simply install either one (or more) of these packages...”【参考方案2】:不知道为什么这总是发生在我身上。当然,我在发布问题 5 分钟后就知道了。
问题是我在 php 源代码中没有 <?php ?>
,所以语法高亮器将其视为 HTML;就像 PHP 解析器一样。
C、Python 和 JS 没有等价物,这就是为什么当 PHP 没有它们时它们似乎可以工作。
此代码有效:
#!php
<?php
if(true)
echo 'hi';
?>
我把这个问题留在这里,以防其他人有同样的问题,尽管我觉得自己很愚蠢。
【讨论】:
以上是关于Trac PHP 语法高亮在 Wiki 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Eclipse 语法高亮显示:尝试为新文件扩展名指定它,但它不起作用
Sublime 3 编辑器语法突出显示 PHP + HTML 不起作用