# JOE syntax highlight file for Clojure =Idle =Comment =Escape =StringEscape +Escape =Constant =String +Constant =Number +Constant =Boolean +Constant =Keyword =Statement +Keyword =Conditional +Statement =Bad :reset Idle * idle noeat call=.clojure() .subr clojure :idle Idle * symbol mark buffer " \t\f\n\r" idle "(" idle call=.clojure(paren) "[" idle call=.clojure(brack) "{" idle call=.clojure(squiggly) .ifdef paren ")" idle return .else ")" stray recolor=-1 .endif .ifdef brack "]" idle return .else "]" stray recolor=-1 .endif .ifdef squiggly "}" idle return .else "}" stray recolor=-1 .endif ";" comment recolor=-1 "1" one recolor=-1 "2" two recolor=-1 "8" eight recolor=-1 "0345679" number recolor=-1 "-" negative recolor=-1 mark buffer "\"" string recolor=-1 "#" pound "'`^@~" quote "\\" backslash recolor=-1 "." maybe_float :stray Bad * idle noeat :backslash Escape * back_single buffer mark "u" back_uni4 "o" back_oct3 :back_single Escape * back_word recolor=-2 "]}), \t\f\n\r;" idle noeat :back_word Bad * back_word "]}), \t\f\n\r;" idle noeat markend strings "newline" good_literal recolormark "space" good_literal recolormark "tab" good_literal recolormark "formfeed" good_literal recolormark "backspace" good_literal recolormark "return" goot_literal recolormark done :good_literal Escape * idle noeat :back_oct3 Escape * bad noeat "0-7" back_oct2 :back_oct2 Escape * bad noeat "0-7" back_oct1 :back_oct1 Escape * bad noeat "0-7" bad :back_uni4 Escape * bad noeat "0-9a-fA-F" back_uni3 :back_uni3 Escape * bad noeat "0-9a-fA-F" back_uni2 :back_uni2 Escape * bad noeat "0-9a-fA-F" back_uni1 :back_uni1 Escape * bad noeat "0-9a-fA-F" bad :negative Idle * symbol noeat "1" one recolor=-2 "2" two recolor=-2 "8" eight recolor=-2 "0345679" number recolor=-2 "." maybe_neg_float :symbol Idle * symbol "]}), \t\n;" ident_end noeat markend strings # Symbols which are built-in values "nil" value "true" bool "false" bool "." common "catch" common "clojure.core/fn" common "clojure.core/let" common "clojure.core/loop" common "def" common "do" common "finally" common "fn" common "if" cond "let" common "loop" common "monitor-enter" common "monitor-exit" common "new" common "quote" common "recur" common "set!" common "throw" common "try" common "var" common "catch" common "finally" common "throw" common "case" common "clojure.core/case" common "clojure.core/cond" common "clojure.core/cond->" common "clojure.core/cond->>" common "clojure.core/condp" common "clojure.core/if-let" common "clojure.core/if-not" common "clojure.core/when" common "clojure.core/when-first" common "clojure.core/when-let" common "clojure.core/when-not" common "cond" cond "cond->" cond "cond->>" cond "condp" cond "if-let" cond "if-not" cond "when" common "when-first" common "when-let" common "when-not" common "clojure.core/doall" common "clojure.core/dorun" common "clojure.core/doseq" common "clojure.core/dotimes" common "clojure.core/while" common "doall" common "dorun" common "doseq" common "dotimes" common "while" common "clojure.core/definline" common "clojure.core/definterface" common "clojure.core/defmacro" common "clojure.core/defmethod" common "clojure.core/defmulti" common "clojure.core/defn" common "clojure.core/defn-" common "clojure.core/defonce" common "clojure.core/defprotocol" common "clojure.core/defrecord" common "clojure.core/defstruct" common "clojure.core/deftype" common "definline" common "definterface" common "defmacro" common "defmethod" common "defmulti" common "defn" common "defn-" common "defonce" common "defprotocol" common "defrecord" common "defstruct" common "deftype" common "->" common "->>" common ".." common "amap" common "and" common "areduce" common "as->" common "assert" common "binding" common "bound-fn" common "clojure.core/->" common "clojure.core/->>" common "clojure.core/.." common "clojure.core/amap" common "clojure.core/and" common "clojure.core/areduce" common "clojure.core/as->" common "clojure.core/assert" common "clojure.core/binding" common "clojure.core/bound-fn" common "clojure.core/comment" common "clojure.core/declare" common "clojure.core/delay" common "clojure.core/dosync" common "clojure.core/doto" common "clojure.core/extend-protocol" common "clojure.core/extend-type" common "clojure.core/for" common "clojure.core/future" common "clojure.core/gen-class" common "clojure.core/gen-interface" common "clojure.core/import" common "clojure.core/io!" common "clojure.core/lazy-cat" common "clojure.core/lazy-seq" common "clojure.core/letfn" common "clojure.core/locking" common "clojure.core/memfn" common "clojure.core/ns" common "clojure.core/or" common "clojure.core/proxy" common "clojure.core/proxy-super" common "clojure.core/pvalues" common "clojure.core/refer-clojure" common "clojure.core/reify" common "clojure.core/some->" common "clojure.core/some->>" common "clojure.core/sync" common "clojure.core/time" common "clojure.core/with-bindings" common "clojure.core/with-in-str" common "clojure.core/with-loading-context" common "clojure.core/with-local-vars" common "clojure.core/with-open" common "clojure.core/with-out-str" common "clojure.core/with-precision" common "clojure.core/with-redefs" common "comment" common "declare" common "delay" common "dosync" common "doto" common "extend-protocol" common "extend-type" common "for" common "future" common "gen-class" common "gen-interface" common "import" common "io!" common "lazy-cat" common "lazy-seq" common "letfn" common "locking" common "memfn" common "ns" common "or" common "proxy" common "proxy-super" common "pvalues" common "refer-clojure" common "reify" common "some->" common "some->>" common "sync" common "time" common "with-bindings" common "with-in-str" common "with-loading-context" common "with-local-vars" common "with-open" common "with-out-str" common "with-precision" common "with-redefs" common "*" common "*'" common "+" common "+'" common "-" common "-'" common "->ArrayChunk" common "->Vec" common "->VecNode" common "->VecSeq" common "-cache-protocol-fn" common "-reset-methods" common "/" common "<" common "<=" common "=" common "==" common ">" common ">=" common "accessor" common "aclone" common "add-classpath" common "add-watch" common "agent" common "agent-error" common "agent-errors" common "aget" common "alength" common "alias" common "all-ns" common "alter" common "alter-meta!" common "alter-var-root" common "ancestors" common "apply" common "array-map" common "aset" common "aset-boolean" common "aset-byte" common "aset-char" common "aset-double" common "aset-float" common "aset-int" common "aset-long" common "aset-short" common "assoc" common "assoc!" common "assoc-in" common "associative?" common "atom" common "await" common "await-for" common "await1" common "bases" common "bean" common "bigdec" common "bigint" common "biginteger" common "bit-and" common "bit-and-not" common "bit-clear" common "bit-flip" common "bit-not" common "bit-or" common "bit-set" common "bit-shift-left" common "bit-shift-right" common "bit-test" common "bit-xor" common "boolean" common "boolean-array" common "booleans" common "bound-fn*" common "bound?" common "butlast" common "byte" common "byte-array" common "bytes" common "cast" common "char" common "char-array" common "char?" common "chars" common "chunk" common "chunk-append" common "chunk-buffer" common "chunk-cons" common "chunk-first" common "chunk-next" common "chunk-rest" common "chunked-seq?" common "class" common "class?" common "clear-agent-errors" common "clojure-version" common "clojure.core/*" common "clojure.core/*'" common "clojure.core/+" common "clojure.core/+'" common "clojure.core/-" common "clojure.core/-'" common "clojure.core/->ArrayChunk" common "clojure.core/->Vec" common "clojure.core/->VecNode" common "clojure.core/->VecSeq" common "clojure.core/-cache-protocol-fn" common "clojure.core/-reset-methods" common "clojure.core//" common "clojure.core/<" common "clojure.core/<=" common "clojure.core/=" common "clojure.core/==" common "clojure.core/>" common "clojure.core/>=" common "clojure.core/accessor" common "clojure.core/aclone" common "clojure.core/add-classpath" common "clojure.core/add-watch" common "clojure.core/agent" common "clojure.core/agent-error" common "clojure.core/agent-errors" common "clojure.core/aget" common "clojure.core/alength" common "clojure.core/alias" common "clojure.core/all-ns" common "clojure.core/alter" common "clojure.core/alter-meta!" common "clojure.core/alter-var-root" common "clojure.core/ancestors" common "clojure.core/apply" common "clojure.core/array-map" common "clojure.core/aset" common "clojure.core/aset-boolean" common "clojure.core/aset-byte" common "clojure.core/aset-char" common "clojure.core/aset-double" common "clojure.core/aset-float" common "clojure.core/aset-int" common "clojure.core/aset-long" common "clojure.core/aset-short" common "clojure.core/assoc" common "clojure.core/assoc!" common "clojure.core/assoc-in" common "clojure.core/associative?" common "clojure.core/atom" common "clojure.core/await" common "clojure.core/await-for" common "clojure.core/await1" common "clojure.core/bases" common "clojure.core/bean" common "clojure.core/bigdec" common "clojure.core/bigint" common "clojure.core/biginteger" common "clojure.core/bit-and" common "clojure.core/bit-and-not" common "clojure.core/bit-clear" common "clojure.core/bit-flip" common "clojure.core/bit-not" common "clojure.core/bit-or" common "clojure.core/bit-set" common "clojure.core/bit-shift-left" common "clojure.core/bit-shift-right" common "clojure.core/bit-test" common "clojure.core/bit-xor" common "clojure.core/boolean" common "clojure.core/boolean-array" common "clojure.core/booleans" common "clojure.core/bound-fn*" common "clojure.core/bound?" common "clojure.core/butlast" common "clojure.core/byte" common "clojure.core/byte-array" common "clojure.core/bytes" common "clojure.core/cast" common "clojure.core/char" common "clojure.core/char-array" common "clojure.core/char?" common "clojure.core/chars" common "clojure.core/chunk" common "clojure.core/chunk-append" common "clojure.core/chunk-buffer" common "clojure.core/chunk-cons" common "clojure.core/chunk-first" common "clojure.core/chunk-next" common "clojure.core/chunk-rest" common "clojure.core/chunked-seq?" common "clojure.core/class" common "clojure.core/class?" common "clojure.core/clear-agent-errors" common "clojure.core/clojure-version" common "clojure.core/coll?" common "clojure.core/commute" common "clojure.core/comp" common "clojure.core/comparator" common "clojure.core/compare" common "clojure.core/compare-and-set!" common "clojure.core/compile" common "clojure.core/complement" common "clojure.core/concat" common "clojure.core/conj" common "clojure.core/conj!" common "clojure.core/cons" common "clojure.core/constantly" common "clojure.core/construct-proxy" common "clojure.core/contains?" common "clojure.core/count" common "clojure.core/counted?" common "clojure.core/create-ns" common "clojure.core/create-struct" common "clojure.core/cycle" common "clojure.core/dec" common "clojure.core/dec'" common "clojure.core/decimal?" common "clojure.core/delay?" common "clojure.core/deliver" common "clojure.core/denominator" common "clojure.core/deref" common "clojure.core/derive" common "clojure.core/descendants" common "clojure.core/destructure" common "clojure.core/disj" common "clojure.core/disj!" common "clojure.core/dissoc" common "clojure.core/dissoc!" common "clojure.core/distinct" common "clojure.core/distinct?" common "clojure.core/double" common "clojure.core/double-array" common "clojure.core/doubles" common "clojure.core/drop" common "clojure.core/drop-last" common "clojure.core/drop-while" common "clojure.core/empty" common "clojure.core/empty?" common "clojure.core/ensure" common "clojure.core/enumeration-seq" common "clojure.core/error-handler" common "clojure.core/error-mode" common "clojure.core/eval" common "clojure.core/even?" common "clojure.core/every-pred" common "clojure.core/every?" common "clojure.core/ex-data" common "clojure.core/ex-info" common "clojure.core/extend" common "clojure.core/extenders" common "clojure.core/extends?" common "clojure.core/false?" common "clojure.core/ffirst" common "clojure.core/file-seq" common "clojure.core/filter" common "clojure.core/filterv" common "clojure.core/find" common "clojure.core/find-keyword" common "clojure.core/find-ns" common "clojure.core/find-protocol-impl" common "clojure.core/find-protocol-method" common "clojure.core/find-var" common "clojure.core/first" common "clojure.core/flatten" common "clojure.core/float" common "clojure.core/float-array" common "clojure.core/float?" common "clojure.core/floats" common "clojure.core/flush" common "clojure.core/fn?" common "clojure.core/fnext" common "clojure.core/fnil" common "clojure.core/force" common "clojure.core/format" common "clojure.core/frequencies" common "clojure.core/future-call" common "clojure.core/future-cancel" common "clojure.core/future-cancelled?" common "clojure.core/future-done?" common "clojure.core/future?" common "clojure.core/gensym" common "clojure.core/get" common "clojure.core/get-in" common "clojure.core/get-method" common "clojure.core/get-proxy-class" common "clojure.core/get-thread-bindings" common "clojure.core/get-validator" common "clojure.core/group-by" common "clojure.core/hash" common "clojure.core/hash-combine" common "clojure.core/hash-map" common "clojure.core/hash-set" common "clojure.core/identical?" common "clojure.core/identity" common "clojure.core/ifn?" common "clojure.core/in-ns" common "clojure.core/inc" common "clojure.core/inc'" common "clojure.core/init-proxy" common "clojure.core/instance?" common "clojure.core/int" common "clojure.core/int-array" common "clojure.core/integer?" common "clojure.core/interleave" common "clojure.core/intern" common "clojure.core/interpose" common "clojure.core/into" common "clojure.core/into-array" common "clojure.core/ints" common "clojure.core/isa?" common "clojure.core/iterate" common "clojure.core/iterator-seq" common "clojure.core/juxt" common "clojure.core/keep" common "clojure.core/keep-indexed" common "clojure.core/key" common "clojure.core/keys" common "clojure.core/keyword" common "clojure.core/keyword?" common "clojure.core/last" common "clojure.core/line-seq" common "clojure.core/list" common "clojure.core/list*" common "clojure.core/list?" common "clojure.core/load" common "clojure.core/load-file" common "clojure.core/load-reader" common "clojure.core/load-string" common "clojure.core/loaded-libs" common "clojure.core/long" common "clojure.core/long-array" common "clojure.core/longs" common "clojure.core/macroexpand" common "clojure.core/macroexpand-1" common "clojure.core/make-array" common "clojure.core/make-hierarchy" common "clojure.core/map" common "clojure.core/map-indexed" common "clojure.core/map?" common "clojure.core/mapcat" common "clojure.core/mapv" common "clojure.core/max" common "clojure.core/max-key" common "clojure.core/memoize" common "clojure.core/merge" common "clojure.core/merge-with" common "clojure.core/meta" common "clojure.core/method-sig" common "clojure.core/methods" common "clojure.core/min" common "clojure.core/min-key" common "clojure.core/mod" common "clojure.core/munge" common "clojure.core/name" common "clojure.core/namespace" common "clojure.core/namespace-munge" common "clojure.core/neg?" common "clojure.core/newline" common "clojure.core/next" common "clojure.core/nfirst" common "clojure.core/nil?" common "clojure.core/nnext" common "clojure.core/not" common "clojure.core/not-any?" common "clojure.core/not-empty" common "clojure.core/not-every?" common "clojure.core/not=" common "clojure.core/ns-aliases" common "clojure.core/ns-imports" common "clojure.core/ns-interns" common "clojure.core/ns-map" common "clojure.core/ns-name" common "clojure.core/ns-publics" common "clojure.core/ns-refers" common "clojure.core/ns-resolve" common "clojure.core/ns-unalias" common "clojure.core/ns-unmap" common "clojure.core/nth" common "clojure.core/nthnext" common "clojure.core/nthrest" common "clojure.core/num" common "clojure.core/number?" common "clojure.core/numerator" common "clojure.core/object-array" common "clojure.core/odd?" common "clojure.core/parents" common "clojure.core/partial" common "clojure.core/partition" common "clojure.core/partition-all" common "clojure.core/partition-by" common "clojure.core/pcalls" common "clojure.core/peek" common "clojure.core/persistent!" common "clojure.core/pmap" common "clojure.core/pop" common "clojure.core/pop!" common "clojure.core/pop-thread-bindings" common "clojure.core/pos?" common "clojure.core/pr" common "clojure.core/pr-str" common "clojure.core/prefer-method" common "clojure.core/prefers" common "clojure.core/print" common "clojure.core/print-ctor" common "clojure.core/print-simple" common "clojure.core/print-str" common "clojure.core/printf" common "clojure.core/println" common "clojure.core/println-str" common "clojure.core/prn" common "clojure.core/prn-str" common "clojure.core/promise" common "clojure.core/proxy-call-with-super" common "clojure.core/proxy-mappings" common "clojure.core/proxy-name" common "clojure.core/push-thread-bindings" common "clojure.core/quot" common "clojure.core/rand" common "clojure.core/rand-int" common "clojure.core/rand-nth" common "clojure.core/range" common "clojure.core/ratio?" common "clojure.core/rational?" common "clojure.core/rationalize" common "clojure.core/re-find" common "clojure.core/re-groups" common "clojure.core/re-matcher" common "clojure.core/re-matches" common "clojure.core/re-pattern" common "clojure.core/re-seq" common "clojure.core/read" common "clojure.core/read-line" common "clojure.core/read-string" common "clojure.core/realized?" common "clojure.core/reduce" common "clojure.core/reduce-kv" common "clojure.core/reduced" common "clojure.core/reduced?" common "clojure.core/reductions" common "clojure.core/ref" common "clojure.core/ref-history-count" common "clojure.core/ref-max-history" common "clojure.core/ref-min-history" common "clojure.core/ref-set" common "clojure.core/refer" common "clojure.core/release-pending-sends" common "clojure.core/rem" common "clojure.core/remove" common "clojure.core/remove-all-methods" common "clojure.core/remove-method" common "clojure.core/remove-ns" common "clojure.core/remove-watch" common "clojure.core/repeat" common "clojure.core/repeatedly" common "clojure.core/replace" common "clojure.core/replicate" common "clojure.core/require" common "clojure.core/reset!" common "clojure.core/reset-meta!" common "clojure.core/resolve" common "clojure.core/rest" common "clojure.core/restart-agent" common "clojure.core/resultset-seq" common "clojure.core/reverse" common "clojure.core/reversible?" common "clojure.core/rseq" common "clojure.core/rsubseq" common "clojure.core/satisfies?" common "clojure.core/second" common "clojure.core/select-keys" common "clojure.core/send" common "clojure.core/send-off" common "clojure.core/send-via" common "clojure.core/seq" common "clojure.core/seq?" common "clojure.core/seque" common "clojure.core/sequence" common "clojure.core/sequential?" common "clojure.core/set" common "clojure.core/set-agent-send-executor!" common "clojure.core/set-agent-send-off-executor!" common "clojure.core/set-error-handler!" common "clojure.core/set-error-mode!" common "clojure.core/set-validator!" common "clojure.core/set?" common "clojure.core/short" common "clojure.core/short-array" common "clojure.core/shorts" common "clojure.core/shuffle" common "clojure.core/shutdown-agents" common "clojure.core/slurp" common "clojure.core/some" common "clojure.core/some-fn" common "clojure.core/sort" common "clojure.core/sort-by" common "clojure.core/sorted-map" common "clojure.core/sorted-map-by" common "clojure.core/sorted-set" common "clojure.core/sorted-set-by" common "clojure.core/sorted?" common "clojure.core/special-symbol?" common "clojure.core/spit" common "clojure.core/split-at" common "clojure.core/split-with" common "clojure.core/str" common "clojure.core/string?" common "clojure.core/struct" common "clojure.core/struct-map" common "clojure.core/subs" common "clojure.core/subseq" common "clojure.core/subvec" common "clojure.core/supers" common "clojure.core/swap!" common "clojure.core/symbol" common "clojure.core/symbol?" common "clojure.core/take" common "clojure.core/take-last" common "clojure.core/take-nth" common "clojure.core/take-while" common "clojure.core/test" common "clojure.core/the-ns" common "clojure.core/thread-bound?" common "clojure.core/to-array" common "clojure.core/to-array-2d" common "clojure.core/trampoline" common "clojure.core/transient" common "clojure.core/tree-seq" common "clojure.core/true?" common "clojure.core/type" common "clojure.core/unchecked-add" common "clojure.core/unchecked-add-int" common "clojure.core/unchecked-byte" common "clojure.core/unchecked-char" common "clojure.core/unchecked-dec" common "clojure.core/unchecked-dec-int" common "clojure.core/unchecked-divide-int" common "clojure.core/unchecked-double" common "clojure.core/unchecked-float" common "clojure.core/unchecked-inc" common "clojure.core/unchecked-inc-int" common "clojure.core/unchecked-int" common "clojure.core/unchecked-long" common "clojure.core/unchecked-multiply" common "clojure.core/unchecked-multiply-int" common "clojure.core/unchecked-negate" common "clojure.core/unchecked-negate-int" common "clojure.core/unchecked-remainder-int" common "clojure.core/unchecked-short" common "clojure.core/unchecked-subtract" common "clojure.core/unchecked-subtract-int" common "clojure.core/underive" common "clojure.core/update-in" common "clojure.core/update-proxy" common "clojure.core/use" common "clojure.core/val" common "clojure.core/vals" common "clojure.core/var-get" common "clojure.core/var-set" common "clojure.core/var?" common "clojure.core/vary-meta" common "clojure.core/vec" common "clojure.core/vector" common "clojure.core/vector-of" common "clojure.core/vector?" common "clojure.core/with-bindings*" common "clojure.core/with-meta" common "clojure.core/with-redefs-fn" common "clojure.core/xml-seq" common "clojure.core/zero?" common "clojure.core/zipmap" common "coll?" common "commute" common "comp" common "comparator" common "compare" common "compare-and-set!" common "compile" common "complement" common "concat" common "conj" common "conj!" common "cons" common "constantly" common "construct-proxy" common "contains?" common "count" common "counted?" common "create-ns" common "create-struct" common "cycle" common "dec" common "dec'" common "decimal?" common "delay?" common "deliver" common "denominator" common "deref" common "derive" common "descendants" common "destructure" common "disj" common "disj!" common "dissoc" common "dissoc!" common "distinct" common "distinct?" common "double" common "double-array" common "doubles" common "drop" common "drop-last" common "drop-while" common "empty" common "empty?" common "ensure" common "enumeration-seq" common "error-handler" common "error-mode" common "eval" common "even?" common "every-pred" common "every?" common "ex-data" common "ex-info" common "extend" common "extenders" common "extends?" common "false?" common "ffirst" common "file-seq" common "filter" common "filterv" common "find" common "find-keyword" common "find-ns" common "find-protocol-impl" common "find-protocol-method" common "find-var" common "first" common "flatten" common "float" common "float-array" common "float?" common "floats" common "flush" common "fn?" common "fnext" common "fnil" common "force" common "format" common "frequencies" common "future-call" common "future-cancel" common "future-cancelled?" common "future-done?" common "future?" common "gensym" common "get" common "get-in" common "get-method" common "get-proxy-class" common "get-thread-bindings" common "get-validator" common "group-by" common "hash" common "hash-combine" common "hash-map" common "hash-set" common "identical?" common "identity" common "ifn?" common "in-ns" common "inc" common "inc'" common "init-proxy" common "instance?" common "int" common "int-array" common "integer?" common "interleave" common "intern" common "interpose" common "into" common "into-array" common "ints" common "isa?" common "iterate" common "iterator-seq" common "juxt" common "keep" common "keep-indexed" common "key" common "keys" common "keyword" common "keyword?" common "last" common "line-seq" common "list" common "list*" common "list?" common "load" common "load-file" common "load-reader" common "load-string" common "loaded-libs" common "long" common "long-array" common "longs" common "macroexpand" common "macroexpand-1" common "make-array" common "make-hierarchy" common "map" common "map-indexed" common "map?" common "mapcat" common "mapv" common "max" common "max-key" common "memoize" common "merge" common "merge-with" common "meta" common "method-sig" common "methods" common "min" common "min-key" common "mod" common "munge" common "name" common "namespace" common "namespace-munge" common "neg?" common "newline" common "next" common "nfirst" common "nil?" common "nnext" common "not" common "not-any?" common "not-empty" common "not-every?" common "not=" common "ns-aliases" common "ns-imports" common "ns-interns" common "ns-map" common "ns-name" common "ns-publics" common "ns-refers" common "ns-resolve" common "ns-unalias" common "ns-unmap" common "nth" common "nthnext" common "nthrest" common "num" common "number?" common "numerator" common "object-array" common "odd?" common "parents" common "partial" common "partition" common "partition-all" common "partition-by" common "pcalls" common "peek" common "persistent!" common "pmap" common "pop" common "pop!" common "pop-thread-bindings" common "pos?" common "pr" common "pr-str" common "prefer-method" common "prefers" common "print" common "print-ctor" common "print-simple" common "print-str" common "printf" common "println" common "println-str" common "prn" common "prn-str" common "promise" common "proxy-call-with-super" common "proxy-mappings" common "proxy-name" common "push-thread-bindings" common "quot" common "rand" common "rand-int" common "rand-nth" common "range" common "ratio?" common "rational?" common "rationalize" common "re-find" common "re-groups" common "re-matcher" common "re-matches" common "re-pattern" common "re-seq" common "read" common "read-line" common "read-string" common "realized?" common "reduce" common "reduce-kv" common "reduced" common "reduced?" common "reductions" common "ref" common "ref-history-count" common "ref-max-history" common "ref-min-history" common "ref-set" common "refer" common "release-pending-sends" common "rem" common "remove" common "remove-all-methods" common "remove-method" common "remove-ns" common "remove-watch" common "repeat" common "repeatedly" common "replace" common "replicate" common "require" common "reset!" common "reset-meta!" common "resolve" common "rest" common "restart-agent" common "resultset-seq" common "reverse" common "reversible?" common "rseq" common "rsubseq" common "satisfies?" common "second" common "select-keys" common "send" common "send-off" common "send-via" common "seq" common "seq?" common "seque" common "sequence" common "sequential?" common "set" common "set-agent-send-executor!" common "set-agent-send-off-executor!" common "set-error-handler!" common "set-error-mode!" common "set-validator!" common "set?" common "short" common "short-array" common "shorts" common "shuffle" common "shutdown-agents" common "slurp" common "some" common "some-fn" common "sort" common "sort-by" common "sorted-map" common "sorted-map-by" common "sorted-set" common "sorted-set-by" common "sorted?" common "special-symbol?" common "spit" common "split-at" common "split-with" common "str" common "string?" common "struct" common "struct-map" common "subs" common "subseq" common "subvec" common "supers" common "swap!" common "symbol" common "symbol?" common "take" common "take-last" common "take-nth" common "take-while" common "test" common "the-ns" common "thread-bound?" common "to-array" common "to-array-2d" common "trampoline" common "transient" common "tree-seq" common "true?" common "type" common "unchecked-add" common "unchecked-add-int" common "unchecked-byte" common "unchecked-char" common "unchecked-dec" common "unchecked-dec-int" common "unchecked-divide-int" common "unchecked-double" common "unchecked-float" common "unchecked-inc" common "unchecked-inc-int" common "unchecked-int" common "unchecked-long" common "unchecked-multiply" common "unchecked-multiply-int" common "unchecked-negate" common "unchecked-negate-int" common "unchecked-remainder-int" common "unchecked-short" common "unchecked-subtract" common "unchecked-subtract-int" common "underive" common "update-in" common "update-proxy" common "use" common "val" common "vals" common "var-get" common "var-set" common "var?" common "vary-meta" common "vec" common "vector" common "vector-of" common "vector?" common "with-bindings*" common "with-meta" common "with-redefs-fn" common "xml-seq" common "zero?" common "zipmap" common "*1" common "*2" common "*3" common "*agent*" common "*allow-unresolved-vars*" common "*assert*" common "*clojure-version*" common "*command-line-args*" common "*compile-files*" common "*compile-path*" common "*compiler-options*" common "*data-readers*" common "*default-data-reader-fn*" common "*e" common "*err*" common "*file*" common "*flush-on-newline*" common "*fn-loader*" common "*in*" common "*math-context*" common "*ns*" common "*out*" common "*print-dup*" common "*print-length*" common "*print-level*" common "*print-meta*" common "*print-readably*" common "*read-eval*" common "*source-path*" common "*unchecked-math*" common "*use-context-classloader*" common "*verbose-defrecords*" common "*warn-on-reflection*" common "EMPTY-NODE" common "char-escape-string" common "char-name-string" common "clojure.core/*1" common "clojure.core/*2" common "clojure.core/*3" common "clojure.core/*agent*" common "clojure.core/*allow-unresolved-vars*" common "clojure.core/*assert*" common "clojure.core/*clojure-version*" common "clojure.core/*command-line-args*" common "clojure.core/*compile-files*" common "clojure.core/*compile-path*" common "clojure.core/*compiler-options*" common "clojure.core/*data-readers*" common "clojure.core/*default-data-reader-fn*" common "clojure.core/*e" common "clojure.core/*err*" common "clojure.core/*file*" common "clojure.core/*flush-on-newline*" common "clojure.core/*fn-loader*" common "clojure.core/*in*" common "clojure.core/*math-context*" common "clojure.core/*ns*" common "clojure.core/*out*" common "clojure.core/*print-dup*" common "clojure.core/*print-length*" common "clojure.core/*print-level*" common "clojure.core/*print-meta*" common "clojure.core/*print-readably*" common "clojure.core/*read-eval*" common "clojure.core/*source-path*" common "clojure.core/*unchecked-math*" common "clojure.core/*use-context-classloader*" common "clojure.core/*verbose-defrecords*" common "clojure.core/*warn-on-reflection*" common "clojure.core/EMPTY-NODE" common "clojure.core/char-escape-string" common "clojure.core/char-name-string" common "clojure.core/default-data-readers" common "clojure.core/primitives-classnames" common "clojure.core/print-dup" common "clojure.core/print-method" common "clojure.core/unquote" common "clojure.core/unquote-splicing" common "default-data-readers" common "primitives-classnames" common "print-dup" common "print-method" common "unquote" common "unquote-splicing" common done :value Constant * idle noeat :bool Boolean * idle noeat :common Keyword * idle noeat :cond Conditional * idle noeat :ident_end Idle * idle noeat # Mark remainder of symbol as bad :bad Bad * bad ")]}, \t\f\n\r;" idle noeat # Skip quote.. :quote Idle * idle noeat # Look for #_x, treat as comment # For example #_(a b c) should be all commented out :pound Idle * idle noeat "_" pound_eat recolor=-2 :pound_eat Comment comment * idle noeat :comment Comment comment * comment "BFHNTX" comment noeat call=comment_todo.comment_todo() "\n" idle # Check some specific common bases :two Number * number noeat "r" binary :eight Number * number noeat "r" octal :one Number * number noeat "0" ten "6" sixteen :ten Number * number noeat "r" decimal :sixteen Number * number noeat "r" hex :hex Number * bad noeat "NM" bad "0-9a-fA-F" hex :octal Number * bad noeat "NM" bad "0-7" octal :binary Number * bad noeat "NM" bad "01" binary :decimal Number * bad noeat "NM" bad "0-9" decimal # Number, no r yet... :number Number * bad noeat "NM" bad "0-9" number "r" integer "." float "/" ratio # we got the r :integer Number * bad noeat "NM" bad "0-9" integer # We have a decimal point only :maybe_neg_float Number * symbol recolor=-2 noeat "0-9" float recolor=-2 :maybe_float Number * idle recolor=-2 noeat "0-9" float recolor=-2 # We have number and decimal point :float Number * bad noeat "M" bad "eE" epart "0-9" float :epart Number * bad noeat "0-9+\-" enum :enum Number * bad noeat "M" bad "0-9" enum # Ratio :ratio Number * bad noeat "0-9" ratio # Strings :string String string * string "\"" idle "\\" string_escape recolor=-1 :string_escape StringEscape string * string "u" string_uni4 "0-7" string_octal2 "\n" string recolor=-2 :string_uni4 StringEscape string * string noeat "0-9a-fA-F" string_uni3 :string_uni3 StringEscape string * string noeat "0-9a-fA-F" string_uni2 :string_uni2 StringEscape string * string noeat "0-9a-fA-F" string_uni1 :string_uni1 StringEscape string * string noeat "0-9a-fA-F" string :string_octal2 StringEscape string * string noeat "0-7" string_octal1 :string_octal1 StringEscape string * string noeat "0-7" string .end