Если у меня есть Markdown вроде

## My Title

A paragraph of content here.

    code_line(1);
    // a code comment
    class MoreCode { }

and more text to follow...

Как я могу установить класс в блоке <code>, который создается там посередине? Я хочу получить его

<code class=’prettyprint’>
  code_line(1);
  // a code comment
  class More Code { }
</code>

Но я не могу его установить. У меня нет контроля над запускаемым кодом Markdown, только над содержимым.

50
James A. Rosen 10 Июн 2009 в 16:26

4 ответа

Лучший ответ

Вы можете встроить HTML в Markdown. Печатайте буквально то, что хотите, без отступов.

<code class="prettyprint">
  code_line(1);
  // a code comment
  class More Code { }
</code>
51
Patrick McElhaney 20 Май 2021 в 19:37

У Markdown есть расширение (сайт attr_list.py), который позволяет использовать синтаксис Maruku {: .classname}.

2
Worthwelle 8 Фев 2020 в 00:33

Markdown Extra поддерживает атрибуты class и id с использованием фигурных скобок. См .: https://michelf.ca/projects/php-markdown/extra/ # spe-attr

2
jeffmcneill 11 Июл 2016 в 16:02

Хотя точно не отвечу на вопрос. Вы также можете использовать другой рендер, например Maruku или Kramdown:

## My Title

A paragraph of content here.
~~~
code_line(1);
// a code comment
class MoreCode { }
~~~
{: .prettyprint}

and more text to follow...

Вывод (проверено с помощью haml и kramdown):

<pre class="prettyprint"><code>
code_line(1);
// a code comment
class MoreCode { }
</code></pre>

Синтаксис Kramdown: http://kramdown.rubyforge.org/quickref.html#block-attributes < / а>

22
Pablo Olmos de Aguilera C. 24 Окт 2012 в 04:07