Skip to content

Commit

Permalink
auto merge of #5636 : thestinger/rust/vim, r=luqmana
Browse files Browse the repository at this point in the history
  • Loading branch information
bors committed Mar 30, 2013
2 parents 6dd20c8 + 47011e3 commit 8e30d3f
Showing 1 changed file with 14 additions and 12 deletions.
26 changes: 14 additions & 12 deletions src/etc/vim/syntax/rust.vim
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,20 @@ elseif exists("b:current_syntax")
finish
endif

syn match rustAssert "\<assert\(\w\)*"
syn keyword rustKeyword as break
syn keyword rustKeyword copy do drop else extern
syn keyword rustConditional match if else
syn keyword rustOperator as

syn keyword rustKeyword break copy do drop extern
syn keyword rustKeyword for if impl let log
syn keyword rustKeyword loop match mod once priv pub pure
syn keyword rustKeyword ref return static
syn keyword rustKeyword copy do drop extern
syn keyword rustKeyword for impl let log
syn keyword rustKeyword loop mod once priv pub
syn keyword rustKeyword return
syn keyword rustKeyword unsafe use while
" FIXME: Scoped impl's name is also fallen in this category
syn keyword rustKeyword mod trait struct enum type nextgroup=rustIdentifier skipwhite
syn keyword rustKeyword fn nextgroup=rustFuncName skipwhite
syn keyword rustStorage const mut
syn keyword rustStorage const mut ref static

syn match rustIdentifier contains=rustIdentifierPrime "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
syn match rustFuncName "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
Expand Down Expand Up @@ -71,8 +74,8 @@ syn keyword rustConstant STDIN_FILENO STDOUT_FILENO STDERR_FILENO
syn match rustModPath "\w\(\w\)*::[^<]"he=e-3,me=e-3
syn match rustModPathSep "::"

syn match rustFuncCall "\w\(\w\)*("he=e-1,me=e-1 contains=rustAssert
syn match rustFuncCall "\w\(\w\)*::<"he=e-3,me=e-3 contains=rustAssert " foo::<T>();
syn match rustFuncCall "\w\(\w\)*("he=e-1,me=e-1
syn match rustFuncCall "\w\(\w\)*::<"he=e-3,me=e-3 " foo::<T>();

syn match rustMacro '\w\(\w\)*!'
syn match rustMacro '#\w\(\w\)*'
Expand Down Expand Up @@ -110,8 +113,7 @@ syn match rustCharacter "'\([^'\\]\|\\\(['nrt\\\"]\|x\x\{2}\|u\x\{4}\|U\x\{8
syn region rustComment start="/\*" end="\*/" contains=rustComment,rustTodo
syn region rustComment start="//" skip="\\$" end="$" contains=rustTodo keepend


syn keyword rustTodo TODO FIXME XXX NB unsafe
syn keyword rustTodo contained TODO FIXME XXX NB

hi def link rustHexNumber rustNumber
hi def link rustBinNumber rustNumber
Expand All @@ -126,8 +128,9 @@ hi def link rustBoolean Boolean
hi def link rustConstant Constant
hi def link rustSelf Constant
hi def link rustFloat Float
hi def link rustAssert Keyword
hi def link rustOperator Operator
hi def link rustKeyword Keyword
hi def link rustConditional Conditional
hi def link rustIdentifier Identifier
hi def link rustModPath Include
hi def link rustFuncName Function
Expand All @@ -140,7 +143,6 @@ hi def link rustStorage StorageClass
hi def link rustLifetime Special

" Other Suggestions:
" hi rustAssert ctermfg=yellow
" hi rustMacro ctermfg=magenta

syn sync minlines=200
Expand Down

0 comments on commit 8e30d3f

Please sign in to comment.