Вбудоване виділення коду в reStructuredText


130

Я знаю, що в reStructuredText є ця директива:

.. code:: bash

    gedit pohl.m

який надає блок коду. Чи є спосіб отримати виділення синтаксису для вбудованих фрагментів, як це:

Do edit the file, type ``gedit pohl.m`` into a terminal.

Задній панелі позначають його як код, але я хотів би виділити його такими пігментами, як блок. Чи можливо це?


7
Зворотні посилання позначають цю частину тексту як вбудовану літералу , а не як блок коду. Як правило, це буде просто опубліковано монопросторовим шрифтом. Я не знаю, як отримати фрагменти виділеного синтаксису вбудованого коду, я боюся.
Кріс

Відповіді:


209

Подивившись на це ще раз, я натрапив на документ, що перекладається текстовими ролями ReStructuredText . З цього документа:

Інтерпретований текст використовує зворотні цитати (`) навколо тексту. Явний маркер ролі може необов'язково з’являтися перед текстом або після нього, розмежовуючи його двокрапками. Наприклад:

This is `interpreted text` using the default role.

This is :title:`interpreted text` using an explicit role.

Здається, що є codeроль , тому ви можете просто набрати текст

:code:`a = b + c`

для надання блоку вбудованого коду. Щоб отримати підсвічування синтаксису, ви можете визначити власну роль. Наприклад

.. role:: bash(code)
   :language: bash

який ви можете використовувати так:

Here is some awesome bash code :bash:`a = b + c`.

Зауважте, що визначення ролі повинно бути поставлено перед посиланнями на роль.

Зауважимо, у документі, на який я посилаюся, не згадується версія документа, на яку він посилається. Роль код НЕ доступний в Docutils 0.8.1 (який є єдиною версією , я повинен випробування проти).


4
зверніть увагу на це питання під час використання сфінкса: stackoverflow.com/questions/21591107/…
Donatello
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.