1234567891011121314151617181920212223242526 |
- // Contributed by Travis Whitton
- // http://travis-whitton.blogspot.com/2009/06/syntaxhighlighter-for-clojure.html
- SyntaxHighlighter.brushes.Clojure = function()
- {
- var funcs = ':arglists :doc :file :line :macro :name :ns :private :tag :test new alias alter ' +
- 'and apply assert class cond conj count def defmacro defn defstruct deref do ' +
- 'doall dorun doseq dosync eval filter finally find first fn gen-class gensym if ' +
- 'import inc keys let list loop map ns or print println quote rand recur reduce ' +
- 'ref repeat require rest send seq set sort str struct sync take test throw ' +
- 'trampoline try type use var vec when while';
- this.regexList = [
- { regex: new RegExp(';[^\]]+$', 'gm'), css: 'comments' },
- { regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString, css: 'string' },
- { regex: /\[|\]/g, css: 'keyword' },
- { regex: /'[a-z][A-Za-z0-9_]*/g, css: 'color1' }, // symbols
- { regex: /:[a-z][A-Za-z0-9_\-]*/g, css: 'color2' }, // keywords
- { regex: new RegExp(this.getKeywords(funcs), 'gmi'), css: 'functions' }
- ];
- this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
- }
- SyntaxHighlighter.brushes.Clojure.prototype = new SyntaxHighlighter.Highlighter();
- SyntaxHighlighter.brushes.Clojure.aliases = ['clojure', 'Clojure', 'clj'];
|