2017-06-05 3 views
1

J'ai un fichier RST pour lequel je ne veux pas de coloration syntaxique. Il contient plusieurs blocs littérales et une directive en surbrillance en haut du fichier pour essayer de désactiver la syntaxe Faits saillants:Désactivation sélective de la syntaxe de readthedocs surlignage

.. highlight:: none 

:: 

    Text that happens to contain words like list, None, etc. 

:: 

    Another literal block with words like list, None, etc. 

D'autres fichiers RST dans la syntaxe de l'utilisation du projet mettant en lumière des directives comme celui-ci:

.. highlight:: bash 

Lorsque je compile des documents avec sphinx sur mon poste de travail, sphinx met correctement en évidence la syntaxe là où elle est activée et désactive les surbrillances de la syntaxe là où elle est désactivée. Cependant, lorsqu'il est construit sur le site web readthedocs, il y a une mise en surbrillance de la syntaxe Python indésirable dans les blocs littéraux dans le fichier RST contenant .. highlight:: none. Des mots comme "None" et "list" sont mis en surbrillance.

Comment désactiver de manière sélective la coloration syntaxique dans ce fichier RST tout en conservant la syntaxe en surbrillance ailleurs?

Répondre

4

Vous utilisez deux directives de mise en évidence en succession directe, .. highlight:: none suivi immédiatement de ::. Le premier est surchargé par le dernier qui applique la coloration syntaxique de la dernière langue.

:: utilise le default language configured for syntax highlighting, généralement Python3.

Je n'utiliserais pas deux directives successivement.

Je n'utiliserais qu'une seule directive, suivie du code que je veux mettre en évidence.

En ce qui concerne la syntaxe qui à utiliser, vous pouvez utiliser text qui est tout simplement vieux texte, none, ou faire quelque chose qui ne fait pas partie des lexers pygments, comme moosehair. Voir Showing code examples pour plus d'informations.

.. code-block:: text 

    Plain old text 

Ou si vous définissez dans votre conf.py, highlight_language = 'none', vous pouvez utiliser :::

:: 

    Plain old text