Символы в реструктурированном тексте

Я хочу использовать некоторые символы в реструктурированном тексте; как я могу это сделать? (например, → в Markdown дает символ "→", как определено в списке стандартных символов HTML-символов - см. также ссылка w3c)

Примечание. Я не хочу требовать поддержки математической формулы в качестве зависимости.

Ответ 1

У вас есть большое количество определенных символов через оператор "подстановки".

Вы должны включить определения через .. include:: <isonum.txt> или что-то подобное.

Большинство из них имеют форму |larr| или |rarr|.

Они определены в каталоге установки docutils.parsers.rst.include. Существуют десятки файлов, которые определяют многочисленные символы Юникода.

Ответ 2

Мне показалось, что первое поддерживает Unicode; можете ли вы просто ввести необработанный символ и позволить docutils обрабатывать кодировку для HTML?

Ответ 3

Думаю, вы искали это: http://docutils.sourceforge.net/docs/ref/rst/roles.html#raw

Вы можете определить следующую роль:

.. role::  raw-html(raw)
    :format: html

И затем вы можете написать:

This way :raw-html:`&rarr;`

Что делает это следующим образом:

Этот способ →

Ответ 4

Поскольку rST определенно поддерживает unicode (см. NoTex rST-редактор), вы можете просто ввести символ напрямую; в примере NoTex вы обнаружите что-то вроде этого:

|7Li+p → 2·4He| replace:: :sup:`7`\ Li + p → 2 :sup:`4`\ He

Вы видите стрелку правой стороны подстановки? Надеюсь, это ответит на ваш вопрос.

Ответ 5

У меня была похожая проблема при создании html из .rst файлов, содержащих символ ± в Windows, с использованием Sphinx. Изменение кодировки файла с windows-1252 на UTF-8 исправило это для меня.

Просто откройте с помощью блокнота, Сохранить как... и измените кодировку: на UTF-8