Skip to content

[Feature Request] speaker notes output in dzslides and revealjs #1693

Closed
maybegeek opened this Issue · 13 comments

4 participants

@maybegeek

Hi there,

could we please unify speaker notes handling for revealjs an dzslides:

  • in revealjs we have <div class="notes">
  • in dzslides we had <details> and should use <div role="note">

a unified solution would be for addressing both output formats:

  • <div class="notes" role="note">

Could we get another case in HTML.hs for dzslides, thus outputting the <div class="notes" role="note">, an extension or such?

best regards.

@maybegeek maybegeek changed the title from speaker notes in dzslides and revealjs to please enable unified speaker notes output in dzslides and revealjs
@maybegeek

I add to the above:

It would be a nice unification to output <div class="notes" role="note"> to the dzslides as well. Revealjs, Beamer and Dzslides can get the same speaker notes.

If fearing an unwanted regression regarding the hitherto not outputted <div class="notes" role="note"> in dzslides we would add the .notes[role=note] to the already there details-selector.
(with probably updating the dzslides/template.html).

best regards

@maybegeek maybegeek closed this
@maybegeek maybegeek reopened this
@maybegeek

Hi there,

perhaps with this small edit we could have let pandoc output div.notes when using -t dzslides:

maybegeek@a2c1249

I would love to see speaker notes in dzslide too.

@maybegeek maybegeek changed the title from please enable unified speaker notes output in dzslides and revealjs to [Feature Request] speaker notes output in dzslides and revealjs
@ivan-m

As part of this, the template for dzslides needs to be updated for speaker notes to work (I tried manually adding them).

@jgm
Owner

@ivan-m, I just pushed an update for the dzslides template.html.

@jgm
Owner

@maybegeek I made the change you suggested for dzslides.
Does everything work now? Can the issue be closed?

@ivan-m

dzslides should use <div role="note"> instead of the current <div class="notes"> (note in particular the lack of a plural).

@maybegeek

@jgm Thank you for implementing this. Sorry for the late response, end of semester ...

The implementation let people write their markdown with <div class="notes" role="note"> and later on they can decide if they want to have -t dzslides or -t revealjs.

@ivan-m we need both, the class-attribute and the role-attribute, else we would need to fork and maintain revealjs and dzslides templates and js-function, and probably would need users to adjust to one way of making notes.

@jgm I could close this, but would wait if above discussion is settled?

In addition, we have old examples (http://pandoc.org/demo/example9/producing-slide-shows-with-pandoc.html) where speaker notes is only for revealjs and we would need to update that.

furthermore, we need a javascript for showing and hiding again our notes. I have to look if my modifications fit somehow.

best regards

@ivan-m

@maybegeek when Pandoc converts the representation to DZSlides-style HTML, then it should convert it to <div role="note">.

@maybegeek

@ivan-m I now see your perspective. I thought it would be a pragmatic and small change to build upon pandocs handling for <div class="notes"> that we could easily add a role-attribute role="note", more specifically, that the user has to add this on their own. Then only the convert to dzslides would need to let this output happen, which means outputting the div-block and letting the role="note" as it is.

this would need adjustments on the user side for he should put <div class="notes" role="note"> in his markdown agnostic of -t revealjs or -t dzslides (output would be the same with the untouched role-attribute). my view.

if we want the user to only add <div class="notes"> and outputting only <div class="notes"> in revealjs and only <div role="note"> in dzslides we would need this handled differently, true. This would make markdown notes more readable, on the other hand it is already html code that has to be added from the user to markdown and would only cloud the syntax for dzslides.

I'm undecided.

best regards

@ivan-m

Actually, this only requires that line I linked to to be changed. So users only need to use <div class="notes"> in their Markdown.

As an alternative (in case anyone is looking), I use this filter to turn a definition list with a key of Notes into the appropriate note type.

@maybegeek

@jgm as @ivan-m showed above his suggestion would create less cruft for the user to input on the markdown side for producing notes.

@ivan-m I would appreciate if you could commit your way for the DZSlides -> convertor; adding the role-attribute without the class-attribute (but perhaps taking other attributes along the way, if someone wants to put data-id-attributes to his class-attribute of notes (<div class="notes" data-foo="bar">) we would want that to survive for hackability, don't we?) ... because of your much better haskell knowledge!

@jgm sorry for the trouble

@jgm
Owner
@maybegeek

Dear @jgm

for -t dzslides we need <div role="note">my notes</div> as output

(other html attributes given in the markdown file, like <div class="notes" data-foo="bar"> should remain in the output to the writers as well and produce for the dzslides example <div role="note" data-foo="bar">my notes</div> for hackability).

thanks again!

@jgm jgm added a commit that closed this issue
@jgm DZSlides: Add `role="note"` for speaker notes.
Closes #1693.
450bef9
@jgm jgm closed this in 450bef9
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.