¿Json Lexer no está disponible en Sphinx?

¿Json Lexer no está disponible en Sphinx?

Intenté usar json lexer en un documento *.rst con sphinx. Éste funciona:

.. code-block:: console

  //Comment
  key1: value,
  key2: value2,

Pero cuando intento usar json así:

.. code-block:: json

  //Comment
  key1: value,
  key2: value2,

me sale un error

WARNING: Could not lex literal_block as "json". Highlighting skipped.

Lo verifiqué, pygmentize -L lexers | grep jsonpero esto regresa, que json está a bordo. ¿Cuál es el problema aquí?

Respuesta1

¡También me preguntaba acerca de esta advertencia!

Lo investigué y resultó que el lexer JSON estaba disponible, pero mi código en realidad no era JSON válido y, por lo tanto, Sphinx desactivó el lexer para este fragmento de código.

Si cambia su bloque de código a JSON válido, ¡el resaltado debería funcionar nuevamente!

Tenga en cuenta que (IIRC):

  • JSON no permite comentarios
  • las cadenas deben estar entre comillas
  • Los valores del diccionario deben estar encerrados {y}
  • no se permite una coma después del par clave-valor final

Tenga en cuenta que si no hay un Lexer disponible, el mensaje de advertencia es diferente:

WARNING: Pygments lexer name 'xyz' is not known

información relacionada