Giter Club home page Giter Club logo

Comments (2)

jakobandersen avatar jakobandersen commented on June 15, 2024 1

Being a directive shouldn't currentmodule also have an empty line and one level of nesting? Like this:

The currentmodule has no content, but simply sets the module. However, if you use module with content, then it's equivalent to the original example, and produces the wrong TOC as well.

To get the nested class I'd rely only on reST scoping rules so it seems the most robust and language agnostic solution would be to put f() and MyNestedClass on the same level:

Generally I agree that showing them nested is a good default. However, in the original use-case there are multiple nested classes and all involved classes are relatively large, making it desirable to separate them.

from sphinx.

electric-coder avatar electric-coder commented on June 15, 2024

Being a directive shouldn't currentmodule also have an empty line and one level of nesting? Like this:

.. py:currentmodule:: myMod

    .. py:class:: MyClass

        .. py:method:: f()

    .. py:class:: MyClass.MyNestedClass

To get the nested class I'd rely only on reST scoping rules so it seems the most robust and language agnostic solution would be to put f() and MyNestedClass on the same level:

.. py:currentmodule:: myMod

    .. py:class:: MyClass

        .. py:method:: f()

        .. py:class:: MyNestedClass

However I think you're right that:

seems to use the scoping of the language to nest the toc entries, instead of how they were declared in the document.

If you want to document the nested class flattened on the same level as the containing class then the TOC should have given the desired result:

- MyClass
  - MyClass.f()
- MyClass.MyNestedClass 

from sphinx.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.