diff --git a/plugins/line-numbers/prism-line-numbers.js b/plugins/line-numbers/prism-line-numbers.js index 09dc2c773a..dea8e3a801 100644 --- a/plugins/line-numbers/prism-line-numbers.js +++ b/plugins/line-numbers/prism-line-numbers.js @@ -83,7 +83,7 @@ if (clsReg.test(env.element.className)) { // Remove the class "line-numbers" from the - env.element.className = env.element.className.replace(clsReg, ''); + env.element.className = env.element.className.replace(clsReg, ' '); } if (!clsReg.test(pre.className)) { // Add the class "line-numbers" to the
diff --git a/plugins/unescaped-markup/prism-unescaped-markup.js b/plugins/unescaped-markup/prism-unescaped-markup.js
index ab3059a745..ad1eb63aad 100644
--- a/plugins/unescaped-markup/prism-unescaped-markup.js
+++ b/plugins/unescaped-markup/prism-unescaped-markup.js
@@ -22,6 +22,14 @@
 
 			pre.className = code.className = env.element.className;
 
+			if (env.element.dataset) {
+				Object.keys(env.element.dataset).forEach(function (key) {
+					if (Object.prototype.hasOwnProperty.call(env.element.dataset, key)) {
+						pre.dataset[key] = env.element.dataset[key];
+					}
+				});
+			}
+
 			env.code = env.code.replace(/<\/script(>|>)/gi, "");
 			code.textContent = env.code;