diff --git a/README.md b/README.md index 6073b77a..f03ae0f2 100644 --- a/README.md +++ b/README.md @@ -187,6 +187,9 @@ Reveal.initialize({ // Display a presentation progress bar progress: true, + // Set default timing of 2 minutes per slide + defaultTiming: 120, + // Display the page number of the current slide slideNumber: false, @@ -967,12 +970,15 @@ Notes are only visible to the speaker inside of the speaker view. If you wish to When `showNotes` is enabled notes are also included when you [export to PDF](https://github.com/hakimel/reveal.js#pdf-export). By default, notes are printed in a semi-transparent box on top of the slide. If you'd rather print them on a separate page after the slide, set `showNotes: "separate-page"`. -#### Speaker notes clock and timer +#### Speaker notes clock and timers The speaker notes window will also show: - Time elapsed since the beginning of the presentation. If you hover the mouse above this section, a timer reset button will appear. - Current wall-clock time +- (Optionally) a pacing timer which indicates whether the current pace of the presentation is on track for the right timing (shown in green), and if not, whether the presenter should speed up (shown in red) or has the luxury of slowing down (blue). + +The pacing timer can be enabled by configuring by the `defaultTiming` parameter in the `Reveal` configuration block, which specifies the number of seconds per slide. 120 can be a reasonable rule of thumb. Timings can also be given per slide `
` by setting the `data-timing` attribute. Both values are in numbers of seconds. ## Server Side Speaker Notes diff --git a/plugin/notes/notes.html b/plugin/notes/notes.html index df55e79b..c339d582 100644 --- a/plugin/notes/notes.html +++ b/plugin/notes/notes.html @@ -82,6 +82,7 @@ } .speaker-controls-time .label, + .speaker-controls-pace .label, .speaker-controls-notes .label { text-transform: uppercase; font-weight: normal; @@ -90,7 +91,7 @@ margin: 0; } - .speaker-controls-time { + .speaker-controls-time, .speaker-controls-pace { border-bottom: 1px solid rgba( 200, 200, 200, 0.5 ); margin-bottom: 10px; padding: 10px 16px; @@ -111,6 +112,13 @@ .speaker-controls-time .timer, .speaker-controls-time .clock { width: 50%; + } + + .speaker-controls-time .timer, + .speaker-controls-time .clock, + .speaker-controls-time .pacing .hours-value, + .speaker-controls-time .pacing .minutes-value, + .speaker-controls-time .pacing .seconds-value { font-size: 1.9em; } @@ -127,6 +135,18 @@ opacity: 0.3; } + .speaker-controls-time .pacing.ahead { + color: blue; + } + + .speaker-controls-time .pacing.on-track { + color: green; + } + + .speaker-controls-time .pacing.behind { + color: red; + } + .speaker-controls-notes { padding: 10px 16px; } @@ -276,6 +296,12 @@ 00:00:00
+ + +