Синтаксис PHP TRAC не работает в вики
-
26-10-2019 - |
Вопрос
Синтаксис подсветка для 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';
}
?>
}}}
Я оставляю этот вопрос здесь, если у кого -то еще есть такая же проблема, несмотря на то, как я чувствую себя глупо.