I'm new to python-sphinx, and can't find anything addressing the following:
Suppose I have a function foo(a,b) and bar(a,c), such that the parameter a has the same description for both functions.
Is it possible to document a just once (in foo,say) and then copy that description in bar to avoid having to update both pieces of text if something in a's description changes?
For example, 
say I document foo:
def foo(a,b,c):
    """
    a function description.
    :param a: a string, your name
    :param b: something else
    """
What would be great is something in bar's documentation like:
def bar(a,c)
    """
    another function description.
    :inheritParams foo a: # somehow inherits a's description from foo
    :param c: description for parameter c.
    """
even better, if it were foo(a,b,d) and bar(a,c,d) and I could do (in bar's documentation):
:inheritParams foo:  # grabs a and d documentation from function foo
:param c: description for parameter c
to have any descriptions of parameters in common with foo and bar taken from foo. That is, it would copy the definition for a and d from foo, and I'd have to document any leftovers (c).
I don't know of anything like your :inheritParams: ideas (though I like them!), but you could probably accomplish the main goal (only documenting the parameter once) using RestructuredText substitutions
Essentially, you'd set up a substitution definition someplace like so:
.. |param_a_docs| <documentation here>
and then reference it from the docstring like this:
def foo(a,b,c):
    """
    a function description.
    :param a: |param_a_docs|
    :param b: something else
    """
This might be a little tricky to get set up right, as you need to make sure that the substitution definition can be found, and throwing docstrings into the mix might make that non-trivial.
One thing to try would be to set up the substitution definitions in a rst-epilog.
You might try sphinx-paramlinks.  It doesn't copy the parameter documentation from foo into bar, as you asked for, but it does create a hyperlink to the parameter documentation in foo.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With