CodeHighlighter.addStyle("css", { comment : { exp : /\/\*[^*]*\*+([^\/][^*]*\*+)*\// }, keywords : { exp : /@\w[\w\s]*/ }, selectors : { exp : "([\\w-:\\[.#][^{};>]*)(?={)" }, properties : { exp : "([\\w-]+)(?=\\s*:)" }, units : { exp : /([0-9])(em|en|px|%|pt)\b/, replacement : "$1$2" }, urls : { exp : /url\([^\)]*\)/ } }); CodeHighlighter.addStyle("ruby",{ comment : { exp : /#[^\n]+/ }, brackets : { exp : /\(|\)/ }, string : { exp : /'[^']*'|"[^"]*"/ }, keywords : { exp : /\b(do|end|self|class|def|if|module|yield|then|else|for|until|unless|while|elsif|case|when|break|retry|redo|rescue|require|raise)\b/ }, /* Added by Shelly Fisher (shelly@agileevolved.com) */ symbol : { exp : /([^:])(:[A-Za-z0-9_!?]+)/ }, ivar : { exp : /\@[A-Za-z0-9_!?]+/ } }); CodeHighlighter.addStyle("html", { comment : { exp: /<!\s*(--([^-]|[\r\n]|-[^-])*--\s*)>/ }, tag : { exp: /(<\/?)([a-zA-Z1-9]+\s?)/, replacement: "$1$2" }, string : { exp : /'[^']*'|"[^"]*"/ }, attribute : { exp: /\b([a-zA-Z-:]+)(=)/, replacement: "$1$2" }, doctype : { exp: /<!DOCTYPE([^&]|&[^g]|&g[^t])*>/ } }); CodeHighlighter.addStyle("javascript",{ comment : { exp : /(\/\/[^\n]*(\n|$))|(\/\*[^*]*\*+([^\/][^*]*\*+)*\/)/ }, brackets : { exp : /\(|\)/ }, string : { exp : /'[^']*'|"[^"]*"/ }, keywords : { exp : /\b(arguments|break|case|continue|default|delete|do|else|false|for|function|if|in|instanceof|new|null|return|switch|this|true|typeof|var|void|while|with)\b/ }, global : { exp : /\b(toString|valueOf|window|element|prototype|constructor|document|escape|unescape|parseInt|parseFloat|setTimeout|clearTimeout|setInterval|clearInterval|NaN|isNaN|Infinity)\b/ } }); CodeHighlighter.addStyle("yaml", { keyword : { exp : /\/\*[^*]*\*+([^\/][^*]*\*+)*\// }, value : { exp : /@\w[\w\s]*/ }, });