Символы в реструктурированном тексте
Я хочу использовать некоторые символы в реструктурированном тексте; как я могу это сделать? (например, →
в 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:`→`
Что делает это следующим образом:
Этот способ →
Ответ 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