(function() { function extend( a, b ) { for(var i in b) { a[i] = b[i]; } } var baseOptions = { transition: '<%= config.transition %>', hash: true, dependencies: [ { src: 'plugin/markdown/marked.js' }, { src: 'plugin/markdown/markdown.js' }, { src: 'plugin/highlight/highlight.js' }, { src: 'plugin/notes/notes.js', async: true } ] }; <% plugin_files.each do |plugin| %> baseOptions.dependencies.push({ src: '<%= plugin %>', async: true }); <% end %> var configOptions = <%= config.revealjs_config.to_json %> var initializeOptions = {}; extend(initializeOptions, baseOptions); extend(initializeOptions, configOptions); Reveal.initialize(initializeOptions); })();