Articles of python esfinge

Esfinge, las mejores prácticas.

Acabo de comenzar a usar la herramienta Sphinx para generar una documentación para mi código. Pero estoy un poco confundido porque no es tan fácil como esperaba. Creo el documento Sphinx usando: sphinx-quickstart y luego creo mis archivos * .rst en la carpeta “fuente”. Parece que necesito crear un archivo * .rst para cada módulo […]

Haz que la esfinge reemplace el texto de la cadena de documentos

Estoy documentando código en Sphinx que se parece a esto: class ParentClass(object): def __init__(self): pass def generic_fun(self): “””Call this function using /run/ParentClass/generic_fun()””” do_stuff() class ChildClass(ParentClass): def specific_fun(self): “””Call this function using /run/ChildClass/specific_fun()””” do_other_stuff() ChildClass los :inherited-members a la documentación de ChildClass , así que tengo declaraciones como “Llame a esta función usando / run / […]

Usando Sphinx con una extensión C construida por distutils

He escrito un módulo de Python que incluye un submódulo escrito en C: el módulo en sí se llama foo y la parte C es foo._bar . La estructura se ve como: src/ foo/__init__.py <- contains the public stuff foo/_bar/bar.c <- the C extension doc/ <- Sphinx configuration conf.py … foo/__init__.py importa _bar para boostlo, […]

Python Sphinx Autosummary: listado automatizado de funciones miembro

¿Cómo puedo decirle a la extensión de resumen automático que no solo incluya una sola clase sino también a todos los miembros de la clase? Si uso: .. autosummary:: MyClass En el archivo html resultante, solo habrá un breve resumen como: MyClass (var1, var2, ….) My Custom class para hacer cosas elegantes … Lo que […]

Incluir métodos especiales específicos en la esfinge.

Tengo un montón de clases que utilizan “métodos especiales”: class Foo(object): “Foo docstring” attr1 = “Attribute!” #: first attribute attr2 = “Another Attribute!” #: second attribute def __init__(self): self.x = 12 def say_hello(self): “”” say_hello(self) -> None Issue a friendly greeting. “”” print “Hello! x is {0}”.format(self.x) def __contains__(self,other): “””Implement “other in self“””” return other […]

Incluyendo docstring en la documentación de Sphinx

Me gustaría incluir solo la cadena de documentación de una función específica en mi documentación de Sphinx. Sin embargo, parece que no hay opciones para mostrar estos detalles sin las definiciones de funciones y clases asociadas utilizando http://sphinx.pocoo.org/ext/autodoc.html He intentado crear una clase como se describe en show * only * docstring en la documentación […]

Estructuración de la documentación de Sphinx.

Comencé a documentar un proyecto de Python usando Sphinx. Es la primera vez que lo uso. Estoy acostumbrado a las herramientas que funcionan con una syntax similar a JavaDoc, y tengo algunas dudas. Como quiero que la documentación aparezca cerca del código, hago uso de las .. automodule:: , .. autoclass:: y .. automethod:: . […]

¿Desea reStructuredText de sphinx autodoc?

CPython no usa autodoc para su documentación, usamos prosa escrita a mano. Para PEP 3144 (el módulo de dirección IP), me gustaría usar sphinx-apidoc para generar la documentación de referencia inicial. Eso significa que quiero ejecutar una operación de dos pases: Utilice sphinx-apidoc para emitir un proyecto Sphinx para el módulo que depende de autodoc […]

Enlace al método de clase en la cadena de documentación de Python

Quiero agregar un enlace a un método en mi clase desde dentro de la cadena de documentación de otro método de la misma clase. Quiero que el enlace funcione en la esfinge y preferentemente también en Spyder y otros IDE de Python. Probé varias opciones y encontré solo una que funciona, pero es incómoda. Supongamos […]

¿Cómo agregar un archivo css personalizado a Sphinx?

¿Cómo puedo agregar un archivo css personalizado? La siguiente configuración no funciona para mí: # conf.py html_static_path = [‘_static’] html_theme = ‘default’ html_theme_options = { ‘cssfiles’: [‘_static/style.css’] } Resultado: C:\temp\test-docs\docs>make html Running Sphinx v1.2.2 loading pickled environment… not yet created building [html]: targets for 2 source files that are out of date updating environment: 2 […]