@@ -2914,18 +2914,39 @@ function updateViewInner() {
29142914 var lastMeta = md . meta ;
29152915 md . meta = { } ;
29162916 var rendered = md . render ( value ) ;
2917- // only render again when meta changed
2918- if ( JSON . stringify ( md . meta ) != JSON . stringify ( lastMeta ) ) {
2919- parseMeta ( md , ui . area . codemirror , ui . area . markdown , $ ( '#toc' ) , $ ( '#toc-affix' ) ) ;
2920- rendered = md . render ( value ) ;
2921- }
2922- // prevent XSS
2923- rendered = preventXSS ( rendered ) ;
2924- var result = postProcess ( rendered ) . children ( ) . toArray ( ) ;
2925- partialUpdate ( result , lastResult , ui . area . markdown . children ( ) . toArray ( ) ) ;
2926- if ( result && lastResult && result . length != lastResult . length )
2927- updateDataAttrs ( result , ui . area . markdown . children ( ) . toArray ( ) ) ;
2928- lastResult = $ ( result ) . clone ( ) ;
2917+ if ( md . meta . type && md . meta . type === 'slide' ) {
2918+ var slideOptions = {
2919+ separator : '^(\r\n?|\n)---(\r\n?|\n)$' ,
2920+ verticalSeparator : '^(\r\n?|\n)----(\r\n?|\n)$'
2921+ } ;
2922+ var slides = RevealMarkdown . slidify ( editor . getValue ( ) , slideOptions ) ;
2923+ ui . area . markdown . html ( slides ) ;
2924+ RevealMarkdown . initialize ( ) ;
2925+ // prevent XSS
2926+ ui . area . markdown . html ( preventXSS ( ui . area . markdown . html ( ) ) ) ;
2927+ ui . area . markdown . addClass ( 'slides' ) ;
2928+ syncscroll = false ;
2929+ checkSyncToggle ( ) ;
2930+ } else {
2931+ if ( lastMeta . type && lastMeta . type === 'slide' ) {
2932+ refreshView ( ) ;
2933+ ui . area . markdown . removeClass ( 'slides' ) ;
2934+ syncscroll = true ;
2935+ checkSyncToggle ( ) ;
2936+ }
2937+ // only render again when meta changed
2938+ if ( JSON . stringify ( md . meta ) != JSON . stringify ( lastMeta ) ) {
2939+ parseMeta ( md , ui . area . codemirror , ui . area . markdown , $ ( '#toc' ) , $ ( '#toc-affix' ) ) ;
2940+ rendered = md . render ( value ) ;
2941+ }
2942+ // prevent XSS
2943+ rendered = preventXSS ( rendered ) ;
2944+ var result = postProcess ( rendered ) . children ( ) . toArray ( ) ;
2945+ partialUpdate ( result , lastResult , ui . area . markdown . children ( ) . toArray ( ) ) ;
2946+ if ( result && lastResult && result . length != lastResult . length )
2947+ updateDataAttrs ( result , ui . area . markdown . children ( ) . toArray ( ) ) ;
2948+ lastResult = $ ( result ) . clone ( ) ;
2949+ }
29292950 finishView ( ui . area . markdown ) ;
29302951 autoLinkify ( ui . area . markdown ) ;
29312952 deduplicatedHeaderId ( ui . area . markdown ) ;
0 commit comments