Skip to main content

autoanysrc

Extension for gathering reST documentation from any files. This is a documenter from ext.autodoc.

In current state this extension will only insert reST docs from files to target documentation project without auto generation definitions and signatures.

But it simple and clean to make documentation for API and store documentation strings in the source code.

Install

pip install sphinxcontrib-autoanysrc

Usage

Add autoanysrc to extensions list:

extensions = ['sphinxcontrib.autoanysrc', ]

Example of usage:

.. autoanysrc:: blabla
    :src: app/**/*.js
    :analyzer: js

Where:

  • src option is the pattern to list source files where docs are stored

  • analyzer option to determine witch analyzer must be used for processing this files

Directive will iterate over app/**/*.js files and process it line by line.

Custom analyzer

autoanysrc allow define custom analyzers.

Define custom analyzer (conf.py):

# make conf.py importtable
sys.path.insert(0, os.path.abspath('.'))

from sphinxcontrib.autoanysrc import analyzers

class CustomAnalyzer(analyzers.BaseAnalyzer):

    def process(self, content):
        """
        Must process content line by line

        :param content: processing file content
        :returns: generator of pairs docs line and line number
        """
        for lineno, srcline in enumerate(content.split('\n')):
            yield 'some parsed doc line from content', lineno


# put analyzer to the autonaysrc setting
autoanysrc_analyzers = {
    'my-custom': 'conf.CustomAnalyzer',
}

And use it:

.. autoanysrc:: blabla
    :src: ../src/*.js
    :analyzer: my-custom

Default analyzers

JSAnalyzer

Search comments blocks starts by /*””” and ends by */ (inspired by Nuulogic/sphinx-jsapidoc).

.. autoanysrc:: directives
    :src: app/services.js
    :analyzer: js

Where services.js:

/*"""
Services
````````

The function :func:`someService` does a some function.
*/

function someService(href, callback, errback) {
/*"""
.. function:: someService(href, callback[, errback])

    :param string href: An URI to the location of the resource.
    :param callback: Gets called with the object.
    :throws SomeError: For whatever reason in that case.
    :returns: Something.
*/
    return 'some result';
};

TODO

  • encoding option

  • allow internal indent in comment block

  • generate signatures like ext.autodoc…

Metadata

Release files for sphinxcontrib-autoanysrc 0.0.3-20141120

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sphinxcontrib-autoanysrc 0.0.3-20141120
File Size Uploaded Provenance
sphinxcontrib-autoanysrc-0.0.3-20141120.tar.gz 10.8 kB Without provenance Details

Release files / sphinxcontrib-autoanysrc-0.0.3-20141120.tar.gz

Download URL sphinxcontrib-autoanysrc-0.0.3-20141120.tar.gz
Size 10.8 kB
Tags Source
SHA-256 checksum
How to use checksums
04086ba828f7054bf2c1782b231a106750ee6f43a59a68faffbb5bbb12e5f991
BLAKE2b-256 checksum
How to use checksums
96a7c7144c2dcb7faef4d913ce30931fcb49849a4b156824575bd4e2c71d0736
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for sphinxcontrib-autoanysrc 0.0.3-20141120

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page