This PR addresses #11. The approach is to make overlays for all source blocks in epresent-fontify. The invisibility-tag for these overlays is epresent-hide-src-block. Visibility of the source blocks is then toggled by adding or removing the visibility tag to/from buffer-invisibility-spec. The toggle function is bound to s. Initial visibility can be defined using the variable epresent-src-blocks-visible. If initial visibility is nil, everything works great. If it's non-nil, everything works, too, except that the code blocks are displayed in the intial outline view where only slide titles should be visible.
At this point I have to admit that I don't fully understand overlays because I expected the source blocks to be hidden in the overview. The problem seems to be that source blocks have several overlapping overlays. I assumed that the outer-most overlay controls visibility but that doesn't seem to be the case. @eschulte, do you have suggestions how this can be fixed?
This PR addresses #11. The approach is to make overlays for all source blocks in
epresent-fontify
. The invisibility-tag for these overlays isepresent-hide-src-block
. Visibility of the source blocks is then toggled by adding or removing the visibility tag to/frombuffer-invisibility-spec
. The toggle function is bound tos
. Initial visibility can be defined using the variableepresent-src-blocks-visible
. If initial visibility is nil, everything works great. If it's non-nil, everything works, too, except that the code blocks are displayed in the intial outline view where only slide titles should be visible.At this point I have to admit that I don't fully understand overlays because I expected the source blocks to be hidden in the overview. The problem seems to be that source blocks have several overlapping overlays. I assumed that the outer-most overlay controls visibility but that doesn't seem to be the case. @eschulte, do you have suggestions how this can be fixed?