Вопрос

Синтаксис подсветка для PHP отказывается работать на страницах вики в моей установке Trac. Это прекрасно работает при просмотре источника, но не в вики. JavaScript, C и Python Syntax выделяет работу в вики, но не PHP. Горе я.

У меня есть Trac 0.11.7 установлен на Ubuntu 10.04. Анкет Мой веб -сервер Apache 2.2.14.

Я установил пигменты вручную. Неудачно. Я изменил тему пигментов в предпочтениях. Неудачно.

У меня абсолютно 0 ошибок в регистрации в trac а также apache журналы. Уровень регистрации для TRAC установлен на WARNING (И ведение журнала TRAC работает - у меня есть другие ошибки ранее сегодня). Firebug также не отображает ошибки со всем включенным (кроме одного не связанного «неизвестного свойства»-Moz-opacity '«CSS-ошибка»).

Просмотр источника HTML на странице показывает, что код просто выплевывает в виде предварительного текста. У него нет тонн <span>Все остальные синтаксические кодовые блоки.

Это код, который я использую в вики:

{{{
#!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>
Это было полезно?

Решение

Я считаю, что вы можете решить это, включив <?php ярлык:

{{{
#!php
<?php
if(true)
{
    echo 'hi';
}
}}}

В любом случае, это работает для меня на моей Trac Wiki. Однако я до сих пор не смог определить, является ли это поведение или ошибку.

Другие советы

Не знаю, почему это всегда случается со мной. Конечно, я выясняю это через 5 минут после публикации вопроса.

Проблема заключалась в том, что у меня не было <?php ?> В источнике PHP, таким образом, синтаксис-высокий относился к нему как HTML; Так же, как анализатор PHP.

C, Python и JS не имеют эквивалента, поэтому они, казалось, работали, когда PHP не сделал этого.

Этот код работает:

{{{
#!php
<?php
if(true)
{
    echo 'hi';
}
?>
}}}

Я оставляю этот вопрос здесь, если у кого -то еще есть такая же проблема, несмотря на то, как я чувствую себя глупо.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top