vendor/assets/javascripts/prism.js in highlighting-0.1.3 vs vendor/assets/javascripts/prism.js in highlighting-0.1.4
- old
+ new
@@ -180,11 +180,11 @@
while (parent && !lang.test(parent.className)) {
parent = parent.parentNode;
}
if (parent) {
- language = (parent.className.match(lang) || [,''])[1];
+ language = (parent.className.match(lang) || [,''])[1].toLowerCase();
grammar = _.languages[language];
}
// Set language on the element, if not present
element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
@@ -481,11 +481,16 @@
if (script) {
_.filename = script.src;
if (document.addEventListener && !script.hasAttribute('data-manual')) {
- document.addEventListener('DOMContentLoaded', _.highlightAll);
+ if(document.readyState !== "loading") {
+ requestAnimationFrame(_.highlightAll, 0);
+ }
+ else {
+ document.addEventListener('DOMContentLoaded', _.highlightAll);
+ }
}
}
return _self.Prism;
@@ -584,11 +589,11 @@
lookbehind: true,
inside: Prism.languages.css,
alias: 'language-css'
}
});
-
+
Prism.languages.insertBefore('inside', 'attr-value', {
'style-attr': {
pattern: /\s*style=("|').*?\1/i,
inside: {
'attr-name': {
@@ -658,10 +663,10 @@
lookbehind: true,
greedy: true
}
});
-Prism.languages.insertBefore('javascript', 'class-name', {
+Prism.languages.insertBefore('javascript', 'string', {
'template-string': {
pattern: /`(?:\\\\|\\?[^\\])*?`/,
greedy: true,
inside: {
'interpolation': {