Kann ich „Smartypants“ zu reStructuredText hinzufügen?
-
29-09-2019 - |
Frage
Ich benutze reStructuredText, und ich mag, was smartypants tut für Markdown. Gibt es eine Möglichkeit, die gleiche Sache für reStructuredText?
aktivierenLösung 2
Wie Alex Martelli sagt, ist Smartypants, was ich brauche. Ich war jedoch die Suche nach einer wenig mehr detaillierten Informationen darüber, wie es zu benutzen. Also hier ist ein Python-Skript, das die Datei in dem ersten Befehlszeile Argumente namens liest, wandelt es in HTML, Pygments für sourcecode
verwenden und dann passses es durch smartypants für Verhübsch-Schlechterung.
#!/usr/bin/python
# EASY-INSTALL-SCRIPT: 'docutils==0.5','rst2html.py'
"""
A minimal front end to the Docutils Publisher, producing HTML.
"""
try:
from ulif.rest import directives_plain
from ulif.rest import roles_plain
from ulif.rest import pygments_directive
import locale
locale.setlocale(locale.LC_ALL, '')
except:
pass
from docutils.core import publish_doctree, publish_from_doctree
from smartypants import smartyPants
import sys
description = ('Personal docutils parser with extra features.')
doctree = publish_doctree(file(sys.argv[1]).read())
result = publish_from_doctree(doctree, writer_name='html')
result = smartyPants(result)
print result
Andere Tipps
Haben Sie versucht, smartypants.py ? Ich weiß nicht, wie gut es implementiert ist, viel weniger, wie gut es funktioniert für Ihre speziellen Anwendungsfälle, aber es scheint genau Ihr Ziel, Unicode-ifizierung einiger ascii-Konstrukte (jedoch zum Ziel, es läuft auf HTML, also denke ich, Sie würde es nachlaufen restructuredText
oder was auch immer andere "Hersteller von HTML" Komponente).
Wenn das nicht gut für Sie arbeiten, ein Benutzer reichte eine Patch python-markdown2 die er‚dieser SmartyPants patch‘- es ist angenommen worden und seit einem Monat seines Teil des aktuellen Quellbaumes von python-markdown2 ( R259 oder besser). Das Angebot kann glatte Segeln (zB wenn Sie gerade bekommen und gebaut python-markdown2 als Read-Only svn Baum ). Oder könnten Sie für die nächste herunterladbare Version warten (es hat nicht ein seit Mai und dieser Patch wurde Mitte Juli angenommen), aber wer weiß, wann das passieren wird.