Skip to content

Instantly share code, notes, and snippets.

@stig
Created February 3, 2014 00:17
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 5 You must be signed in to fork a gist
  • Save stig/8777098 to your computer and use it in GitHub Desktop.
Save stig/8777098 to your computer and use it in GitHub Desktop.
Clojure language module based on the newlisp package by Seth Dillingham and Pete B. Anonymous.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<!--
ABOUT:
Clojure language module based on the newlisp package by
Seth Dillingham <seth.dillingham@gmail.com>
and Pete B. Anonymous.
INSTALLATION:
1. Copy or move this file to the folder at
~/Library/Application Support/BBEdit/Language Modules/
or, if you're a TextWrangler user:
~/Library/Application Support/TextWrangler/Language Modules/
2. Open the preferences window, and check the "Languages" panel for a "Suffix Mapping"
for ".clj"
a. If you have a .clj suffix mapping, select it then click 'Remove'
b. Click the 'Add' button, type '.clj' (no quotes) in the extension field,
and set the language to "Clojure", then click the 'Add' button.
3. You may need to restart BBEdit/TextWrangler for the changes to take effect.
You can download BBEdit and/or TextWrangler from http://www.barebones.com
-->
<dict>
<key>BBEditDocumentType</key>
<string>CodelessLanguageModule</string>
<key>BBLMColorsSyntax</key>
<true/>
<key>BBLMIsCaseSensitive</key>
<true/>
<key>BBLMKeywordList</key>
<array>
<string>&amp;</string>
<string>*</string>
<string>*'</string>
<string>*1</string>
<string>*2</string>
<string>*3</string>
<string>*agent*</string>
<string>*clojure-version*</string>
<string>*command-line-args*</string>
<string>*compile-files*</string>
<string>*compile-path*</string>
<string>*compiler-options*</string>
<string>*data-readers*</string>
<string>*default-data-reader-fn*</string>
<string>*e</string>
<string>*err*</string>
<string>*file*</string>
<string>*flush-on-newline*</string>
<string>*in*</string>
<string>*ns*</string>
<string>*out*</string>
<string>*print-dup*</string>
<string>*print-length*</string>
<string>*print-level*</string>
<string>*print-meta*</string>
<string>*print-readably*</string>
<string>*read-eval*</string>
<string>*unchecked-math*</string>
<string>*warn-on-reflection*</string>
<string>+</string>
<string>+'</string>
<string>-</string>
<string>-'</string>
<string>-&gt;</string>
<string>-&gt;&gt;</string>
<string>-&gt;ArrayChunk</string>
<string>-&gt;Vec</string>
<string>-&gt;VecNode</string>
<string>-&gt;VecSeq</string>
<string>.</string>
<string>..</string>
<string>/</string>
<string>&lt;</string>
<string>&lt;=</string>
<string>=</string>
<string>==</string>
<string>&lt;</string>
<string>&lt;=</string>
<string>accessor</string>
<string>aclone</string>
<string>add-classpath</string>
<string>add-watch</string>
<string>agent</string>
<string>agent-error</string>
<string>agent-errors</string>
<string>aget</string>
<string>alength</string>
<string>alias</string>
<string>all-ns</string>
<string>alter</string>
<string>alter-meta!</string>
<string>alter-var-root</string>
<string>amap</string>
<string>ancestors</string>
<string>and</string>
<string>apply</string>
<string>areduce</string>
<string>array-map</string>
<string>ArrayChunk</string>
<string>as-></string>
<string>aset</string>
<string>aset-boolean</string>
<string>aset-byte</string>
<string>aset-char</string>
<string>aset-double</string>
<string>aset-float</string>
<string>aset-int</string>
<string>aset-long</string>
<string>aset-short</string>
<string>assert</string>
<string>assoc</string>
<string>assoc!</string>
<string>assoc-in</string>
<string>associative?</string>
<string>atom</string>
<string>await</string>
<string>await-for</string>
<string>bases</string>
<string>bean</string>
<string>bigdec</string>
<string>bigint</string>
<string>biginteger</string>
<string>binding</string>
<string>bit-and</string>
<string>bit-and-not</string>
<string>bit-clear</string>
<string>bit-flip</string>
<string>bit-not</string>
<string>bit-or</string>
<string>bit-set</string>
<string>bit-shift-left</string>
<string>bit-shift-right</string>
<string>bit-test</string>
<string>bit-xor</string>
<string>boolean</string>
<string>boolean-array</string>
<string>booleans</string>
<string>bound-fn</string>
<string>bound-fn*</string>
<string>bound?</string>
<string>butlast</string>
<string>byte</string>
<string>byte-array</string>
<string>bytes</string>
<string>case</string>
<string>cast</string>
<string>catch</string>
<string>char</string>
<string>char-array</string>
<string>char-escape-string</string>
<string>char-name-string</string>
<string>char?</string>
<string>chars</string>
<string>class</string>
<string>class?</string>
<string>clear-agent-errors</string>
<string>clojure-version</string>
<string>coll?</string>
<string>comment</string>
<string>commute</string>
<string>comp</string>
<string>comparator</string>
<string>compare</string>
<string>compare-and-set!</string>
<string>compile</string>
<string>complement</string>
<string>concat</string>
<string>cond</string>
<string>cond-></string>
<string>cond->></string>
<string>condp</string>
<string>conj</string>
<string>conj!</string>
<string>cons</string>
<string>constantly</string>
<string>construct-proxy</string>
<string>contains?</string>
<string>count</string>
<string>counted?</string>
<string>create-ns</string>
<string>create-struct</string>
<string>cycle</string>
<string>dec</string>
<string>dec'</string>
<string>decimal?</string>
<string>declare</string>
<string>def</string>
<string>default-data-readers</string>
<string>definline</string>
<string>definterface</string>
<string>defmacro</string>
<string>defmethod</string>
<string>defmulti</string>
<string>defn</string>
<string>defn-</string>
<string>defonce</string>
<string>defprotocol</string>
<string>defrecord</string>
<string>defstruct</string>
<string>deftype</string>
<string>delay</string>
<string>delay?</string>
<string>deliver</string>
<string>denominator</string>
<string>deref</string>
<string>derive</string>
<string>descendants</string>
<string>disj</string>
<string>disj!</string>
<string>dissoc</string>
<string>dissoc!</string>
<string>distinct</string>
<string>distinct?</string>
<string>do</string>
<string>doall</string>
<string>dorun</string>
<string>doseq</string>
<string>dosync</string>
<string>dotimes</string>
<string>doto</string>
<string>double</string>
<string>double-array</string>
<string>doubles</string>
<string>drop</string>
<string>drop-last</string>
<string>drop-while</string>
<string>empty</string>
<string>empty?</string>
<string>ensure</string>
<string>enumeration-seq</string>
<string>error-handler</string>
<string>error-mode</string>
<string>eval</string>
<string>even?</string>
<string>every-pred</string>
<string>every?</string>
<string>ex-data</string>
<string>ex-info</string>
<string>extend</string>
<string>extend-protocol</string>
<string>extend-type</string>
<string>extenders</string>
<string>extends?</string>
<string>false?</string>
<string>ffirst</string>
<string>file-seq</string>
<string>filter</string>
<string>filterv</string>
<string>finally</string>
<string>find</string>
<string>find-keyword</string>
<string>find-ns</string>
<string>find-var</string>
<string>first</string>
<string>flatten</string>
<string>float</string>
<string>float-array</string>
<string>float?</string>
<string>floats</string>
<string>flush</string>
<string>fn</string>
<string>fn?</string>
<string>fnext</string>
<string>fnil</string>
<string>for</string>
<string>force</string>
<string>format</string>
<string>frequencies</string>
<string>future</string>
<string>future-call</string>
<string>future-cancel</string>
<string>future-cancelled?</string>
<string>future-done?</string>
<string>future?</string>
<string>gen-class</string>
<string>gen-interface</string>
<string>gensym</string>
<string>get</string>
<string>get-in</string>
<string>get-method</string>
<string>get-proxy-class</string>
<string>get-thread-bindings</string>
<string>get-validator</string>
<string>group-by</string>
<string>hash</string>
<string>hash-map</string>
<string>hash-set</string>
<string>identical?</string>
<string>identity</string>
<string>if</string>
<string>if-let</string>
<string>if-not</string>
<string>ifn?</string>
<string>import</string>
<string>in-ns</string>
<string>inc</string>
<string>inc'</string>
<string>init-proxy</string>
<string>instance?</string>
<string>int</string>
<string>int-array</string>
<string>integer?</string>
<string>interleave</string>
<string>intern</string>
<string>interpose</string>
<string>into</string>
<string>into-array</string>
<string>ints</string>
<string>io!</string>
<string>isa?</string>
<string>iterate</string>
<string>iterator-seq</string>
<string>juxt</string>
<string>keep</string>
<string>keep-indexed</string>
<string>key</string>
<string>keys</string>
<string>keyword</string>
<string>keyword?</string>
<string>last</string>
<string>lazy-cat</string>
<string>lazy-seq</string>
<string>let</string>
<string>letfn</string>
<string>line-seq</string>
<string>list</string>
<string>list*</string>
<string>list?</string>
<string>load</string>
<string>load-file</string>
<string>load-reader</string>
<string>load-string</string>
<string>loaded-libs</string>
<string>locking</string>
<string>long</string>
<string>long-array</string>
<string>longs</string>
<string>loop</string>
<string>macroexpand</string>
<string>macroexpand-1</string>
<string>make-array</string>
<string>make-hierarchy</string>
<string>map</string>
<string>map-indexed</string>
<string>map?</string>
<string>mapcat</string>
<string>mapv</string>
<string>max</string>
<string>max-key</string>
<string>memfn</string>
<string>memoize</string>
<string>merge</string>
<string>merge-with</string>
<string>meta</string>
<string>methods</string>
<string>min</string>
<string>min-key</string>
<string>mod</string>
<string>monitor-enter</string>
<string>monitor-exit</string>
<string>name</string>
<string>namespace</string>
<string>namespace-munge</string>
<string>neg?</string>
<string>new</string>
<string>newline</string>
<string>next</string>
<string>nfirst</string>
<string>nil?</string>
<string>nnext</string>
<string>not</string>
<string>not-any?</string>
<string>not-empty</string>
<string>not-every?</string>
<string>not=</string>
<string>ns</string>
<string>ns-aliases</string>
<string>ns-imports</string>
<string>ns-interns</string>
<string>ns-map</string>
<string>ns-name</string>
<string>ns-publics</string>
<string>ns-refers</string>
<string>ns-resolve</string>
<string>ns-unalias</string>
<string>ns-unmap</string>
<string>nth</string>
<string>nthnext</string>
<string>nthrest</string>
<string>num</string>
<string>number?</string>
<string>numerator</string>
<string>object-array</string>
<string>odd?</string>
<string>or</string>
<string>parents</string>
<string>partial</string>
<string>partition</string>
<string>partition-all</string>
<string>partition-by</string>
<string>pcalls</string>
<string>peek</string>
<string>persistent!</string>
<string>pmap</string>
<string>pop</string>
<string>pop!</string>
<string>pop-thread-bindings</string>
<string>pos?</string>
<string>pr</string>
<string>pr-str</string>
<string>prefer-method</string>
<string>prefers</string>
<string>print</string>
<string>print-str</string>
<string>printf</string>
<string>println</string>
<string>println-str</string>
<string>prn</string>
<string>prn-str</string>
<string>promise</string>
<string>proxy</string>
<string>proxy-mappings</string>
<string>proxy-super</string>
<string>push-thread-bindings</string>
<string>pvalues</string>
<string>quot</string>
<string>quote</string>
<string>rand</string>
<string>rand-int</string>
<string>rand-nth</string>
<string>range</string>
<string>ratio?</string>
<string>rational?</string>
<string>rationalize</string>
<string>re-find</string>
<string>re-groups</string>
<string>re-matcher</string>
<string>re-matches</string>
<string>re-pattern</string>
<string>re-seq</string>
<string>read</string>
<string>read-line</string>
<string>read-string</string>
<string>realized?</string>
<string>recur</string>
<string>reduce</string>
<string>reduce-kv</string>
<string>reduced</string>
<string>reduced?</string>
<string>reductions</string>
<string>ref</string>
<string>ref-history-count</string>
<string>ref-max-history</string>
<string>ref-min-history</string>
<string>ref-set</string>
<string>refer</string>
<string>refer-clojure</string>
<string>reify</string>
<string>release-pending-sends</string>
<string>rem</string>
<string>remove</string>
<string>remove-all-methods</string>
<string>remove-method</string>
<string>remove-ns</string>
<string>remove-watch</string>
<string>repeat</string>
<string>repeatedly</string>
<string>replace</string>
<string>replicate</string>
<string>require</string>
<string>reset!</string>
<string>reset-meta!</string>
<string>resolve</string>
<string>rest</string>
<string>restart-agent</string>
<string>resultset-seq</string>
<string>reverse</string>
<string>reversible?</string>
<string>rseq</string>
<string>rsubseq</string>
<string>satisfies?</string>
<string>second</string>
<string>select-keys</string>
<string>send</string>
<string>send-off</string>
<string>send-via</string>
<string>seq</string>
<string>seq?</string>
<string>seque</string>
<string>sequence</string>
<string>sequential?</string>
<string>set</string>
<string>set!</string>
<string>set-agent-send-executor!</string>
<string>set-agent-send-off-executor!</string>
<string>set-error-handler!</string>
<string>set-error-mode!</string>
<string>set-validator!</string>
<string>set?</string>
<string>short</string>
<string>short-array</string>
<string>shorts</string>
<string>shuffle</string>
<string>shutdown-agents</string>
<string>slurp</string>
<string>some</string>
<string>some-></string>
<string>some->></string>
<string>some-fn</string>
<string>sort</string>
<string>sort-by</string>
<string>sorted-map</string>
<string>sorted-map-by</string>
<string>sorted-set</string>
<string>sorted-set-by</string>
<string>sorted?</string>
<string>special-symbol?</string>
<string>spit</string>
<string>split-at</string>
<string>split-with</string>
<string>str</string>
<string>string?</string>
<string>struct</string>
<string>struct-map</string>
<string>subs</string>
<string>subseq</string>
<string>subvec</string>
<string>supers</string>
<string>swap!</string>
<string>symbol</string>
<string>symbol?</string>
<string>sync</string>
<string>take</string>
<string>take-last</string>
<string>take-nth</string>
<string>take-while</string>
<string>test</string>
<string>the-ns</string>
<string>thread-bound?</string>
<string>throw</string>
<string>time</string>
<string>to-array</string>
<string>to-array-2d</string>
<string>trampoline</string>
<string>transient</string>
<string>tree-seq</string>
<string>true?</string>
<string>try</string>
<string>type</string>
<string>unchecked-add</string>
<string>unchecked-add-int</string>
<string>unchecked-byte</string>
<string>unchecked-char</string>
<string>unchecked-dec</string>
<string>unchecked-dec-int</string>
<string>unchecked-divide-int</string>
<string>unchecked-double</string>
<string>unchecked-float</string>
<string>unchecked-inc</string>
<string>unchecked-inc-int</string>
<string>unchecked-int</string>
<string>unchecked-long</string>
<string>unchecked-multiply</string>
<string>unchecked-multiply-int</string>
<string>unchecked-negate</string>
<string>unchecked-negate-int</string>
<string>unchecked-remainder-int</string>
<string>unchecked-short</string>
<string>unchecked-subtract</string>
<string>unchecked-subtract-int</string>
<string>underive</string>
<string>update-in</string>
<string>update-proxy</string>
<string>use</string>
<string>val</string>
<string>vals</string>
<string>var</string>
<string>var-get</string>
<string>var-set</string>
<string>var?</string>
<string>vary-meta</string>
<string>vec</string>
<string>Vec</string>
<string>VecNode</string>
<string>VecSeq</string>
<string>vector</string>
<string>vector-of</string>
<string>vector?</string>
<string>when</string>
<string>when-first</string>
<string>when-let</string>
<string>when-not</string>
<string>while</string>
<string>with-bindings</string>
<string>with-bindings*</string>
<string>with-in-str</string>
<string>with-local-vars</string>
<string>with-meta</string>
<string>with-open</string>
<string>with-out-str</string>
<string>with-precision</string>
<string>with-redefs</string>
<string>with-redefs-fn</string>
<string>xml-seq</string>
<string>zero?</string>
<string>zipmap</string>
</array>
<key>BBLMLanguageCode</key>
<string>lisp</string>
<key>BBLMLanguageDisplayName</key>
<string>Clojure</string>
<key>BBLMScansFunctions</key>
<true/>
<key>BBLMSuffixMap</key>
<array>
<dict>
<key>BBLMLanguageSuffix</key>
<string>.clj</string>
</dict>
</array>
<key>Language Features</key>
<dict>
<key>Comment Pattern</key>
<string><![CDATA[(?x:
(?> [;] .* $ )
)]]></string>
<key>Function Pattern</key>
<string><![CDATA[(?x:
^
[ \t]*
(?P<function>
\(
define
[ ]+
\(
(?P<function_name>
(?P<identifier>
[!$%&*+\-./:<=>?@^~0-9A-Z_a-z]+
)
)
,?
\s*
(?>
(?P>identifier) |
(?P>comment) |
\s+
)*
\s*
\)
\s*
(?>
(?P>comment) |
\s*
)*
(?P<function_body>
(?>
(?P<plain_text>
(?> [^"{[;\#()]+ ) |
(?> \[ (?!text\]) )
) |
(?P>comment) |
(?P>string) |
(?P<parens>
\(
(?>
(?P>plain_text) |
(?P>comment) |
(?P>string) |
(?P>parens)
)*
\s*
\)
) |
\s*
)*
)
\s*
\)
)
)]]></string>
<key>String Pattern</key>
<string><![CDATA[(?x:
(?> " (?s: \\. | [^"] )*? (?: " | $) ) |
(?> \{ [^}]*? (?> \} | \z ) ) |
(?> \[text\] (?s: .*? ) (?> \[/text\] | \z ) )
)]]></string>
<key>Skip Pattern</key>
<string><![CDATA[(?x:
(?>
(?P>comment) | (?P>string)
)
)]]></string>
<key>Identifier and Keyword Character Class</key>
<string><![CDATA[!$%&*+-./:<=>?@^~0-9A-Z_a-z]]></string>
</dict>
</dict>
</plist>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment