From 80aadaf74e901b184d86b536c0c01e0fe98623d0 Mon Sep 17 00:00:00 2001
From: Gabriel Pillet
Date: Thu, 31 Oct 2013 14:02:34 +0100
Subject: Removing global flag for replacing whitespaces
---
plugin/markdown/markdown.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'plugin')
diff --git a/plugin/markdown/markdown.js b/plugin/markdown/markdown.js
index d6c6c45..23a3ed4 100755
--- a/plugin/markdown/markdown.js
+++ b/plugin/markdown/markdown.js
@@ -49,7 +49,7 @@
text = text.replace( new RegExp('\\n?\\t{' + leadingTabs + '}','g'), '\n' );
}
else if( leadingWs > 1 ) {
- text = text.replace( new RegExp('\\n? {' + leadingWs + '}','g'), '\n' );
+ text = text.replace( new RegExp('\\n? {' + leadingWs + '}'), '\n' );
}
return text;
--
cgit v1.2.3
From a22d00ab25b13b82d19890428f124b4ed3759f92 Mon Sep 17 00:00:00 2001
From: Hakim El Hattab
Date: Mon, 17 Feb 2014 20:07:41 +0100
Subject: server side notes plugin now supports input via data-notes attribute
---
plugin/notes-server/client.js | 45 +++++++++++++++++++++++++++----------------
plugin/notes/notes.js | 21 ++++++++++++++------
2 files changed, 43 insertions(+), 23 deletions(-)
(limited to 'plugin')
diff --git a/plugin/notes-server/client.js b/plugin/notes-server/client.js
index 156cb9a..ee60ff7 100644
--- a/plugin/notes-server/client.js
+++ b/plugin/notes-server/client.js
@@ -1,12 +1,13 @@
(function() {
// don't emit events from inside the previews themselves
- if ( window.location.search.match( /receiver/gi ) ) { return; }
+ if( window.location.search.match( /receiver/gi ) ) { return; }
- var socket = io.connect(window.location.origin);
- var socketId = Math.random().toString().slice(2);
-
- console.log('View slide notes at ' + window.location.origin + '/notes/' + socketId);
- window.open(window.location.origin + '/notes/' + socketId, 'notes-' + socketId);
+ var socket = io.connect( window.location.origin );
+ var socketId = Math.random().toString().slice( 2 );
+
+ console.log( 'View slide notes at ' + window.location.origin + '/notes/' + socketId );
+
+ window.open( window.location.origin + '/notes/' + socketId, 'notes-' + socketId );
// Fires when a fragment is shown
Reveal.addEventListener( 'fragmentshown', function( event ) {
@@ -23,16 +24,17 @@
fragment : 'previous',
socketId : socketId
};
- socket.emit('fragmentchanged', fragmentData);
+ socket.emit( 'fragmentchanged', fragmentData );
} );
// Fires when slide is changed
Reveal.addEventListener( 'slidechanged', function( event ) {
- var nextindexh;
- var nextindexv;
- var slideElement = event.currentSlide;
+ var nextindexh,
+ nextindexv,
+ slideElement = event.currentSlide,
+ notesElement = slideElement.querySelector( 'aside.notes' );
- if (slideElement.nextElementSibling && slideElement.parentNode.nodeName == 'SECTION') {
+ if( slideElement.nextElementSibling && slideElement.parentNode.nodeName == 'SECTION' ) {
nextindexh = event.indexh;
nextindexv = event.indexv + 1;
} else {
@@ -40,18 +42,27 @@
nextindexv = 0;
}
- var notes = slideElement.querySelector('aside.notes');
- var slideData = {
- notes : notes ? notes.innerHTML : '',
+ var messageData = {
+ notes : '',
indexh : event.indexh,
indexv : event.indexv,
nextindexh : nextindexh,
nextindexv : nextindexv,
socketId : socketId,
- markdown : notes ? typeof notes.getAttribute('data-markdown') === 'string' : false
-
+ markdown : false
};
- socket.emit('slidechanged', slideData);
+ // Look for notes defined in a slide attribute
+ if( slideElement.hasAttribute( 'data-notes' ) ) {
+ messageData.notes = slideElement.getAttribute( 'data-notes' );
+ }
+
+ // Look for notes defined in an aside element
+ if( notesElement ) {
+ messageData.notes = notesElement.innerHTML;
+ messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string';
+ }
+
+ socket.emit( 'slidechanged', messageData );
} );
}());
diff --git a/plugin/notes/notes.js b/plugin/notes/notes.js
index 9a82c3c..3f68b5d 100644
--- a/plugin/notes/notes.js
+++ b/plugin/notes/notes.js
@@ -24,9 +24,7 @@ var RevealNotes = (function() {
function post() {
var slideElement = Reveal.getCurrentSlide(),
slideIndices = Reveal.getIndices(),
- messageData;
-
- var notes = slideElement.querySelector( 'aside.notes' ),
+ notesElement = slideElement.querySelector( 'aside.notes' ),
nextindexh,
nextindexv;
@@ -38,16 +36,27 @@ var RevealNotes = (function() {
nextindexv = 0;
}
- messageData = {
- notes : notes ? notes.innerHTML : '',
+ var messageData = {
+ notes : '',
indexh : slideIndices.h,
indexv : slideIndices.v,
indexf : slideIndices.f,
nextindexh : nextindexh,
nextindexv : nextindexv,
- markdown : notes ? typeof notes.getAttribute( 'data-markdown' ) === 'string' : false
+ markdown : false
};
+ // Look for notes defined in a slide attribute
+ if( slideElement.hasAttribute( 'data-notes' ) ) {
+ messageData.notes = slideElement.getAttribute( 'data-notes' );
+ }
+
+ // Look for notes defined in an aside element
+ if( notesElement ) {
+ messageData.notes = notesElement.innerHTML;
+ messageData.markdown = typeof notesElement.getAttribute( 'data-markdown' ) === 'string';
+ }
+
notesPopup.postMessage( JSON.stringify( messageData ), '*' );
}
--
cgit v1.2.3
From 015468c3a2d1d4092f33920ac555a0e288e6213f Mon Sep 17 00:00:00 2001
From: Hakim El Hattab
Date: Mon, 17 Feb 2014 21:15:02 +0100
Subject: renamed markdown attributes for clarity and consistency:
data-vertical -> data-separator-vertical, data-notes -> data-separator-notes
---
README.md | 6 +++---
plugin/markdown/example.html | 4 ++--
plugin/markdown/markdown.js | 10 +++++-----
test/test-markdown-element-attributes.html | 8 ++++----
test/test-markdown-slide-attributes.html | 10 +++++-----
test/test-markdown.html | 4 ++--
6 files changed, 21 insertions(+), 21 deletions(-)
(limited to 'plugin')
diff --git a/README.md b/README.md
index 8a37a0d..cbdb088 100644
--- a/README.md
+++ b/README.md
@@ -59,8 +59,8 @@ When used locally, this feature requires that reveal.js [runs from a local web s
```html