diff --git a/ox-reveal.el b/ox-reveal.el
index 45c7cab..397f9e8 100644
--- a/ox-reveal.el
+++ b/ox-reveal.el
@@ -284,10 +284,28 @@ embedded into Reveal.initialize()."
(defcustom org-reveal-external-plugins nil
"Additional third-party Plugins to load with reveal.
+
+* When \"REVEAL_REVEAL_JS_VERSION\" is lower than 4
+
Each entry should contain a name and an expression of the form
\"{src: '%srelative/path/from/reveal/root', async:true/false,condition: jscallbackfunction(){}}\"
Note that some plugins have dependencies such as jquery; these must be included here as well,
-BEFORE the plugins that depend on them."
+BEFORE the plugins that depend on them.
+
+* When \"REVEAL_REVEAL_JS_VERSION\" is 4 or higher
+
+The value should be an association list where the key of an entry
+is the name of the RevealJS plugin (e.g. RevealHighlight), and
+the value is either a string or a list of strings. Each string is
+going to be translated to an \n"
- (format p root-path)))
+ (lambda (p)
+ ;; when it is a list, create a script tag for every entry
+ (cond
+ ((listp p)
+ (mapconcat (lambda (pi)
+ (format ""
+ (format pi root-path)))
+ p
+ "\n"))
+ ;; when it is a single string, create a single script tag
+ (t (format "\n"
+ (format p root-path))))))
plugin-js
""))
- ;; Reveal initialization for plugins
+ ;; Second value of the tuple, a list of Reveal plugin
+ ;; initialization statements
(format "plugins: [%s]"
(mapconcat 'symbol-name plugins ", ")))
;; No available plugin info found. Perhaps wrong plugin