Made the language matching a bit more lax. Now it can be on the <pre> element even when it has <code> children. Also, it can be lang-xxxx instead of language-xxxx.
diff --git a/components/prism-core.js b/components/prism-core.js
index 4ab4231..1045b25 100644
--- a/components/prism-core.js
+++ b/components/prism-core.js
@@ -6,6 +6,9 @@
(function(){
+// Private helper vars
+var langRegex = /lang(?:uage)?-(\w+)/i
+
var _ = self.Prism = {
tokens: {
url: /[a-z]{3,4}s?:\/\/\S+/g
@@ -30,7 +33,10 @@ var _ = self.Prism = {
return;
}
- var language = (element.className.match(/language-(\w+)/i) || [])[1],
+ var language = (
+ element.className.match(langRegex)
+ || element.parentNode.className.match(langRegex)
+ || [])[1],
tokens = _.languages[language];
if (!tokens) {