Если кому-то еще это понадобится, вот решение, с которым я сейчас работаю:
import docutils.core
import docutils.writers.html5_polyglot
from IPython.core.magic import register_cell_magic, register_line_magic
from IPython.display import HTML
@register_cell_magic
def rst(line, cell):
"Render ReStructuredText"
writer = docutils.writers.html5_polyglot.Writer()
return HTML(docutils.core.publish_string(cell, writer=writer).decode('UTF-8'))
@register_line_magic
def rstfile(filename):
"Render ReStructuredText"
writer = docutils.writers.html5_polyglot.Writer()
with open(filename, 'r') as file:
cell = file.read()
return HTML(docutils.core.publish_string(cell, writer=writer).decode('UTF-8'))
Для просмотра файла rst
без источника:
%rstfile <your-rst-filename>
Чтобы использовать исходное решение, как ячейку rst
, показывающую как источник ReStructuredText, так и визуализированный вывод:
%%rst
============
Main title
============
Some **heavy** markup.