Skip to content

Commit

Permalink
merge with upstream
Browse files Browse the repository at this point in the history
  • Loading branch information
dalev committed Sep 29, 2014
2 parents d007e24 + 779cf9f commit 5431b49
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 7 deletions.
10 changes: 7 additions & 3 deletions ftplugin/racket.vim
Expand Up @@ -8,13 +8,17 @@ setl lispwords+=module,module*,module+,parameterize,let-values,let*-values,letre
setl lispwords+=define-values,opt-lambda,case-lambda,syntax-rules,with-syntax,syntax-case
setl lispwords+=define-signature,unit,unit/sig,compund-unit/sig,define-values/invoke-unit/sig

" match
setl lispwords+=match,match*

" kanren
setl lispwords+=fresh,run,run*,project,conde,condu

" loops
setl lispwords+=for,for/list,for/fold,for*,for*/list,for*/fold,for/or

setl lispwords+=match,match*,match/values,define/match,match-lambda,match-lambda*,match-lambda**
setl lispwords+=match-let,match-let*,match-let-values,match-let*-values
setl lispwords+=match-letrec,match-define,match-define-values
setl lisp

" Enable auto begin new comment line when continuing from an old comment line
setl comments+=:;
setl formatoptions+=r
15 changes: 11 additions & 4 deletions syntax/racket.vim
Expand Up @@ -56,6 +56,12 @@ syn keyword racketSyntax define* define*-values define*-syntax define*-syntaxes
syn keyword racketSyntax package? package-exported-identifiers package-original-identifiers
syn keyword racketSyntax block #%stratified-body

" 9 Pattern Matching
syn keyword racketSyntax match match* match/values define/match
syn keyword racketSyntax match-lambda match-lambda* match-lambda**
syn keyword racketSyntax match-let match-let* match-let-values match-let*-values
syn keyword racketSyntax match-letrec match-define match-define-values

" 12.5 Writing
syn keyword racketSyntax write display displayln print
syn keyword racketSyntax fprintf printf eprintf format
Expand Down Expand Up @@ -404,6 +410,7 @@ syn region racketStruc matchgroup=Delimiter start="#\["rs=s+2 matchgroup=Delimit

" Simple literals
syn region racketString start=/\%(\\\)\@<!"/ skip=/\\[\\"]/ end=/"/
syn region racketString start=/#<<\z(.*\)$/ end=/^\z1$/

syn cluster racketNormal add=racketError,racketConstant,racketStruc,racketString
syn cluster racketQuotedOrNormal add=racketString
Expand Down Expand Up @@ -455,7 +462,7 @@ syn keyword racketBoolean #t #f #true #false #T #F

syn match racketError "\<#\\\k*\>"

syn match racketChar "\<#\\.\>"
syn match racketChar "\<#\\.\w\@!"
syn match racketChar "\<#\\space\>"
syn match racketChar "\<#\\newline\>"
syn match racketChar "\<#\\return\>"
Expand All @@ -482,9 +489,9 @@ syn match racketExtSyntax "#:\k\+"
syn cluster racketNormal add=racketExtFunc,racketExtSyntax

" syntax quoting, unquoting and quasiquotation
syn region racketQuoted matchgroup=Delimiter start="['`]" end=![ \t()\[\]";]!me=e-1 contains=ALLBUT,@racketQuotedStuff,@racketQuotedOrNormal
syn region racketQuoted matchgroup=Delimiter start="['`](" matchgroup=Delimiter end=")" contains=ALLBUT,@racketQuotedStuff,@racketQuotedOrNormal
syn region racketQuoted matchgroup=Delimiter start="['`]#(" matchgroup=Delimiter end=")" contains=ALLBUT,@racketQuotedStuff,@racketQuotedOrNormal
syn region racketQuoted matchgroup=Delimiter start="['`]" end=![ \t()\[\]";]!me=e-1 contains=@racketQuotedStuff,@racketQuotedOrNormal
syn region racketQuoted matchgroup=Delimiter start="['`](" matchgroup=Delimiter end=")" contains=@racketQuotedStuff,@racketQuotedOrNormal
syn region racketQuoted matchgroup=Delimiter start="['`]\?#(" matchgroup=Delimiter end=")" contains=@racketQuotedStuff,@racketQuotedOrNormal

syn region racketUnquote matchgroup=Delimiter start="\<#,"rs=s+2 end=![ \t\[\]()";]!re=e-1,me=e-1 contained contains=@racketNormal
syn region racketUnquote matchgroup=Delimiter start="\<#,@"rs=s+3 end=![ \t\[\]()";]!re=e-1,me=e-1 contained contains=@racketNormal
Expand Down

0 comments on commit 5431b49

Please sign in to comment.