2011-12-05 17 views
6

Estoy usando sphinx con la extensión pngmath para documentar mi código que tiene muchas expresiones matemáticas. Hacer eso en un archivo *.rst está funcionando bien.¿Cómo habilitar las matemáticas en sphinx?

a \times b se convierte en:


works


Sin embargo, si trato de la misma dentro de un archivo *.py por ejemplo en una documentación del módulo, así:

""" 
a \times b 
""" 

I terminar con


does not work


Además ninguna funcionalidad amsmath parece funcionar, ya sea.
¿Qué debo hacer para tener también fórmulas matemáticas en mi documentación *.py?

Respuesta

7

Trate de poner la letra minúscula 'r' antes de que su cadena de documentación - como esto:

def multiply(a,b): 
    r""" 
    returns a \times b 
    """ 
    return a*b 

nunca he visto una cadena literal prima para una cadena de documentación antes, pero esto mantendrá su \ t sea interpretado como un personaje <TAB>.

+0

Genial. Esto resuelve el problema. ¿Hay alguna manera de decirle a la Esfinge que no se fije en '' s? – Woltan

+4

Sphinx no es su problema, es el intérprete de Python en sí. La "r" del líder es cómo le dices al intérprete que no procese las barras diagonales inversas a medida que el personaje escapa, sino que las deja como barras invertidas. También podría duplicarlos como en 'a \\ veces b', pero este es realmente el propósito para el que estaba diseñada la sintaxis r" sldk \ tlskjdf ". – PaulMcG

Cuestiones relacionadas