SyntaxHighlighter.brushes.Scheme = function()
{

        var keywords = ':arglists :doc :file :line :macro :name :ns :private :tag :test new alias alter ' +
                    'and apply assert begin class cond conj count def defmacro defn defstruct deref do '     +
                    'doall dorun doseq dosync else 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 define define-class define-method with-state with-primitive' +
                    'let* let-values not' +
                    'length';

        this.regexList = [
                { regex: new RegExp('\;.*$', 'gm'),                   css: 'comment' },
      { regex: SyntaxHighlighter.regexLib.multiLineDoubleQuotedString, css: 'string' },
                { regex: /\[|\]/g,                                       css: 'keyword' },
      { regex: /'[a-z][\-A-Za-z0-9_]*/g,                                 css: 'string' }, // symbols
      { regex: /:[a-z][\-A-Za-z0-9_]*/g,                                 css: 'keyword' }, // keywords
      { regex: new RegExp(this.getKeywords(keywords), 'gm'),           css: 'functions' },
            ];
 
   this.forHtmlScript(SyntaxHighlighter.regexLib.aspScriptTags);
}

SyntaxHighlighter.brushes.Scheme.prototype     = new SyntaxHighlighter.Highlighter(); 
SyntaxHighlighter.brushes.Scheme.aliases       = ['scheme', 'Scheme', 'scm'];


