diff options
-rw-r--r-- | after/syntax/c.vim | 3 | ||||
-rw-r--r-- | after/syntax/cpp.vim | 7 | ||||
-rw-r--r-- | after/syntax/yaml.vim | 6 | ||||
-rw-r--r-- | ftdetect/polyglot.vim | 2 | ||||
-rw-r--r-- | ftplugin/ruby.vim | 125 | ||||
-rw-r--r-- | syntax/css.vim | 45 | ||||
-rw-r--r-- | syntax/jade.vim | 7 | ||||
-rw-r--r-- | syntax/javascript.vim | 2 | ||||
-rw-r--r-- | syntax/markdown.vim | 2 | ||||
-rw-r--r-- | syntax/perl6.vim | 4 | ||||
-rw-r--r-- | syntax/ruby.vim | 2 | ||||
-rw-r--r-- | syntax/tmux.vim | 3 | ||||
-rw-r--r-- | syntax/typescript.vim | 6 |
13 files changed, 126 insertions, 88 deletions
diff --git a/after/syntax/c.vim b/after/syntax/c.vim index ba8b2915..0805d666 100644 --- a/after/syntax/c.vim +++ b/after/syntax/c.vim @@ -72,7 +72,8 @@ syn keyword cAnsiFunction wcstombs mbstowcs wctomb syn keyword cAnsiFunction mbtowc mblen lldiv syn keyword cAnsiFunction ldiv div llabs syn keyword cAnsiFunction labs abs qsort -syn keyword cAnsiFunction bsearch system getenv +"syn keyword cAnsiFunction bsearch system getenv +syn keyword cAnsiFunction bsearch getenv syn keyword cAnsiFunction exit atexit abort syn keyword cAnsiFunction realloc malloc free syn keyword cAnsiFunction calloc srand rand diff --git a/after/syntax/cpp.vim b/after/syntax/cpp.vim index 6c34fe74..5a0c2183 100644 --- a/after/syntax/cpp.vim +++ b/after/syntax/cpp.vim @@ -134,6 +134,7 @@ syntax keyword cppSTLfunctional binary_negate syntax keyword cppSTLfunctional bit_and syntax keyword cppSTLfunctional bit_not syntax keyword cppSTLfunctional bit_or +syntax keyword cppSTLfunctional bit_xor syntax keyword cppSTLfunctional divides syntax keyword cppSTLfunctional equal_to syntax keyword cppSTLfunctional greater @@ -197,7 +198,7 @@ syntax keyword cppSTLfunction count syntax keyword cppSTLfunction count_if syntax keyword cppSTLfunction c_str syntax keyword cppSTLfunction ctime -syntax keyword cppSTLfunction data +"syntax keyword cppSTLfunction data syntax keyword cppSTLfunction denorm_min syntax keyword cppSTLfunction destroy syntax keyword cppSTLfunction difftime @@ -459,7 +460,7 @@ syntax keyword cppSTLfunction swap_ranges syntax keyword cppSTLfunction swprintf syntax keyword cppSTLfunction swscanf syntax keyword cppSTLfunction sync_with_stdio -syntax keyword cppSTLfunction system +"syntax keyword cppSTLfunction system syntax keyword cppSTLfunction tan syntax keyword cppSTLfunction tanh syntax keyword cppSTLfunction tellg @@ -1053,7 +1054,7 @@ if !exists("cpp_no_cpp11") syntax keyword cppSTLconstant FLT_EVAL_METHOD " complex - syntax keyword cppSTLfunction proj + "syntax keyword cppSTLfunction proj " random syntax keyword cppSTLtype linear_congruential_engine diff --git a/after/syntax/yaml.vim b/after/syntax/yaml.vim new file mode 100644 index 00000000..62f83a8e --- /dev/null +++ b/after/syntax/yaml.vim @@ -0,0 +1,6 @@ +" Language: Colorful CSS Color Preview +" Author: Aristotle Pagaltzis <pagaltzis@gmx.de> + +if !( has('gui_running') || &t_Co==256 ) | finish | endif + +call css_color#init('hex', 'extended', 'yamlComment,yamlFlowString,yamlPlainScalar') diff --git a/ftdetect/polyglot.vim b/ftdetect/polyglot.vim index d55b5428..932dc349 100644 --- a/ftdetect/polyglot.vim +++ b/ftdetect/polyglot.vim @@ -1,6 +1,6 @@ au BufRead,BufNewFile *.ino,*.pde set filetype=arduino au BufNewFile,BufRead *.blade.php set filetype=blade -autocmd BufNewFile,BufRead *.clj,*.cljs,*.edn setlocal filetype=clojure +autocmd BufNewFile,BufRead *.clj,*.cljs,*.edn,*.cljx,*.cljc setlocal filetype=clojure autocmd BufNewFile,BufRead *.coffee set filetype=coffee autocmd BufNewFile,BufRead *Cakefile set filetype=coffee autocmd BufNewFile,BufRead *.coffeekup,*.ck set filetype=coffee diff --git a/ftplugin/ruby.vim b/ftplugin/ruby.vim index c8c3946f..60404744 100644 --- a/ftplugin/ruby.vim +++ b/ftplugin/ruby.vim @@ -67,7 +67,7 @@ if !exists('g:ruby_version_paths') let g:ruby_version_paths = {} endif -function! s:query_path(root) +function! s:query_path(root) abort let code = "print $:.join %q{,}" if &shell =~# 'sh' let prefix = 'env PATH='.shellescape($PATH).' ' @@ -92,7 +92,7 @@ function! s:query_path(root) endtry endfunction -function! s:build_path(path) +function! s:build_path(path) abort let path = join(map(copy(a:path), 'v:val ==# "." ? "" : v:val'), ',') if &g:path !~# '\v^\.%(,/%(usr|emx)/include)=,,$' let path = substitute(&g:path,',,$',',','') . ',' . path @@ -146,7 +146,22 @@ let b:undo_ftplugin = "setl fo< inc< inex< sua< def< com< cms< path< tags< kp<" \."| if exists('&ofu') && has('ruby') | setl ofu< | endif" \."| if has('balloon_eval') && exists('+bexpr') | setl bexpr< | endif" +function! s:map(mode, flags, map) abort + let from = matchstr(a:map, '\S\+') + if empty(mapcheck(from, a:mode)) + exe a:mode.'map' '<buffer>'.(a:0 ? a:1 : '') a:map + let b:undo_ftplugin .= '|sil! '.a:mode.'unmap <buffer> '.from + endif +endfunction + +cmap <buffer><script><expr> <Plug><cword> substitute(RubyCursorIdentifier(),'^$',"\022\027",'') +cmap <buffer><script><expr> <Plug><cfile> substitute(RubyCursorFile(),'^$',"\022\006",'') +let b:undo_ftplugin .= "| sil! cunmap <buffer> <Plug><cword>| sil! cunmap <buffer> <Plug><cfile>" + if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps") + nmap <buffer><script> <SID>: :<C-U> + nmap <buffer><script> <SID>c: :<C-U><C-R>=v:count ? v:count : ''<CR> + nnoremap <silent> <buffer> [m :<C-U>call <SID>searchsyn('\<def\>','rubyDefine','b','n')<CR> nnoremap <silent> <buffer> ]m :<C-U>call <SID>searchsyn('\<def\>','rubyDefine','','n')<CR> nnoremap <silent> <buffer> [M :<C-U>call <SID>searchsyn('\<end\>','rubyDefine','b','n')<CR> @@ -189,34 +204,24 @@ if !exists("g:no_plugin_maps") && !exists("g:no_ruby_maps") \."| sil! exe 'xunmap <buffer> iM' | sil! exe 'xunmap <buffer> aM'" endif - if maparg("\<C-]>",'n') == '' - cnoremap <buffer> <SID>foldopen <Bar>if &foldopen =~# 'tag'<Bar>exe 'norm! zv'<Bar>endif - nnoremap <silent> <script> <buffer> <C-]> :<C-U>exe v:count1."tag <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> g<C-]> :<C-U>exe "tjump <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> g] :<C-U>exe "tselect <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> <C-W>] :<C-U>exe v:count1."stag <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> <C-W><C-]> :<C-U>exe v:count1."stag <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> <C-W>g<C-]> :<C-U>exe "stjump <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> <C-W>g] :<C-U>exe "stselect <C-R>=RubyCursorIdentifier()<CR>"<SID>foldopen<CR> - nnoremap <silent> <script> <buffer> <C-W>} :<C-U>exe "ptag <C-R>=RubyCursorIdentifier()<CR>"<CR> - nnoremap <silent> <script> <buffer> <C-W>g} :<C-U>exe "ptjump <C-R>=RubyCursorIdentifier()<CR>"<CR> - let b:undo_ftplugin = b:undo_ftplugin - \."| sil! exe 'nunmap <buffer> <C-]>'| sil! exe 'nunmap <buffer> g<C-]>'| sil! exe 'nunmap <buffer> g]'" - \."| sil! exe 'nunmap <buffer> <C-W>]'| sil! exe 'nunmap <buffer> <C-W><C-]>'" - \."| sil! exe 'nunmap <buffer> <C-W>g<C-]>'| sil! exe 'nunmap <buffer> <C-W>g]'" - \."| sil! exe 'nunmap <buffer> <C-W>}'| sil! exe 'nunmap <buffer> <C-W>g}'" - endif - - if maparg("gf",'n') == '' - " By using findfile() rather than gf's normal behavior, we prevent - " erroneously editing a directory. - nnoremap <silent> <buffer> gf :<C-U>exe <SID>gf(v:count1,"gf",'edit')<CR> - nnoremap <silent> <buffer> <C-W>f :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>f",'split')<CR> - nnoremap <silent> <buffer> <C-W><C-F> :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>\<Lt>C-F>",'split')<CR> - nnoremap <silent> <buffer> <C-W>gf :<C-U>exe <SID>gf(v:count1,"\<Lt>C-W>gf",'tabedit')<CR> - let b:undo_ftplugin = b:undo_ftplugin - \."| sil! exe 'nunmap <buffer> gf' | sil! exe 'nunmap <buffer> <C-W>f' | sil! exe 'nunmap <buffer> <C-W><C-F>' | sil! exe 'nunmap <buffer> <C-W>gf'" - endif + call s:map('c', '', '<C-R><C-W> <Plug><cword>') + call s:map('c', '', '<C-R><C-F> <Plug><cfile>') + + nmap <buffer><script><expr> <SID>tagzv &foldopen =~# 'tag' ? 'zv' : '' + call s:map('n', '<silent>', '<C-]> <SID>c:tag <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', 'g<C-]> <SID>:tjump <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', 'g] <SID>:tselect <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', '<C-W>] <SID>c:stag <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', '<C-W><C-]> <SID>c:stag <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', '<C-W>g<C-]> <SID>:stjump <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', '<C-W>g] <SID>:stselect <Plug><cword><CR><SID>tagzv') + call s:map('n', '<silent>', '<C-W>} <SID>c:ptag <Plug><cword><CR>') + call s:map('n', '<silent>', '<C-W>g} <SID>:ptjump <Plug><cword><CR>') + + call s:map('n', '<silent>', 'gf <SID>c:find <Plug><cfile><CR>') + call s:map('n', '<silent>', '<C-W>f <SID>c:sfind <Plug><cfile><CR>') + call s:map('n', '<silent>', '<C-W><C-F> <SID>c:sfind <Plug><cfile><CR>') + call s:map('n', '<silent>', '<C-W>gf <SID>c:tabfind <Plug><cfile><CR>') endif let &cpo = s:cpo_save @@ -227,7 +232,7 @@ if exists("g:did_ruby_ftplugin_functions") endif let g:did_ruby_ftplugin_functions = 1 -function! RubyBalloonexpr() +function! RubyBalloonexpr() abort if !exists('s:ri_found') let s:ri_found = executable('ri') endif @@ -276,7 +281,7 @@ function! RubyBalloonexpr() endif endfunction -function! s:searchsyn(pattern,syn,flags,mode) +function! s:searchsyn(pattern, syn, flags, mode) abort let cnt = v:count1 norm! m' if a:mode ==# 'v' @@ -298,11 +303,11 @@ function! s:searchsyn(pattern,syn,flags,mode) endwhile endfunction -function! s:synname() +function! s:synname() abort return synIDattr(synID(line('.'),col('.'),0),'name') endfunction -function! s:wrap_i(back,forward) +function! s:wrap_i(back,forward) abort execute 'norm k'.a:forward let line = line('.') execute 'norm '.a:back @@ -312,7 +317,7 @@ function! s:wrap_i(back,forward) execute 'norm jV'.a:forward.'k' endfunction -function! s:wrap_a(back,forward) +function! s:wrap_a(back,forward) abort execute 'norm '.a:forward if line('.') < line('$') && getline(line('.')+1) ==# '' let after = 1 @@ -330,37 +335,55 @@ function! s:wrap_a(back,forward) endif endfunction -function! RubyCursorIdentifier() +function! RubyCursorIdentifier() abort let asciicode = '\%(\w\|[]})\"'."'".']\)\@<!\%(?\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\=\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)\)' let number = '\%(\%(\w\|[]})\"'."'".']\s*\)\@<!-\)\=\%(\<[[:digit:]_]\+\%(\.[[:digit:]_]\+\)\=\%([Ee][[:digit:]_]\+\)\=\>\|\<0[xXbBoOdD][[:xdigit:]_]\+\>\)\|'.asciicode let operator = '\%(\[\]\|<<\|<=>\|[!<>]=\=\|===\=\|[!=]\~\|>>\|\*\*\|\.\.\.\=\|=>\|[~^&|*/%+-]\)' - let method = '\%(\<[_a-zA-Z]\w*\>\%([?!]\|\s*=>\@!\)\=\)' + let method = '\%(\.[_a-zA-Z]\w*\s*=>\@!\|\<[_a-zA-Z]\w*\>[?!]\=\)' let global = '$\%([!$&"'."'".'*+,./:;<=>?@\`~]\|-\=\w\+\>\)' let symbolizable = '\%(\%(@@\=\)\w\+\>\|'.global.'\|'.method.'\|'.operator.'\)' let pattern = '\C\s*\%('.number.'\|\%(:\@<!:\)\='.symbolizable.'\)' let [lnum, col] = searchpos(pattern,'bcn',line('.')) let raw = matchstr(getline('.')[col-1 : ],pattern) - let stripped = substitute(substitute(raw,'\s\+=$','=',''),'^\s*:\=','','') + let stripped = substitute(substitute(raw,'\s\+=$','=',''),'^\s*[:.]\=','','') return stripped == '' ? expand("<cword>") : stripped endfunction -function! s:gf(count,map,edit) abort - if getline('.') =~# '^\s*require_relative\s*\(["'']\).*\1\s*$' - let target = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') - return a:edit.' %:h/'.target.'.rb' - elseif getline('.') =~# '^\s*\%(require[( ]\|load[( ]\|autoload[( ]:\w\+,\)\s*\s*\%(::\)\=File\.expand_path(\(["'']\)\.\./.*\1,\s*__FILE__)\s*$' - let target = matchstr(getline('.'),'\(["'']\)\.\./\zs.\{-\}\ze\1') - return a:edit.' %:h/'.target.'.rb' +function! RubyCursorFile() abort + let isfname = &isfname + try + set isfname+=: + let cfile = expand('<cfile>') + finally + let isfname = &isfname + endtry + let pre = matchstr(strpart(getline('.'), 0, col('.')-1), '.*\f\@<!') + let post = matchstr(strpart(getline('.'), col('.')), '\f\@!.*') + let ext = getline('.') =~# '^\s*\%(require\|autoload\)\>' ? '.rb' : '' + if s:synname() ==# 'rubyConstant' + let cfile = substitute(cfile,'\.\w\+[?!=]\=$','','') + let cfile = substitute(cfile,'::','/','g') + let cfile = substitute(cfile,'\(\u\+\)\(\u\l\)','\1_\2', 'g') + let cfile = substitute(cfile,'\(\l\|\d\)\(\u\)','\1_\2', 'g') + return tolower(cfile) . '.rb' + elseif getline('.') =~# '^\s*require_relative\s*\(["'']\).*\1\s*$' + let cfile = expand('%:p:h') . '/' . matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') . '.rb' + elseif getline('.') =~# '^\s*\%(require[( ]\|load[( ]\|autoload[( ]:\w\+,\)\s*\%(::\)\=File\.expand_path(\(["'']\)\.\./.*\1,\s*__FILE__)\s*$' + let target = matchstr(getline('.'),'\(["'']\)\.\.\zs/.\{-\}\ze\1') + let cfile = expand('%:p:h') . target . ext elseif getline('.') =~# '^\s*\%(require \|load \|autoload :\w\+,\)\s*\(["'']\).*\1\s*$' - let target = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') + let cfile = matchstr(getline('.'),'\(["'']\)\zs.\{-\}\ze\1') . ext + elseif pre.post =~# '\<File.expand_path[( ].*[''"]\{2\}, *__FILE__\>' && cfile =~# '^\.\.' + let cfile = expand('%:p:h') . strpart(cfile, 2) else - let target = expand('<cfile>') + return substitute(cfile, '\C\v^(.*):(\d+)%(:in)=$', '+\2 \1', '') endif - let found = findfile(target, &path, a:count) - if found ==# '' - return 'norm! '.a:count.a:map + let cwdpat = '^\M' . substitute(getcwd(), '[\/]', '\\[\\/]', 'g').'\ze\[\/]' + let cfile = substitute(cfile, cwdpat, '.', '') + if fnameescape(cfile) !=# cfile + return '+ '.fnameescape(cfile) else - return a:edit.' '.fnameescape(found) + return cfile endif endfunction diff --git a/syntax/css.vim b/syntax/css.vim index 51758ca9..8212455b 100644 --- a/syntax/css.vim +++ b/syntax/css.vim @@ -226,7 +226,6 @@ syn keyword cssBackgroundAttr contained left center right top bottom " background-repeat attributes syn match cssBackgroundAttr contained "\<no-repeat\>" syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>" -syn keyword cssBackgroundAttr contained space round " background-size attributes syn keyword cssBackgroundAttr contained cover contain @@ -238,7 +237,7 @@ syn match cssBorderProp contained "\<box-decoration-break\>" syn match cssBorderProp contained "\<box-shadow\>" " border-image attributes -syn keyword cssBorderAttr contained stretch round space fill +syn keyword cssBorderAttr contained stretch round fill " border-style attributes syn keyword cssBorderAttr contained dotted dashed solid double groove ridge inset outset @@ -266,14 +265,18 @@ syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>" syn keyword cssDimensionProp contained height syn keyword cssDimensionProp contained width -" shadow and sizing are in other property groups -syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>" -syn keyword cssFlexibleBoxAttr contained start end baseline -syn keyword cssFlexibleBoxAttr contained reverse -syn keyword cssFlexibleBoxAttr contained single multiple -syn keyword cssFlexibleBoxAttr contained horizontal -syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>" "escape vertical-align -syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>" +" CSS Flexible Box Layout Module Level 1 +" http://www.w3.org/TR/css3-flexbox/ +" CSS Box Alignment Module Level 3 +" http://www.w3.org/TR/css-align-3/ +syn match cssFlexibleBoxProp contained "\<flex\(-\(direction\|wrap\|flow\|grow\|shrink\|basis\)\)\=\>" +syn match cssFlexibleBoxProp contained "\<\(align\|justify\)\(-\(items\|self\|content\)\)\=\>" +syn keyword cssFlexibleBoxProp contained order + +syn match cssFlexibleBoxAttr contained "\<\(row\|column\|wrap\)\(-reverse\)\=\>" +syn keyword cssFlexibleBoxAttr contained nowrap stretch baseline center +syn match cssFlexibleBoxAttr contained "\<flex-\(start\|end\)\>" +syn match cssFlexibleBoxAttr contained "\<space\(-\(between\|around\)\)\=\>" " CSS Fonts Module Level 3 " http://www.w3.org/TR/css-fonts-3/ @@ -320,6 +323,10 @@ syn match cssMultiColumnAttr contained "\<avoid-\(page\|column\)\>" " http://www.w3.org/TR/css3-break/#page-break syn match cssMultiColumnProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>" +" http://www.w3.org/TR/SVG11/interact.html +syn match cssInteractProp contained "\<pointer-events\>" +syn match cssInteractAttr contained "\<\(visible\)\=\(Painted\|Fill\|Stroke\)\=\>" + " TODO find following items in w3c docs. syn keyword cssGeneratedContentProp contained quotes crop syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>" @@ -536,6 +543,7 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssAttrComma Special HiLink cssAnimationProp cssProp + HiLink cssAuralProp cssProp HiLink cssBackgroundProp cssProp HiLink cssBorderProp cssProp HiLink cssBoxProp cssProp @@ -547,13 +555,17 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssGeneratedContentProp cssProp HiLink cssGridProp cssProp HiLink cssHyerlinkProp cssProp + HiLink cssIEUIProp cssProp + HiLink cssInteractProp cssProp HiLink cssLineboxProp cssProp HiLink cssListProp cssProp HiLink cssMarqueeProp cssProp + HiLink cssMobileTextProp cssProp HiLink cssMultiColumnProp cssProp HiLink cssPagedMediaProp cssProp HiLink cssPositioningProp cssProp HiLink cssPrintProp cssProp + HiLink cssRenderProp cssProp HiLink cssRubyProp cssProp HiLink cssSpeechProp cssProp HiLink cssTableProp cssProp @@ -561,22 +573,22 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssTransformProp cssProp HiLink cssTransitionProp cssProp HiLink cssUIProp cssProp - HiLink cssIEUIProp cssProp - HiLink cssAuralProp cssProp - HiLink cssRenderProp cssProp - HiLink cssMobileTextProp cssProp HiLink cssAnimationAttr cssAttr + HiLink cssAuralAttr cssAttr HiLink cssBackgroundAttr cssAttr HiLink cssBorderAttr cssAttr HiLink cssBoxAttr cssAttr HiLink cssContentForPagedMediaAttr cssAttr + HiLink cssCommonAttr cssAttr HiLink cssDimensionAttr cssAttr HiLink cssFlexibleBoxAttr cssAttr HiLink cssFontAttr cssAttr HiLink cssGeneratedContentAttr cssAttr HiLink cssGridAttr cssAttr HiLink cssHyerlinkAttr cssAttr + HiLink cssIEUIAttr cssAttr + HiLink cssInteractAttr cssAttr HiLink cssLineboxAttr cssAttr HiLink cssListAttr cssAttr HiLink cssMarginAttr cssAttr @@ -587,6 +599,7 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssPositioningAttr cssAttr HiLink cssGradientAttr cssAttr HiLink cssPrintAttr cssAttr + HiLink cssRenderAttr cssAttr HiLink cssRubyAttr cssAttr HiLink cssSpeechAttr cssAttr HiLink cssTableAttr cssAttr @@ -594,10 +607,6 @@ if version >= 508 || !exists("did_css_syn_inits") HiLink cssTransformAttr cssAttr HiLink cssTransitionAttr cssAttr HiLink cssUIAttr cssAttr - HiLink cssIEUIAttr cssAttr - HiLink cssAuralAttr cssAttr - HiLink cssRenderAttr cssAttr - HiLink cssCommonAttr cssAttr HiLink cssPseudoClassId PreProc HiLink cssPseudoClassLang Constant diff --git a/syntax/jade.vim b/syntax/jade.vim index 22934396..6de6f112 100644 --- a/syntax/jade.vim +++ b/syntax/jade.vim @@ -56,8 +56,7 @@ syn region jadeTagBlockEnd start="\s*\S" end="$" contained contains=jadeInterpo syn region jadeTextInlineJade matchgroup=jadeInlineDelimiter start="#\[" end="]" contains=jadeTag keepend syn region jadeJavascriptFilter matchgroup=jadeFilter start="^\z(\s*\):javascript\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlJavascript -syn region jadeCoffeescriptFilter matchgroup=jadeFilter start="^\z(\s*\):coffeescript\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlCoffeescript -syn region jadeMarkdownFilter matchgroup=jadeFilter start=/^\z(\s*\):markdown\s*$/ end=/^\%(\z1\s\|\s*$\)\@!/ contains=@htmlMarkdown +syn region jadeMarkdownFilter matchgroup=jadeFilter start=/^\z(\s*\):\%(markdown\|marked\)\s*$/ end=/^\%(\z1\s\|\s*$\)\@!/ contains=@htmlMarkdown syn region jadeStylusFilter matchgroup=jadeFilter start="^\z(\s*\):stylus\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlStylus syn region jadePlainFilter matchgroup=jadeFilter start="^\z(\s*\):\%(sass\|less\|cdata\)\s*$" end="^\%(\z1\s\|\s*$\)\@!" @@ -66,7 +65,9 @@ syn match jadeScriptStatement "^\s*\<\%(each\|for\|block\|prepend\|append\|mixi syn region jadeScriptLoopRegion start="^\s*\(for \)" end="$" contains=jadeScriptLoopKeywords syn keyword jadeScriptLoopKeywords for in contained -syn region jadeJavascript start="^\z(\s*\)script\%(:\w\+\)\=" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlJavascript,jadeJavascriptTag keepend +syn region jadeJavascript start="^\z(\s*\)script\%(:\w\+\)\=" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlJavascript,jadeJavascriptTag,jadeCoffeescriptFilter keepend + +syn region jadeCoffeescriptFilter matchgroup=jadeFilter start="^\z(\s*\):coffeescript\s*$" end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlCoffeescript contained syn region jadeJavascriptTag contained start="^\z(\s*\)script\%(:\w\+\)\=" end="$" contains=jadeBegin,jadeTag syn region jadeCssBlock start="^\z(\s*\)style" nextgroup=@jadeComponent,jadeError end="^\%(\z1\s\|\s*$\)\@!" contains=@htmlCss keepend diff --git a/syntax/javascript.vim b/syntax/javascript.vim index 56c7422d..1efe8c68 100644 --- a/syntax/javascript.vim +++ b/syntax/javascript.vim @@ -175,7 +175,7 @@ if exists("javascript_enable_domhtmlcss") syntax keyword jsCssStyles contained border borderBottom borderLeft borderRight borderTop borderBottomColor borderLeftColor borderTopColor borderBottomStyle borderLeftStyle borderRightStyle borderTopStyle borderBottomWidth borderLeftWidth borderRightWidth borderTopWidth borderColor borderStyle borderWidth borderCollapse borderSpacing captionSide emptyCells tableLayout syntax keyword jsCssStyles contained margin marginBottom marginLeft marginRight marginTop outline outlineColor outlineStyle outlineWidth padding paddingBottom paddingLeft paddingRight paddingTop syntax keyword jsCssStyles contained listStyle listStyleImage listStylePosition listStyleType - syntax keyword jsCssStyles contained background backgroundAttachment backgroundColor backgroundImage gackgroundPosition backgroundPositionX backgroundPositionY backgroundRepeat + syntax keyword jsCssStyles contained background backgroundAttachment backgroundColor backgroundImage backgroundPosition backgroundPositionX backgroundPositionY backgroundRepeat syntax keyword jsCssStyles contained clear clip clipBottom clipLeft clipRight clipTop content counterIncrement counterReset cssFloat cursor direction display filter layoutGrid layoutGridChar layoutGridLine layoutGridMode layoutGridType syntax keyword jsCssStyles contained marks maxHeight maxWidth minHeight minWidth opacity MozOpacity overflow overflowX overflowY verticalAlign visibility zoom cssText syntax keyword jsCssStyles contained scrollbar3dLightColor scrollbarArrowColor scrollbarBaseColor scrollbarDarkShadowColor scrollbarFaceColor scrollbarHighlightColor scrollbarShadowColor scrollbarTrackColor diff --git a/syntax/markdown.vim b/syntax/markdown.vim index 8c981bbe..49dbe3a7 100644 --- a/syntax/markdown.vim +++ b/syntax/markdown.vim @@ -97,7 +97,7 @@ if main_syntax ==# 'markdown' unlet! s:type endif -syn match markdownEscape "\\[][\\`*_{}()#+.!-]" +syn match markdownEscape "\\[][\\`*_{}()<>#+.!-]" syn match markdownError "\w\@<=_\w\@=" hi def link markdownH1 htmlH1 diff --git a/syntax/perl6.vim b/syntax/perl6.vim index 78c12cda..e5dda200 100644 --- a/syntax/perl6.vim +++ b/syntax/perl6.vim @@ -454,8 +454,8 @@ syn match p6QuoteQ_qww display "qww[A-Za-z(]\@!" nextgroup=p6PairsQ_qww skipwhi syn match p6QuoteQ_qq display "qq[pwx]\?[A-Za-z(]\@!" nextgroup=p6PairsQ_qq skipwhite skipempty contained syn match p6QuoteQ_qto display "qto[A-Za-z(]\@!" nextgroup=p6StringQ_qto skipwhite skipempty contained syn match p6QuoteQ_qqto display "qqto[A-Za-z(]\@!" nextgroup=p6StringQ_qqto skipwhite skipempty contained -syn match p6QuoteQ_qto display "q\_s*\%(:\%(to\|heredoc\)[A-Za-z(]\@!\)\@=" nextgroup=p6PairsQ_qto skipwhite skipempty contained -syn match p6QuoteQ_qqto display "qq\_s*\%(:\%(to\|heredoc\)[A-Za-z(]\@!\)\@=" nextgroup=p6PairsQ_qqto skipwhite skipempty contained +syn match p6QuoteQ_qto display "q\_s*\%(\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*:\%(to\|heredoc\)\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*(\@!\)\@=" nextgroup=p6PairsQ_qto skipwhite skipempty contained +syn match p6QuoteQ_qqto display "qq\_s*\%(\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*:\%(to\|heredoc\)\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*(\@!\)\@=" nextgroup=p6PairsQ_qqto skipwhite skipempty contained syn match p6PairsQ "\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*" contained transparent skipwhite skipempty nextgroup=p6StringQ syn match p6PairsQ_q "\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*" contained transparent skipwhite skipempty nextgroup=p6StringQ_q syn match p6PairsQ_qww "\%(\_s*:!\?\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\%(([^)]*)\)\?\)*" contained transparent skipwhite skipempty nextgroup=p6StringQ_qww diff --git a/syntax/ruby.vim b/syntax/ruby.vim index dc7d2339..5fd39aa3 100644 --- a/syntax/ruby.vim +++ b/syntax/ruby.vim @@ -284,7 +284,7 @@ endif " Comments and Documentation syn match rubySharpBang "\%^#!.*" display -syn keyword rubyTodo FIXME NOTE TODO OPTIMIZE XXX todo contained +syn keyword rubyTodo FIXME NOTE TODO OPTIMIZE HACK REVIEW XXX todo contained syn match rubyComment "#.*" contains=rubySharpBang,rubySpaceError,rubyTodo,@Spell if !exists("ruby_no_comment_fold") syn region rubyMultilineComment start="\%(\%(^\s*#.*\n\)\@<!\%(^\s*#.*\n\)\)\%(\(^\s*#.*\n\)\{1,}\)\@=" end="\%(^\s*#.*\n\)\@<=\%(^\s*#.*\n\)\%(^\s*#\)\@!" contains=rubyComment transparent fold keepend diff --git a/syntax/tmux.vim b/syntax/tmux.vim index 4d64514a..a6bf74e2 100644 --- a/syntax/tmux.vim +++ b/syntax/tmux.vim @@ -222,7 +222,6 @@ syn keyword tmuxOptsSet \ update-environment \ visual-activity \ visual-bell - \ visual-content \ visual-silence \ word-separators @@ -243,7 +242,6 @@ syn keyword tmuxOptsSetw \ mode-mouse \ mode-style \ monitor-activity - \ monitor-content \ monitor-silence \ other-pane-height \ other-pane-width @@ -253,7 +251,6 @@ syn keyword tmuxOptsSetw \ utf8 \ window-status-activity-style \ window-status-bell-style - \ window-status-content-style \ window-status-current-format \ window-status-current-style \ window-status-format diff --git a/syntax/typescript.vim b/syntax/typescript.vim index 469efa37..5f249578 100644 --- a/syntax/typescript.vim +++ b/syntax/typescript.vim @@ -100,7 +100,7 @@ syntax keyword typescriptEventListenerMethods contained scrollIntoView addEventL " }}} "" Programm Keywords"{{{ syntax keyword typescriptSource import export from as -syntax keyword typescriptIdentifier arguments this let var void yield const +syntax keyword typescriptIdentifier arguments this let var void const syntax keyword typescriptOperator delete new instanceof typeof syntax keyword typescriptBoolean true false syntax keyword typescriptNull null undefined @@ -111,8 +111,8 @@ syntax keyword typescriptDeprecated escape unescape all applets alinkColor bgCol "" Statement Keywords"{{{ syntax keyword typescriptConditional if else switch syntax keyword typescriptRepeat do while for in of -syntax keyword typescriptBranch break continue -syntax keyword typescriptLabel case default +syntax keyword typescriptBranch break continue yield await +syntax keyword typescriptLabel case default async syntax keyword typescriptStatement return with syntax keyword typescriptGlobalObjects Array Boolean Date Function Infinity Math Number NaN Object Packages RegExp String netscape |