Skip to content

Hide Content Only Works For Non-Proof Directives, here #86

Open

Description

@schwabts

Describe the bug

context
When I add the class dropdown to any directive except

````{prf:proof}
:class: dropdown
````

the directives become collapsible in the HTML output opened in a browser.

expectation
I expected the feature to work for actual proofs, too.

bug

  • But instead I only succeed creating collapsible remarks, corollaries, notes, lemmas, theorems, ....
  • Additional tests suggest the feature may not work in these two situations, either:
    1. anywhere in the markdown file after a prf:proof directive had been used
    2. directives that have a caption as in ````{prf:lemma} caption to be shown as Lemma 1 (caption)
  • I did not find any error message possibly related to this.

problem
This is a problem for people creating lectures or slides for talks because hiding proofs is often of greater interest than hiding theorems when we want to convey the concepts.

Reproduce the bug

  1. Create a Jupyter Book making use of sphinx-proof
  2. Add the directives
````{prf:theorem}
:class: dropdown

All natural numbers are small.
````

and

````{prf:proof}
:class: dropdown

* $1$ Is small.
* If $n$ is small then $S(n)$, the successor of $n$ is small.
* By induction, all natural numbers are small.
````
  1. jb build book/

List your environment

Jupyter Book : 0.13.0
External ToC : 0.2.4
MyST-Parser : 0.15.2
MyST-NB : 0.13.2
Sphinx Book Theme : 0.3.3
Jupyter-Cache : 0.4.3
NbClient : 0.5.3

Activity

  1. lellmann commented on Aug 24, 2022

    @lellmann

    Same issue here. I think it might be because "proof" doesn't have a title line that can be made clickable? Maybe it would be useful to add an option to provide a title to the "Proof" block.

  2. MPenaR commented on Nov 10, 2024

    @MPenaR

    Same problem here, anyone found a way around?

  3. schwabts commented on Nov 10, 2024

    @schwabts
    Author

    Now, I'm focused on completely different topics and cannot test that now. However another dropdown issue was solved by putting the contents inside a {div}-directive. Would anynone test and tell if that helps here, too?

  4. tdsimao commented on Sep 26, 2025

    @tdsimao

    I am having the same problems. I tried the div directive without success. Curious to hear if someone found a workaround.

  5. Ljon4ik4 commented on Dec 18, 2025

    @Ljon4ik4
    Contributor

    I have created a version of sphinx-proof for my own project and changed a few things. One of the things is that now one can turn proof into something collapsible with an easy setting. Here is the fork.

    (Maybe it will be useful to someone stumbling over the same hurdle).

    The changes are rather big and I don't understand the codebase too well, so I am not making a PR at this point....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions