webdash-readme-preview
Version:
Preview your README.md straight from the dashboard
1 lines • 863 B
JavaScript
!function(e){var a=/<%=?[\s\S]+?%>/g;e.languages.erb=e.languages.extend("markup",{erb:{pattern:a,inside:{delimiter:{pattern:/^<%=?|%>$/,alias:"punctuation"},rest:e.languages.ruby}}}),e.hooks.add("before-highlight",function(e){"erb"===e.language&&(e.tokenStack=[],e.backupCode=e.code,e.code=e.code.replace(a,function(a){for(var t=e.tokenStack.length;-1!==e.backupCode.indexOf("___ERB"+t+"___");)++t;return e.tokenStack[t]=a,"___ERB"+t+"___"}))}),e.hooks.add("before-insert",function(e){"erb"===e.language&&(e.code=e.backupCode,delete e.backupCode)}),e.hooks.add("after-highlight",function(a){if("erb"===a.language){for(var t=0,n=Object.keys(a.tokenStack);t<n.length;++t){var o=n[t],r=a.tokenStack[o];a.highlightedCode=a.highlightedCode.replace("___ERB"+o+"___",e.highlight(r,a.grammar,"erb").replace(/\$/g,"$$$$"))}a.element.innerHTML=a.highlightedCode}})}(Prism);