diff options
Diffstat (limited to '')
| -rw-r--r-- | after/syntax/html.vim | 22 | ||||
| -rw-r--r-- | after/syntax/rust.vim | 2 | ||||
| -rw-r--r-- | ftdetect/polyglot.vim | 2 | ||||
| -rw-r--r-- | ftplugin/eelixir.vim | 91 | ||||
| -rw-r--r-- | ftplugin/rust.vim | 23 | ||||
| -rw-r--r-- | ftplugin/scala.vim | 1 | ||||
| -rw-r--r-- | indent/eelixir.vim | 72 | ||||
| -rw-r--r-- | indent/scala.vim | 14 | ||||
| -rw-r--r-- | syntax/eelixir.vim | 66 | ||||
| -rw-r--r-- | syntax/elixir.vim | 3 | ||||
| -rw-r--r-- | syntax/go.vim | 8 | ||||
| -rw-r--r-- | syntax/php.vim | 6 | ||||
| -rw-r--r-- | syntax/rust.vim | 29 | 
13 files changed, 303 insertions, 36 deletions
| diff --git a/after/syntax/html.vim b/after/syntax/html.vim index 104642c2..8c8e7381 100644 --- a/after/syntax/html.vim +++ b/after/syntax/html.vim @@ -9,6 +9,28 @@ syn region coffeeScript start=#<script [^>]*type="text/coffeescript"[^>]*>#  \                       end=#</script>#me=s-1 keepend  \                       contains=@htmlCoffeeScript,htmlScriptTag,@htmlPreproc  \                       containedin=htmlHead +if !exists("g:less_html_style_tags") +  let g:less_html_style_tags = 1 +endif + +if !g:less_html_style_tags +  finish +endif + +" Unset (but preserve) so that less will run. +let s:pre_less_cur_syn = b:current_syntax +unlet b:current_syntax + +" Inspired by code from github.com/kchmck/vim-coffee-script +" and the html syntax file included with vim 7.4. + +syn include @htmlLess syntax/less.vim + +" We have to explicitly add to htmlHead (containedin) as that region specifies 'contains'. +syn region lessStyle start=+<style [^>]*type *=[^>]*text/less[^>]*>+ keepend end=+</style>+ contains=@htmlLess,htmlTag,htmlEndTag,htmlCssStyleComment,@htmlPreproc containedin=htmlHead + +" Reset since 'less' isn't really the current_syntax. +let b:current_syntax = s:pre_less_cur_syn  " Language:     Colorful CSS Color Preview  " Author:       Aristotle Pagaltzis <pagaltzis@gmx.de> diff --git a/after/syntax/rust.vim b/after/syntax/rust.vim index 1ab8394e..735c1e15 100644 --- a/after/syntax/rust.vim +++ b/after/syntax/rust.vim @@ -29,5 +29,3 @@ hi link rustNiceOperator Operator  if !exists('g:rust_conceal_mod_path')      hi! link Conceal Operator  endif - -setlocal conceallevel=2 diff --git a/ftdetect/polyglot.vim b/ftdetect/polyglot.vim index 59621bdd..402804b6 100644 --- a/ftdetect/polyglot.vim +++ b/ftdetect/polyglot.vim @@ -14,6 +14,8 @@ autocmd BufNewFile,BufRead * call s:DetectCoffee()  au BufRead,BufNewFile *.csv,*.dat,*.tsv,*.tab set filetype=csv  autocmd BufNewFile,BufReadPost *.feature,*.story set filetype=cucumber  au BufNewFile,BufRead Dockerfile set filetype=dockerfile +au BufRead,BufNewFile *.eex set filetype=eelixir +au FileType eelixir setl sw=2 sts=2 et iskeyword+=!,?  au BufRead,BufNewFile *.ex,*.exs set filetype=elixir  au FileType elixir setl sw=2 sts=2 et iskeyword+=!,?  autocmd BufNewFile,BufRead *.em set filetype=ember-script diff --git a/ftplugin/eelixir.vim b/ftplugin/eelixir.vim new file mode 100644 index 00000000..f97291ba --- /dev/null +++ b/ftplugin/eelixir.vim @@ -0,0 +1,91 @@ +" Vim filetype plugin +" Language: Embedded Elixir +" URL:      https://github.com/elixir-lang/vim-elixir + +if exists("b:did_ftplugin") +  finish +endif + +let s:save_cpo = &cpo +set cpo-=C + +let s:undo_ftplugin = "" +let s:browsefilter = "All Files (*.*)\t*.*\n" +let s:match_words = "" + +if !exists("g:eelixir_default_subtype") +  let g:eelixir_default_subtype = "html" +endif + +if !exists("b:eelixir_subtype") +  let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$") +  let b:eelixir_subtype = matchstr(s:lines,'eelixir_subtype=\zs\w\+') +  if b:eelixir_subtype == '' +    let b:eelixir_subtype = matchstr(&filetype,'^eex\.\zs\w\+') +  endif +  if b:eelixir_subtype == '' +    let b:eelixir_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.eex\|\.eelixir\)\+$','',''),'\.\zs\w\+$') +  endif +  if b:eelixir_subtype == 'ex' +    let b:eelixir_subtype = 'elixir' +  elseif b:eelixir_subtype == 'exs' +    let b:eelixir_subtype = 'elixir' +  elseif b:eelixir_subtype == 'yml' +    let b:eelixir_subtype = 'yaml' +  elseif b:eelixir_subtype == 'js' +    let b:eelixir_subtype = 'javascript' +  elseif b:eelixir_subtype == 'txt' +    " Conventional; not a real file type +    let b:eelixir_subtype = 'text' +  elseif b:eelixir_subtype == '' +    let b:eelixir_subtype = g:eelixir_default_subtype +  endif +endif + +if exists("b:eelixir_subtype") && b:eelixir_subtype != '' +  exe "runtime! ftplugin/".b:eelixir_subtype.".vim ftplugin/".b:eelixir_subtype."_*.vim ftplugin/".b:eelixir_subtype."/*.vim" +else +  runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim +endif +unlet! b:did_ftplugin + +" Override our defaults if these were set by an included ftplugin. +if exists("b:undo_ftplugin") +  let s:undo_ftplugin = b:undo_ftplugin +  unlet b:undo_ftplugin +endif +if exists("b:browsefilter") +  let s:browsefilter = b:browsefilter +  unlet b:browsefilter +endif +if exists("b:match_words") +  let s:match_words = b:match_words +  unlet b:match_words +endif + +runtime! ftplugin/elixir.vim ftplugin/elixir_*.vim ftplugin/elixir/*.vim +let b:did_ftplugin = 1 + +" Combine the new set of values with those previously included. +if exists("b:undo_ftplugin") +  let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin +endif +if exists ("b:browsefilter") +  let s:browsefilter = substitute(b:browsefilter,'\cAll Files (\*\.\*)\t\*\.\*\n','','') . s:browsefilter +endif +if exists("b:match_words") +  let s:match_words = b:match_words . ',' . s:match_words +endif + +" Load the combined list of match_words for matchit.vim +if exists("loaded_matchit") +  let b:match_words = s:match_words +endif + +setlocal comments=:<%# +setlocal commentstring=<%#\ %s\ %> + +let b:undo_ftplugin = "setl cms< " +      \ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin + +let &cpo = s:save_cpo diff --git a/ftplugin/rust.vim b/ftplugin/rust.vim index 39edc1f9..09eaf62d 100644 --- a/ftplugin/rust.vim +++ b/ftplugin/rust.vim @@ -56,6 +56,21 @@ if exists("g:loaded_delimitMate")  	let b:delimitMate_excluded_regions = delimitMate#Get("excluded_regions") . ',rustLifetimeCandidate,rustGenericLifetimeCandidate'  endif +if has("folding") && exists('g:rust_fold') && g:rust_fold != 0 +	let b:rust_set_foldmethod=1 +	setlocal foldmethod=syntax +	if g:rust_fold == 2 +		setlocal foldlevel< +	else +		setlocal foldlevel=99 +	endif +endif + +if has('conceal') && exists('g:rust_conceal') +	let b:rust_set_conceallevel=1 +	setlocal conceallevel=2 +endif +  " Motion Commands {{{1  " Bind motion commands to support hanging indents @@ -103,6 +118,14 @@ let b:undo_ftplugin = "  		\|else  		  \|unlet! b:delimitMate_excluded_regions  		\|endif +		\|if exists('b:rust_set_foldmethod') +		  \|setlocal foldmethod< foldlevel< +		  \|unlet b:rust_set_foldmethod +		\|endif +		\|if exists('b:rust_set_conceallevel') +		  \|setlocal conceallevel< +		  \|unlet b:rust_set_conceallevel +		\|endif  		\|unlet! b:rust_last_rustc_args b:rust_last_args  		\|delcommand RustRun  		\|delcommand RustExpand diff --git a/ftplugin/scala.vim b/ftplugin/scala.vim index 18941e07..3f0de967 100644 --- a/ftplugin/scala.vim +++ b/ftplugin/scala.vim @@ -1,3 +1,4 @@ +setlocal formatoptions+=ro  setlocal commentstring=//%s  let &l:include = '^\s*import'  let &l:includeexpr = 'substitute(v:fname,"\\.","/","g")' diff --git a/indent/eelixir.vim b/indent/eelixir.vim new file mode 100644 index 00000000..7b17c104 --- /dev/null +++ b/indent/eelixir.vim @@ -0,0 +1,72 @@ +" Vim indent file +" Language: Embedded Elixir +" URL:      https://github.com/elixir-lang/vim-elixir + + +if exists("b:did_indent") +  finish +endif + +runtime! indent/elixir.vim +unlet! b:did_indent +setlocal indentexpr= + +if exists("b:eelixir_subtype") +  exe "runtime! indent/".b:eelixir_subtype.".vim" +else +  runtime! indent/html.vim +endif +unlet! b:did_indent + +if &l:indentexpr == '' +  if &l:cindent +    let &l:indentexpr = 'cindent(v:lnum)' +  else +    let &l:indentexpr = 'indent(prevnonblank(v:lnum-1))' +  endif +endif +let b:eelixir_subtype_indentexpr = &l:indentexpr + +let b:did_indent = 1 + +setlocal indentexpr=GetEelixirIndent() +setlocal indentkeys=o,O,*<Return>,<>>,{,},0),0],o,O,!^F,=end,=else,=elsif,=catch,=after,=rescue + +" Only define the function once. +if exists("*GetEelixirIndent") +  finish +endif + +function! GetEelixirIndent(...) +  if a:0 && a:1 == '.' +    let v:lnum = line('.') +  elseif a:0 && a:1 =~ '^\d' +    let v:lnum = a:1 +  endif +  let vcol = col('.') +  call cursor(v:lnum,1) +  let inelixir = searchpair('<%','','%>','W') +  call cursor(v:lnum,vcol) +  if inelixir && getline(v:lnum) !~ '^<%\|^\s*%>' +    let ind = GetElixirIndent() +  else +    exe "let ind = ".b:eelixir_subtype_indentexpr +  endif +  let lnum = prevnonblank(v:lnum-1) +  let line = getline(lnum) +  let cline = getline(v:lnum) +  if cline =~# '^\s*<%\s*\%(end\|else\|elsif\|catch\|after\|rescue\)\>.*%>' +    let ind = ind - &sw +  elseif line =~# '\S\s*<%\s*end\s*%>' +    let ind = ind - &sw +  endif +  if line =~# '<%[=%]\=\s*.*\<do\s*%>' +    let ind = ind + &sw +  elseif line =~# '<%\s*\%(else\|elsif\|catch\|after\|rescue\)\>.*%>' +    let ind = ind + &sw +  endif +  if cline =~# '^\s*%>\s*$' +    let ind = ind - &sw +  endif +  return ind +endfunction diff --git a/indent/scala.vim b/indent/scala.vim index 4053a83c..f533a514 100644 --- a/indent/scala.vim +++ b/indent/scala.vim @@ -36,12 +36,12 @@ endfunction  function! scala#GetLine(lnum)    let line = substitute(getline(a:lnum), '//.*$', '', '') -  let line = substitute(line, '"[^"]*"', '""', 'g') +  let line = substitute(line, '"\(.\|\\"\)\{-}"', '""', 'g')    return line  endfunction  function! scala#CountBrackets(line, openBracket, closedBracket) -  let line = substitute(a:line, '"\(.\|\\"\)*"', '', 'g') +  let line = substitute(a:line, '"\(.\|\\"\)\{-}"', '', 'g')    let open = substitute(line, '[^' . a:openBracket . ']', '', 'g')    let close = substitute(line, '[^' . a:closedBracket . ']', '', 'g')    return strlen(open) - strlen(close) @@ -102,7 +102,7 @@ function! scala#CurlyMatcher()    if scala#CountParens(scala#GetLine(matchline)) < 0      let savedpos = getpos('.')      call setpos('.', [savedpos[0], matchline, 9999, savedpos[3]]) -    call searchpos('{', 'Wb') +    call searchpos('{', 'Wbc')      call searchpos(')', 'Wb')      let [lnum, colnum] = searchpairpos('(', '', ')', 'Wbn')      call setpos('.', savedpos) @@ -133,7 +133,7 @@ function! scala#GetLineAndColumnThatMatchesBracket(openBracket, closedBracket)      call searchpos(a:closedBracket . '\ze[^' . a:closedBracket . a:openBracket . ']*' . a:openBracket, 'W')    else      call setpos('.', [savedpos[0], savedpos[1], 9999, savedpos[3]]) -    call searchpos(a:closedBracket, 'Wb') +    call searchpos(a:closedBracket, 'Wbc')    endif    let [lnum, colnum] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbn')    call setpos('.', savedpos) @@ -382,7 +382,11 @@ function! GetScalaIndent()    let curline = scala#GetLine(curlnum)    if prevline =~ '^\s*/\*\*' -    return ind + 1 +    if prevline =~ '\*/\s*$' +      return ind +    else +      return ind + 1 +    endif    endif    if curline =~ '^\s*\*' diff --git a/syntax/eelixir.vim b/syntax/eelixir.vim new file mode 100644 index 00000000..f3ea65d4 --- /dev/null +++ b/syntax/eelixir.vim @@ -0,0 +1,66 @@ +" Vim syntax file +" Language: Embedded Elixir +" URL:      https://github.com/elixir-lang/vim-elixir + +if exists("b:current_syntax") +  finish +endif + +if !exists("main_syntax") +  let main_syntax = 'eelixir' +endif + +if !exists("g:eelixir_default_subtype") +  let g:eelixir_default_subtype = "html" +endif + +if !exists("b:eelixir_subtype") +  let s:lines = getline(1)."\n".getline(2)."\n".getline(3)."\n".getline(4)."\n".getline(5)."\n".getline("$") +  let b:eelixir_subtype = matchstr(s:lines,'eelixir_subtype=\zs\w\+') +  if b:eelixir_subtype == '' +    let b:eelixir_subtype = matchstr(&filetype,'^eex\.\zs\w\+') +  endif +  if b:eelixir_subtype == '' +    let b:eelixir_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.eex\|\.eelixir\)\+$','',''),'\.\zs\w\+$') +  endif +  if b:eelixir_subtype == 'ex' +    let b:eelixir_subtype = 'elixir' +  elseif b:eelixir_subtype == 'exs' +    let b:eelixir_subtype = 'elixir' +  elseif b:eelixir_subtype == 'yml' +    let b:eelixir_subtype = 'yaml' +  elseif b:eelixir_subtype == 'js' +    let b:eelixir_subtype = 'javascript' +  elseif b:eelixir_subtype == 'txt' +    " Conventional; not a real file type +    let b:eelixir_subtype = 'text' +  elseif b:eelixir_subtype == '' +    let b:eelixir_subtype = g:eelixir_default_subtype +  endif +endif + +if exists("b:eelixir_subtype") && b:eelixir_subtype != '' +  exe "runtime! syntax/".b:eelixir_subtype.".vim" +  unlet! b:current_syntax +endif + +syn include @elixirTop syntax/elixir.vim + +syn cluster eelixirRegions contains=eelixirBlock,eelixirExpression,eelixirComment + +exe 'syn region  eelixirExpression matchgroup=eelixirDelimiter start="<%"  end="%\@<!%>" contains=@elixirTop  containedin=ALLBUT,@eelixirRegions keepend' +exe 'syn region  eelixirExpression matchgroup=eelixirDelimiter start="<%=" end="%\@<!%>" contains=@elixirTop  containedin=ALLBUT,@eelixirRegions keepend' +exe 'syn region  eelixirQuote      matchgroup=eelixirDelimiter start="<%%" end="%\@<!%>" contains=@elixirTop  containedin=ALLBUT,@eelixirRegions keepend' +exe 'syn region  eelixirComment    matchgroup=eelixirDelimiter start="<%#" end="%\@<!%>" contains=elixirTodo,@Spell containedin=ALLBUT,@eelixirRegions keepend' + +" Define the default highlighting. + +hi def link eelixirDelimiter PreProc +hi def link eelixirComment   Comment + +let b:current_syntax = 'eelixir' + +if main_syntax == 'eelixir' +  unlet main_syntax +endif + diff --git a/syntax/elixir.vim b/syntax/elixir.vim index 8f94ff5e..a0c8f289 100644 --- a/syntax/elixir.vim +++ b/syntax/elixir.vim @@ -117,7 +117,7 @@ syn keyword elixirDelegateDefine      defdelegate    nextgroup=elixirDelegateDec  syn keyword elixirOverridableDefine   defoverridable nextgroup=elixirOverridableDeclaration skipwhite skipnl  syn keyword elixirExceptionDefine     defexception   nextgroup=elixirExceptionDeclaration   skipwhite skipnl  syn keyword elixirCallbackDefine      defcallback    nextgroup=elixirCallbackDeclaration    skipwhite skipnl -syn keyword elixirStructDefine        defstruct      nextgroup=elixirStructDeclaration      skipwhite skipnl +syn keyword elixirStructDefine        defstruct      skipwhite skipnl  " Declarations  syn match  elixirModuleDeclaration      "[^[:space:];#<]\+"        contained contains=elixirAlias nextgroup=elixirBlock     skipwhite skipnl @@ -131,7 +131,6 @@ syn region elixirDelegateDeclaration    start='\['     end='\]'    contained con  syn match  elixirOverridableDeclaration "[^[:space:];#<]\+"        contained contains=elixirAlias                           skipwhite skipnl  syn match  elixirExceptionDeclaration   "[^[:space:];#<]\+"        contained contains=elixirAlias                           skipwhite skipnl  syn match  elixirCallbackDeclaration    "[^[:space:];#<,()\[\]]\+" contained contains=elixirFunctionDeclaration             skipwhite skipnl -syn match  elixirStructDeclaration      "[^[:space:];#<]\+"        contained                      nextgroup=elixirArguments skipwhite skipnl  syn cluster elixirDeclaration contains=elixirFunctionDeclaration,elixirModuleDeclaration,elixirProtocolDeclaration,elixirImplDeclaration,elixirRecordDeclaration,elixirMacroDeclaration,elixirDelegateDeclaration,elixirOverridableDeclaration,elixirExceptionDeclaration,elixirCallbackDeclaration,elixirStructDeclaration diff --git a/syntax/go.vim b/syntax/go.vim index 76377829..5aabac70 100644 --- a/syntax/go.vim +++ b/syntax/go.vim @@ -50,19 +50,19 @@ if !exists("go_highlight_trailing_whitespace_error")  endif  if !exists("go_highlight_operators") -	let go_highlight_operators = 1 +	let go_highlight_operators = 0  endif  if !exists("go_highlight_functions") -	let go_highlight_functions = 1 +	let go_highlight_functions = 0  endif  if !exists("go_highlight_methods") -	let go_highlight_methods = 1 +	let go_highlight_methods = 0  endif  if !exists("go_highlight_structs") -	let go_highlight_structs = 1 +	let go_highlight_structs = 0  endif  syn case match diff --git a/syntax/php.vim b/syntax/php.vim index 7a3eee73..475d95e7 100644 --- a/syntax/php.vim +++ b/syntax/php.vim @@ -3,7 +3,7 @@  "  " {{{ BLOCK: Last-modified -" Thu, 10 Jul 2014 06:50:23 +0000, PHP 5.6.0RC2 +" Thu, 14 Aug 2014 09:05:56 +0000, PHP 5.6.0RC2  " }}}  " @@ -182,7 +182,7 @@ endif  syn case match  if index(g:php_syntax_extensions_enabled, "core") >= 0 && index(g:php_syntax_extensions_disabled, "core") < 0 && ( ! exists("b:php_syntax_extensions_enabled") || index(b:php_syntax_extensions_enabled, "core") >= 0) && ( ! exists("b:php_syntax_extensions_disabled") || index(b:php_syntax_extensions_disabled, "core") < 0)  " Core constants -syn keyword phpConstants DEBUG_BACKTRACE_IGNORE_ARGS DEBUG_BACKTRACE_PROVIDE_OBJECT DEFAULT_INCLUDE_PATH E_ALL E_COMPILE_ERROR E_COMPILE_WARNING E_CORE_ERROR E_CORE_WARNING E_DEPRECATED E_ERROR E_NOTICE E_PARSE E_RECOVERABLE_ERROR E_STRICT E_USER_DEPRECATED E_USER_ERROR E_USER_NOTICE E_USER_WARNING E_WARNING FALSE NULL PEAR_EXTENSION_DIR PEAR_INSTALL_DIR PHP_BINARY PHP_BINDIR PHP_CONFIG_FILE_PATH PHP_CONFIG_FILE_SCAN_DIR PHP_DATADIR PHP_DEBUG PHP_EOL PHP_EXTENSION_DIR PHP_EXTRA_VERSION PHP_INT_MAX PHP_INT_SIZE PHP_LIBDIR PHP_LOCALSTATEDIR PHP_MAJOR_VERSION PHP_MANDIR PHP_MAXPATHLEN PHP_MINOR_VERSION PHP_OS PHP_OUTPUT_HANDLER_CLEAN PHP_OUTPUT_HANDLER_CLEANABLE PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_DISABLED PHP_OUTPUT_HANDLER_END PHP_OUTPUT_HANDLER_FINAL PHP_OUTPUT_HANDLER_FLUSH PHP_OUTPUT_HANDLER_FLUSHABLE PHP_OUTPUT_HANDLER_REMOVABLE PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_STARTED PHP_OUTPUT_HANDLER_STDFLAGS PHP_OUTPUT_HANDLER_WRITE PHP_PREFIX PHP_RELEASE_VERSION PHP_SAPI PHP_SHLIB_SUFFIX PHP_SYSCONFDIR PHP_VERSION PHP_VERSION_ID PHP_ZTS STDERR STDIN STDOUT TRUE UPLOAD_ERR_CANT_WRITE UPLOAD_ERR_EXTENSION UPLOAD_ERR_FORM_SIZE UPLOAD_ERR_INI_SIZE UPLOAD_ERR_NO_FILE UPLOAD_ERR_NO_TMP_DIR UPLOAD_ERR_OK UPLOAD_ERR_PARTIAL ZEND_DEBUG_BUILD ZEND_THREAD_SAFE contained +syn keyword phpConstants DEBUG_BACKTRACE_IGNORE_ARGS DEBUG_BACKTRACE_PROVIDE_OBJECT DEFAULT_INCLUDE_PATH E_ALL E_COMPILE_ERROR E_COMPILE_WARNING E_CORE_ERROR E_CORE_WARNING E_DEPRECATED E_ERROR E_NOTICE E_PARSE E_RECOVERABLE_ERROR E_STRICT E_USER_DEPRECATED E_USER_ERROR E_USER_NOTICE E_USER_WARNING E_WARNING PEAR_EXTENSION_DIR PEAR_INSTALL_DIR PHP_BINARY PHP_BINDIR PHP_CONFIG_FILE_PATH PHP_CONFIG_FILE_SCAN_DIR PHP_DATADIR PHP_DEBUG PHP_EOL PHP_EXTENSION_DIR PHP_EXTRA_VERSION PHP_INT_MAX PHP_INT_SIZE PHP_LIBDIR PHP_LOCALSTATEDIR PHP_MAJOR_VERSION PHP_MANDIR PHP_MAXPATHLEN PHP_MINOR_VERSION PHP_OS PHP_OUTPUT_HANDLER_CLEAN PHP_OUTPUT_HANDLER_CLEANABLE PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_DISABLED PHP_OUTPUT_HANDLER_END PHP_OUTPUT_HANDLER_FINAL PHP_OUTPUT_HANDLER_FLUSH PHP_OUTPUT_HANDLER_FLUSHABLE PHP_OUTPUT_HANDLER_REMOVABLE PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_STARTED PHP_OUTPUT_HANDLER_STDFLAGS PHP_OUTPUT_HANDLER_WRITE PHP_PREFIX PHP_RELEASE_VERSION PHP_SAPI PHP_SHLIB_SUFFIX PHP_SYSCONFDIR PHP_VERSION PHP_VERSION_ID PHP_ZTS STDERR STDIN STDOUT UPLOAD_ERR_CANT_WRITE UPLOAD_ERR_EXTENSION UPLOAD_ERR_FORM_SIZE UPLOAD_ERR_INI_SIZE UPLOAD_ERR_NO_FILE UPLOAD_ERR_NO_TMP_DIR UPLOAD_ERR_OK UPLOAD_ERR_PARTIAL ZEND_DEBUG_BUILD ZEND_THREAD_SAFE contained  endif  if index(g:php_syntax_extensions_enabled, "curl") >= 0 && index(g:php_syntax_extensions_disabled, "curl") < 0 && ( ! exists("b:php_syntax_extensions_enabled") || index(b:php_syntax_extensions_enabled, "curl") >= 0) && ( ! exists("b:php_syntax_extensions_disabled") || index(b:php_syntax_extensions_disabled, "curl") < 0)  " curl constants @@ -586,7 +586,7 @@ if !exists("php_ignore_phpdoc") || !php_ignore_phpdoc    syn region phpCommentTitle contained matchgroup=phpDocComment start="/\*\*" matchgroup=phpCommmentTitle keepend end="\.$" end="\.[ \t\r<&]"me=e-1 end="[^{]@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=phpCommentStar,phpTodo,phpDocTags,@Spell containedin=phpDocComment    syn region phpDocTags  start="{@\(example\|id\|internal\|inheritdoc\|link\|source\|toc\|tutorial\)" end="}" containedin=phpDocComment -  syn match phpDocTags "@\%(abstract\|access\|author\|category\|copyright\|deprecated\|example\|exception\|filesource\|final\|global\|id\|ignore\|inheritdoc\|internal\|license\|link\|magic\|method\|name\|package\|param\|property\|return\|see\|since\|source\|static\|staticvar\|subpackage\|throws\|toc\|todo\|tutorial\|uses\|var\|version\)" containedin=phpDocComment nextgroup=phpDocParam,phpDocIdentifier skipwhite +  syn match phpDocTags "@\%(abstract\|access\|api\|author\|brief\|bug\|category\|class\|copyright\|created\|date\|deprecated\|details\|example\|exception\|file\|filesource\|final\|global\|id\|ignore\|inheritdoc\|internal\|license\|link\|magic\|method\|name\|package\|param\|property\|return\|see\|since\|source\|static\|staticvar\|struct\|subpackage\|throws\|toc\|todo\|tutorial\|type\|uses\|var\|version\|warning\)" containedin=phpDocComment nextgroup=phpDocParam,phpDocIdentifier skipwhite    syn match phpDocParam "\s\+\zs\%(\h\w*|\?\)\+" nextgroup=phpDocIdentifier skipwhite    syn match phpDocIdentifier "\s\+\zs$\h\w*" diff --git a/syntax/rust.vim b/syntax/rust.vim index d8330b84..6ee610d9 100644 --- a/syntax/rust.vim +++ b/syntax/rust.vim @@ -11,17 +11,6 @@ elseif exists("b:current_syntax")    finish  endif -" Fold settings {{{1 - -if has("folding") && exists('g:rust_fold') && g:rust_fold != 0 -  setlocal foldmethod=syntax -  if g:rust_fold == 2 -    setlocal foldlevel< -  else -    setlocal foldlevel=99 -  endif -endif -  " Syntax definitions {{{1  " Basic keywords {{{2  syn keyword   rustConditional match if else @@ -37,7 +26,7 @@ syn keyword   rustKeyword     fn nextgroup=rustFuncName skipwhite skipempty  syn keyword   rustKeyword     for in if impl let  syn keyword   rustKeyword     loop once proc pub  syn keyword   rustKeyword     return super -syn keyword   rustKeyword     unsafe virtual while +syn keyword   rustKeyword     unsafe virtual where while  syn keyword   rustKeyword     use nextgroup=rustModPath,rustModPathInUse skipwhite skipempty  " FIXME: Scoped impl's name is also fallen in this category  syn keyword   rustKeyword     mod trait struct enum type nextgroup=rustIdentifier skipwhite skipempty @@ -95,7 +84,7 @@ syn keyword   rustEnumVariant Ok Err  syn keyword rustTrait Ascii AsciiCast OwnedAsciiCast AsciiStr  syn keyword rustTrait IntoBytes  syn keyword rustTrait ToCStr -syn keyword rustTrait Char +syn keyword rustTrait Char UnicodeChar  syn keyword rustTrait Clone  syn keyword rustTrait PartialEq PartialOrd Eq Ord Equiv  syn keyword rustEnum Ordering @@ -113,18 +102,18 @@ syn keyword rustTrait Box  syn keyword rustTrait GenericPath Path PosixPath WindowsPath  syn keyword rustTrait RawPtr  syn keyword rustTrait Buffer Writer Reader Seek -syn keyword rustTrait Str StrVector StrSlice OwnedStr -syn keyword rustTrait IntoMaybeOwned StrAllocating +syn keyword rustTrait Str StrVector StrSlice +syn keyword rustTrait IntoMaybeOwned StrAllocating UnicodeStrSlice  syn keyword rustTrait ToString IntoStr  syn keyword rustTrait Tuple1 Tuple2 Tuple3 Tuple4  syn keyword rustTrait Tuple5 Tuple6 Tuple7 Tuple8  syn keyword rustTrait Tuple9 Tuple10 Tuple11 Tuple12  syn keyword rustTrait CloneableVector ImmutableCloneableVector -syn keyword rustTrait MutableCloneableVector MutableOrdVector -syn keyword rustTrait ImmutableVector MutableVector -syn keyword rustTrait ImmutableEqVector ImmutableOrdVector -syn keyword rustTrait Vector VectorVector -syn keyword rustTrait MutableVectorAllocating +syn keyword rustTrait MutableCloneableSlice MutableOrdSlice +syn keyword rustTrait ImmutableSlice MutableSlice +syn keyword rustTrait ImmutablePartialEqSlice ImmutableOrdSlice +syn keyword rustTrait Slice VectorVector +syn keyword rustTrait MutableSliceAllocating  syn keyword rustTrait String  syn keyword rustTrait Vec | 
