Mercurial > vim
diff runtime/syntax/lisp.vim @ 557:862863033fdd v7.0158
updated for version 7.0158
author | vimboss |
---|---|
date | Wed, 23 Nov 2005 21:25:05 +0000 |
parents | f9eaf0a9872d |
children | 96cd8222a819 |
line wrap: on
line diff
--- a/runtime/syntax/lisp.vim +++ b/runtime/syntax/lisp.vim @@ -2,19 +2,13 @@ " Language: Lisp " Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz> " Last Change: Oct 12, 2005 -" Version: 16 +" Version: 17a " URL: http://mysite.verizon.net/astronaut/vim/index.html#vimlinks_syntax " " Thanks to F Xavier Noria for a list of 978 Common Lisp symbols " taken from the HyperSpec -" -" Options: -" g:lisp_instring : if it exists, then "(...") strings are highlighted -" as if the contents were lisp. Useful for AutoLisp. -" Put -" let g:lisp_instring=1 -" into your <.vimrc> if you want this option. +" --------------------------------------------------------------------- " Load Once: {{{1 " For vim-version 5.x: Clear all syntax items " For vim-version 6.x: Quit when a syntax file was already loaded @@ -30,6 +24,7 @@ else set iskeyword=42,43,45,47-58,60-62,64-90,97-122,_ 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,lispSpecial,lispSymbol,lispVar,lispLeadWhite @@ -39,6 +34,7 @@ else syn cluster lispListCluster contains=@lispBaseListCluster,lispString endif +" --------------------------------------------------------------------- " Lists: {{{1 syn match lispSymbol contained ![^()'`,"; \t]\+! syn match lispBarSymbol contained !|..\{-}|! @@ -58,6 +54,7 @@ else 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 @@ -68,6 +65,7 @@ syn region lispAtomList contained 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 @@ -386,6 +384,7 @@ syn keyword lispFunc find-if-not p syn match lispFunc "\<c[ad]\+r\>" +" --------------------------------------------------------------------- " Lisp Keywords (modifiers): {{{1 syn keyword lispKey :abort :from-end :overwrite syn keyword lispKey :adjustable :gensym :predicate @@ -414,6 +413,7 @@ syn keyword lispKey :error :outpu syn keyword lispKey :escape :output-file :version syn keyword lispKey :external +" --------------------------------------------------------------------- " Standard Lisp Variables: {{{1 syn keyword lispVar *applyhook* *load-pathname* *print-pprint-dispatch* syn keyword lispVar *break-on-signals* *load-print* *print-pprint-dispatch* @@ -434,6 +434,7 @@ syn keyword lispVar *evalhook* *pr 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=+"+ if exists("g:lisp_instring") @@ -441,6 +442,7 @@ if exists("g:lisp_instring") 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 @@ -448,6 +450,7 @@ syn keyword lispDecl deftype do-sy syn keyword lispDecl defun dotimes macrolet syn keyword lispDecl do* flet multiple-value-bind +" --------------------------------------------------------------------- " Numbers: supporting integers and floating point numbers {{{1 syn match lispNumber "-\=\(\.\d\+\|\d\+\(\.\d*\)\=\)\(e[-+]\=\d\+\)\=" @@ -463,6 +466,7 @@ syn match lispSpecial !#([^()'`,"; \t] syn match lispConcat "\s\.\s" syn match lispParenError ")" +" --------------------------------------------------------------------- " Comments: {{{1 syn cluster lispCommentGroup contains=lispTodo,@Spell syn match lispComment ";.*$" contains=@lispCommentGroup @@ -471,19 +475,16 @@ syn case ignore syn keyword lispTodo contained combak combak: todo todo: syn case match +" --------------------------------------------------------------------- " Synchronization: {{{1 syn sync lines=100 +" --------------------------------------------------------------------- " Define Highlighting: {{{1 " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet -if version >= 508 || !exists("did_lisp_syntax_inits") - if version < 508 - let did_lisp_syntax_inits = 1 - command -nargs=+ HiLink hi link <args> - else - command -nargs=+ HiLink hi def link <args> - endif +if version >= 508 + command -nargs=+ HiLink hi def link <args> HiLink lispCommentRegion lispComment HiLink lispAtomNmbr lispNumber @@ -508,27 +509,27 @@ if version >= 508 || !exists("did_lisp_s if exists("g:lisp_rainbow") && g:lisp_rainbow != 0 if &bg == "dark" - hi hlLevel0 ctermfg=red guifg=red1 - hi hlLevel1 ctermfg=yellow guifg=orange1 - hi hlLevel2 ctermfg=green guifg=yellow1 - hi hlLevel3 ctermfg=cyan guifg=greenyellow - hi hlLevel4 ctermfg=magenta guifg=green1 - hi hlLevel5 ctermfg=red guifg=springgreen1 - hi hlLevel6 ctermfg=yellow guifg=cyan1 - hi hlLevel7 ctermfg=green guifg=slateblue1 - hi hlLevel8 ctermfg=cyan guifg=magenta1 - hi hlLevel9 ctermfg=magenta guifg=purple1 + 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 hlLevel0 ctermfg=red guifg=red3 - hi hlLevel1 ctermfg=darkyellow guifg=orangered3 - hi hlLevel2 ctermfg=darkgreen guifg=orange2 - hi hlLevel3 ctermfg=blue guifg=yellow3 - hi hlLevel4 ctermfg=darkmagenta guifg=olivedrab4 - hi hlLevel5 ctermfg=red guifg=green4 - hi hlLevel6 ctermfg=darkyellow guifg=paleturquoise3 - hi hlLevel7 ctermfg=darkgreen guifg=deepskyblue4 - hi hlLevel8 ctermfg=blue guifg=darkslateblue - hi hlLevel9 ctermfg=darkmagenta guifg=darkviolet + 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 @@ -537,4 +538,5 @@ endif let b:current_syntax = "lisp" +" --------------------------------------------------------------------- " vim: ts=8 nowrap fdm=marker