summaryrefslogtreecommitdiffstats
path: root/tl.vim
blob: 57108c5982fd9e399d6c254b1447aabea23de1c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
" VIM Syntax file for txr
" Kaz Kylheku <kaz@kylheku.com>

" INSTALL-HOWTO:
"
" 1. Create the directory .vim/syntax in your home directory and
"    put the files txr.vim and txl.vim into this directory.
" 2. In your .vimrc, add this command to associate *.txr and *.tl
"    files with the txr and txl filetypes:
"    :au BufRead,BufNewFile *.txr set filetype=txr | set lisp
"    :au BufRead,BufNewFile *.tl set filetype=txl | set lisp
"
" If you want syntax highlighting to be on automatically (for any language)
" you need to add ":syntax on" in your .vimrc also. But you knew that already!
"
" This file is generated by the genvim.txr script in the TXR source tree.

syn case match
syn spell toplevel

setlocal iskeyword=a-z,A-Z,48-57,!,$,&,*,+,-,:,<,=,>,?,\\,_,~,/

syn keyword txl_keyword contained %e% %pi% * *args*
syn keyword txl_keyword contained *args-full* *e* *flo-dig* *flo-epsilon*
syn keyword txl_keyword contained *flo-max* *flo-min* *full-args* *gensym-counter*
syn keyword txl_keyword contained *keyword-package* *lib-version* *listener-hist-len* *listener-multi-line-p*
syn keyword txl_keyword contained *pi* *place-clobber-expander* *place-delete-expander* *place-macro*
syn keyword txl_keyword contained *place-update-expander* *print-base* *print-flo-digits* *print-flo-format*
syn keyword txl_keyword contained *print-flo-precision* *random-state* *self-path* *stddebug*
syn keyword txl_keyword contained *stderr* *stdin* *stdlog* *stdnull*
syn keyword txl_keyword contained *stdout* *system-package* *txr-version* *unhandled-hook*
syn keyword txl_keyword contained *user-package* + - /
syn keyword txl_keyword contained /= : :addr :append
syn keyword txl_keyword contained :args :atime :auto :blksize
syn keyword txl_keyword contained :blocks :cdigit :chars :continue
syn keyword txl_keyword contained :counter :cspace :ctime :cword-char
syn keyword txl_keyword contained :decline :dev :digit :downcase
syn keyword txl_keyword contained :env :equal-based :fd :filter
syn keyword txl_keyword contained :fini :finish :form :from-current
syn keyword txl_keyword contained :from-end :from-start :from_html :frombase64
syn keyword txl_keyword contained :fromhtml :frompercent :fromurl :fun
syn keyword txl_keyword contained :function :gap :gid :greedy
syn keyword txl_keyword contained :hextoint :init :ino :instance
syn keyword txl_keyword contained :into :lfilt :lines :list
syn keyword txl_keyword contained :longest :mandatory :maxgap :maxtimes
syn keyword txl_keyword contained :method :mingap :mintimes :mode
syn keyword txl_keyword contained :mtime :name :named :next-spec
syn keyword txl_keyword contained :nlink :nothrow :postinit :prio
syn keyword txl_keyword contained :rdev :real-time :reflect :repeat-spec
syn keyword txl_keyword contained :resolve :rfilt :shortest :size
syn keyword txl_keyword contained :space :static :string :symacro
syn keyword txl_keyword contained :times :to_html :tobase64 :tofloat
syn keyword txl_keyword contained :tohtml :tohtml* :toint :tonumber
syn keyword txl_keyword contained :topercent :tourl :uid :upcase
syn keyword txl_keyword contained :var :vars :weak-keys :weak-vals
syn keyword txl_keyword contained :whole :word-char :wrap <
syn keyword txl_keyword contained <= = > >=
syn keyword txl_keyword contained abort abs abs-path-p acons
syn keyword txl_keyword contained acons-new aconsql-new acos ado
syn keyword txl_keyword contained af-inet af-inet6 af-unix af-unspec
syn keyword txl_keyword contained ai-addrconfig ai-all ai-canonname ai-numerichost
syn keyword txl_keyword contained ai-numericserv ai-passive ai-v4mapped alist-nremove
syn keyword txl_keyword contained alist-remove all and andf
syn keyword txl_keyword contained ap apf append append*
syn keyword txl_keyword contained append-each append-each* apply aret
syn keyword txl_keyword contained ash asin assoc assql
syn keyword txl_keyword contained atan atan2 atom base64-decode
syn keyword txl_keyword contained base64-encode bignump bindable bit
syn keyword txl_keyword contained block block* boundp break-str
syn keyword txl_keyword contained butlast caaaaar caaaadr caaaar
syn keyword txl_keyword contained caaadar caaaddr caaadr caaar
syn keyword txl_keyword contained caadaar caadadr caadar caaddar
syn keyword txl_keyword contained caadddr caaddr caadr caar
syn keyword txl_keyword contained cadaaar cadaadr cadaar cadadar
syn keyword txl_keyword contained cadaddr cadadr cadar caddaar
syn keyword txl_keyword contained caddadr caddar cadddar caddddr
syn keyword txl_keyword contained cadddr caddr cadr call
syn keyword txl_keyword contained call-clobber-expander call-delete-expander call-finalizers call-super-fun
syn keyword txl_keyword contained call-super-method call-update-expander callf car
syn keyword txl_keyword contained caseq caseql casequal cat-str
syn keyword txl_keyword contained cat-streams cat-vec catch catenated-stream-p
syn keyword txl_keyword contained catenated-stream-push cdaaaar cdaaadr cdaaar
syn keyword txl_keyword contained cdaadar cdaaddr cdaadr cdaar
syn keyword txl_keyword contained cdadaar cdadadr cdadar cdaddar
syn keyword txl_keyword contained cdadddr cdaddr cdadr cdar
syn keyword txl_keyword contained cddaaar cddaadr cddaar cddadar
syn keyword txl_keyword contained cddaddr cddadr cddar cdddaar
syn keyword txl_keyword contained cdddadr cdddar cddddar cdddddr
syn keyword txl_keyword contained cddddr cdddr cddr cdr
syn keyword txl_keyword contained ceil chain chand chdir
syn keyword txl_keyword contained chmod chr-digit chr-int chr-isalnum
syn keyword txl_keyword contained chr-isalpha chr-isascii chr-isblank chr-iscntrl
syn keyword txl_keyword contained chr-isdigit chr-isgraph chr-islower chr-isprint
syn keyword txl_keyword contained chr-ispunct chr-isspace chr-isunisp chr-isupper
syn keyword txl_keyword contained chr-isxdigit chr-num chr-str chr-str-set
syn keyword txl_keyword contained chr-tolower chr-toupper chr-xdigit chrp
syn keyword txl_keyword contained clamp clear-error clear-struct close-stream
syn keyword txl_keyword contained closelog cmp-str collect-each collect-each*
syn keyword txl_keyword contained comb compl-span-str cond conda
syn keyword txl_keyword contained condlet cons conses conses*
syn keyword txl_keyword contained consp constantp copy copy-alist
syn keyword txl_keyword contained copy-cons copy-hash copy-list copy-str
syn keyword txl_keyword contained copy-struct copy-vec cos count-if
syn keyword txl_keyword contained countq countql countqual crypt
syn keyword txl_keyword contained cum-norm-dist daemon dec defex
syn keyword txl_keyword contained define-accessor define-modify-macro define-place-macro defmacro
syn keyword txl_keyword contained defmeth defparm defparml defplace
syn keyword txl_keyword contained defstruct defsymacro defun defvar
syn keyword txl_keyword contained defvarl del delay delete-package
syn keyword txl_keyword contained display-width do dohash dotimes
syn keyword txl_keyword contained downcase-str drop drop-until drop-while
syn keyword txl_keyword contained dup dupfd dwim each
syn keyword txl_keyword contained each* eighth empty endgrent
syn keyword txl_keyword contained endpwent ensure-dir env env-fbind
syn keyword txl_keyword contained env-hash env-vbind eq eql
syn keyword txl_keyword contained equal errno error eval
syn keyword txl_keyword contained evenp exception-subtype-p exec exit
syn keyword txl_keyword contained exit* exp expand-left expand-right
syn keyword txl_keyword contained expt exptmod false fboundp
syn keyword txl_keyword contained fifth fileno filter-equal filter-string-tree
syn keyword txl_keyword contained finalize find find-frame find-if
syn keyword txl_keyword contained find-max find-min find-package find-struct-type
syn keyword txl_keyword contained first fixnump flatcar flatcar*
syn keyword txl_keyword contained flatten flatten* flet flip
syn keyword txl_keyword contained flipargs flo-dig flo-epsilon flo-int
syn keyword txl_keyword contained flo-max flo-max-dig flo-min flo-str
syn keyword txl_keyword contained floatp floor flush-stream fmakunbound
syn keyword txl_keyword contained fmt for for* force
syn keyword txl_keyword contained fork format fourth from
syn keyword txl_keyword contained fstat ftw ftw-actionretval ftw-chdir
syn keyword txl_keyword contained ftw-continue ftw-d ftw-depth ftw-dnr
syn keyword txl_keyword contained ftw-dp ftw-f ftw-mount ftw-ns
syn keyword txl_keyword contained ftw-phys ftw-skip-siblings ftw-skip-subtree ftw-sl
syn keyword txl_keyword contained ftw-sln ftw-stop fun func-get-env
syn keyword txl_keyword contained func-get-form func-get-name func-set-env functionp
syn keyword txl_keyword contained gcd gen generate gensym
syn keyword txl_keyword contained gequal get-byte get-char get-clobber-expander
syn keyword txl_keyword contained get-delete-expander get-error get-error-str get-frames
syn keyword txl_keyword contained get-hash-userdata get-indent get-indent-mode get-line
syn keyword txl_keyword contained get-lines get-list-from-stream get-sig-handler get-string
syn keyword txl_keyword contained get-string-from-stream get-update-expander getaddrinfo getegid
syn keyword txl_keyword contained getenv geteuid getgid getgrent
syn keyword txl_keyword contained getgrgid getgrnam getgroups gethash
syn keyword txl_keyword contained getitimer getpid getppid getpwent
syn keyword txl_keyword contained getpwnam getpwuid getuid ginterate
syn keyword txl_keyword contained giterate glob glob-altdirfunc glob-brace
syn keyword txl_keyword contained glob-err glob-mark glob-nocheck glob-noescape
syn keyword txl_keyword contained glob-nomagic glob-nosort glob-onlydir glob-period
syn keyword txl_keyword contained glob-tilde glob-tilde-check greater group-by
syn keyword txl_keyword contained group-reduce gun handle handler-bind
syn keyword txl_keyword contained hash hash-alist hash-begin hash-construct
syn keyword txl_keyword contained hash-count hash-diff hash-eql hash-equal
syn keyword txl_keyword contained hash-from-pairs hash-isec hash-keys hash-list
syn keyword txl_keyword contained hash-next hash-pairs hash-proper-subset hash-revget
syn keyword txl_keyword contained hash-subset hash-uni hash-update hash-update-1
syn keyword txl_keyword contained hash-values hashp have html-decode
syn keyword txl_keyword contained html-encode html-encode* iapply identity
syn keyword txl_keyword contained ido if ifa iff
syn keyword txl_keyword contained iffi iflet ignerr in
syn keyword txl_keyword contained in6addr-any in6addr-loopback inaddr-any inaddr-loopback
syn keyword txl_keyword contained inc inc-indent indent-code indent-data
syn keyword txl_keyword contained indent-off inhash int-chr int-flo
syn keyword txl_keyword contained int-str integerp intern interp-fun-p
syn keyword txl_keyword contained interpose invoke-catch ip ipf
syn keyword txl_keyword contained iread isqrt itimer-prov itimer-real
syn keyword txl_keyword contained itimer-virtual juxt keep-if keep-if*
syn keyword txl_keyword contained keyword-package keywordp kill labels
syn keyword txl_keyword contained lambda last lazy-str lazy-str-force
syn keyword txl_keyword contained lazy-str-force-upto lazy-str-get-trailing-list lazy-stream-cons lazy-stringp
syn keyword txl_keyword contained lcm lcons lcons-fun lconsp
syn keyword txl_keyword contained ldiff length length-list length-str
syn keyword txl_keyword contained length-str-< length-str-<= length-str-> length-str->=
syn keyword txl_keyword contained length-vec lequal less let
syn keyword txl_keyword contained let* lexical-fun-p lexical-lisp1-binding lexical-var-p
syn keyword txl_keyword contained lib-version link lisp-parse list
syn keyword txl_keyword contained list* list-str list-vec list-vector
syn keyword txl_keyword contained listp lnew load log
syn keyword txl_keyword contained log-alert log-auth log-authpriv log-cons
syn keyword txl_keyword contained log-crit log-daemon log-debug log-emerg
syn keyword txl_keyword contained log-err log-info log-ndelay log-notice
syn keyword txl_keyword contained log-nowait log-odelay log-perror log-pid
syn keyword txl_keyword contained log-user log-warning log10 log2
syn keyword txl_keyword contained logand logior lognot logtest
syn keyword txl_keyword contained logtrunc logxor lset lstat
syn keyword txl_keyword contained mac-param-bind macro-ancestor macro-form-p macro-time
syn keyword txl_keyword contained macroexpand macroexpand-1 macrolet major
syn keyword txl_keyword contained make-catenated-stream make-env make-hash make-lazy-cons
syn keyword txl_keyword contained make-lazy-struct make-like make-package make-random-state
syn keyword txl_keyword contained make-similar-hash make-string-byte-input-stream make-string-input-stream make-string-output-stream
syn keyword txl_keyword contained make-strlist-output-stream make-struct make-struct-type make-sym
syn keyword txl_keyword contained make-time make-time-utc make-trie makedev
syn keyword txl_keyword contained makunbound mapcar mapcar* mapdo
syn keyword txl_keyword contained mapf maphash mappend mappend*
syn keyword txl_keyword contained mask match-fun match-regex match-regex-right
syn keyword txl_keyword contained match-regst match-regst-right match-str match-str-tree
syn keyword txl_keyword contained max mboundp member member-if
syn keyword txl_keyword contained memq memql memqual merge
syn keyword txl_keyword contained meth method min minor
syn keyword txl_keyword contained minusp mkdir mknod mkstring
syn keyword txl_keyword contained mlet mmakunbound mod multi
syn keyword txl_keyword contained multi-sort n-choose-k n-perm-k nconc
syn keyword txl_keyword contained new nexpand-left nil nilf
syn keyword txl_keyword contained ninth none not notf
syn keyword txl_keyword contained nreconc nreverse nthcdr null
syn keyword txl_keyword contained nullify num-chr num-str numberp
syn keyword txl_keyword contained oand obtain obtain* obtain*-block
syn keyword txl_keyword contained obtain-block oddp op open-command
syn keyword txl_keyword contained open-directory open-file open-fileno open-files
syn keyword txl_keyword contained open-files* open-pipe open-process open-socket
syn keyword txl_keyword contained open-socket-pair open-tail openlog opip
syn keyword txl_keyword contained or orf package-alist package-name
syn keyword txl_keyword contained package-symbols packagep pad partition
syn keyword txl_keyword contained partition* partition-by path-blkdev-p path-chrdev-p
syn keyword txl_keyword contained path-dir-p path-executable-to-me-p path-exists-p path-file-p
syn keyword txl_keyword contained path-mine-p path-my-group-p path-newer path-older
syn keyword txl_keyword contained path-pipe-p path-private-to-me-p path-same-object path-setgid-p
syn keyword txl_keyword contained path-setuid-p path-sock-p path-sticky-p path-symlink-p
syn keyword txl_keyword contained path-writable-to-me-p perm pipe place-form-p
syn keyword txl_keyword contained placelet placelet* plusp poll
syn keyword txl_keyword contained poll-err poll-in poll-nval poll-out
syn keyword txl_keyword contained poll-pri poll-rdband poll-wrband pop
syn keyword txl_keyword contained pos pos-if pos-max pos-min
syn keyword txl_keyword contained posq posql posqual pppred
syn keyword txl_keyword contained ppred pprinl pprint pprof
syn keyword txl_keyword contained pred prinl print prof
syn keyword txl_keyword contained prog1 progn promisep prop
syn keyword txl_keyword contained proper-list-p proper-listp pset push
syn keyword txl_keyword contained pushhash pushnew put-byte put-char
syn keyword txl_keyword contained put-line put-lines put-string put-strings
syn keyword txl_keyword contained pwd qquote qref quote
syn keyword txl_keyword contained raise rand random random-fixnum
syn keyword txl_keyword contained random-state-get-vec random-state-p range range*
syn keyword txl_keyword contained range-regex rangep rcomb rcons
syn keyword txl_keyword contained read read-until-match readlink real-time-stream-p
syn keyword txl_keyword contained record-adapter reduce-left reduce-right ref
syn keyword txl_keyword contained refset regex-compile regex-parse regexp
syn keyword txl_keyword contained register-exception-subtypes regsub rehome-sym remhash
syn keyword txl_keyword contained remove-if remove-if* remove-path remq
syn keyword txl_keyword contained remq* remql remql* remqual
syn keyword txl_keyword contained remqual* rename-path repeat replace
syn keyword txl_keyword contained replace-list replace-str replace-struct replace-vec
syn keyword txl_keyword contained reset-struct rest ret retf
syn keyword txl_keyword contained return return* return-from revappend
syn keyword txl_keyword contained reverse rfind rfind-if rlcp
syn keyword txl_keyword contained rlet rmember rmember-if rmemq
syn keyword txl_keyword contained rmemql rmemqual rotate rperm
syn keyword txl_keyword contained rplaca rplacd rpos rpos-if
syn keyword txl_keyword contained rposq rposql rposqual rsearch
syn keyword txl_keyword contained run s-ifblk s-ifchr s-ifdir
syn keyword txl_keyword contained s-ififo s-iflnk s-ifmt s-ifreg
syn keyword txl_keyword contained s-ifsock s-irgrp s-iroth s-irusr
syn keyword txl_keyword contained s-irwxg s-irwxo s-irwxu s-isgid
syn keyword txl_keyword contained s-isuid s-isvtx s-iwgrp s-iwoth
syn keyword txl_keyword contained s-iwusr s-ixgrp s-ixoth s-ixusr
syn keyword txl_keyword contained search search-regex search-regst search-str
syn keyword txl_keyword contained search-str-tree second seek-stream select
syn keyword txl_keyword contained self-path seqp set set-diff
syn keyword txl_keyword contained set-hash-userdata set-indent set-indent-mode set-sig-handler
syn keyword txl_keyword contained setegid setenv seteuid setgid
syn keyword txl_keyword contained setgrent sethash setitimer setlogmask
syn keyword txl_keyword contained setpwent setuid seventh sh
syn keyword txl_keyword contained shift shuffle shut-rd shut-rdwr
syn keyword txl_keyword contained shut-wr sig-abrt sig-alrm sig-bus
syn keyword txl_keyword contained sig-check sig-chld sig-cont sig-fpe
syn keyword txl_keyword contained sig-hup sig-ill sig-int sig-io
syn keyword txl_keyword contained sig-iot sig-kill sig-pipe sig-poll
syn keyword txl_keyword contained sig-prof sig-pwr sig-quit sig-segv
syn keyword txl_keyword contained sig-stkflt sig-stop sig-sys sig-term
syn keyword txl_keyword contained sig-trap sig-tstp sig-ttin sig-ttou
syn keyword txl_keyword contained sig-urg sig-usr1 sig-usr2 sig-vtalrm
syn keyword txl_keyword contained sig-winch sig-xcpu sig-xfsz sign-extend
syn keyword txl_keyword contained sin sixth size-vec slot
syn keyword txl_keyword contained slotp slotset sock-accept sock-bind
syn keyword txl_keyword contained sock-cloexec sock-connect sock-dgram sock-family
syn keyword txl_keyword contained sock-listen sock-nonblock sock-peer sock-recv-timeout
syn keyword txl_keyword contained sock-send-timeout sock-set-peer sock-shutdown sock-stream
syn keyword txl_keyword contained sock-type some sort sort-group
syn keyword txl_keyword contained source-loc source-loc-str span-str special-operator-p
syn keyword txl_keyword contained special-var-p splice split split*
syn keyword txl_keyword contained split-str split-str-set sqrt sssucc
syn keyword txl_keyword contained ssucc stat static-slot static-slot-ensure
syn keyword txl_keyword contained static-slot-p static-slot-set stdlib str-in6addr
syn keyword txl_keyword contained str-in6addr-net str-inaddr str-inaddr-net str<
syn keyword txl_keyword contained str<= str= str> str>=
syn keyword txl_keyword contained stream-get-prop stream-set-prop streamp string-extend
syn keyword txl_keyword contained string-lt stringp struct-type struct-type-p
syn keyword txl_keyword contained structp sub sub-list sub-str
syn keyword txl_keyword contained sub-vec subtypep succ super
syn keyword txl_keyword contained super-method suspend swap symacrolet
syn keyword txl_keyword contained symbol-function symbol-macro symbol-name symbol-package
syn keyword txl_keyword contained symbol-value symbolp symlink sys:*lisp1*
syn keyword txl_keyword contained sys:abscond* sys:abscond-from sys:apply sys:bad-slot-syntax
syn keyword txl_keyword contained sys:capture-cont sys:cp-origin sys:defmeth sys:do-path-test
syn keyword txl_keyword contained sys:dwim-del sys:dwim-set sys:eval-err sys:expand
syn keyword txl_keyword contained sys:expr sys:fbind sys:gc sys:gc-set-delta
syn keyword txl_keyword contained sys:get-fb sys:get-mb sys:get-vb sys:handle-bad-syntax
syn keyword txl_keyword contained sys:if-to-cond sys:in6addr-condensed-text sys:l1-setq sys:l1-val
syn keyword txl_keyword contained sys:lbind sys:lisp1-setq sys:lisp1-value sys:load
syn keyword txl_keyword contained sys:make-struct-type sys:mark-special sys:obtain-impl sys:path-access
syn keyword txl_keyword contained sys:path-examine sys:path-test sys:path-test-mode sys:pl-expand
syn keyword txl_keyword contained sys:placelet-1 sys:prune-nil-inits sys:qquote sys:quasi
syn keyword txl_keyword contained sys:quasilist sys:reg-expand-nongreedy sys:reg-optimize sys:register-simple-accessor
syn keyword txl_keyword contained sys:rplaca sys:rplacd sys:set-macro-ancestor sys:setq
syn keyword txl_keyword contained sys:setqf sys:splice sys:str-inaddr-net-impl sys:struct-lit
syn keyword txl_keyword contained sys:sym-clobber-expander sys:sym-delete-expander sys:sym-update-expander sys:top-fb
syn keyword txl_keyword contained sys:top-mb sys:top-vb sys:unquote sys:var
syn keyword txl_keyword contained sys:with-saved-vars syslog system-package t
syn keyword txl_keyword contained take take-until take-while tan
syn keyword txl_keyword contained tb tc tenth test-set-indent-mode
syn keyword txl_keyword contained tf third throw throwf
syn keyword txl_keyword contained time time-fields-local time-fields-utc time-string-local
syn keyword txl_keyword contained time-string-utc time-struct-local time-struct-utc time-usec
syn keyword txl_keyword contained to tofloat toint tok-str
syn keyword txl_keyword contained tok-where tostring tostringp tprint
syn keyword txl_keyword contained transpose tree-bind tree-case tree-find
syn keyword txl_keyword contained trie-add trie-compress trie-lookup-begin trie-lookup-feed-char
syn keyword txl_keyword contained trie-value-at trim-str true trunc
syn keyword txl_keyword contained trunc-rem truncate-stream tuples txr-case
syn keyword txl_keyword contained txr-case-impl txr-if txr-sym txr-version
syn keyword txl_keyword contained txr-when typecase typeof typep
syn keyword txl_keyword contained umask umeth umethod unget-byte
syn keyword txl_keyword contained unget-char uniq unique unless
syn keyword txl_keyword contained unquote unsetenv until until*
syn keyword txl_keyword contained unwind-protect upcase-str update url-decode
syn keyword txl_keyword contained url-encode use user-package usl
syn keyword txl_keyword contained usleep uslot vec vec-list
syn keyword txl_keyword contained vec-push vec-set-length vecref vector
syn keyword txl_keyword contained vector-list vectorp w-continued w-coredump
syn keyword txl_keyword contained w-exitstatus w-ifcontinued w-ifexited w-ifsignaled
syn keyword txl_keyword contained w-ifstopped w-nohang w-stopsig w-termsig
syn keyword txl_keyword contained w-untraced wait weave when
syn keyword txl_keyword contained whenlet where while while*
syn keyword txl_keyword contained whilet width width-check window-map
syn keyword txl_keyword contained window-mappend with-clobber-expander with-delete-expander with-gensyms
syn keyword txl_keyword contained with-hash-iter with-in-string-byte-stream with-in-string-stream with-objects
syn keyword txl_keyword contained with-out-string-stream with-out-strlist-stream with-resources with-slots
syn keyword txl_keyword contained with-stream with-update-expander wrap wrap*
syn keyword txl_keyword contained yield yield-from zap zerop
syn keyword txl_keyword contained zip
syn match txr_nested_error "[^\t ]\+" contained
syn match txr_variable "\(@[ \t]*\)[*]\?[ \t]*[A-Za-z_][A-Za-z_0-9]*"
syn match txr_splicevar "@[ \t,*@]*[A-Za-z_][A-Za-z_0-9]*"
syn match txr_metanum "@\+[0-9]\+"
syn match txr_badesc "\\." contained
syn match txr_escat "\\@" contained
syn match txr_stresc "\\[abtnvfre\\ \n"`']" contained
syn match txr_numesc "\\x[0-9A-Fa-f]\+;\?" contained
syn match txr_numesc "\\[0-7]\+;\?" contained
syn match txr_regesc "\\[abtnvfre\\ \n/sSdDwW()\|.*?+~&%\[\]\-]" contained

syn match txr_chr "#\\x[0-9A-Fa-f]\+"
syn match txr_chr "#\\o[0-7]\+"
syn match txr_chr "#\\[^ \t\nA-Za-z_0-9]"
syn match txr_chr "#\\[A-Za-z_0-9]\+"
syn match txr_ncomment ";.*"

syn match txr_dot "\." contained
syn match txr_num "#x[+\-]\?[0-9A-Fa-f]\+"
syn match txr_num "#o[+\-]\?[0-7]\+"
syn match txr_num "#b[+\-]\?[01]\+"
syn match txr_ident "[A-Za-z_0-9!$%&*+\-<=>?\\_~]*[A-Za-z_!$%&*+\-<=>?\\_~^][A-Za-z_0-9!$%&*+\-<=>?\\_~^]*" contained
syn match txl_ident "[:@][A-Za-z_0-9!$%&*+\-<=>?\\_~^/]\+"
syn match txr_braced_ident "[:][A-Za-z_0-9!$%&*+\-<=>?\\_~^/]\+" contained
syn match txl_ident "[A-Za-z_0-9!$%&*+\-<=>?\\_~/]*[A-Za-z_!$%&*+\-<=>?\\_~^/#][A-Za-z_0-9!$%&*+\-<=>?\\_~^/#]*"
syn match txr_num "[+\-]\?[0-9]\+\([^A-Za-z_0-9!$%&*+\-<=>?\\_~^/#]\|\n\)"me=e-1
syn match txr_badnum "[+\-]\?[0-9]*[.][0-9]\+\([eE][+\-]\?[0-9]\+\)\?[A-Za-z_!$%&*+\-<=>?\\_~^/#]\+"
syn match txr_num "[+\-]\?[0-9]*[.][0-9]\+\([eE][+\-]\?[0-9]\+\)\?\([^A-Za-z_0-9!$%&*+\-<=>?\\_~^/#]\|\n\)"me=e-1
syn match txr_num "[+\-]\?[0-9]\+\([eE][+\-]\?[0-9]\+\)\([^A-Za-z_0-9!$%&*+\-<=>?\\_~^/#]\|\n\)"me=e-1
syn match txl_ident ":"
syn match txl_splice "[ \t,]\|,[*]"

syn match txr_unquote "," contained
syn match txr_splice ",\*" contained
syn match txr_quote "'" contained
syn match txr_quote "\^" contained
syn match txr_dotdot "\.\." contained
syn match txr_metaat "@" contained

syn region txr_bracevar matchgroup=Delimiter start="@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txl_ident,txl_splice,txl_metanum,txr_metaat,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txl_splice,txr_nested_error
syn region txr_list matchgroup=Delimiter start="#\?H\?(" matchgroup=Delimiter end=")" contains=txl_keyword,txr_string,txl_regex,txr_num,txr_badnum,txl_ident,txr_metanum,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_ncomment,txr_nested_error
syn region txr_bracket matchgroup=Delimiter start="\[" matchgroup=Delimiter end="\]" contains=txl_keyword,txr_string,txl_regex,txr_num,txr_badnum,txl_ident,txr_metanum,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_ncomment,txr_nested_error
syn region txr_mlist matchgroup=Delimiter start="@[ \t^',]*(" matchgroup=Delimiter end=")" contains=txl_keyword,txr_string,txl_regex,txr_num,txr_badnum,txl_ident,txr_metanum,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_ncomment,txr_nested_error
syn region txr_mbracket matchgroup=Delimiter start="@[ \t^',]*\[" matchgroup=Delimiter end="\]" contains=txl_keyword,txr_string,txl_regex,txr_num,txr_badnum,txl_ident,txr_metanum,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_quasilit,txr_chr,txr_quote,txr_unquote,txr_splice,txr_dot,txr_dotdot,txr_metaat,txr_ncomment,txr_nested_error
syn region txr_string start=+#\?\*\?"+ end=+["\n]+ contains=txr_stresc,txr_numesc,txr_badesc
syn region txr_quasilit start=+#\?\*\?`+ end=+[`\n]+ contains=txr_splicevar,txr_metanum,txr_bracevar,txr_mlist,txr_mbracket,txr_escat,txr_stresc,txr_numesc,txr_badesc
syn region txr_regex start="/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc
syn region txl_regex start="#/" end="[/\n]" contains=txr_regesc,txr_numesc,txr_badesc

hi def link txr_at Special
hi def link txr_atstar Special
hi def link txr_atat Special
hi def link txr_comment Comment
hi def link txr_ncomment Comment
hi def link txr_hashbang Preproc
hi def link txr_contin Preproc
hi def link txr_char String
hi def link txr_keyword Keyword
hi def link txl_keyword Type
hi def link txr_string String
hi def link txr_chr String
hi def link txr_quasilit String
hi def link txr_regex String
hi def link txl_regex String
hi def link txr_regdir String
hi def link txr_variable Identifier
hi def link txr_splicevar Identifier
hi def link txr_metanum Identifier
hi def link txr_escat Special
hi def link txr_stresc Special
hi def link txr_numesc Special
hi def link txr_regesc Special
hi def link txr_badesc Error
hi def link txr_ident Identifier
hi def link txl_ident Identifier
hi def link txr_num Number
hi def link txr_badnum Error
hi def link txr_quote Special
hi def link txr_unquote Special
hi def link txr_splice Special
hi def link txr_dot Special
hi def link txr_dotdot Special
hi def link txr_metaat Special
hi def link txr_munqspl Special
hi def link txl_splice Special
hi def link txr_error Error
hi def link txr_nested_error Error

let b:current_syntax = "lisp"

set lispwords=ado,ap,append-each,append-each*,aret,block,block*,caseq,caseql,casequal,catch,collect-each,collect-each*,cond,conda,condlet,dec,defex,define-accessor,define-modify-macro,define-place-macro,defmacro,defmeth,defparm,defparml,defplace,defstruct,defsymacro,defun,defvar,defvarl,del,delay,do,dohash,dotimes,each,each*,flet,flip,for,for*,fun,gen,gun,handle,handler-bind,ido,if,ifa,iflet,ignerr,ip,labels,lambda,lcons,let,let*,load,lset,mac-param-bind,macro-time,macrolet,mlet,obtain,obtain*,obtain*-block,obtain-block,op,placelet,placelet*,pop,pprof,prof,prog1,progn,push,pushnew,ret,return,return-from,rlet,splice,suspend,symacrolet,sys:abscond-from,sys:expr,sys:fbind,sys:l1-val,sys:lbind,sys:lisp1-value,sys:path-examine,sys:path-test,sys:placelet-1,sys:splice,sys:struct-lit,sys:unquote,sys:var,sys:with-saved-vars,tb,tc,tree-bind,tree-case,txr-case,txr-case-impl,txr-if,txr-when,typecase,unless,unquote,until,until*,unwind-protect,when,whenlet,while,while*,whilet,with-clobber-expander,with-delete-expander,with-gensyms,with-hash-iter,with-in-string-byte-stream,with-in-string-stream,with-objects,with-out-string-stream,with-out-strlist-stream,with-resources,with-slots,with-stream,with-update-expander,yield,yield-from,zap,:method,:function,:init,:postinit,:fini