Sogar mit Sphinx 1.2b1 und Segments 1.6, musste ich add_lexer aufrufen, um .. code-block:: json
zu bekommen, irgendetwas zu machen. Ich beendete das folgende Codefragment in eine Erweiterung nach oben setzen (docs/_ext/jsonlexer.py
):
def setup(app):
# enable Pygments json lexer
try:
import pygments
if pygments.__version__ >= '1.5':
# use JSON lexer included in recent versions of Pygments
from pygments.lexers import JsonLexer
else:
# use JSON lexer from pygments-json if installed
from pygson.json_lexer import JSONLexer as JsonLexer
except ImportError:
pass # not fatal if we have old (or no) Pygments and no pygments-json
else:
app.add_lexer('json', JsonLexer())
Meine docs/conf.py
für Sphinx hat die folgende, um die Erweiterung zu aktivieren:
import os
import sys
sys.path.insert(0, os.path.abspath('_ext'))
# Add any Sphinx extension module names here, as strings. They can be
# extensions # coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = ['jsonlexer']
Ja, wusste das. Ich frage mich, ob andere den Javascript-Textmarker für JSON-Markup auch in Sphinx verwendet haben oder ob es eine andere empfohlene Sprache gab. – JayhawksFan93
Gabriel sagt, dass die JSON-Syntax eine strikte Teilmenge der JavaScript-Syntax ist, so dass jeder geeignete Syntax-Highlighter für JavaScript auch mit JSON umgehen kann. –
Danke Joe, und nur um das OP zu verdeutlichen: Der JavaScript-Highlighter ist der richtige zu verwenden, es gibt keinen JSON-spezifischen Highlighter (weil JSON * ist * JavaScript), und es gibt keine bessere Option in Sphinx für die Hervorhebung von JSON. –