Маркирането на Php код в Jekyll kramdown не работи

Използвам Jekyll с kramdown и pygments, работи добре за javascript или python код, но когато създавам php като:

{% highlight php %}
header('Content-Type: application/json');

echo json_encode(array(
    'jsonrpc' => "2.0",
    'result' => $result,
    'id' => $request->id,
    'error' => null
));
{% endhighlight %}

Всеки ред е един участък с x клас:

<code class="language-php" data-lang="php"><span class="x">header('Content-Type: application/json');</span>
<span class="x">echo json_encode(array(</span>
<span class="x">    'jsonrpc' =&gt; "2.0",</span>
<span class="x">    'result' =&gt; $result,</span>
<span class="x">    'id' =&gt; $request-&gt;id,</span>
<span class="x">    'error' =&gt; null</span>
<span class="x">));</span></code>

Защо нямам токени с различни класове за php код?


person jcubic    schedule 16.08.2014    source източник
comment
Опитахте ли да добавите <?php в началото на блока?   -  person Maerlyn    schedule 16.08.2014
comment
@Maerlyn Работи, странно е, че се изисква. Можете да добавите отговор.   -  person jcubic    schedule 17.08.2014


Отговори (2)


Ако искате да забравите отварящия таг php в началото на вашия кодов блок, трябва да зададете параметъра startinline на Pygments на true.

{% highlight php startinline=true %}

Вижте документацията на Pygments

person David Jacquel    schedule 18.08.2014
comment
Страхотен. Днес имах същия проблем и сега знам. Благодаря отново Дейвид! - person Phlow; 20.08.2014

От 8 август 2016 г. От https://github.com/jekyll/jekyll/issues/1633#issuecomment-238383509

Вече не поддържаме пигменти. Ние използваме Rouge.

Новият синтаксис е както следва:

```php?start_inline=true

header('Content-Type: application/json');

echo json_encode(array(
    'jsonrpc' => "2.0",
    'result' => $result,
    'id' => $request->id,
    'error' => null
));

```
person Jeff Puckett    schedule 13.04.2017
comment
За съжаление не работи. php?start_inline=true се отпечатва в кодовия блок. - person JCarlosR; 15.04.2017
comment
@JCarlos трябва да имаш други плъгини, които пречат. Опитайте примера на jekyll по подразбиране на страниците на gitlab gitlab.com/pages/jekyll - person Jeff Puckett; 15.04.2017
comment
Не си спомням да съм добавял добавки. И моят проект няма папка _plugins. Мога ли да използвам примера на Gitlab в страници на Github? Благодаря ти. - person JCarlosR; 15.04.2017