diff options
Diffstat (limited to '')
-rw-r--r-- | syntax/lisp.vim | 622 |
1 files changed, 0 insertions, 622 deletions
diff --git a/syntax/lisp.vim b/syntax/lisp.vim deleted file mode 100644 index 66f97e38..00000000 --- a/syntax/lisp.vim +++ /dev/null @@ -1,622 +0,0 @@ -if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'vim') == -1 - -" Vim syntax file -" Language: Lisp -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> -" Last Change: May 02, 2016 -" Version: 26 -" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP -" -" Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec -" Clisp additions courtesy of http://clisp.cvs.sourceforge.net/*checkout*/clisp/clisp/emacs/lisp.vim - -" --------------------------------------------------------------------- -" Load Once: {{{1 -if exists("b:current_syntax") - finish -endif - -if exists("g:lisp_isk") - exe "setl isk=".g:lisp_isk -elseif !has("patch-7.4.1142") - setl isk=38,42,43,45,47-58,60-62,64-90,97-122,_ -else - syn iskeyword 38,42,43,45,47-58,60-62,64-90,97-122,_ -endif - -if exists("g:lispsyntax_ignorecase") || exists("g:lispsyntax_clisp") - set ignorecase -endif - -" --------------------------------------------------------------------- -" Clusters: {{{1 -syn cluster lispAtomCluster contains=lispAtomBarSymbol,lispAtomList,lispAtomNmbr0,lispComment,lispDecl,lispFunc,lispLeadWhite -syn cluster lispBaseListCluster contains=lispAtom,lispAtomBarSymbol,lispAtomMark,lispBQList,lispBarSymbol,lispComment,lispConcat,lispDecl,lispFunc,lispKey,lispList,lispNumber,lispEscapeSpecial,lispSymbol,lispVar,lispLeadWhite -if exists("g:lisp_instring") - syn cluster lispListCluster contains=@lispBaseListCluster,lispString,lispInString,lispInStringString -else - syn cluster lispListCluster contains=@lispBaseListCluster,lispString -endif - -syn case ignore - -" --------------------------------------------------------------------- -" Lists: {{{1 -syn match lispSymbol contained ![^()'`,"; \t]\+! -syn match lispBarSymbol contained !|..\{-}|! -if exists("g:lisp_rainbow") && g:lisp_rainbow != 0 - syn region lispParen0 matchgroup=hlLevel0 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen1 - syn region lispParen1 contained matchgroup=hlLevel1 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen2 - syn region lispParen2 contained matchgroup=hlLevel2 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen3 - syn region lispParen3 contained matchgroup=hlLevel3 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen4 - syn region lispParen4 contained matchgroup=hlLevel4 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen5 - syn region lispParen5 contained matchgroup=hlLevel5 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen6 - syn region lispParen6 contained matchgroup=hlLevel6 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen7 - syn region lispParen7 contained matchgroup=hlLevel7 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen8 - syn region lispParen8 contained matchgroup=hlLevel8 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen9 - syn region lispParen9 contained matchgroup=hlLevel9 start="`\=(" end=")" skip="|.\{-}|" contains=@lispListCluster,lispParen0 -else - syn region lispList matchgroup=Delimiter start="(" skip="|.\{-}|" matchgroup=Delimiter end=")" contains=@lispListCluster - syn region lispBQList matchgroup=PreProc start="`(" skip="|.\{-}|" matchgroup=PreProc end=")" contains=@lispListCluster -endif - -" --------------------------------------------------------------------- -" Atoms: {{{1 -syn match lispAtomMark "'" -syn match lispAtom "'("me=e-1 contains=lispAtomMark nextgroup=lispAtomList -syn match lispAtom "'[^ \t()]\+" contains=lispAtomMark -syn match lispAtomBarSymbol !'|..\{-}|! contains=lispAtomMark -syn region lispAtom start=+'"+ skip=+\\"+ end=+"+ -syn region lispAtomList contained matchgroup=Special start="(" skip="|.\{-}|" matchgroup=Special end=")" contains=@lispAtomCluster,lispString,lispEscapeSpecial -syn match lispAtomNmbr contained "\<\d\+" -syn match lispLeadWhite contained "^\s\+" - -" --------------------------------------------------------------------- -" Standard Lisp Functions and Macros: {{{1 -syn keyword lispFunc * find-method pprint-indent -syn keyword lispFunc ** find-package pprint-linear -syn keyword lispFunc *** find-restart pprint-logical-block -syn keyword lispFunc + find-symbol pprint-newline -syn keyword lispFunc ++ finish-output pprint-pop -syn keyword lispFunc +++ first pprint-tab -syn keyword lispFunc - fixnum pprint-tabular -syn keyword lispFunc / flet prin1 -syn keyword lispFunc // float prin1-to-string -syn keyword lispFunc /// float-digits princ -syn keyword lispFunc /= float-precision princ-to-string -syn keyword lispFunc 1+ float-radix print -syn keyword lispFunc 1- float-sign print-not-readable -syn keyword lispFunc < floating-point-inexact print-not-readable-object -syn keyword lispFunc <= floating-point-invalid-operation print-object -syn keyword lispFunc = floating-point-overflow print-unreadable-object -syn keyword lispFunc > floating-point-underflow probe-file -syn keyword lispFunc >= floatp proclaim -syn keyword lispFunc abort floor prog -syn keyword lispFunc abs fmakunbound prog* -syn keyword lispFunc access force-output prog1 -syn keyword lispFunc acons format prog2 -syn keyword lispFunc acos formatter progn -syn keyword lispFunc acosh fourth program-error -syn keyword lispFunc add-method fresh-line progv -syn keyword lispFunc adjoin fround provide -syn keyword lispFunc adjust-array ftruncate psetf -syn keyword lispFunc adjustable-array-p ftype psetq -syn keyword lispFunc allocate-instance funcall push -syn keyword lispFunc alpha-char-p function pushnew -syn keyword lispFunc alphanumericp function-keywords putprop -syn keyword lispFunc and function-lambda-expression quote -syn keyword lispFunc append functionp random -syn keyword lispFunc apply gbitp random-state -syn keyword lispFunc applyhook gcd random-state-p -syn keyword lispFunc apropos generic-function rassoc -syn keyword lispFunc apropos-list gensym rassoc-if -syn keyword lispFunc aref gentemp rassoc-if-not -syn keyword lispFunc arithmetic-error get ratio -syn keyword lispFunc arithmetic-error-operands get-decoded-time rational -syn keyword lispFunc arithmetic-error-operation get-dispatch-macro-character rationalize -syn keyword lispFunc array get-internal-real-time rationalp -syn keyword lispFunc array-dimension get-internal-run-time read -syn keyword lispFunc array-dimension-limit get-macro-character read-byte -syn keyword lispFunc array-dimensions get-output-stream-string read-char -syn keyword lispFunc array-displacement get-properties read-char-no-hang -syn keyword lispFunc array-element-type get-setf-expansion read-delimited-list -syn keyword lispFunc array-has-fill-pointer-p get-setf-method read-eval-print -syn keyword lispFunc array-in-bounds-p get-universal-time read-from-string -syn keyword lispFunc array-rank getf read-line -syn keyword lispFunc array-rank-limit gethash read-preserving-whitespace -syn keyword lispFunc array-row-major-index go read-sequence -syn keyword lispFunc array-total-size graphic-char-p reader-error -syn keyword lispFunc array-total-size-limit handler-bind readtable -syn keyword lispFunc arrayp handler-case readtable-case -syn keyword lispFunc ash hash-table readtablep -syn keyword lispFunc asin hash-table-count real -syn keyword lispFunc asinh hash-table-p realp -syn keyword lispFunc assert hash-table-rehash-size realpart -syn keyword lispFunc assoc hash-table-rehash-threshold reduce -syn keyword lispFunc assoc-if hash-table-size reinitialize-instance -syn keyword lispFunc assoc-if-not hash-table-test rem -syn keyword lispFunc atan host-namestring remf -syn keyword lispFunc atanh identity remhash -syn keyword lispFunc atom if remove -syn keyword lispFunc base-char if-exists remove-duplicates -syn keyword lispFunc base-string ignorable remove-if -syn keyword lispFunc bignum ignore remove-if-not -syn keyword lispFunc bit ignore-errors remove-method -syn keyword lispFunc bit-and imagpart remprop -syn keyword lispFunc bit-andc1 import rename-file -syn keyword lispFunc bit-andc2 in-package rename-package -syn keyword lispFunc bit-eqv in-package replace -syn keyword lispFunc bit-ior incf require -syn keyword lispFunc bit-nand initialize-instance rest -syn keyword lispFunc bit-nor inline restart -syn keyword lispFunc bit-not input-stream-p restart-bind -syn keyword lispFunc bit-orc1 inspect restart-case -syn keyword lispFunc bit-orc2 int-char restart-name -syn keyword lispFunc bit-vector integer return -syn keyword lispFunc bit-vector-p integer-decode-float return-from -syn keyword lispFunc bit-xor integer-length revappend -syn keyword lispFunc block integerp reverse -syn keyword lispFunc boole interactive-stream-p room -syn keyword lispFunc boole-1 intern rotatef -syn keyword lispFunc boole-2 internal-time-units-per-second round -syn keyword lispFunc boole-and intersection row-major-aref -syn keyword lispFunc boole-andc1 invalid-method-error rplaca -syn keyword lispFunc boole-andc2 invoke-debugger rplacd -syn keyword lispFunc boole-c1 invoke-restart safety -syn keyword lispFunc boole-c2 invoke-restart-interactively satisfies -syn keyword lispFunc boole-clr isqrt sbit -syn keyword lispFunc boole-eqv keyword scale-float -syn keyword lispFunc boole-ior keywordp schar -syn keyword lispFunc boole-nand labels search -syn keyword lispFunc boole-nor lambda second -syn keyword lispFunc boole-orc1 lambda-list-keywords sequence -syn keyword lispFunc boole-orc2 lambda-parameters-limit serious-condition -syn keyword lispFunc boole-set last set -syn keyword lispFunc boole-xor lcm set-char-bit -syn keyword lispFunc boolean ldb set-difference -syn keyword lispFunc both-case-p ldb-test set-dispatch-macro-character -syn keyword lispFunc boundp ldiff set-exclusive-or -syn keyword lispFunc break least-negative-double-float set-macro-character -syn keyword lispFunc broadcast-stream least-negative-long-float set-pprint-dispatch -syn keyword lispFunc broadcast-stream-streams least-negative-normalized-double-float set-syntax-from-char -syn keyword lispFunc built-in-class least-negative-normalized-long-float setf -syn keyword lispFunc butlast least-negative-normalized-short-float setq -syn keyword lispFunc byte least-negative-normalized-single-float seventh -syn keyword lispFunc byte-position least-negative-short-float shadow -syn keyword lispFunc byte-size least-negative-single-float shadowing-import -syn keyword lispFunc call-arguments-limit least-positive-double-float shared-initialize -syn keyword lispFunc call-method least-positive-long-float shiftf -syn keyword lispFunc call-next-method least-positive-normalized-double-float short-float -syn keyword lispFunc capitalize least-positive-normalized-long-float short-float-epsilon -syn keyword lispFunc car least-positive-normalized-short-float short-float-negative-epsilon -syn keyword lispFunc case least-positive-normalized-single-float short-site-name -syn keyword lispFunc catch least-positive-short-float signal -syn keyword lispFunc ccase least-positive-single-float signed-byte -syn keyword lispFunc cdr length signum -syn keyword lispFunc ceiling let simple-condition -syn keyword lispFunc cell-error let* simple-array -syn keyword lispFunc cell-error-name lisp simple-base-string -syn keyword lispFunc cerror lisp-implementation-type simple-bit-vector -syn keyword lispFunc change-class lisp-implementation-version simple-bit-vector-p -syn keyword lispFunc char list simple-condition-format-arguments -syn keyword lispFunc char-bit list* simple-condition-format-control -syn keyword lispFunc char-bits list-all-packages simple-error -syn keyword lispFunc char-bits-limit list-length simple-string -syn keyword lispFunc char-code listen simple-string-p -syn keyword lispFunc char-code-limit listp simple-type-error -syn keyword lispFunc char-control-bit load simple-vector -syn keyword lispFunc char-downcase load-logical-pathname-translations simple-vector-p -syn keyword lispFunc char-equal load-time-value simple-warning -syn keyword lispFunc char-font locally sin -syn keyword lispFunc char-font-limit log single-flaot-epsilon -syn keyword lispFunc char-greaterp logand single-float -syn keyword lispFunc char-hyper-bit logandc1 single-float-epsilon -syn keyword lispFunc char-int logandc2 single-float-negative-epsilon -syn keyword lispFunc char-lessp logbitp sinh -syn keyword lispFunc char-meta-bit logcount sixth -syn keyword lispFunc char-name logeqv sleep -syn keyword lispFunc char-not-equal logical-pathname slot-boundp -syn keyword lispFunc char-not-greaterp logical-pathname-translations slot-exists-p -syn keyword lispFunc char-not-lessp logior slot-makunbound -syn keyword lispFunc char-super-bit lognand slot-missing -syn keyword lispFunc char-upcase lognor slot-unbound -syn keyword lispFunc char/= lognot slot-value -syn keyword lispFunc char< logorc1 software-type -syn keyword lispFunc char<= logorc2 software-version -syn keyword lispFunc char= logtest some -syn keyword lispFunc char> logxor sort -syn keyword lispFunc char>= long-float space -syn keyword lispFunc character long-float-epsilon special -syn keyword lispFunc characterp long-float-negative-epsilon special-form-p -syn keyword lispFunc check-type long-site-name special-operator-p -syn keyword lispFunc cis loop speed -syn keyword lispFunc class loop-finish sqrt -syn keyword lispFunc class-name lower-case-p stable-sort -syn keyword lispFunc class-of machine-instance standard -syn keyword lispFunc clear-input machine-type standard-char -syn keyword lispFunc clear-output machine-version standard-char-p -syn keyword lispFunc close macro-function standard-class -syn keyword lispFunc clrhash macroexpand standard-generic-function -syn keyword lispFunc code-char macroexpand-1 standard-method -syn keyword lispFunc coerce macroexpand-l standard-object -syn keyword lispFunc commonp macrolet step -syn keyword lispFunc compilation-speed make-array storage-condition -syn keyword lispFunc compile make-array store-value -syn keyword lispFunc compile-file make-broadcast-stream stream -syn keyword lispFunc compile-file-pathname make-char stream-element-type -syn keyword lispFunc compiled-function make-concatenated-stream stream-error -syn keyword lispFunc compiled-function-p make-condition stream-error-stream -syn keyword lispFunc compiler-let make-dispatch-macro-character stream-external-format -syn keyword lispFunc compiler-macro make-echo-stream streamp -syn keyword lispFunc compiler-macro-function make-hash-table streamup -syn keyword lispFunc complement make-instance string -syn keyword lispFunc complex make-instances-obsolete string-capitalize -syn keyword lispFunc complexp make-list string-char -syn keyword lispFunc compute-applicable-methods make-load-form string-char-p -syn keyword lispFunc compute-restarts make-load-form-saving-slots string-downcase -syn keyword lispFunc concatenate make-method string-equal -syn keyword lispFunc concatenated-stream make-package string-greaterp -syn keyword lispFunc concatenated-stream-streams make-pathname string-left-trim -syn keyword lispFunc cond make-random-state string-lessp -syn keyword lispFunc condition make-sequence string-not-equal -syn keyword lispFunc conjugate make-string string-not-greaterp -syn keyword lispFunc cons make-string-input-stream string-not-lessp -syn keyword lispFunc consp make-string-output-stream string-right-strim -syn keyword lispFunc constantly make-symbol string-right-trim -syn keyword lispFunc constantp make-synonym-stream string-stream -syn keyword lispFunc continue make-two-way-stream string-trim -syn keyword lispFunc control-error makunbound string-upcase -syn keyword lispFunc copy-alist map string/= -syn keyword lispFunc copy-list map-into string< -syn keyword lispFunc copy-pprint-dispatch mapc string<= -syn keyword lispFunc copy-readtable mapcan string= -syn keyword lispFunc copy-seq mapcar string> -syn keyword lispFunc copy-structure mapcon string>= -syn keyword lispFunc copy-symbol maphash stringp -syn keyword lispFunc copy-tree mapl structure -syn keyword lispFunc cos maplist structure-class -syn keyword lispFunc cosh mask-field structure-object -syn keyword lispFunc count max style-warning -syn keyword lispFunc count-if member sublim -syn keyword lispFunc count-if-not member-if sublis -syn keyword lispFunc ctypecase member-if-not subseq -syn keyword lispFunc debug merge subsetp -syn keyword lispFunc decf merge-pathname subst -syn keyword lispFunc declaim merge-pathnames subst-if -syn keyword lispFunc declaration method subst-if-not -syn keyword lispFunc declare method-combination substitute -syn keyword lispFunc decode-float method-combination-error substitute-if -syn keyword lispFunc decode-universal-time method-qualifiers substitute-if-not -syn keyword lispFunc defclass min subtypep -syn keyword lispFunc defconstant minusp svref -syn keyword lispFunc defgeneric mismatch sxhash -syn keyword lispFunc define-compiler-macro mod symbol -syn keyword lispFunc define-condition most-negative-double-float symbol-function -syn keyword lispFunc define-method-combination most-negative-fixnum symbol-macrolet -syn keyword lispFunc define-modify-macro most-negative-long-float symbol-name -syn keyword lispFunc define-setf-expander most-negative-short-float symbol-package -syn keyword lispFunc define-setf-method most-negative-single-float symbol-plist -syn keyword lispFunc define-symbol-macro most-positive-double-float symbol-value -syn keyword lispFunc defmacro most-positive-fixnum symbolp -syn keyword lispFunc defmethod most-positive-long-float synonym-stream -syn keyword lispFunc defpackage most-positive-short-float synonym-stream-symbol -syn keyword lispFunc defparameter most-positive-single-float sys -syn keyword lispFunc defsetf muffle-warning system -syn keyword lispFunc defstruct multiple-value-bind t -syn keyword lispFunc deftype multiple-value-call tagbody -syn keyword lispFunc defun multiple-value-list tailp -syn keyword lispFunc defvar multiple-value-prog1 tan -syn keyword lispFunc delete multiple-value-seteq tanh -syn keyword lispFunc delete-duplicates multiple-value-setq tenth -syn keyword lispFunc delete-file multiple-values-limit terpri -syn keyword lispFunc delete-if name-char the -syn keyword lispFunc delete-if-not namestring third -syn keyword lispFunc delete-package nbutlast throw -syn keyword lispFunc denominator nconc time -syn keyword lispFunc deposit-field next-method-p trace -syn keyword lispFunc describe nil translate-logical-pathname -syn keyword lispFunc describe-object nintersection translate-pathname -syn keyword lispFunc destructuring-bind ninth tree-equal -syn keyword lispFunc digit-char no-applicable-method truename -syn keyword lispFunc digit-char-p no-next-method truncase -syn keyword lispFunc directory not truncate -syn keyword lispFunc directory-namestring notany two-way-stream -syn keyword lispFunc disassemble notevery two-way-stream-input-stream -syn keyword lispFunc division-by-zero notinline two-way-stream-output-stream -syn keyword lispFunc do nreconc type -syn keyword lispFunc do* nreverse type-error -syn keyword lispFunc do-all-symbols nset-difference type-error-datum -syn keyword lispFunc do-exeternal-symbols nset-exclusive-or type-error-expected-type -syn keyword lispFunc do-external-symbols nstring type-of -syn keyword lispFunc do-symbols nstring-capitalize typecase -syn keyword lispFunc documentation nstring-downcase typep -syn keyword lispFunc dolist nstring-upcase unbound-slot -syn keyword lispFunc dotimes nsublis unbound-slot-instance -syn keyword lispFunc double-float nsubst unbound-variable -syn keyword lispFunc double-float-epsilon nsubst-if undefined-function -syn keyword lispFunc double-float-negative-epsilon nsubst-if-not unexport -syn keyword lispFunc dpb nsubstitute unintern -syn keyword lispFunc dribble nsubstitute-if union -syn keyword lispFunc dynamic-extent nsubstitute-if-not unless -syn keyword lispFunc ecase nth unread -syn keyword lispFunc echo-stream nth-value unread-char -syn keyword lispFunc echo-stream-input-stream nthcdr unsigned-byte -syn keyword lispFunc echo-stream-output-stream null untrace -syn keyword lispFunc ed number unuse-package -syn keyword lispFunc eighth numberp unwind-protect -syn keyword lispFunc elt numerator update-instance-for-different-class -syn keyword lispFunc encode-universal-time nunion update-instance-for-redefined-class -syn keyword lispFunc end-of-file oddp upgraded-array-element-type -syn keyword lispFunc endp open upgraded-complex-part-type -syn keyword lispFunc enough-namestring open-stream-p upper-case-p -syn keyword lispFunc ensure-directories-exist optimize use-package -syn keyword lispFunc ensure-generic-function or use-value -syn keyword lispFunc eq otherwise user -syn keyword lispFunc eql output-stream-p user-homedir-pathname -syn keyword lispFunc equal package values -syn keyword lispFunc equalp package-error values-list -syn keyword lispFunc error package-error-package vector -syn keyword lispFunc etypecase package-name vector-pop -syn keyword lispFunc eval package-nicknames vector-push -syn keyword lispFunc eval-when package-shadowing-symbols vector-push-extend -syn keyword lispFunc evalhook package-use-list vectorp -syn keyword lispFunc evenp package-used-by-list warn -syn keyword lispFunc every packagep warning -syn keyword lispFunc exp pairlis when -syn keyword lispFunc export parse-error wild-pathname-p -syn keyword lispFunc expt parse-integer with-accessors -syn keyword lispFunc extended-char parse-namestring with-compilation-unit -syn keyword lispFunc fboundp pathname with-condition-restarts -syn keyword lispFunc fceiling pathname-device with-hash-table-iterator -syn keyword lispFunc fdefinition pathname-directory with-input-from-string -syn keyword lispFunc ffloor pathname-host with-open-file -syn keyword lispFunc fifth pathname-match-p with-open-stream -syn keyword lispFunc file-author pathname-name with-output-to-string -syn keyword lispFunc file-error pathname-type with-package-iterator -syn keyword lispFunc file-error-pathname pathname-version with-simple-restart -syn keyword lispFunc file-length pathnamep with-slots -syn keyword lispFunc file-namestring peek-char with-standard-io-syntax -syn keyword lispFunc file-position phase write -syn keyword lispFunc file-stream pi write-byte -syn keyword lispFunc file-string-length plusp write-char -syn keyword lispFunc file-write-date pop write-line -syn keyword lispFunc fill position write-sequence -syn keyword lispFunc fill-pointer position-if write-string -syn keyword lispFunc find position-if-not write-to-string -syn keyword lispFunc find-all-symbols pprint y-or-n-p -syn keyword lispFunc find-class pprint-dispatch yes-or-no-p -syn keyword lispFunc find-if pprint-exit-if-list-exhausted zerop -syn keyword lispFunc find-if-not pprint-fill - -syn match lispFunc "\<c[ad]\+r\>" -if exists("g:lispsyntax_clisp") - " CLISP FFI: - syn match lispFunc "\<\(ffi:\)\?with-c-\(place\|var\)\>" - syn match lispFunc "\<\(ffi:\)\?with-foreign-\(object\|string\)\>" - syn match lispFunc "\<\(ffi:\)\?default-foreign-\(language\|library\)\>" - syn match lispFunc "\<\([us]_\?\)\?\(element\|deref\|cast\|slot\|validp\)\>" - syn match lispFunc "\<\(ffi:\)\?set-foreign-pointer\>" - syn match lispFunc "\<\(ffi:\)\?allocate-\(deep\|shallow\)\>" - syn match lispFunc "\<\(ffi:\)\?c-lines\>" - syn match lispFunc "\<\(ffi:\)\?foreign-\(value\|free\|variable\|function\|object\)\>" - syn match lispFunc "\<\(ffi:\)\?foreign-address\(-null\|unsigned\)\?\>" - syn match lispFunc "\<\(ffi:\)\?undigned-foreign-address\>" - syn match lispFunc "\<\(ffi:\)\?c-var-\(address\|object\)\>" - syn match lispFunc "\<\(ffi:\)\?typeof\>" - syn match lispFunc "\<\(ffi:\)\?\(bit\)\?sizeof\>" -" CLISP Macros, functions et al: - syn match lispFunc "\<\(ext:\)\?with-collect\>" - syn match lispFunc "\<\(ext:\)\?letf\*\?\>" - syn match lispFunc "\<\(ext:\)\?finalize\>\>" - syn match lispFunc "\<\(ext:\)\?memoized\>" - syn match lispFunc "\<\(ext:\)\?getenv\>" - syn match lispFunc "\<\(ext:\)\?convert-string-\(to\|from\)-bytes\>" - syn match lispFunc "\<\(ext:\)\?ethe\>" - syn match lispFunc "\<\(ext:\)\?with-gensyms\>" - syn match lispFunc "\<\(ext:\)\?open-http\>" - syn match lispFunc "\<\(ext:\)\?string-concat\>" - syn match lispFunc "\<\(ext:\)\?with-http-\(in\|out\)put\>" - syn match lispFunc "\<\(ext:\)\?with-html-output\>" - syn match lispFunc "\<\(ext:\)\?expand-form\>" - syn match lispFunc "\<\(ext:\)\?\(without-\)\?package-lock\>" - syn match lispFunc "\<\(ext:\)\?re-export\>" - syn match lispFunc "\<\(ext:\)\?saveinitmem\>" - syn match lispFunc "\<\(ext:\)\?\(read\|write\)-\(integer\|float\)\>" - syn match lispFunc "\<\(ext:\)\?\(read\|write\)-\(char\|byte\)-sequence\>" - syn match lispFunc "\<\(custom:\)\?\*system-package-list\*\>" - syn match lispFunc "\<\(custom:\)\?\*ansi\*\>" -endif - -" --------------------------------------------------------------------- -" Lisp Keywords (modifiers): {{{1 -syn keyword lispKey :abort :from-end :overwrite -syn keyword lispKey :adjustable :gensym :predicate -syn keyword lispKey :append :host :preserve-whitespace -syn keyword lispKey :array :if-does-not-exist :pretty -syn keyword lispKey :base :if-exists :print -syn keyword lispKey :case :include :print-function -syn keyword lispKey :circle :index :probe -syn keyword lispKey :conc-name :inherited :radix -syn keyword lispKey :constructor :initial-contents :read-only -syn keyword lispKey :copier :initial-element :rehash-size -syn keyword lispKey :count :initial-offset :rehash-threshold -syn keyword lispKey :create :initial-value :rename -syn keyword lispKey :default :input :rename-and-delete -syn keyword lispKey :defaults :internal :size -syn keyword lispKey :device :io :start -syn keyword lispKey :direction :junk-allowed :start1 -syn keyword lispKey :directory :key :start2 -syn keyword lispKey :displaced-index-offset :length :stream -syn keyword lispKey :displaced-to :level :supersede -syn keyword lispKey :element-type :name :test -syn keyword lispKey :end :named :test-not -syn keyword lispKey :end1 :new-version :type -syn keyword lispKey :end2 :nicknames :use -syn keyword lispKey :error :output :verbose -syn keyword lispKey :escape :output-file :version -syn keyword lispKey :external -" defpackage arguments -syn keyword lispKey :documentation :shadowing-import-from :modern :export -syn keyword lispKey :case-sensitive :case-inverted :shadow :import-from :intern -" lambda list keywords -syn keyword lispKey &allow-other-keys &aux &body -syn keyword lispKey &environment &key &optional &rest &whole -" make-array argument -syn keyword lispKey :fill-pointer -" readtable-case values -syn keyword lispKey :upcase :downcase :preserve :invert -" eval-when situations -syn keyword lispKey :load-toplevel :compile-toplevel :execute -" ANSI Extended LOOP: -syn keyword lispKey :while :until :for :do :if :then :else :when :unless :in -syn keyword lispKey :across :finally :collect :nconc :maximize :minimize :sum -syn keyword lispKey :and :with :initially :append :into :count :end :repeat -syn keyword lispKey :always :never :thereis :from :to :upto :downto :below -syn keyword lispKey :above :by :on :being :each :the :hash-key :hash-keys -syn keyword lispKey :hash-value :hash-values :using :of-type :upfrom :downfrom -if exists("g:lispsyntax_clisp") - " CLISP FFI: - syn keyword lispKey :arguments :return-type :library :full :malloc-free - syn keyword lispKey :none :alloca :in :out :in-out :stdc-stdcall :stdc :c - syn keyword lispKey :language :built-in :typedef :external - syn keyword lispKey :fini :init-once :init-always -endif - -" --------------------------------------------------------------------- -" Standard Lisp Variables: {{{1 -syn keyword lispVar *applyhook* *load-pathname* *print-pprint-dispatch* -syn keyword lispVar *break-on-signals* *load-print* *print-pprint-dispatch* -syn keyword lispVar *break-on-signals* *load-truename* *print-pretty* -syn keyword lispVar *break-on-warnings* *load-verbose* *print-radix* -syn keyword lispVar *compile-file-pathname* *macroexpand-hook* *print-readably* -syn keyword lispVar *compile-file-pathname* *modules* *print-right-margin* -syn keyword lispVar *compile-file-truename* *package* *print-right-margin* -syn keyword lispVar *compile-file-truename* *print-array* *query-io* -syn keyword lispVar *compile-print* *print-base* *random-state* -syn keyword lispVar *compile-verbose* *print-case* *read-base* -syn keyword lispVar *compile-verbose* *print-circle* *read-default-float-format* -syn keyword lispVar *debug-io* *print-escape* *read-eval* -syn keyword lispVar *debugger-hook* *print-gensym* *read-suppress* -syn keyword lispVar *default-pathname-defaults* *print-length* *readtable* -syn keyword lispVar *error-output* *print-level* *standard-input* -syn keyword lispVar *evalhook* *print-lines* *standard-output* -syn keyword lispVar *features* *print-miser-width* *terminal-io* -syn keyword lispVar *gensym-counter* *print-miser-width* *trace-output* - -" --------------------------------------------------------------------- -" Strings: {{{1 -syn region lispString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell -if exists("g:lisp_instring") - syn region lispInString keepend matchgroup=Delimiter start=+"(+rs=s+1 skip=+|.\{-}|+ matchgroup=Delimiter end=+)"+ contains=@lispBaseListCluster,lispInStringString - syn region lispInStringString start=+\\"+ skip=+\\\\+ end=+\\"+ contained -endif - -" --------------------------------------------------------------------- -" Shared with Xlisp, Declarations, Macros, Functions: {{{1 -syn keyword lispDecl defmacro do-all-symbols labels -syn keyword lispDecl defsetf do-external-symbols let -syn keyword lispDecl deftype do-symbols locally -syn keyword lispDecl defun dotimes macrolet -syn keyword lispDecl do* flet multiple-value-bind -if exists("g:lispsyntax_clisp") - " CLISP FFI: - syn match lispDecl "\<\(ffi:\)\?def-c-\(var\|const\|enum\|type\|struct\)\>" - syn match lispDecl "\<\(ffi:\)\?def-call-\(out\|in\)\>" - syn match lispDecl "\<\(ffi:\)\?c-\(function\|struct\|pointer\|string\)\>" - syn match lispDecl "\<\(ffi:\)\?c-ptr\(-null\)\?\>" - syn match lispDecl "\<\(ffi:\)\?c-array\(-ptr\|-max\)\?\>" - syn match lispDecl "\<\(ffi:\)\?[us]\?\(char\|short\|int\|long\)\>" - syn match lispDecl "\<\(win32:\|w32\)\?d\?word\>" - syn match lispDecl "\<\([us]_\?\)\?int\(8\|16\|32\|64\)\(_t\)\?\>" - syn keyword lispDecl size_t off_t time_t handle -endif - -" --------------------------------------------------------------------- -" Numbers: supporting integers and floating point numbers {{{1 -syn match lispNumber "-\=\(\.\d\+\|\d\+\(\.\d*\)\=\)\([dDeEfFlL][-+]\=\d\+\)\=" -syn match lispNumber "-\=\(\d\+/\d\+\)" - -syn match lispEscapeSpecial "\*\w[a-z_0-9-]*\*" -syn match lispEscapeSpecial !#|[^()'`,"; \t]\+|#! -syn match lispEscapeSpecial !#x\x\+! -syn match lispEscapeSpecial !#o\o\+! -syn match lispEscapeSpecial !#b[01]\+! -syn match lispEscapeSpecial !#\\[ -}\~]! -syn match lispEscapeSpecial !#[':][^()'`,"; \t]\+! -syn match lispEscapeSpecial !#([^()'`,"; \t]\+)! -syn match lispEscapeSpecial !#\\\%(Space\|Newline\|Tab\|Page\|Rubout\|Linefeed\|Return\|Backspace\)! -syn match lispEscapeSpecial "\<+[a-zA-Z_][a-zA-Z_0-9-]*+\>" - -syn match lispConcat "\s\.\s" -syn match lispParenError ")" - -" --------------------------------------------------------------------- -" Comments: {{{1 -syn cluster lispCommentGroup contains=lispTodo,@Spell -syn match lispComment ";.*$" contains=@lispCommentGroup -syn region lispCommentRegion start="#|" end="|#" contains=lispCommentRegion,@lispCommentGroup -syn keyword lispTodo contained combak combak: todo todo: - -" --------------------------------------------------------------------- -" Synchronization: {{{1 -syn sync lines=100 - -" --------------------------------------------------------------------- -" Define Highlighting: {{{1 -if !exists("skip_lisp_syntax_inits") - - hi def link lispCommentRegion lispComment - hi def link lispAtomNmbr lispNumber - hi def link lispAtomMark lispMark - hi def link lispInStringString lispString - - hi def link lispAtom Identifier - hi def link lispAtomBarSymbol Special - hi def link lispBarSymbol Special - hi def link lispComment Comment - hi def link lispConcat Statement - hi def link lispDecl Statement - hi def link lispFunc Statement - hi def link lispKey Type - hi def link lispMark Delimiter - hi def link lispNumber Number - hi def link lispParenError Error - hi def link lispEscapeSpecial Type - hi def link lispString String - hi def link lispTodo Todo - hi def link lispVar Statement - - if exists("g:lisp_rainbow") && g:lisp_rainbow != 0 - if &bg == "dark" - hi def hlLevel0 ctermfg=red guifg=red1 - hi def hlLevel1 ctermfg=yellow guifg=orange1 - hi def hlLevel2 ctermfg=green guifg=yellow1 - hi def hlLevel3 ctermfg=cyan guifg=greenyellow - hi def hlLevel4 ctermfg=magenta guifg=green1 - hi def hlLevel5 ctermfg=red guifg=springgreen1 - hi def hlLevel6 ctermfg=yellow guifg=cyan1 - hi def hlLevel7 ctermfg=green guifg=slateblue1 - hi def hlLevel8 ctermfg=cyan guifg=magenta1 - hi def hlLevel9 ctermfg=magenta guifg=purple1 - else - hi def hlLevel0 ctermfg=red guifg=red3 - hi def hlLevel1 ctermfg=darkyellow guifg=orangered3 - hi def hlLevel2 ctermfg=darkgreen guifg=orange2 - hi def hlLevel3 ctermfg=blue guifg=yellow3 - hi def hlLevel4 ctermfg=darkmagenta guifg=olivedrab4 - hi def hlLevel5 ctermfg=red guifg=green4 - hi def hlLevel6 ctermfg=darkyellow guifg=paleturquoise3 - hi def hlLevel7 ctermfg=darkgreen guifg=deepskyblue4 - hi def hlLevel8 ctermfg=blue guifg=darkslateblue - hi def hlLevel9 ctermfg=darkmagenta guifg=darkviolet - endif - endif - -endif - -let b:current_syntax = "lisp" - -" --------------------------------------------------------------------- -" vim: ts=8 nowrap fdm=marker - -endif |